:root{--color-bg: #2d1065;--color-bg-soft: #24104f;--color-surface: #3b1578;--color-surface-2: #4a1d8f;--color-accent: #a855f7;--color-accent-glow: #c084fc;--color-text: #f3e8ff;--color-muted: #d8b4fe;--color-danger: #f87171;--color-danger-bg: rgba(248, 113, 113, .15);--radius: 14px;--shadow: 0 12px 40px rgba(10, 0, 30, .35);--font: "Segoe UI", system-ui, -apple-system, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--font);color:var(--color-text);background:radial-gradient(1200px 600px at 10% -10%,rgba(168,85,247,.35),transparent 55%),radial-gradient(900px 500px at 100% 0%,rgba(192,132,252,.2),transparent 50%),linear-gradient(165deg,var(--color-bg),var(--color-bg-soft));background-attachment:fixed}body,#app{min-height:100dvh}.page{width:min(640px,100%);margin:0 auto;padding:1.25rem 1rem 2.5rem}.header{display:flex;align-items:center;gap:.85rem;margin-bottom:1.25rem}.header--compact{margin-bottom:1rem}.header__logo{border-radius:12px;box-shadow:0 0 0 1px #c084fc59,var(--shadow);object-fit:cover;background:#1a0a3d}.header__eyebrow{margin:0;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-glow)}.header__title{margin:.1rem 0 0;font-size:clamp(1.45rem,4vw,1.85rem);font-weight:700;line-height:1.15}.banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;margin-bottom:1rem;border-radius:var(--radius);background:#a855f72e;border:1px solid rgba(192,132,252,.35)}.banner p{margin:0;flex:1 1 12rem;font-size:.95rem}.banner code{font-size:.85em;padding:.1em .35em;border-radius:6px;background:#14053273}.banner__actions{display:flex;gap:.5rem}.card{background:color-mix(in srgb,var(--color-surface) 92%,black);border:1px solid rgba(192,132,252,.22);border-radius:var(--radius);padding:1rem 1rem 1.1rem;box-shadow:var(--shadow);margin-bottom:1.25rem}.card__title{margin:0 0 .85rem;font-size:1.05rem}.add-panel{padding:0;overflow:hidden}.add-panel__summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.05rem;font-size:1.05rem;font-weight:700;-webkit-user-select:none;user-select:none}.add-panel__summary::-webkit-details-marker{display:none}.add-panel__summary:after{content:"";width:.55rem;height:.55rem;border-right:2px solid var(--color-accent-glow);border-bottom:2px solid var(--color-accent-glow);transform:rotate(45deg);transition:transform .15s ease;flex-shrink:0}.add-panel[open]>.add-panel__summary:after{transform:rotate(-135deg);translate:0 .15rem}.add-panel__body{padding:.95rem 1rem 1.1rem;border-top:1px solid rgba(192,132,252,.18)}.form{display:grid;gap:.85rem}.field{display:grid;gap:.35rem}.field__label{font-size:.85rem;color:var(--color-muted)}.field input{width:100%;border:1px solid rgba(192,132,252,.35);border-radius:10px;padding:.7rem .8rem;font:inherit;color:var(--color-text);background:#14053273;outline:none}.field input:focus{border-color:var(--color-accent-glow);box-shadow:0 0 0 3px #a855f740}.field__error{min-height:1.1em;font-size:.8rem;color:var(--color-danger)}.form__actions{display:flex;gap:.6rem;flex-wrap:wrap}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:999px;padding:.65rem 1.1rem;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;color:var(--color-text);background:var(--color-surface-2);transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn:active{transform:translateY(1px)}.btn--sm{padding:.4rem .8rem;font-size:.85rem}.btn--primary{background:linear-gradient(135deg,var(--color-accent),#7c3aed);box-shadow:0 0 20px #a855f759}.btn--primary:hover{box-shadow:0 0 28px #c084fc73}.btn--ghost{background:transparent;border-color:#c084fc66}.btn--danger{background:var(--color-danger-bg);border-color:#f8717173;color:#fecaca}.import-label{cursor:pointer}.list-section__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.list-section__head .card__title{margin:0}.list-section__tools{display:flex;gap:.4rem}.url-list{display:grid;gap:.7rem}.url-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.9rem 1rem;border-radius:var(--radius);background:color-mix(in srgb,var(--color-surface) 88%,black);border:1px solid rgba(192,132,252,.18)}.url-row__meta{min-width:0;flex:1 1 12rem}.url-row__title{margin:0;font-size:1rem}.url-row__url{margin:.2rem 0 0;font-size:.85rem;color:var(--color-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.url-row__actions{display:flex;flex-wrap:wrap;gap:.4rem}.empty{padding:1.25rem 1rem;text-align:center;border-radius:var(--radius);border:1px dashed rgba(192,132,252,.35);background:#3b157859}.empty p{margin:.25rem 0}.empty__hint{font-size:.9rem;color:var(--color-muted)}.opener-card{text-align:center}.opener-card__status{margin:0 0 .4rem;font-size:1.15rem;font-weight:600}.opener-card__url{margin:0 0 1.1rem;font-size:.85rem;color:var(--color-muted);word-break:break-all}.opener-card__actions{display:flex;justify-content:center;gap:.6rem;flex-wrap:wrap;margin-bottom:.85rem}.opener-card__hint{margin:0;font-size:.85rem;color:var(--color-muted)}.dialog{border:1px solid rgba(192,132,252,.35);border-radius:var(--radius);padding:0;background:var(--color-surface);color:var(--color-text);max-width:min(92vw,380px);box-shadow:var(--shadow)}.dialog::backdrop{background:#0a001ea6}.dialog__body{margin:0;padding:1.1rem 1.15rem 1.15rem}.dialog__body p{margin:0 0 1rem}.dialog__actions{display:flex;justify-content:flex-end;gap:.5rem}#toast-host{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);z-index:1000;display:grid;gap:.5rem;width:min(92vw,360px);pointer-events:none}.toast{opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease;padding:.75rem 1rem;border-radius:12px;background:#1e0a46f2;border:1px solid rgba(192,132,252,.4);box-shadow:var(--shadow);text-align:center;font-size:.92rem}.toast--show{opacity:1;transform:translateY(0)}.toast--error{border-color:#f871718c;color:#fecaca}@media(min-width:640px){.page{padding-top:2rem}}
