:root{--bg-main: #0b1020;--bg-secondary: #131a2e;--bg-tertiary: #1e2740;--text: #e8ebf5;--text-muted: #94a0bd;--accent: #6366f1;--accent-2: #a855f7;--accent-text: #818cf8;--on-accent: #ffffff;--border: #283251;--danger: #f87171;--ring: color-mix(in srgb, var(--accent) 35%, transparent);--ctl-h: 36px}@media (pointer: coarse){:root{--ctl-h: 44px}}*{box-sizing:border-box}html,body,#root{height:100%;overflow-x:hidden;max-width:100%}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg-main);color:var(--text);-webkit-font-smoothing:antialiased}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-muted) 28%,transparent) transparent}::-webkit-scrollbar{width:10px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-muted) 28%,transparent);border-radius:999px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb,var(--text-muted) 45%,transparent)}::-webkit-scrollbar-corner{background:transparent}.center{display:grid;place-items:center;min-height:100vh}.muted{color:var(--text-muted)}.small{font-size:.85rem}.error{color:var(--danger);font-size:.88rem;background:#f871711a;border:1px solid rgba(248,113,113,.25);border-radius:.55rem;padding:.55rem .7rem}.auth-wrap{display:grid;grid-template-columns:1.05fr .95fr;min-height:100vh}.auth-brand{position:relative;overflow:hidden;background:linear-gradient(155deg,#15132e,#271a52 45%,#3b1d63);display:flex;align-items:stretch}.auth-brand-content{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:3rem;color:#f4f2ff}.auth-brand-top{display:flex;align-items:center;gap:.65rem}.auth-brand-name{font-weight:800;font-size:1.25rem;letter-spacing:-.02em}.auth-hero{max-width:460px;animation:rise .7s cubic-bezier(.2,.7,.2,1) both}.auth-hero h2{font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.08;letter-spacing:-.03em;margin:0 0 1rem;font-weight:800}.auth-hero p{color:#cdc7f0;font-size:1.05rem;line-height:1.6;margin:0 0 1.75rem}.auth-chips{display:flex;flex-wrap:wrap;gap:.5rem}.auth-chip{font-size:.8rem;padding:.32rem .7rem;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.14);color:#e3def7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-brand-foot{color:#e7e2ff80;font-size:.8rem}.aurora{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;z-index:1}.aurora-1{width:460px;height:460px;background:#4f46e5;top:-120px;left:-80px;animation:float 16s ease-in-out infinite}.aurora-2{width:380px;height:380px;background:#a855f7;bottom:-100px;left:30%;animation:float 19s ease-in-out infinite reverse}.aurora-3{width:320px;height:320px;background:#ec4899;top:35%;right:-90px;opacity:.4;animation:float 22s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,-28px) scale(1.12)}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.auth-main{display:grid;place-items:center;padding:2rem;background:radial-gradient(900px 500px at 80% -10%,rgba(99,102,241,.12),transparent 60%),var(--bg-main)}.auth-form-card{width:100%;max-width:380px;animation:rise .55s cubic-bezier(.2,.7,.2,1) both}.auth-mobile-brand{display:none;align-items:center;gap:.6rem;margin-bottom:1.75rem;font-weight:800;font-size:1.2rem}.auth-form-card h1{font-size:1.7rem;letter-spacing:-.02em;margin:0 0 .35rem}.auth-sub{color:var(--text-muted);margin:0 0 1.75rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.field-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem}.field{display:flex;flex-direction:column;gap:.4rem;min-width:0}.field>span{font-size:.78rem;font-weight:600;color:var(--text-muted);letter-spacing:.01em}.req{color:var(--danger, #f43f5e);font-weight:700}.field input{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);border-radius:.65rem;padding:.72rem .85rem;font-size:.95rem;width:100%;min-width:0;transition:border-color .15s,box-shadow .15s,background .15s}.field input::placeholder{color:#5b678a}.field input:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 4px var(--ring);background:#0f1730}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:var(--on-accent);border:none;border-radius:.65rem;min-height:var(--ctl-h);padding:0 1rem;font-size:.92rem;font-weight:600;cursor:pointer;box-shadow:0 8px 22px -10px #7c50e6cc;transition:transform .12s,filter .15s,box-shadow .15s}.auth-form .btn-primary{margin-top:.35rem;min-height:46px;font-size:.97rem}.btn-primary:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.07)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.65;cursor:default}.auth-switch{margin-top:1.5rem;text-align:center;color:var(--text-muted);font-size:.9rem}.auth-link{background:none;border:none;padding:0;color:#a5b4fc;font-weight:600;font-size:inherit;cursor:pointer;text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-info{margin:0;padding:.55rem .7rem;border-radius:.55rem;font-size:.88rem;color:#4ade80;background:#4ade801a;border:1px solid rgba(74,222,128,.25)}.auth-switch a{color:#a5b4fc;font-weight:600;text-decoration:none}.auth-switch a:hover{text-decoration:underline}@media (max-width: 880px){.auth-wrap{grid-template-columns:1fr}.auth-brand{display:none}.auth-mobile-brand{display:flex}}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:.55rem;min-height:var(--ctl-h);padding:0 .8rem;font-size:.9rem;cursor:pointer;transition:color .15s,border-color .15s}.btn-ghost:hover{color:var(--text);border-color:var(--accent-text)}.topbar{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.5rem;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.topbar .brand{font-weight:800;letter-spacing:-.02em}.topbar-right{display:flex;align-items:center;gap:.75rem}.content{max-width:820px;margin:0 auto;padding:1.5rem}.add-bar{display:flex;gap:.5rem;margin-bottom:1.25rem}.add-bar input,.add-bar select{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);border-radius:.6rem;padding:.6rem .75rem;font-size:.95rem}.add-bar input{flex:1}.add-bar input:focus,.add-bar select:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px var(--ring)}.item-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.item-row{display:flex;justify-content:space-between;align-items:center;background:var(--bg-secondary);border:1px solid var(--border);border-radius:.6rem;padding:.7rem .95rem;transition:border-color .15s}.item-row:hover{border-color:var(--accent-text)}.tag{display:inline-block;font-size:.74rem;color:var(--text-muted);background:var(--bg-tertiary);border-radius:999px;padding:.16rem .6rem}.shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:1rem .7rem;position:sticky;top:0;height:100vh}.sidebar-brand{display:flex;align-items:center;gap:.55rem;font-weight:800;font-size:1.2rem;letter-spacing:-.02em;padding:.4rem .7rem 1rem}.brand-logo{border-radius:7px;display:block;flex-shrink:0}.sidebar-nav{display:flex;flex-direction:column;gap:.1rem;overflow-y:auto;flex:1}.nav-item{display:flex;align-items:center;gap:.7rem;color:var(--text-muted);text-decoration:none;font-size:.9rem;padding:.52rem .7rem;border-radius:.55rem;transition:background .12s,color .12s}.nav-item svg{flex-shrink:0;opacity:.8}.nav-item>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-item:hover{background:var(--bg-tertiary);color:var(--text)}.nav-item.on{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 24%,transparent),color-mix(in srgb,var(--accent-2) 18%,transparent));color:var(--text)}.nav-item.on svg{opacity:1;color:var(--accent-text)}.nav-item:focus-visible{outline:2px solid var(--text);outline-offset:2px}.nav-count{font-size:.7rem;color:var(--text-muted);background:var(--bg-main);border-radius:999px;padding:.05rem .45rem;min-width:20px;text-align:center}.nav-item--skel{pointer-events:none}.nav-skel-ico{width:18px;height:18px;border-radius:5px;flex:none}.nav-skel-txt{height:11px;border-radius:4px}.nav-sep{height:1px;background:var(--border);margin:.55rem .4rem}.sidebar-label{display:flex;align-items:center;justify-content:space-between;font-size:.66rem;text-transform:uppercase;letter-spacing:.09em;color:#56618a;padding:.3rem .7rem}.label-add{background:none;border:none;color:#56618a;cursor:pointer;display:grid;place-items:center;padding:2px;border-radius:4px}.label-add:hover{color:var(--text);background:var(--bg-tertiary)}.sidebar-bottom{border-top:1px solid var(--border);margin-top:.5rem;padding-top:.6rem}.sidebar-foot{display:flex;align-items:center;gap:.4rem}.sidebar-user-link{display:flex;align-items:center;gap:.6rem;flex:1;min-width:0;text-decoration:none;color:inherit;padding:.3rem .4rem;margin:-.3rem -.4rem;border-radius:.5rem;transition:background .12s}.sidebar-user-link:hover{background:var(--bg-tertiary)}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:700;color:var(--on-accent);background:linear-gradient(135deg,var(--accent),var(--accent-2));flex-shrink:0}.sidebar-user-info{display:flex;flex-direction:column;line-height:1.2;flex:1;min-width:0}.sidebar-user-info strong{font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.4rem;border-radius:.5rem;display:grid;place-items:center}.icon-btn:hover{color:var(--text);background:var(--bg-tertiary)}.shell-main{overflow-y:auto;overflow-x:hidden;height:100vh}.mobile-topbar{display:none;align-items:center;gap:.7rem;position:sticky;top:0;z-index:30;padding:.5rem .85rem;background:color-mix(in srgb,var(--bg-secondary) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.mobile-brand{display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:800;letter-spacing:-.02em;flex:1}.mobile-title{flex:1;min-width:0;text-align:center;font-weight:800;font-size:1.05rem;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 .3rem}.mobile-title .muted{font-weight:600}.topbar-spacer{flex:0 0 38px}.avatar.sm{width:30px;height:30px;font-size:.8rem}.nav-backdrop{display:none}.collection{padding:1.5rem 2rem}.collection-bar{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.collection-bar h1{font-size:1.5rem;margin:0;letter-spacing:-.02em}.collection-controls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.collection-controls input,.collection-controls select{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);border-radius:.55rem;padding:.5rem .7rem;font-size:.9rem}.collection-controls input:focus,.collection-controls select:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px var(--ring)}.search{min-width:180px}.view-toggle{display:flex;height:var(--ctl-h);border:1px solid var(--border);border-radius:.55rem;overflow:hidden}.view-toggle button{background:var(--bg-secondary);color:var(--text-muted);border:none;padding:0 .7rem;height:100%;cursor:pointer;font-size:1rem}.view-toggle button.on{background:var(--accent);color:var(--on-accent)}.collection-controls>input,.collection-controls>select,.collection-controls>.btn-primary,.collection-controls>.btn-ghost,.collection-controls>.view-toggle,.collection-controls>.grid-size,.collection-controls>.seg-control{height:var(--ctl-h);line-height:normal}.collection-controls>.btn-primary,.collection-controls>.btn-ghost{padding:0 .95rem;box-shadow:none;font-size:.9rem}.collection-controls>input,.collection-controls>select{padding-top:0;padding-bottom:0}.collection-controls .view-toggle button{height:100%}.grid-size{display:inline-flex;align-items:center;height:var(--ctl-h);gap:.45rem;padding:0 .65rem;border:1px solid var(--border);border-radius:.55rem;background:var(--bg-secondary);color:var(--text-muted)}.grid-size input[type=range]{width:92px;height:4px;padding:0;background:none;border:none;box-shadow:none;accent-color:var(--accent-text);cursor:pointer}.empty{display:grid;place-items:center;gap:1rem;padding:3rem 0}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--card-min, 150px),100%),1fr));gap:1.1rem}.poster{background:none;border:none;padding:0;cursor:pointer;text-align:left;color:inherit}.poster-img{position:relative;aspect-ratio:2/3;border-radius:.6rem;overflow:hidden;background:var(--bg-tertiary);border:1px solid var(--border);transition:transform .12s,border-color .12s}.poster:hover .poster-img{transform:translateY(-3px);border-color:var(--accent-text)}.poster-img img{width:100%;height:100%;object-fit:cover;display:block}.poster-empty{width:100%;height:100%;display:grid;place-items:center;font-size:2rem;font-weight:800;color:#46507a}.poster-done{position:absolute;top:6px;right:6px;background:#22c55e;color:#06240f;font-weight:800;font-size:.7rem;border-radius:999px;width:20px;height:20px;display:grid;place-items:center}.poster-badge{position:absolute;top:6px;left:6px;background:#080a14d1;color:#fbbf24;font-size:.72rem;font-weight:700;border-radius:.4rem;padding:.1rem .42rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.bulk-bar{position:fixed;left:0;right:0;bottom:0;z-index:46;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));background:var(--bg-secondary);border-top:1px solid var(--accent);box-shadow:0 -10px 30px -10px #0009}.bulk-bar .bulk-count{font-weight:700;color:var(--accent-text);padding-right:.4rem;border-right:1px solid var(--border);margin-right:.4rem}.bulk-bar select{background:var(--bg-main);border:1px solid var(--border);color:var(--text);border-radius:.5rem;padding:.4rem .6rem;font-size:.88rem}.poster.selected .poster-img{outline:3px solid var(--accent);outline-offset:2px}.poster.selected:before,.data-table tbody tr.selected td:first-child{content:""}.data-table tbody tr.selected{background:#6366f121}.poster-overlay{position:absolute;left:0;right:0;bottom:0;padding:1.7rem .55rem .5rem;display:flex;flex-direction:column;gap:.05rem;background:linear-gradient(to top,#05070df7 5%,#05070d99 55%,#05070d00);pointer-events:none}.poster-title{color:#fff;font-size:.83rem;font-weight:700;line-height:1.2;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 1px 3px rgba(0,0,0,.55)}.poster-date{color:#ffffffc7;font-size:.71rem}.rows{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.row{display:flex;align-items:center;gap:.75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:.55rem;padding:.5rem .8rem;cursor:pointer;transition:border-color .12s}.row:hover{border-color:var(--accent-text)}.row-cover{width:40px;height:56px;flex-shrink:0;border-radius:.35rem;overflow:hidden;background:var(--bg-tertiary);display:grid;place-items:center;color:#46507a;font-weight:800}.row-cover img{width:100%;height:100%;object-fit:cover}.row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.row-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-sub{font-size:.78rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-rating{font-size:.84rem;color:#fbbf24;font-weight:700;flex-shrink:0}.tag.status-done{color:#34d399}.tag.status-in_progress{color:#a5b4fc}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-secondary)}.data-table{width:100%;border-collapse:collapse;font-size:.88rem}.data-table th,.data-table td{padding:.7rem 1rem;text-align:left;white-space:nowrap}.data-table thead th{color:var(--text-muted);font-weight:600;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .12s}.data-table th.sortable:hover{color:var(--text)}.data-table th.sortable.active{color:var(--accent-text)}.data-table th .arrow{display:inline-block;width:.9em;font-size:.7em}.data-table tbody tr{border-top:1px solid var(--border);cursor:pointer;transition:background .12s}.data-table tbody tr:hover{background:var(--bg-tertiary)}.data-table td.col-title{font-weight:600;white-space:normal;min-width:220px}.data-table td.col-genres,.data-table th.col-genres{color:var(--text-muted);white-space:normal;max-width:260px;font-weight:400;text-transform:none;letter-spacing:0;font-size:inherit}.data-table thead th.col-genres{font-weight:600;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em}.data-table .col-cover{width:50px;padding-right:0}.tbl-cover{width:34px;height:47px;border-radius:.3rem;overflow:hidden;background:var(--bg-tertiary);display:grid;place-items:center;color:#46507a;font-weight:800;font-size:.85rem}.tbl-cover img{width:100%;height:100%;object-fit:cover}.data-table .muted{color:var(--text-muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#050812b3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:1.5rem;z-index:50}.modal{width:100%;max-width:720px;max-height:90vh;overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border);border-radius:.9rem;box-shadow:0 30px 80px -20px #000000b3;animation:rise .3s ease both}.modal-backdrop{animation:fade-in .18s ease both}.modal-backdrop.closing{animation:fade-out .17s ease forwards;pointer-events:none}.modal-backdrop.closing .modal{animation:modal-out .17s ease forwards}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes modal-out{to{opacity:0;transform:translateY(10px) scale(.985)}}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:1.1rem 1.3rem;border-bottom:1px solid var(--border)}.modal-head h2{margin:0;font-size:1.2rem}.modal-body{padding:1.5rem 1.6rem;display:flex;flex-direction:column;gap:1.2rem}.modal-foot{display:flex;justify-content:flex-end;gap:.6rem;padding-top:.3rem}.field select,.field textarea{background:var(--bg-main);border:1px solid var(--border);color:var(--text);border-radius:.55rem;padding:.6rem .7rem;font-size:.93rem;font-family:inherit;resize:vertical;width:100%;min-width:0}.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px var(--ring)}.image-field{display:flex;flex-direction:column;gap:.5rem}.image-preview{aspect-ratio:2/3;border-radius:.6rem;border:1px dashed var(--border);background:var(--bg-main);display:grid;place-items:center;overflow:hidden;cursor:pointer;position:relative;padding:.5rem;text-align:center}.image-preview img{width:100%;height:100%;object-fit:cover}.image-busy{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#0006;font-size:1.4rem}.image-url-row{display:flex;flex-direction:column;gap:.4rem}.image-url-row input{width:100%;background:var(--bg-main);border:1px solid var(--border);color:var(--text);border-radius:.5rem;padding:.5rem .6rem;font-size:.82rem}.image-url-row .btn-ghost{justify-content:center;padding:0 .6rem}.btn-ghost.small{font-size:.8rem;padding:0 .5rem;min-height:28px}.btn-ghost.danger{color:var(--danger);border-color:#f8717166}.item-sheet{max-width:760px;position:relative;padding:0;overflow:hidden auto}.sheet-close{position:absolute;top:.7rem;right:.7rem;z-index:3;background:#0a0c1480;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff}.sheet-close:hover{background:#0a0c14c7;color:#fff}.sheet-hero{position:relative;overflow:hidden}.sheet-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;filter:blur(26px) saturate(1.25);transform:scale(1.25);opacity:.6}.sheet-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(155deg,#0c0e1880,#0c0e18ed)}.sheet-hero-fg{position:relative;z-index:1;display:grid;grid-template-columns:150px minmax(0,1fr);grid-template-areas:"poster head" "poster gallery";gap:.9rem 1.4rem;padding:1.6rem;align-items:start}.sheet-hero-fg>.sheet-poster{grid-area:poster;align-self:start}.sheet-hero-fg>.sheet-head{grid-area:head}.sheet-hero-fg>.sheet-gallery{grid-area:gallery;align-self:end}.sheet-poster{width:150px;flex-shrink:0;aspect-ratio:2/3;border-radius:.7rem;overflow:hidden;background:var(--bg-tertiary);box-shadow:0 16px 38px -12px #000000b3}.sheet-poster img{width:100%;height:100%;object-fit:cover;display:block}.sheet-poster .poster-empty{width:100%;height:100%;display:grid;place-items:center;font-size:2.4rem}.sheet-head{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:.55rem}.sheet-kicker{font-size:.76rem;text-transform:uppercase;letter-spacing:.07em;color:#ffffffb8}.sheet-head h2{margin:0;font-size:1.55rem;line-height:1.15;letter-spacing:-.01em}.sheet-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.sheet-genres{display:flex;flex-wrap:wrap;gap:.35rem}.sheet-pill{font-size:.74rem;font-weight:700;border-radius:999px;padding:.2rem .65rem}.sheet-pill.st-done{background:#22c55e2e;color:#4ade80}.sheet-pill.st-in_progress{background:#818cf833;color:#a5b4fc}.sheet-pill.st-backlog{background:#ffffff1f;color:#ffffffd1}.sheet-pill.own-wishlist{background:#f472b62e;color:#f9a8d4}.sheet-pill.own-owned{background:#38bdf829;color:#7dd3fc}.stars{position:relative;display:inline-flex;align-items:center}.stars-track,.stars-fill{font-size:1.05rem;letter-spacing:2px;line-height:1}.stars-track{color:#fff3}.stars-fill{position:absolute;left:0;top:0;color:#fbbf24;overflow:hidden;white-space:nowrap}.stars-num{color:#fbbf24;font-weight:800;font-size:.92rem;margin-left:.5rem}.stars-num small{color:#fbbf2499;font-weight:600}.sheet-body{padding:1.3rem 1.6rem;display:flex;flex-direction:column;gap:1.25rem}.sheet-quick{display:flex;flex-wrap:wrap;gap:.9rem 1.2rem;align-items:flex-end}.quick-group{display:flex;flex-direction:column;gap:.35rem}.quick-lbl{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.sheet-lists{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.kv{margin:0;display:flex;flex-direction:column;gap:.45rem}.kv-row{display:grid;grid-template-columns:160px 1fr;gap:1rem;font-size:.9rem}.kv-row dt{color:var(--text-muted)}.kv-row dd{margin:0;color:#cdd3e6}.details-block{margin:0}.details-block h4{margin:0 0 .4rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.details-block p{margin:0;line-height:1.6;color:#cdd3e6}.sheet-foot{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;padding:0 1.6rem 1.5rem}.sheet-foot .btn-primary{margin-top:0}.sheet-tools{position:absolute;top:.7rem;right:.7rem;z-index:3;display:flex;gap:.35rem}.sheet-tools .icon-btn{background:#0a0c1480;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff}.sheet-tools .icon-btn:hover{background:#0a0c14c7;color:#fff}.sheet-poster{border:none;padding:0;cursor:default;position:relative}.sheet-poster.zoomable{cursor:zoom-in}.zoom-hint{position:absolute;right:6px;bottom:6px;background:#0a0c1499;color:#fff;border-radius:.4rem;padding:3px;display:grid;place-items:center;opacity:0;transition:opacity .15s}.sheet-poster.zoomable:hover .zoom-hint{opacity:1}.sheet-gallery{display:flex;gap:.5rem;flex-wrap:wrap}.gallery-thumb{position:relative;width:96px;height:58px;border-radius:.45rem;overflow:hidden;border:1px solid var(--border);background:var(--bg-tertiary);cursor:zoom-in;padding:0;transition:border-color .12s}.gallery-thumb:hover{border-color:var(--accent-text)}.gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.gallery-more{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#05070da8;color:#fff;font-weight:800;font-size:.95rem;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.lightbox-strip{position:absolute;left:0;right:0;bottom:0;display:flex;gap:.4rem;justify-content:center;flex-wrap:nowrap;overflow-x:auto;padding:.7rem .8rem calc(.7rem + env(safe-area-inset-bottom));background:linear-gradient(to top,rgba(4,6,12,.85),transparent)}.lb-thumb{flex:0 0 auto;width:64px;height:40px;border-radius:.35rem;overflow:hidden;border:2px solid transparent;background:var(--bg-tertiary);padding:0;cursor:pointer;opacity:.55;transition:opacity .12s,border-color .12s}.lb-thumb img{width:100%;height:100%;object-fit:cover;display:block}.lb-thumb:hover{opacity:.85}.lb-thumb.on{opacity:1;border-color:var(--accent-text)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#04060ceb;display:grid;place-items:center;padding:2rem}.lightbox img{max-width:92vw;max-height:88vh;border-radius:.5rem;box-shadow:0 20px 60px -10px #000c}.lightbox-close{position:absolute;top:1rem;right:1rem;color:#fff;background:#ffffff1f}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);color:#fff;background:#ffffff1f;width:44px;height:44px}.lightbox-nav.prev{left:1rem}.lightbox-nav.next{right:1rem}.lightbox-nav:hover,.lightbox-close:hover{background:#ffffff3d;color:#fff}.modal-foot.edit-foot{justify-content:space-between}.foot-right{display:flex;gap:.6rem}.scan-fill{width:100%;justify-content:center;margin-top:.6rem}.fill-wrap{position:relative;display:flex}.fill-wrap>.btn-fill{align-self:stretch}.fill-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9}.fill-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:10;background:var(--bg-secondary);border:1px solid var(--border);border-radius:.6rem;box-shadow:0 14px 36px -12px #000000a6;padding:.3rem;display:flex;flex-direction:column;gap:.15rem}.fill-menu button{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;background:none;border:none;color:var(--text);padding:.5rem .6rem;border-radius:.45rem;cursor:pointer;font-size:.86rem}.fill-menu button:hover:not(:disabled){background:var(--bg-tertiary)}.fill-menu button:disabled{opacity:.45;cursor:default}.field-warn{color:var(--danger);font-size:.78rem;margin-top:.25rem}.field input.input-dup{border-color:var(--danger)}.field input.input-dup:focus{box-shadow:0 0 0 3px #f8717140}.review-prompt{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem;background:linear-gradient(135deg,#6366f12e,#a855f724);border:1px solid var(--accent);border-radius:.6rem;padding:.7rem .9rem;font-size:.9rem}.review-prompt-actions{display:flex;gap:.5rem}.review-prompt-actions .btn-primary{padding:0 .85rem;min-height:32px}.error.small{display:block;padding:.4rem 0;background:none;border:none}.chip-select{display:flex;flex-wrap:wrap;gap:.4rem}.chip-opt{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:.25rem .7rem;font-size:.82rem;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.chip-opt:hover{color:var(--text);border-color:var(--accent-text)}.chip-opt.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent-text)}.chip-count{opacity:.6;font-size:.85em}.genres-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.4rem;margin:.8rem 0}.genre-row{display:flex;align-items:center;gap:.2rem;background:var(--bg-main);border:1px solid var(--border);border-radius:.5rem;padding:.2rem .3rem .2rem .5rem}.genre-row.on{border-color:var(--accent-text);background:#6366f114}.genre-pick{flex:1;display:flex;align-items:center;gap:.4rem;background:none;border:none;color:var(--text);padding:.35rem 0;cursor:pointer;font-size:.86rem;text-align:left;min-width:0}.genre-pick>span:not(.genre-count){flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.2}.genre-count{flex:0 0 auto}.genre-pick input[type=checkbox]{accent-color:var(--accent-text)}.genre-count{color:var(--text-muted);font-size:.74rem;background:var(--bg-tertiary);padding:.05rem .4rem;border-radius:999px}.genre-row .icon-btn.suggested{color:#fbbf24}.genre-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.9rem}.genre-actions input{flex:1 1 160px;min-width:0;background:var(--bg-main);border:1px solid var(--border);color:var(--text);border-radius:.5rem;padding:.5rem .7rem;font-size:.9rem}.genre-actions input:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px var(--ring)}.genre-actions .btn-primary{margin-top:0}.import-type{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.7rem;background:var(--bg-main);border:1px solid var(--accent);border-radius:.6rem;padding:.7rem .9rem;font-size:.88rem}.import-type select{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);border-radius:.5rem;padding:.4rem .6rem}.import-type .btn-primary{padding:0 .85rem}.account-profile{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem}.account-photo-actions{display:flex;gap:.5rem;flex-wrap:wrap}.avatar.lg{width:72px;height:72px;font-size:1.6rem}.avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.field input:disabled{opacity:.55;cursor:not-allowed}@media (max-width: 600px){.lightbox{padding:.5rem}.lightbox-nav{width:38px;height:38px}.sheet-tools .icon-btn{background:#0a0c14a6}}@media (max-width: 620px){.sheet-hero-fg{grid-template-columns:116px minmax(0,1fr);grid-template-areas:"poster gallery" "head head";padding:1.1rem;gap:.7rem .9rem}.sheet-poster{width:116px}.sheet-gallery{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;align-content:start}.gallery-thumb{width:100%;height:auto;aspect-ratio:16 / 10}.kv-row{grid-template-columns:1fr;gap:.1rem}}.confirm{display:inline-flex;align-items:center;gap:.45rem;font-size:.9rem;color:var(--text-muted)}@media (max-width: 820px){.shell{grid-template-columns:1fr}.mobile-topbar{display:flex}.sidebar{position:fixed;top:0;left:0;z-index:60;height:100vh;height:100dvh;width:272px;max-width:82vw;flex-direction:column;align-items:stretch;transform:translate(-100%);transition:transform .25s ease;box-shadow:0 0 60px -8px #000000a6}.sidebar.open{transform:translate(0)}.sidebar-nav{flex-direction:column;flex-wrap:nowrap}.sidebar-label,.sidebar-foot{display:flex}.nav-backdrop.show{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#0508128c}.card-grid{gap:.7rem}.collection-controls{width:100%}.collection-controls>.search{flex:1 1 140px;min-width:0}.settings-tabs{overflow-x:auto}.modal-backdrop{padding:.6rem}.modal-body{padding:1.1rem 1.15rem}}.settings{max-width:none}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.7rem}.theme-card{display:flex;flex-direction:column;gap:.5rem;padding:.55rem;border:2px solid;border-radius:.65rem;cursor:pointer;text-align:left;transition:transform .1s}.theme-card:hover{transform:translateY(-2px)}.theme-preview{position:relative;height:48px;border-radius:.45rem;border:1px solid;padding:.55rem;display:flex;flex-direction:column;gap:.32rem;justify-content:center}.theme-bar{height:5px;width:68%;border-radius:999px;opacity:.85}.theme-bar.short{width:42%;opacity:.6}.theme-dot{position:absolute;right:8px;bottom:8px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center}.theme-name{font-size:.78rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-tabs{display:flex;gap:.4rem;margin-bottom:1.2rem;border-bottom:1px solid var(--border)}.settings-tabs button{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);padding:.6rem .9rem;cursor:pointer;font-size:.92rem;margin-bottom:-1px}.settings-tabs button.on{color:var(--text);border-bottom-color:var(--accent-text)}.settings-section{background:var(--bg-secondary);border:1px solid var(--border);border-radius:.7rem;padding:1.2rem;margin-bottom:1.2rem}.settings-section.danger{border-color:#f871714d}.settings-grid.two{grid-template-columns:1fr 1fr}@media (max-width: 620px){.settings-grid.two{grid-template-columns:1fr}}.seg{display:inline-flex;min-height:var(--ctl-h);border:1px solid var(--border);border-radius:.55rem;overflow:hidden;align-self:flex-start}.seg button{background:var(--bg-main);color:var(--text-muted);border:none;border-right:1px solid var(--border);padding:0 1rem;cursor:pointer;font-size:.88rem}.seg button:last-child{border-right:none}.seg button.on{background:var(--accent);color:var(--on-accent)}.theme-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.theme-cols .theme-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.theme-col-title{font-size:.74rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin:0 0 .7rem}@media (max-width: 760px){.theme-cols{grid-template-columns:1fr}}.menu-config{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.menu-config li{display:flex;align-items:center;gap:.6rem;background:var(--bg-main);border:1px solid var(--border);border-radius:.5rem;padding:.5rem .7rem}.menu-config li>span{flex:1;font-size:.9rem}.menu-config li.off{opacity:.5}.menu-config li>svg:first-child{color:var(--text-muted)}.modal-list{max-width:560px}.icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:.4rem;max-height:150px;overflow-y:auto;padding:.4rem;background:var(--bg-main);border:1px solid var(--border);border-radius:.5rem}.icon-pick{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-muted);border-radius:.45rem;padding:.45rem;cursor:pointer;display:grid;place-items:center}.icon-pick:hover{color:var(--text);border-color:var(--accent-text)}.icon-pick.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent-text)}.rules-box{background:var(--bg-main);border:1px solid var(--border);border-radius:.55rem;padding:.9rem;display:flex;flex-direction:column;gap:.9rem}.settings-section h3{margin:0 0 .3rem;font-size:1rem}.settings-section .hint{color:var(--text-muted);font-size:.84rem;margin:0 0 1rem}.settings-grid{display:grid;gap:.85rem}.saved-pill{color:#22c55e;font-size:.82rem}.key-state{font-size:.74rem;color:var(--text-muted);margin-left:.4rem}.key-state.set{color:#22c55e}.token-reveal{margin-top:.3rem}.token-box{display:flex;align-items:center;gap:.5rem;background:var(--bg-main);border:1px solid var(--accent);border-radius:.5rem;padding:.5rem .6rem}.token-box code{flex:1;min-width:0;overflow-x:auto;white-space:nowrap;font-size:.84rem;color:#a5b4fc}.api-docs{background:var(--bg-main);border:1px solid var(--border);border-radius:.6rem;padding:.8rem .9rem;margin-top:1rem}.api-docs code{background:var(--bg-tertiary);border-radius:.3rem;padding:.05rem .35rem;font-size:.82rem;color:#cdd3e6}.api-endpoints{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.settings-section .hint code{background:var(--bg-tertiary);border-radius:.3rem;padding:.05rem .35rem;font-size:.84rem}.search-panel{padding:1.1rem 1.6rem;border-bottom:1px solid var(--border)}@keyframes scan-pulse{0%,to{opacity:.4}50%{opacity:1}}.stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:.7rem;padding:1.1rem 1.2rem}.stat-value{font-size:1.8rem;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.stat-label{color:var(--text-muted);font-size:.85rem;margin-top:.2rem}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.dash-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:.7rem;padding:1.1rem 1.2rem}.dash-card h3{margin:0 0 .9rem;font-size:.95rem}.bars{display:flex;flex-direction:column;gap:.5rem}.bar-row{display:grid;grid-template-columns:90px 1fr 32px;align-items:center;gap:.6rem;font-size:.82rem}.bar-label{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{background:var(--bg-tertiary);border-radius:999px;height:9px;overflow:hidden}.bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.bar-val{text-align:right;color:var(--text-muted)}.top-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.top-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.top-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-type{color:var(--text-muted);font-size:.74rem;flex-shrink:0}.top-rating{color:#fbbf24;font-weight:700;flex-shrink:0}.top-thumb{width:24px;height:32px;border-radius:.25rem;object-fit:cover;background:var(--bg-tertiary);flex-shrink:0}.top-thumb.empty{display:inline-block}.dash-section{font-size:1rem;font-weight:700;letter-spacing:-.01em;color:var(--text-muted);text-transform:uppercase;margin:1.6rem 0 .6rem;font-size:.78rem}.dash-section:first-of-type{margin-top:.4rem}.per-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1rem}.per-type-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:.7rem;padding:.9rem 1rem;display:flex;flex-direction:column;gap:.6rem}.per-type-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.per-type-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.per-type-stats>div{display:flex;flex-direction:column;line-height:1.2}.per-type-stats strong{font-size:.95rem}.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.ach-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:.7rem;padding:1rem 1.1rem;opacity:.6}.ach-card.on{opacity:1;border-color:#6366f166}.ach-head{display:flex;justify-content:space-between;align-items:center}.ach-tier{font-size:.7rem;font-weight:700;color:var(--on-accent);background:linear-gradient(135deg,var(--accent),var(--accent-2));border-radius:999px;padding:.1rem .5rem}.ach-card:not(.on) .ach-tier{background:var(--bg-tertiary);color:var(--text-muted)}.ach-track{background:var(--bg-tertiary);border-radius:999px;height:7px;overflow:hidden;margin:.6rem 0 .4rem}.ach-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:999px}.ach-num{font-size:.78rem;color:var(--text-muted)}.ach-cat{margin-bottom:1.8rem}.ach-cat-title{font-size:.8rem;color:var(--text-muted);margin:0 0 .85rem;text-transform:uppercase;letter-spacing:.07em}.btn-primary,.btn-ghost{display:inline-flex;align-items:center;gap:.4rem}.view-toggle button{display:inline-flex;align-items:center;justify-content:center}.cf-list{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.4rem}.cf-list li{display:flex;justify-content:space-between;align-items:center;background:var(--bg-main);border:1px solid var(--border);border-radius:.5rem;padding:.5rem .7rem}.cf-list li .tag{margin:0 .3rem}.cf-check{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text-muted)}.cf-catalog{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}.cf-catalog li{display:flex;justify-content:space-between;align-items:center;gap:.8rem;background:var(--bg-main);border:1px solid var(--border);border-radius:.6rem;padding:.55rem .8rem;transition:border-color .12s}.cf-catalog li.on{border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}.cf-catalog-info{display:flex;flex-direction:column;gap:.1rem;min-width:0}.cf-catalog-info strong{font-weight:600}.cf-switch{position:relative;flex-shrink:0;width:40px;height:22px;cursor:pointer}.cf-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.cf-switch-track{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:999px;transition:background .15s}.cf-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--text-muted);transition:transform .15s,background .15s}.cf-switch input:checked+.cf-switch-track{background:var(--accent);border-color:var(--accent-text)}.cf-switch input:checked+.cf-switch-track:after{transform:translate(18px);background:#fff}.cf-checks{display:flex;flex-wrap:wrap;gap:.4rem}.cf-checks .cf-check{padding:.4rem .75rem;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text);border-radius:999px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s,border-color .12s,color .12s}.cf-checks .cf-check input[type=checkbox]{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.cf-checks .cf-check:hover{border-color:var(--accent-text)}.cf-checks .cf-check:has(input:checked){background:var(--accent);border-color:var(--accent-text);color:var(--on-accent)}.cf-checks .cf-check:focus-within{outline:2px solid var(--accent);outline-offset:2px}.cal-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.9rem}.cal-month{text-transform:capitalize;min-width:160px;text-align:center}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-dow{text-align:center;font-size:.74rem;color:var(--text-muted);padding:.3rem 0}.cal-cell{min-height:84px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:.4rem;padding:.3rem;display:flex;flex-direction:column;gap:2px}.cal-cell.empty{background:transparent;border-color:transparent}.cal-day{font-size:.72rem;color:var(--text-muted)}.cal-item{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:var(--on-accent);border:none;border-radius:.35rem;font-size:.7rem;padding:.15rem .3rem;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.new-list{padding:.15rem .65rem}.new-list input{width:100%;background:var(--bg-main);border:1px solid var(--border);color:var(--text);border-radius:.45rem;padding:.4rem .55rem;font-size:.85rem}.new-list input:focus{outline:none;border-color:var(--accent-text)}.chip-x{background:none;border:none;color:inherit;cursor:pointer;margin-left:.3rem;opacity:.7;font-size:.85rem;padding:0}.chip-x:hover{opacity:1}.add-to-list{background:var(--bg-tertiary);color:var(--text-muted);border:1px dashed var(--border);border-radius:999px;padding:.16rem .6rem;font-size:.75rem;cursor:pointer}.genre-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.genre-chip{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:.12rem .55rem;font-size:.74rem;cursor:pointer;transition:color .12s,border-color .12s}.genre-chip:hover{color:var(--text);border-color:var(--accent-text)}.collection-bar{position:sticky;top:0;z-index:5;margin:-1.5rem -2rem 1.25rem;padding:1.1rem 2rem .9rem;background:color-mix(in srgb,var(--bg-main) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}@supports not (backdrop-filter: blur(8px)){.collection-bar{background:var(--bg-main)}}.shell-main::-webkit-scrollbar,.sidebar-nav::-webkit-scrollbar,.modal::-webkit-scrollbar,.search-results::-webkit-scrollbar{width:9px;height:9px}.shell-main::-webkit-scrollbar-thumb,.sidebar-nav::-webkit-scrollbar-thumb,.modal::-webkit-scrollbar-thumb,.search-results::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:999px}.shell-main::-webkit-scrollbar-track{background:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (max-width: 820px){.collection-bar{position:static;margin:0 0 .6rem;padding:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:none}.collection-bar h1{display:none}.collection{padding:1rem 1rem 1.5rem}.mobile-topbar{padding:.45rem .8rem}.collection-controls{gap:.5rem}.collection-controls>.search{flex:1 1 100%;min-width:0}.collection-controls>.filters-btn{flex:1 1 auto;justify-content:center}.collection-controls>.view-toggle{flex:0 0 auto}.collection-controls>.grid-size{flex:1 1 auto}.collection-controls>.grid-size input[type=range]{flex:1 1 auto;width:auto}.collection-controls>.btn-ghost{flex:1 1 auto;justify-content:center}.filters-accordion .filters-grid{grid-template-columns:1fr}.collection-controls>.add-btn{position:fixed;right:calc(1rem + env(safe-area-inset-right));bottom:calc(1rem + env(safe-area-inset-bottom));z-index:40;width:54px;height:54px;border-radius:50%;padding:0;justify-content:center;box-shadow:0 12px 28px -6px #7c50e6cc}.add-btn .add-label{display:none}.add-btn svg{width:22px;height:22px}.collection.selecting .collection-controls>.add-btn{display:none}}.filter-badge{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:.66rem;font-weight:800;margin-left:.15rem}.filters-btn.on{color:var(--text);border-color:var(--accent-text)}.filters-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.filters-grid>.field{min-width:0}.filters-grid .clear-filters{grid-column:1 / -1;justify-self:start}.filters-modal{max-width:520px}.filters-accordion{background:var(--bg-secondary);border:1px solid var(--border);border-radius:.7rem;padding:1rem;margin-bottom:1rem;animation:fade-in .15s ease both}.filters-accordion .filters-grid{grid-template-columns:1fr 1fr}@media (max-width: 640px){.sheet-hero-fg{padding:1.1rem}.sheet-body{padding:1.1rem;gap:1rem}.sheet-foot{padding:0 1.1rem 1.1rem}.sheet-head h2{font-size:1.3rem}.modal-backdrop{padding:0}.modal{max-width:100%;max-height:100dvh;border-radius:0}.modal-body{padding:1.1rem}.field-row{grid-template-columns:1fr}.image-preview{width:150px;height:225px;aspect-ratio:auto;align-self:center}.cal-grid{gap:2px}.cal-cell{min-height:50px;padding:.2rem;gap:2px}.cal-item{font-size:0;padding:0;height:6px;border-radius:999px}.settings-tabs button{flex-shrink:0;white-space:nowrap}.admin-users .muted.small{white-space:normal;word-break:break-word}.data-table th,.data-table td{padding:.5rem .55rem}.common-items .col-title{min-width:0}.onb-foot{padding:.8rem 1rem}.onb-foot .btn-primary,.onb-foot .btn-ghost{padding:0 .7rem;white-space:nowrap}.lightbox{padding-bottom:80px}}.toast-viewport{position:fixed;bottom:1rem;right:1rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem;max-width:min(380px,calc(100vw - 2rem));pointer-events:none}.toast{pointer-events:auto;cursor:pointer;padding:.7rem .95rem;border-radius:.55rem;font-size:.86rem;line-height:1.35;color:var(--text);background:var(--bg-tertiary);border:1px solid var(--border);box-shadow:0 12px 30px -10px #0009;animation:toast-in .16s ease-out}.toast-error{background:#7f1d1d;border-color:#b91c1c}.toast-success{background:#14532d;border-color:#16a34a}.toast-info{background:var(--bg-tertiary)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.offline-banner{display:flex;align-items:center;gap:.45rem;padding:.5rem .9rem;background:#78350f;color:#fde68a;font-size:.84rem;font-weight:600;border-bottom:1px solid #b45309}.error-boundary{max-width:480px;margin:4rem auto;padding:2rem;text-align:center;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:.8rem}.error-boundary h2{margin:0 0 .5rem}.error-boundary-actions{display:flex;gap:.6rem;justify-content:center;margin-top:1.2rem}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.sheet-nav{position:fixed;top:50%;transform:translateY(-50%);z-index:55;width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--border);border-radius:999px;background:#141828d9;color:var(--text, #fff);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 8px 24px -8px #0009;transition:background .12s,border-color .12s,transform .12s}.sheet-nav:hover{background:var(--accent);border-color:var(--accent-text);color:var(--on-accent)}.sheet-nav:active{transform:translateY(-50%) scale(.94)}.sheet-nav.prev{left:max(.75rem,calc(50% - 420px))}.sheet-nav.next{right:max(.75rem,calc(50% - 420px))}@media (max-width: 640px){.sheet-nav{display:none}}.toggle-row{display:flex;align-items:center;gap:.8rem;cursor:pointer;-webkit-user-select:none;user-select:none;padding:.6rem 0}.toggle-row input{display:none}.toggle-row .toggle-label{display:inline-flex;align-items:center;gap:.4rem;font-weight:600}.toggle-row .switch{width:42px;height:24px;border-radius:999px;background:var(--bg-tertiary);border:1px solid var(--border);position:relative;transition:background .15s,border-color .15s;flex-shrink:0;margin-left:auto}.toggle-row .switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#94a3b8;transition:transform .15s,background .15s}.toggle-row.on .switch{background:color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--accent-text)}.toggle-row.on .switch:after{transform:translate(18px);background:var(--accent)}.toggle-row textarea,.field textarea{width:100%;resize:vertical;font:inherit;padding:.55rem .7rem;border-radius:.5rem;border:1px solid var(--border);background:var(--bg-main);color:var(--text)}.admin-users td{vertical-align:middle;white-space:nowrap}.admin-users .u-name{font-weight:600}.admin-users .u-public{color:var(--accent-text);font-size:.7rem}.admin-users tr.banned{opacity:.55}.admin-users .col-actions{text-align:right}.admin-users .row-actions{display:inline-flex;gap:.2rem}.admin-users .reset-inline{display:inline-flex;gap:.3rem;align-items:center}.admin-users .reset-inline input{width:130px}.tag.role-admin{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent-text)}.tag.status-banned{background:#ef444429;color:#fca5a5}.social-help{margin:-.4rem 0 1rem;max-width:640px;line-height:1.5}.icon-btn.on{color:var(--accent-text);background:var(--bg-tertiary)}.social-tabs{display:flex;gap:.3rem;border-bottom:1px solid var(--border);margin-bottom:1.1rem}.social-tabs button{background:none;border:0;border-bottom:2px solid transparent;color:var(--text-muted);font-size:.92rem;font-weight:600;padding:.55rem .9rem;cursor:pointer;margin-bottom:-1px;transition:color .12s,border-color .12s}.social-tabs button:hover{color:var(--text)}.social-tabs button.on{color:var(--accent-text);border-bottom-color:var(--accent-text)}.social-toolbar{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-bottom:1rem}.social-search{position:relative;flex:1;min-width:220px}.social-search svg{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.social-search input{width:100%;height:var(--ctl-h);padding:0 .7rem 0 2.1rem;border:1px solid var(--border);border-radius:.6rem;background:var(--bg-secondary);color:var(--text);font-size:.9rem}.social-search input:focus{outline:none;border-color:var(--accent-text)}.social-select{padding:.55rem .7rem;border:1px solid var(--border);border-radius:.6rem;background:var(--bg-secondary);color:var(--text);font-size:.88rem;cursor:pointer}.social-section-title{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:.4rem 0 .7rem;font-weight:700}.social-mutual{display:inline-flex;align-items:center;gap:.3rem;color:var(--accent-text);font-weight:600}.friends-section{margin-bottom:1.6rem}.friend-row{display:flex;align-items:center;gap:.8rem;padding:.6rem .2rem;border-bottom:1px solid var(--border)}.friend-row:last-child{border-bottom:0}.friend-row .social-avatar{width:42px;height:42px;font-size:1rem}.friend-row-info{display:flex;flex-direction:column;min-width:0;flex:1}.friend-row-info strong{line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.friend-row-info a{color:inherit;text-decoration:none}.friend-row-info a:hover strong{color:var(--accent-text)}.feed-list{display:flex;flex-direction:column;gap:.4rem}.feed-day-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-weight:700;margin:1rem 0 .4rem}.feed-item{display:flex;align-items:center;gap:.7rem;padding:.55rem .6rem;border:1px solid var(--border);border-radius:.6rem;background:var(--bg-secondary);color:inherit;text-decoration:none}.feed-item:hover{border-color:var(--accent-text)}.feed-cover{width:40px;height:56px;border-radius:.3rem;object-fit:cover;flex-shrink:0;background:var(--bg-tertiary)}.feed-cover.ph{display:grid;place-items:center;color:var(--text-muted);font-weight:700}.feed-text{flex:1;min-width:0;font-size:.9rem;line-height:1.35}.feed-text .feed-user{font-weight:700}.feed-text .feed-title{font-weight:600}.feed-badge{flex-shrink:0;font-size:.78rem;color:var(--text-muted);display:inline-flex;align-items:center;gap:.25rem}.feed-entry{display:flex;flex-direction:column}.feed-reactions{display:flex;gap:.3rem;padding:.3rem .4rem 0}.react-btn{display:inline-flex;align-items:center;gap:.22rem;padding:.15rem .45rem;border-radius:1rem;border:1px solid transparent;background:transparent;cursor:pointer;font-size:.9rem;line-height:1.1;transition:background .12s,border-color .12s}.react-btn:hover{background:var(--bg-tertiary)}.react-btn.on{background:var(--bg-tertiary);border-color:var(--accent-text)}.react-count{font-size:.72rem;color:var(--text-muted);font-weight:700}.react-btn.on .react-count{color:var(--accent-text)}.notif-bell{position:relative;display:flex}.notif-badge{position:absolute;top:-2px;right:-2px;min-width:15px;height:15px;padding:0 3px;border-radius:999px;background:#ef4444;color:#fff;font-size:.6rem;font-weight:700;display:grid;place-items:center;line-height:1;pointer-events:none}.notif-panel{position:fixed;left:14px;bottom:66px;width:300px;max-width:calc(100vw - 28px);max-height:65vh;overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border);border-radius:.7rem;box-shadow:0 8px 30px #00000073;z-index:60}.notif-panel-head{padding:.7rem .9rem;font-weight:700;border-bottom:1px solid var(--border)}.notif-msg{padding:1rem .9rem}.notif-list{display:flex;flex-direction:column}.notif-item{display:flex;align-items:center;gap:.6rem;padding:.6rem .9rem;border-bottom:1px solid var(--border);color:inherit;text-decoration:none}.notif-item:last-child{border-bottom:0}.notif-item:hover{background:var(--bg-tertiary)}.notif-item.unread{background:color-mix(in srgb,var(--accent) 10%,transparent)}.notif-ava{width:32px;height:32px;border-radius:50%;overflow:hidden;flex-shrink:0;display:grid;place-items:center;background:var(--bg-tertiary);color:var(--text);font-size:.8rem;font-weight:700}.notif-ava img{width:100%;height:100%;object-fit:cover}.notif-text{flex:1;min-width:0;font-size:.85rem;line-height:1.35}.notif-cover{width:28px;height:40px;border-radius:.25rem;object-fit:cover;flex-shrink:0}.poster.clickable{cursor:pointer}.modal-social-item{width:min(560px,94vw)}.si-top{display:flex;gap:1rem;margin-bottom:.9rem}.si-cover{width:110px;aspect-ratio:2 / 3;object-fit:cover;border-radius:.5rem;flex-shrink:0;background:var(--bg-tertiary)}.si-cover.ph{display:grid;place-items:center;font-size:2rem;font-weight:700;color:var(--text-muted)}.si-meta{display:flex;flex-direction:column;gap:.3rem;min-width:0}.si-owner{color:var(--accent-text);text-decoration:none;font-weight:600;width:fit-content}.si-desc{font-size:.86rem;color:var(--text);margin:.3rem 0 0;max-height:8em;overflow:auto;line-height:1.4}.si-reactions{padding:0 0 .8rem;border-bottom:1px solid var(--border);margin-bottom:.8rem}.si-comments-title{font-size:.95rem;margin:0 0 .6rem}.si-comments{display:flex;flex-direction:column;gap:.8rem;margin-bottom:1rem;max-height:320px;overflow-y:auto}.si-comment{display:flex;gap:.6rem}.si-comment-body{flex:1;min-width:0}.si-comment-body p{margin:.15rem 0 0;font-size:.9rem;line-height:1.4;word-break:break-word}.si-comment-head{display:flex;align-items:center;gap:.5rem;font-size:.82rem}.si-comment-head a{color:inherit;text-decoration:none}.si-del{padding:.2rem;margin-left:auto}.si-add{display:flex;gap:.5rem}.si-add input{flex:1;min-width:0;padding:.55rem .7rem;border:1px solid var(--border);border-radius:.5rem;background:var(--bg-secondary);color:var(--text)}.si-add input:focus{outline:none;border-color:var(--accent-text)}.si-add .btn-ghost{white-space:nowrap}.dash-feed{margin-bottom:1.2rem}.dash-feed h3{display:flex;align-items:center;gap:.4rem}.dash-feed-all{margin-left:auto;font-size:.8rem;font-weight:600;color:var(--accent-text);text-decoration:none}.dash-feed-row{color:inherit;text-decoration:none;padding:.4rem .5rem;border-radius:.45rem}.dash-feed-row:hover{background:var(--bg-tertiary)}.stars{position:relative;display:inline-block;font-size:.9rem;line-height:1;letter-spacing:1px;white-space:nowrap}.stars-empty{color:var(--border)}.stars-fill{position:absolute;left:0;top:0;overflow:hidden;color:#fbbf24}.feed-review{margin:.35rem 0 0;padding:.4rem .7rem;border-left:3px solid var(--accent);background:var(--bg-secondary);border-radius:0 .4rem .4rem 0;font-size:.86rem;font-style:italic;color:var(--text);line-height:1.4;cursor:pointer;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.feed-review.open{-webkit-line-clamp:unset}.feed-layout{display:flex;gap:2rem;align-items:flex-start}.feed-col{flex:1 1 0;min-width:0}.feed-rail{width:340px;flex-shrink:0;position:sticky;top:.5rem;display:flex;flex-direction:column;gap:1rem}.rail-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:1rem;padding:.85rem 1rem}.rail-card h3{margin:0 0 .6rem;font-size:1.1rem;display:flex;align-items:center;gap:.45rem}.rail-item{display:flex;align-items:center;gap:.6rem;width:100%;background:none;border:0;padding:.4rem .3rem;border-radius:.5rem;cursor:pointer;text-align:left;color:inherit;transition:background .12s}.rail-item:hover{background:var(--bg-tertiary)}.rail-item-cover{width:40px;height:56px;border-radius:.35rem;object-fit:cover;flex-shrink:0;background:var(--bg-tertiary);display:grid;place-items:center;font-weight:700;border:1px solid var(--border)}.rail-rank{font-weight:800;font-size:.95rem;color:var(--text-muted);min-width:1.1rem;text-align:center;flex-shrink:0}.rail-rank-1{color:#fbbf24}.rail-rank-2{color:#cbd5e1}.rail-rank-3{color:#d97706}.rail-item-info{min-width:0}.rail-item-info strong{display:block;font-size:.88rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-tabs{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.55rem}.rail-tabs button{background:var(--bg-tertiary);border:0;color:var(--text-muted);font-size:.78rem;font-weight:600;padding:.22rem .62rem;border-radius:999px;cursor:pointer;transition:background .12s,color .12s}.rail-tabs button:hover{color:var(--text)}.rail-tabs button.on{background:var(--accent);color:var(--on-accent)}.rail-empty{padding:.5rem .3rem .2rem}.rail-cont{display:flex;align-items:center;gap:.2rem}.rail-cont-main{flex:1;min-width:0}.rail-done{flex-shrink:0;width:30px;height:30px;border-radius:50%;border:1px solid var(--border);background:none;color:var(--text-muted);display:grid;place-items:center;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.rail-done:hover{background:var(--accent);border-color:var(--accent-text);color:var(--on-accent)}.rail-user{display:flex;align-items:center;gap:.6rem;padding:.45rem .3rem}.rail-ava{width:38px;height:38px;flex-shrink:0}.rail-user-info{flex:1;min-width:0;display:flex;flex-direction:column;text-decoration:none;color:inherit;line-height:1.2}.rail-user-info strong{font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-user-info:hover strong{text-decoration:underline}.rail-user .friend-btn{padding:.28rem .7rem;font-size:.8rem}.rail-more{display:inline-block;margin-top:.4rem;color:var(--accent-text);text-decoration:none;font-size:.85rem;font-weight:600;padding:.3rem}.feed-sentinel{display:flex;justify-content:center;padding:1.6rem;min-height:1px}.rail-cta p{margin:0 0 .7rem;line-height:1.4}.rail-cta .btn-primary{width:100%;justify-content:center}@media (max-width: 1100px){.feed-rail{display:none}}.feed-bar{margin:-1.5rem 0 1rem;padding:1.1rem .3rem .9rem}@media (max-width: 820px){.feed-bar{margin:0 0 .6rem;padding:0}}.post{display:flex;gap:.8rem;padding:1.1rem .5rem;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent);border-radius:.5rem .5rem 0 0;transition:background .12s}.post:hover{background:color-mix(in srgb,var(--bg-secondary) 55%,transparent)}.post-ava{width:42px;height:42px;border-radius:50%;flex-shrink:0;overflow:hidden;display:grid;place-items:center;background:var(--bg-tertiary);font-weight:700;text-decoration:none;color:var(--text)}.post-ava img{width:100%;height:100%;object-fit:cover}.post-main{flex:1;min-width:0}.post-head{display:flex;align-items:center;gap:.4rem}.post-name{font-weight:700;color:var(--text);text-decoration:none;flex-shrink:0}.post-name:hover{text-decoration:underline}.post-sub{color:var(--text-muted);font-size:.84rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-menu{background:none;border:0;color:var(--text-muted);cursor:pointer;padding:.3rem;border-radius:.5rem;margin-left:auto;flex-shrink:0}.post-menu:hover{color:var(--danger, #ef4444);background:var(--bg-tertiary)}.post-body{margin:.45rem 0 0;line-height:1.5;white-space:pre-wrap;word-break:break-word;font-size:.95rem;max-width:68ch}.post-item{display:inline-flex;gap:.7rem;align-items:center;width:fit-content;max-width:100%;text-align:left;margin-top:.6rem;padding:0;background:none;border:0;cursor:pointer;color:inherit}.post-item:hover .post-item-info strong{text-decoration:underline}.post-item-cover{width:96px;height:136px;border-radius:.55rem;object-fit:cover;flex-shrink:0;background:var(--bg-tertiary);display:grid;place-items:center;font-weight:700;font-size:1.4rem;border:1px solid var(--border)}.post-item-info{min-width:0;max-width:380px;display:flex;flex-direction:column;gap:.25rem}.post-item-info strong{font-size:1rem;line-height:1.3;white-space:normal;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-covers-row{display:flex;gap:.5rem;margin-top:.55rem;flex-wrap:wrap}.post-cover-thumb{width:72px;padding:0;border:0;background:var(--bg-tertiary);border-radius:.45rem;overflow:hidden;cursor:pointer;aspect-ratio:2 / 3;display:grid;place-items:center;font-weight:700;color:var(--text-muted)}.post-cover-thumb img{width:100%;height:100%;object-fit:cover}.post-actions{display:flex;align-items:center;justify-content:space-between;max-width:340px;margin-top:.75rem}.post-action{display:inline-flex;align-items:center;gap:.4rem;background:none;border:0;color:var(--text-muted);cursor:pointer;padding:.4rem;border-radius:999px;transition:background .12s,color .12s;line-height:1}.post-action svg{display:block}.post-action-n{font-size:.84rem;font-weight:600}.post-action:hover{background:var(--bg-tertiary);color:var(--text)}.post-action.on{color:var(--accent-text)}@media (max-width: 640px){.feed-layout{max-width:100%;gap:0}.feed-col{max-width:100%}}.composer-trigger{display:flex;align-items:center;gap:.7rem;width:100%;padding:.7rem .5rem;margin-bottom:.3rem;border:1px solid var(--border);border-radius:1rem;background:var(--bg-secondary);cursor:pointer;text-align:left;transition:border-color .12s}.composer-trigger:hover{border-color:var(--accent-text)}.composer-ava{width:38px;height:38px;flex-shrink:0}.composer-trigger-text{flex:1;min-width:0;color:var(--text-muted);font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-trigger-btn{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:var(--on-accent);font-weight:600;font-size:.85rem;padding:.4rem .8rem;border-radius:.7rem}.modal-wizard{width:min(560px,95vw);display:flex;flex-direction:column;max-height:88vh}.modal-wizard .modal-head{gap:.5rem}.modal-wizard .modal-head h2{flex:1;font-size:1.1rem}.modal-wizard .modal-body{flex:1;overflow-y:auto;gap:1rem;min-height:320px}.modal-wizard .modal-foot{padding:.9rem 1.4rem;border-top:1px solid var(--border);justify-content:flex-end}.wizard-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center;padding:2rem 1rem;min-height:200px}.wizard-filters{display:flex;flex-wrap:wrap;gap:.5rem}.wizard-filters .social-search{flex:1;min-width:160px}.wizard-text{width:100%;border:0;background:transparent;color:var(--text);font-size:1.05rem;resize:none;outline:none;font-family:inherit;line-height:1.5;min-height:4rem}.wizard-text::placeholder{color:var(--text-muted)}.wizard-selected{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--border)}.wizard-chip{position:relative}.wizard-chip img,.wizard-chip .poster-empty{width:52px;aspect-ratio:2 / 3;object-fit:cover;border-radius:.45rem;display:grid;place-items:center;background:var(--bg-tertiary);font-weight:700}.wizard-chip button{position:absolute;top:-7px;right:-7px;width:20px;height:20px;border-radius:50%;background:var(--bg);border:1px solid var(--border);color:var(--text);display:grid;place-items:center;cursor:pointer;padding:0}.modal-foot{gap:.6rem;align-items:center}.modal-foot .muted{margin-right:auto}.si-community{padding:0 0 .8rem;border-bottom:1px solid var(--border);margin-bottom:.8rem}.si-community-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.5rem;flex-wrap:wrap}.si-community-rating{display:inline-flex;align-items:center;gap:.3rem}.si-community-owners{display:flex}.si-community-owners .mutual-ava{width:30px;height:30px;border:2px solid var(--bg-secondary);text-decoration:none;color:var(--text)}.si-community-owners .mutual-ava:not(:first-child){margin-left:-8px}.fav-strip{margin:.2rem 0 1.3rem}.fav-strip-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.fav-strip-head .social-section-title{margin:0}.fav-edit{padding:.25rem .6rem;font-size:.8rem}.fav-row{display:flex;gap:.7rem;flex-wrap:wrap}.fav-strip .poster{width:110px;flex-shrink:0}.fav-slot{width:110px;aspect-ratio:2 / 3;border:2px dashed var(--border);border-radius:.5rem;background:transparent;color:var(--text-muted);font-size:1.6rem;cursor:pointer;display:grid;place-items:center;transition:border-color .12s,color .12s}.fav-slot:hover{border-color:var(--accent-text);color:var(--accent-text)}.modal-fav-picker{width:min(640px,95vw)}.fav-search{width:100%;margin:.3rem 0 .8rem;padding:.55rem .7rem;border:1px solid var(--border);border-radius:.5rem;background:var(--bg-secondary);color:var(--text)}.fav-search:focus{outline:none;border-color:var(--accent-text)}.fav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:.5rem;max-height:52vh;overflow-y:auto}.fav-pick{position:relative;padding:0;border:2px solid transparent;border-radius:.5rem;background:var(--bg-tertiary);cursor:pointer;overflow:hidden;aspect-ratio:2 / 3}.fav-pick img{width:100%;height:100%;object-fit:cover;display:block}.fav-pick .poster-empty{width:100%;height:100%;display:grid;place-items:center;font-weight:700}.fav-pick.on{border-color:var(--accent-text)}.fav-check{position:absolute;top:4px;right:4px;background:var(--accent);color:var(--on-accent);border-radius:50%;width:20px;height:20px;display:grid;place-items:center}.profile-metrics{display:flex;gap:1.3rem;margin:.3rem 0 .2rem;flex-wrap:wrap}.profile-metrics .metric{display:flex;gap:.35rem;align-items:baseline;font-size:.88rem;color:var(--text-muted)}.profile-metrics .metric strong{color:var(--text);font-size:1rem}.profile-metrics .metric-link{text-decoration:none;border-radius:.4rem;padding:.1rem .35rem;margin:0 -.35rem;transition:background .12s}.profile-metrics .metric-link:hover{background:var(--bg-tertiary)}.known-by{color:var(--accent-text)!important}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.7rem;margin-bottom:.4rem}.profile-stats .stat-card{border:1px solid var(--border);border-radius:.6rem;padding:.7rem .8rem;background:var(--bg-secondary)}.profile-stats .stat-card strong{display:block;font-size:1.3rem;line-height:1.1}.profile-stats .stat-card span{font-size:.78rem;color:var(--text-muted)}.genre-chips{display:flex;flex-wrap:wrap;gap:.4rem}.genre-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.28rem .6rem;border-radius:1rem;background:var(--bg-tertiary);border:1px solid var(--border);font-size:.8rem}.genre-chip b{color:var(--accent-text)}.type-bars{display:flex;flex-direction:column;gap:.4rem}.type-bar{display:grid;grid-template-columns:110px 1fr 34px;align-items:center;gap:.6rem;font-size:.82rem}.type-bar .bar{height:7px;border-radius:4px;background:var(--accent);min-width:3px}.type-bar .bar-track{background:var(--bg-tertiary);border-radius:4px}.activity-list{display:flex;flex-direction:column;gap:.35rem}.activity-row{display:flex;align-items:center;gap:.6rem;font-size:.86rem;padding:.3rem 0}.activity-row .activity-cover{width:30px;height:42px;border-radius:.25rem;object-fit:cover;flex-shrink:0;background:var(--bg-tertiary)}.activity-row .activity-when{margin-left:auto;color:var(--text-muted);font-size:.78rem;flex-shrink:0}.social-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.9rem}.friends-seg{display:inline-flex;margin-bottom:1.2rem}.seg-count{opacity:.6;font-weight:700;margin-left:.15rem}.seg-control button.on .seg-count{opacity:.9}.social-bio{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:.15rem;line-height:1.35}.friends-empty{padding:2.8rem 1rem}.social-card{display:flex;flex-direction:column;gap:.7rem;padding:.9rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-secondary);color:inherit;text-decoration:none;transition:border-color .12s,transform .12s}.social-card-top{display:flex;align-items:center;gap:.8rem;min-width:0}.social-covers{display:flex;gap:5px}.social-cover{flex:1 1 0;min-width:0;aspect-ratio:2 / 3;object-fit:cover;border-radius:5px;background:var(--bg-tertiary);border:1px solid var(--border)}.mutual-row{display:flex;align-items:center;gap:.5rem}.mutual-stack{display:flex}.mutual-ava{width:24px;height:24px;border-radius:50%;overflow:hidden;display:grid;place-items:center;font-size:.65rem;font-weight:700;background:var(--bg-tertiary);border:2px solid var(--bg-secondary);color:var(--text);flex-shrink:0}.mutual-ava img{width:100%;height:100%;object-fit:cover}.mutual-stack .mutual-ava:not(:first-child){margin-left:-9px}.mutual-row{position:relative}.mutual-trigger{display:inline-flex;align-items:center;gap:.5rem;background:none;border:0;padding:0;color:inherit;cursor:pointer}.mutual-trigger.static{cursor:default}.mutual-trigger .mutual-ava{transition:margin-left .15s ease}.mutual-trigger:hover .mutual-stack .mutual-ava:not(:first-child){margin-left:-2px}.mutual-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:40;min-width:200px;max-width:260px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:.6rem;box-shadow:0 8px 26px #0006;padding:.3rem}.mutual-pop-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .5rem;border-radius:.45rem;color:inherit;text-decoration:none}.mutual-pop-item:hover{background:var(--bg-tertiary)}.mutual-pop-info{display:flex;flex-direction:column;line-height:1.2;min-width:0}.mutual-pop-more{padding:.4rem .5rem}.now-playing{display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.3rem .7rem .3rem .3rem;border-radius:1.5rem;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text);cursor:pointer;width:fit-content;max-width:100%;transition:border-color .12s}.now-playing:hover{border-color:var(--accent-text)}.now-playing img,.np-ph{width:30px;height:30px;border-radius:1rem;object-fit:cover;flex-shrink:0;background:var(--bg-secondary);display:grid;place-items:center;font-weight:700}.np-text{font-size:.82rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.np-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22c55e;margin-right:.15rem;animation:npPulse 1.8s ease-in-out infinite}@keyframes npPulse{0%,to{opacity:1;box-shadow:0 0 #22c55e80}50%{opacity:.6;box-shadow:0 0 0 4px #22c55e00}}.profile-name-row{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.profile-meta{font-size:.9rem}.profile-friends-inline{color:var(--accent-text);text-decoration:none;font-weight:600}.profile-friends-inline:hover{text-decoration:underline}.profile-friends-inline-static{font-weight:600;color:var(--text)}.edit-profile-btn{display:inline-flex;align-items:center;gap:.4rem}.network-card{padding:0 0 .55rem;margin-bottom:.5rem;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:.45rem}.network-counts{display:inline-flex;gap:.9rem;color:var(--text-muted);font-size:.78rem;text-decoration:none;width:fit-content;padding:.15rem .4rem;margin:-.15rem -.4rem;border-radius:.4rem;transition:background .12s,color .12s}.network-counts:hover{color:var(--text);background:var(--bg-tertiary)}.network-counts strong{color:var(--text)}.network-friends{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--text);font-size:.82rem;padding:.35rem .4rem;margin:0 -.4rem .45rem;border-radius:.5rem;transition:background .12s}.network-friends:hover{background:var(--bg-tertiary)}.network-friends-label{font-weight:600}.network-avatars{display:flex}.network-avatars .mutual-ava{width:26px;height:26px;border:2px solid var(--bg)}.network-avatars .mutual-ava:not(:first-child){margin-left:-9px}.network-find{display:inline-flex;align-items:center;gap:.35rem;text-decoration:none}.network-find:hover{color:var(--text)}.profile-hero{position:relative;display:flex;gap:0;height:180px;overflow:hidden;border-radius:.8rem}.profile-hero img{flex:1 1 0;min-width:0;height:100%;object-fit:cover;filter:brightness(.58) saturate(1.12)}.profile-hero-fade{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(10,12,20,.5) 0%,rgba(10,12,20,.04) 30%,rgba(10,12,20,.55) 74%,var(--bg) 100%),linear-gradient(90deg,#0a0c1480,#0a0c1400 32%)}.profile-hero-back{position:absolute;top:.8rem;left:.8rem;background:#0a0c148c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-color:transparent;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.profile-head.over-hero{position:relative;z-index:1;margin-top:-3.2rem}.profile-head.over-hero .social-avatar.lg{border:3px solid var(--bg);box-shadow:0 4px 18px #0000008c}.profile-head.over-hero .profile-head-info h1{text-shadow:0 1px 10px rgba(0,0,0,.7)}.social-card:hover{border-color:var(--accent-text);transform:translateY(-2px)}.social-avatar{width:48px;height:48px;border-radius:50%;background:var(--bg-tertiary);color:var(--text);display:grid;place-items:center;font-weight:800;font-size:1.2rem;overflow:hidden;flex-shrink:0}.social-avatar.lg{width:84px;height:84px;font-size:2rem}.social-avatar img{width:100%;height:100%;object-fit:cover}.social-info{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.social-info strong{line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.social-name-row{display:flex;align-items:center;gap:.4rem;min-width:0}.social-name-row strong{min-width:0}.social-info strong a{color:var(--text);text-decoration:none}.social-info strong a:hover{color:var(--accent-text)}.follows-you{flex-shrink:0;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:999px;padding:.05rem .45rem;line-height:1.6}.social-bio{font-size:.82rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compat-badge{display:grid;place-items:center;align-content:center;width:56px;height:56px;border-radius:50%;flex-shrink:0;border:2px solid;font-size:.78rem;line-height:1.1}.compat-n{font-weight:800;font-size:.95rem}.compat-l{font-size:.56rem;text-transform:uppercase;letter-spacing:.04em;opacity:.85}.compat-badge.high{border-color:#22c55e;color:#22c55e}.compat-badge.mid{border-color:#f59e0b;color:#f59e0b}.compat-badge.low{border-color:#64748b;color:#94a3b8}.friend-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.32rem .6rem;border-radius:.5rem;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s}.friend-btn.full{width:100%;padding:.5rem}.friend-btn:hover{border-color:var(--accent-text);color:var(--accent-text)}.friend-btn.on{background:var(--accent);border-color:var(--accent-text);color:var(--on-accent)}.friend-btn.on:hover{background:transparent;color:var(--danger, #ef4444);border-color:var(--danger, #ef4444)}.friend-btn:disabled{opacity:.6;cursor:default}.friend-btn.lg{padding:.45rem .9rem;font-size:.85rem;margin-top:.5rem}.compat-badge.locked{border-color:var(--border);color:var(--muted, #94a3b8)}.seg-control{display:inline-flex;height:var(--ctl-h);border:1px solid var(--border);border-radius:.6rem;overflow:hidden}.seg-control button{display:inline-flex;align-items:center;gap:.4rem;padding:0 .9rem;height:100%;background:transparent;border:0;color:var(--text);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .12s,color .12s}.seg-control button+button{border-left:1px solid var(--border)}.seg-control button.on{background:var(--accent);color:var(--on-accent)}.seg-control button:disabled{cursor:default;opacity:.7}.locked-panel{display:flex;flex-direction:column;align-items:center;gap:.45rem;text-align:center;padding:2rem 1rem;margin-bottom:1.2rem;border:1px dashed var(--border);border-radius:.8rem;color:var(--muted, #94a3b8)}.locked-panel strong{color:var(--text)}.profile-head{display:flex;align-items:center;gap:1.2rem;margin:.5rem 0 1.2rem;flex-wrap:wrap}.profile-head-info{flex:1;min-width:200px;display:flex;flex-direction:column;align-items:flex-start;gap:.4rem}.profile-head-info h1{margin:0}.profile-bio{margin:.4rem 0 0;color:var(--text-muted)}.compat-hero{display:grid;place-items:center;padding:1rem 1.4rem;border-radius:.9rem;border:2px solid;min-width:110px}.compat-hero.high{border-color:#22c55e;color:#22c55e}.compat-hero.mid{border-color:#f59e0b;color:#f59e0b}.compat-hero.low{border-color:#64748b;color:#94a3b8}.compat-hero .compat-num{font-size:2rem;font-weight:800;line-height:1}.compat-hero .compat-lbl{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.profile-stats{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.4rem}.profile-stats .stat{background:var(--bg-secondary);border:1px solid var(--border);border-radius:.7rem;padding:.7rem 1.1rem;text-align:center}.profile-stats .stat strong{display:block;font-size:1.3rem}.profile-stats .stat span{font-size:.78rem;color:var(--text-muted)}.poster.static{cursor:default}.poster.static:hover .poster-img{transform:none;border-color:var(--border)}.onboarding-backdrop{z-index:60}.onboarding-modal{width:100%;max-width:640px;max-height:90vh;display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border);border-radius:1rem;overflow:hidden;box-shadow:0 40px 90px -20px #000000bf;animation:rise .3s ease both}.onb-progress{height:4px;background:var(--bg-tertiary);flex-shrink:0}.onb-progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.onb-head{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.4rem;border-bottom:1px solid var(--border)}.onb-brand{display:inline-flex;align-items:center;gap:.5rem;font-weight:800}.onb-step-count{font-size:.78rem;color:var(--text-muted)}.onb-head-right{display:flex;align-items:center;gap:.6rem}.onb-body{padding:1.6rem 1.6rem .4rem;overflow-y:auto;flex:1}.onb-step{animation:onb-fade .22s ease both}@keyframes onb-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.onb-step h2{margin:0 0 .3rem;font-size:1.4rem}.onb-sub{color:var(--text-muted);margin:0 0 1.1rem}.onb-badge{width:46px;height:46px;border-radius:.8rem;display:grid;place-items:center;margin-bottom:.9rem;color:var(--accent-text);background:color-mix(in srgb,var(--accent) 14%,transparent)}.onb-field{margin-bottom:1.1rem}.onb-field>label{display:block;font-size:.82rem;color:var(--text-muted);margin-bottom:.4rem}.onb-seg{width:100%}.onb-seg button{flex:1}.onb-select{width:100%;padding:.55rem .7rem;border-radius:.5rem;border:1px solid var(--border);background:var(--bg-main);color:var(--text);font:inherit}.onb-welcome{text-align:center;padding:1rem 0 .5rem}.onb-hero-icon{width:72px;height:72px;margin:0 auto 1rem;border-radius:50%;display:grid;place-items:center;color:var(--on-accent);background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#000));box-shadow:0 12px 30px -8px color-mix(in srgb,var(--accent) 60%,transparent)}.onb-welcome .onb-sub{max-width:420px;margin:0 auto 1.3rem}.onb-pills{display:flex;flex-direction:column;gap:.5rem;max-width:330px;margin:0 auto}.onb-pills span{display:inline-flex;align-items:center;gap:.55rem;font-size:.9rem;color:var(--text-muted)}.onb-pills span svg{color:var(--accent-text)}.type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:.6rem}.type-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.9rem .5rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-main);color:var(--text);cursor:pointer;transition:border-color .12s,background .12s,transform .12s}.type-card:hover{border-color:var(--accent-text);transform:translateY(-2px)}.type-card.on{border-color:var(--accent-text);background:color-mix(in srgb,var(--accent) 12%,transparent)}.type-card .type-card-label{font-size:.82rem;font-weight:600;text-align:center;line-height:1.15}.type-card-check{position:absolute;top:6px;right:6px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;color:var(--on-accent)}.type-card.on .type-card-check{background:var(--accent)}.chip-grid{display:flex;flex-wrap:wrap;gap:.5rem}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .8rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-main);color:var(--text);cursor:pointer;font-size:.85rem;transition:border-color .12s,background .12s}.chip:hover{border-color:var(--accent-text)}.chip.on{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:var(--accent-text);color:var(--accent-text);font-weight:600}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.feature-card{display:flex;gap:.7rem;padding:.8rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-main)}.feature-card .feature-icon{width:34px;height:34px;flex-shrink:0;border-radius:.5rem;display:grid;place-items:center;color:var(--accent-text);background:color-mix(in srgb,var(--accent) 14%,transparent)}.feature-card strong{display:block;font-size:.9rem}.feature-card span{font-size:.8rem;color:var(--text-muted);line-height:1.3}.onb-foot{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.4rem;border-top:1px solid var(--border);flex-shrink:0}.onb-nav{display:flex;gap:.5rem}.onb-skip{color:var(--text-muted)}@media (max-width: 640px){.onboarding-modal{max-width:100%;max-height:100dvh;height:100dvh;border-radius:0}.feature-grid{grid-template-columns:1fr}.onb-body{padding:1.2rem 1.1rem .3rem}.onb-step h2{font-size:1.25rem}}@media (pointer: coarse){.icon-btn,.post-action,.post-menu,.rail-done,.rail-tabs button,.friend-btn,.seg-control button,.view-toggle button,.filters-btn,.toast-close,.toast-action,.grid-size button,.fav-slot,.star-btn{min-height:44px;min-width:44px}.btn-primary,.btn-ghost,.add-btn,.seg button,.chip-grid button{min-height:44px}.icon-btn,.post-menu,.rail-done,.toast-close{display:inline-grid;place-items:center}}.skeleton{position:relative;overflow:hidden;background:var(--bg-tertiary);border-radius:.5rem}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--text) 8%,transparent),transparent);animation:skel-shimmer 1.3s infinite}@keyframes skel-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion: reduce){.skeleton:after{animation:none}}.skel-text{display:flex;flex-direction:column;gap:.5rem}.skel-line{height:.8rem;width:100%}.skel-poster{width:100%;aspect-ratio:2 / 3;border-radius:.6rem}.skel-grid{margin-top:.4rem}.skel-post{display:flex;gap:.75rem;padding:.95rem .3rem;border-bottom:1px solid var(--border)}.skel-avatar{width:42px;height:42px;border-radius:50%;flex-shrink:0}.skel-post-body{flex:1;display:flex;flex-direction:column;gap:.6rem}.skel-card{height:86px;border-radius:.8rem}.toast{display:flex;align-items:center;gap:.6rem}.toast-msg{flex:1;min-width:0}.toast-action{background:none;border:0;color:inherit;font-weight:700;text-decoration:underline;cursor:pointer;padding:.2rem .3rem;flex-shrink:0}.toast-close{background:none;border:0;color:inherit;opacity:.7;cursor:pointer;padding:.2rem;display:inline-grid;place-items:center;flex-shrink:0;border-radius:.4rem}.toast-close:hover{opacity:1}@media (max-width: 820px){.toast-viewport{left:0;right:0;bottom:calc(1rem + 54px + env(safe-area-inset-bottom));align-items:center;padding:0 .8rem}.toast{width:100%;max-width:460px}}.cf-switch input:focus-visible+.cf-switch-track{outline:2px solid var(--accent);outline-offset:2px}.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--accent);color:var(--on-accent);padding:.6rem 1rem;border-radius:0 0 .5rem}.skip-link:focus{left:0}.empty .btn-primary,.empty .btn-ghost{margin-top:.4rem}.rail-strip{display:none}@media (max-width: 1100px){.rail-strip{display:block;margin:0 0 1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:1rem;padding:.8rem .85rem .7rem}.rail-strip h3{display:flex;align-items:center;gap:.4rem;font-size:.95rem;margin:0 0 .6rem}.rail-strip h3 svg{color:var(--accent-text)}.rail-strip-scroll{display:flex;gap:.7rem;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:.15rem;scrollbar-width:none}.rail-strip-scroll::-webkit-scrollbar{display:none}.rail-strip-item{flex:0 0 auto;width:82px;scroll-snap-align:start;background:none;border:0;padding:0;cursor:pointer;text-align:left;color:inherit}.rail-strip-item .skel-poster,.rail-strip-cover{width:82px;aspect-ratio:2 / 3;border-radius:.55rem;object-fit:cover;background:var(--bg-tertiary);display:grid;place-items:center;font-weight:700}.rail-strip-item strong{display:block;max-width:82px;font-size:.74rem;font-weight:500;line-height:1.2;margin-top:.35rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.bottom-nav{display:none}.trend-feed{display:flex;flex-direction:column}.trend-row{display:flex;align-items:center;gap:.8rem;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--border);padding:.8rem .3rem;cursor:pointer;color:inherit;transition:background .12s}.trend-row:hover{background:var(--bg-secondary)}.trend-rank{font-weight:800;font-size:1.05rem;color:var(--text-muted);min-width:1.4rem;text-align:center;flex-shrink:0}.trend-row-cover,.trend-row-cover.ph{width:56px;aspect-ratio:2 / 3;border-radius:.5rem;object-fit:cover;flex-shrink:0;background:var(--bg-tertiary);display:grid;place-items:center;font-weight:700}.trend-row-info{min-width:0;display:flex;flex-direction:column;gap:.15rem}.trend-row-info strong{font-size:.98rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 820px){.feed-scope{width:100%}.feed-scope button{flex:1;justify-content:center;padding-left:.4rem;padding-right:.4rem}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:45;background:color-mix(in srgb,var(--bg-main) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}@supports not (backdrop-filter: blur(10px)){.bottom-nav{background:var(--bg-main)}}.bottom-nav .nav-item{display:grid;grid-template-rows:24px auto;align-items:center;justify-items:center;gap:.12rem;min-height:52px;margin:0;padding:.4rem 0;border-radius:0;background:none;color:var(--text-muted);font-size:.66rem;font-weight:600}.bottom-nav .nav-item svg{opacity:1;align-self:center}.bottom-nav .nav-item.on{background:none;color:var(--accent-text);outline:none}.bottom-nav .nav-item.on svg{color:var(--accent-text)}.bottom-nav .nav-item span{line-height:1}.bottom-ava{width:22px;height:22px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--bg-tertiary);border:1px solid var(--border);font-size:.7rem;font-weight:700;color:var(--text)}.bottom-ava img{width:100%;height:100%;object-fit:cover}.bottom-nav .nav-item.on .bottom-ava{border-color:var(--accent-text);box-shadow:0 0 0 2px var(--accent)}.shell-main{padding-bottom:calc(3.4rem + env(safe-area-inset-bottom))}.collection-controls>.add-btn{bottom:calc(4.4rem + env(safe-area-inset-bottom))}.toast-viewport{bottom:calc(4.4rem + env(safe-area-inset-bottom))}}.feed-verb-chip{display:inline-flex;align-items:center;font-size:.72rem;font-weight:600;line-height:1;padding:3px 7px;border-radius:999px;letter-spacing:.02em;text-transform:lowercase}.feed-verb-chip--added{background:#60a5fa29;color:#93c5fd}.feed-verb-chip--completed{background:#4ade8029;color:#86efac}.wizard-text-hint{display:block;margin-top:4px}.image-dropzone.is-empty{border-width:2px;border-style:dashed;transition:border-color .15s,background .15s}.image-dropzone.is-empty:hover,.image-dropzone.is-empty:focus-visible{border-color:var(--accent-text);background:var(--bg-tertiary);outline:none}.image-dropzone-hint{display:flex;flex-direction:column;align-items:center;gap:.35rem;color:var(--text-muted)}.image-dropzone-hint svg{opacity:.7}.image-busy .spin{animation:lf-spin .8s linear infinite;color:var(--accent-text)}@keyframes lf-spin{to{transform:rotate(360deg)}}.image-error{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.image-error .link-btn{font-size:.82rem}@media (prefers-reduced-motion: reduce){.image-busy .spin{animation:none}}.multi-field{display:flex;flex-direction:column;gap:.4rem;min-width:0}.multi-chips{display:flex;flex-wrap:wrap;gap:.35rem}.multi-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .3rem .2rem .6rem;border-radius:999px;font-size:.82rem;color:var(--accent-text);background:color-mix(in srgb,var(--accent) 15%,transparent);border:1px solid color-mix(in srgb,var(--accent) 42%,transparent)}.multi-chip button{display:inline-flex;align-items:center;justify-content:center;padding:.1rem;border:none;border-radius:50%;background:none;color:inherit;cursor:pointer;opacity:.7}.multi-chip button:hover{opacity:1;background:color-mix(in srgb,var(--accent) 28%,transparent)}.btn-fill{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;flex:0 0 auto;padding:0 .85rem;border-radius:.55rem;cursor:pointer;font-size:.86rem;font-weight:600;color:var(--accent-text);background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);transition:background .15s,border-color .15s}.btn-fill:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 24%,transparent);border-color:var(--accent-text)}.btn-fill:disabled{opacity:.5;cursor:default}.fill-menu.fill-menu-right{left:auto;right:0;min-width:220px}.view-group{display:inline-flex;align-items:center;gap:.5rem}.more-wrap{position:relative;display:inline-flex}.more-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:10;min-width:190px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:.6rem;box-shadow:0 14px 36px -12px #000000a6;padding:.3rem;display:flex;flex-direction:column;gap:.15rem}.more-menu button{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;background:none;border:none;color:var(--text);padding:.55rem .6rem;border-radius:.45rem;cursor:pointer;font-size:.86rem}.more-menu button:hover:not(:disabled){background:var(--bg-tertiary)}.more-menu button:disabled{opacity:.45;cursor:default}.bulk-bar-compact{display:none}@media (max-width: 820px){.bulk-bar{display:none}.bulk-bar-compact{position:fixed;left:0;right:0;bottom:0;z-index:46;display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));background:var(--bg-secondary);border-top:1px solid var(--accent);box-shadow:0 -10px 30px -10px #0009}.bulk-bar-compact .bulk-count{font-weight:700;color:var(--accent-text);flex:1 1 auto}.bulk-bar-compact .btn-primary{flex:0 0 auto}}.bulk-sheet-backdrop{align-items:flex-end;z-index:60}.bulk-sheet{width:100%;max-width:560px;margin:0 auto;background:var(--bg-secondary);border:1px solid var(--border);border-bottom:none;border-radius:.9rem .9rem 0 0;padding:.75rem 1rem calc(1rem + env(safe-area-inset-bottom));box-shadow:0 -30px 80px -20px #000000b3;animation:rise .22s ease both}.bulk-sheet-head{display:flex;align-items:center;justify-content:space-between;padding:.25rem 0 .6rem}.bulk-sheet-head strong{color:var(--accent-text)}.bulk-sheet-row{display:flex;flex-direction:column;gap:.25rem;padding:.4rem 0}.bulk-sheet-row>span{font-size:.8rem;color:var(--text-muted)}.bulk-sheet-row select{width:100%;background:var(--bg-main);border:1px solid var(--border);color:var(--text);border-radius:.55rem;padding:.6rem .7rem;font-size:.92rem}.bulk-sheet-del{width:100%;justify-content:center;margin-top:.6rem}.profile-filters-toggle{display:none;align-items:center;gap:.4rem;position:relative;flex:0 0 auto}.profile-filters-dot{width:7px;height:7px;border-radius:50%;background:var(--accent, #7c5cff);display:inline-block}.profile-filter-group{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}@media (max-width: 640px){.profile-toolbar{flex-wrap:wrap}.profile-toolbar .social-search{flex:1 1 auto}.profile-filters-toggle{display:inline-flex}.profile-filter-group{display:none;flex-basis:100%;width:100%}.profile-filter-group.open{display:flex}.profile-filter-group .social-select{flex:1 1 calc(50% - .25rem);min-width:0}}.locked-panel .locked-action{margin-top:.85rem;display:flex;justify-content:center}.settings-tabs-wrap{position:relative;margin-bottom:1.2rem}.settings-tabs-wrap .settings-tabs{margin-bottom:0;overflow-x:auto;scrollbar-width:none;scroll-behavior:smooth}.settings-tabs-wrap .settings-tabs::-webkit-scrollbar{display:none}.settings-tabs-wrap:after{content:"";position:absolute;top:0;right:0;bottom:1px;width:2.4rem;pointer-events:none;background:linear-gradient(to right,transparent,var(--bg-main));opacity:.9}@media (min-width: 700px){.settings-tabs-wrap:after{display:none}}.danger-confirm{display:flex;flex-direction:column;gap:.6rem;max-width:420px}.danger-confirm .danger-backup{margin:0;font-size:.84rem;line-height:1.4;color:#fca5a5}.danger-confirm .danger-type-field{gap:.3rem}.danger-confirm .danger-type-field input{letter-spacing:.08em;text-transform:uppercase}.danger-confirm-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.danger-confirm-actions .btn-ghost.danger:disabled{opacity:.45;cursor:not-allowed}@media (max-width: 820px){.grid-size{display:none}.more-menu{right:0;left:auto;max-width:calc(100vw - 1.6rem)}}@media (max-width: 640px){.card-grid{grid-template-columns:repeat(2,1fr)}}.post-review{margin:.5rem 0 0;padding-left:.7rem;border-left:3px solid var(--border);color:var(--text);font-size:.95rem;line-height:1.45;white-space:pre-wrap;word-break:break-word;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.feed-verb-chip--ach{background:color-mix(in srgb,#f5b301 18%,transparent);color:#f5b301}.ach-feed{display:inline-flex;gap:.7rem;align-items:center;margin-top:.6rem}.ach-feed-medal{width:42px;height:42px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;background:color-mix(in srgb,#f5b301 16%,var(--bg-tertiary));color:#f5b301}.ach-feed .post-item-info strong{font-size:.95rem}.feed-verb-chip--review{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent-text)}.post-rating{display:inline-flex;align-items:center}img{max-width:100%}.poster-cover,.poster-img>.ph,.tbl-cover>.ph{width:100%;height:100%}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}@media (max-width: 820px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1101px){.feed-scope button:last-child{display:none}}.ach-hero{display:flex;align-items:center;gap:.9rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:1rem;padding:1rem 1.2rem;margin-bottom:1.4rem}.ach-hero-medal{width:46px;height:46px;border-radius:12px;flex-shrink:0;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:var(--on-accent);box-shadow:0 6px 16px -8px #0009}.ach-hero-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.45rem}.ach-hero-top{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.ach-cat-count{font-size:.74rem;font-weight:700;color:var(--text-muted);background:var(--bg-tertiary);border-radius:999px;padding:.08rem .5rem;margin-left:.35rem;vertical-align:2px}.ach-medal{width:24px;height:24px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;background:var(--bg-tertiary);color:var(--text-muted)}.ach-medal.on{background:color-mix(in srgb,#f5b301 18%,transparent);color:#f5b301}.ach-card.maxed{border-color:color-mix(in srgb,#f5b301 45%,transparent)}.notif-ava-ach{display:grid;place-items:center;background:color-mix(in srgb,#f5b301 16%,transparent);color:#f5b301}.share-modal{max-width:420px}.share-body{align-items:center}.share-canvas{width:min(280px,70vw);height:auto;border-radius:14px;border:1px solid var(--border);box-shadow:0 18px 48px -18px #000000b3}.share-actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}.dfw-list{display:flex;flex-direction:column;gap:.9rem}.dfw-row{display:flex;gap:.6rem;align-items:flex-start}.dfw-ava{width:34px;height:34px;flex-shrink:0}.dfw-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.45rem}.dfw-text{font-size:.88rem;color:var(--text-muted)}.dfw-text strong{color:var(--text)}.dfw-name{color:var(--text);font-weight:700;text-decoration:none}.dfw-name:hover{text-decoration:underline}.dfw-covers{display:flex;flex-wrap:wrap;gap:.4rem}.dfw-cover{padding:0;border:0;background:none;cursor:pointer;width:46px}.dfw-cover-img,.dfw-cover-img.ph{width:46px;height:66px;object-fit:cover;border-radius:.35rem;background:var(--bg-tertiary);border:1px solid var(--border);display:grid;place-items:center;font-weight:700;font-size:.8rem;color:var(--text-muted);transition:transform .12s,border-color .12s}.dfw-cover:hover .dfw-cover-img{transform:translateY(-2px);border-color:var(--accent-text)}.stat-link{text-decoration:none;color:inherit;transition:border-color .12s,transform .12s}.stat-link:hover{border-color:var(--accent-text);transform:translateY(-2px)}.stat-hero .stat-value{font-size:1.9rem;background:linear-gradient(90deg,var(--accent-text),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.stat-sub{font-size:.72rem;color:var(--text-muted);margin-top:2px}.per-type-link{text-decoration:none;color:inherit;transition:border-color .12s,transform .12s}.per-type-link:hover{border-color:var(--accent-text);transform:translateY(-2px)}.bar-row-btn{background:none;border:0;padding:0;width:100%;cursor:pointer;color:inherit;text-align:left;border-radius:.35rem}.bar-row-btn:hover .bar-label{color:var(--accent-text)}.bar-row-btn:hover .bar-fill{filter:brightness(1.15)}.vbars{display:flex;align-items:stretch;gap:4px;height:150px}.vbar{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:3px}.vbar-fill{width:100%;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,var(--accent-2),var(--accent));min-height:2px}.vbar-l{font-size:.6rem;color:var(--text-muted);text-transform:capitalize;overflow:hidden;max-width:100%}.vbar-n{font-size:.64rem;color:var(--text-muted);line-height:1;min-height:.7rem}.dash-grid-wide{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.dash-covers{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:.55rem}.dash-cover-item{display:flex;flex-direction:column;gap:.25rem;text-align:left;color:inherit}.dash-cover-item strong{font-size:.72rem;line-height:1.2;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dash-cover-wrap{position:relative;display:block}.dash-cover-badge{position:absolute;top:4px;left:4px;background:#080a14d1;color:#fbbf24;font-size:.68rem;font-weight:700;border-radius:.4rem;padding:.06rem .35rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.feed-group{background:var(--bg-secondary);border:1px solid var(--border);border-radius:1rem;padding:.9rem 1rem 1rem;margin:.4rem 0 .9rem}.fg-head{margin-bottom:.75rem}.fg-ava{width:34px;height:34px}.fg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:.55rem}.fg-item{padding:0;border:0;background:none;cursor:pointer}.fg-cover,.fg-cover.ph{width:100%;aspect-ratio:2 / 3;object-fit:cover;border-radius:.5rem;background:var(--bg-tertiary);border:1px solid var(--border);display:grid;place-items:center;font-weight:700;color:var(--text-muted);transition:transform .12s,border-color .12s}.fg-item:hover .fg-cover{transform:translateY(-3px);border-color:var(--accent-text)}@media (max-width: 640px){.fg-grid{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:.45rem}}.si-wish{align-self:flex-start;min-height:30px;padding:0 .65rem;font-size:.8rem;margin-top:.25rem}.skel-ava-lg{width:48px;height:48px;border-radius:50%;flex-shrink:0}.skel-social-lines{flex:1;min-width:0;display:flex;flex-direction:column;gap:.45rem}.skel-covers{height:88px;border-radius:.5rem}@media (max-width: 640px){.social .seg-control{display:flex;flex:1}.social .seg-control button{flex:1;justify-content:center}.social-grid{grid-template-columns:1fr}.social-card{padding:.8rem}}.settings .settings-tabs-wrap,.settings .settings-section,.settings .media-intro{max-width:960px}.settings-tabs button{display:inline-flex;align-items:center;gap:.42rem;font-weight:600;border-radius:.5rem .5rem 0 0;transition:color .12s,background .12s}.settings-tabs button svg{opacity:.75;flex-shrink:0}.settings-tabs button:hover{color:var(--text);background:color-mix(in srgb,var(--bg-tertiary) 60%,transparent)}.settings-tabs button.on svg{opacity:1;color:var(--accent-text)}.settings-section h3{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.settings-section h3 svg{color:var(--accent-text);flex-shrink:0}.media-intro{margin:-.4rem 0 1rem;font-size:.86rem;color:var(--text-muted)}.owned-count{font-size:.7rem;font-weight:700;color:var(--accent-text);background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:999px;padding:.08rem .55rem}.owned-clear{margin-top:.8rem}@media (pointer: coarse){.settings-tabs button{min-height:44px}.chip-opt{min-height:38px}}@media (max-width: 640px){.settings-section{padding:1rem}}.feed-you{flex-shrink:0;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--accent-text);background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:999px;padding:.02rem .4rem;line-height:1.6}.feed-solo-banner{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin:0 0 .5rem;padding:.6rem .9rem;border:1px dashed color-mix(in srgb,var(--accent) 40%,transparent);border-radius:.7rem;background:color-mix(in srgb,var(--accent) 7%,transparent);font-size:.85rem;color:var(--text-muted)}.feed-solo-banner a{flex-shrink:0;color:var(--accent-text);font-weight:600;text-decoration:none}.feed-solo-banner a:hover{text-decoration:underline}.feed-empty-ctas{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}.feed-empty-ctas .btn-ghost{text-decoration:none}.feed-follow-mobile{margin-top:1.2rem}.modal.im-modal{max-width:780px;max-height:min(88vh,820px);display:flex;flex-direction:column;overflow:hidden;border-radius:1rem}.im-head{display:flex;align-items:center;gap:12px;padding:16px 24px;border-bottom:1px solid var(--border);flex:none}.im-head-ico{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:var(--on-accent);display:grid;place-items:center;flex:none;box-shadow:0 6px 16px -8px #0009}.im-head-txt{flex:1;min-width:0}.im-head h2{margin:0;font-size:1.05rem;font-weight:650;letter-spacing:-.01em}.im-head-sub{margin:2px 0 0;font-size:.78rem;color:var(--text-muted)}.im-head-sub strong{color:var(--text);font-weight:600}.im-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px 24px;display:flex;flex-direction:column;gap:16px}.im-body-search{min-height:min(56vh,480px)}.im-foot{flex:none;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 24px;border-top:1px solid var(--border)}.im-foot-edit{justify-content:space-between}.im-foot-right{display:flex;gap:8px;align-items:center}.im-foot .btn-primary{padding:0 20px}.im-form{display:flex;flex-direction:column;flex:1;min-height:0}.im-step{animation:im-step-in .18s ease both}@keyframes im-step-in{0%{opacity:0;transform:translate(8px)}}.im-error{flex:none;margin:12px 24px 0;padding:10px 14px;border-radius:10px;font-size:.85rem;color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent)}.im-modal .spin{animation:lf-spin .8s linear infinite}.im-modal .field{gap:6px}.im-modal .field input{background:var(--bg-main)}.im-seg{display:inline-flex;align-self:flex-start;gap:4px;padding:4px;background:var(--bg-main);border:1px solid var(--border);border-radius:10px}.im-seg button{border:none;background:transparent;color:var(--text-muted);font-size:.85rem;font-weight:600;padding:6px 14px;border-radius:7px;cursor:pointer;transition:color .15s,background .15s}.im-seg button:hover{color:var(--text)}.im-seg button.on{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent-text)}.im-seg-block{display:flex;align-self:stretch}.im-seg-block button{flex:1;text-align:center}.im-search-bar{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 14px;background:var(--bg-main);border:1px solid var(--border);border-radius:12px;transition:border-color .15s,box-shadow .15s}.im-search-bar:focus-within{border-color:var(--accent-text);box-shadow:0 0 0 3px var(--ring)}.im-search-bar>svg{color:var(--text-muted);flex:none}.im-search-bar input{flex:1;min-width:0;border:none;background:none;color:var(--text);font-size:.97rem;padding:8px 0}.im-search-bar input:focus{outline:none}.im-search-bar input::placeholder{color:var(--text-muted);opacity:.7}.im-search-bar .btn-primary{padding:0 16px;font-size:.88rem;border-radius:8px;box-shadow:none}.im-hint{margin:-8px 0 0;font-size:.8rem;color:var(--text-muted)}.im-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:12px}.im-hit{background:var(--bg-main);border:1px solid var(--border);border-radius:10px;overflow:hidden;padding:0;text-align:left;color:inherit;cursor:pointer;transition:transform .15s ease,border-color .15s,box-shadow .15s}.im-hit:hover:not(:disabled){transform:translateY(-2px);border-color:var(--accent-text);box-shadow:0 10px 24px -12px #0009}.im-hit:focus-visible{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px var(--ring)}.im-hit:disabled{cursor:default}.im-hit-img{position:relative;aspect-ratio:2/3;background:var(--bg-tertiary);display:grid;place-items:center;color:var(--text-muted);overflow:hidden}.im-hit-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}.im-hit:hover:not(:disabled) img{transform:scale(1.04)}.im-hit-pick{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:color-mix(in srgb,var(--bg-main) 60%,transparent);color:var(--accent-text)}.im-results:has(.is-picking) .im-hit:not(.is-picking){opacity:.45}.im-hit-cap{padding:8px 10px 10px}.im-hit-cap strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.8rem;line-height:1.25}.im-hit-cap span{display:block;font-size:.72rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.im-more{text-align:center}.im-skel{border:1px solid var(--border);border-radius:10px;overflow:hidden}.im-skel-img{aspect-ratio:2/3}.im-skel-line{height:10px;border-radius:5px;margin:8px 10px 0}.im-skel-line.short{width:40%;margin-bottom:10px}.im-skel-img,.im-skel-line{background:linear-gradient(100deg,var(--bg-tertiary) 40%,color-mix(in srgb,var(--text) 8%,var(--bg-tertiary)) 50%,var(--bg-tertiary) 60%);background-size:200% 100%;animation:im-shimmer 1.4s linear infinite}@keyframes im-shimmer{to{background-position:-200% 0}}.im-empty{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:32px 16px;margin:auto 0}.im-empty-posters{display:flex;gap:8px;margin-bottom:8px}.im-empty-posters span{width:44px;height:66px;border-radius:6px;border:1px dashed var(--border);background:color-mix(in srgb,var(--accent) 6%,transparent)}.im-empty-posters span:first-child{transform:rotate(-8deg) translateY(4px)}.im-empty-posters span:nth-child(2){border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.im-empty-posters span:last-child{transform:rotate(8deg) translateY(4px)}.im-empty-art{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-text)}.im-empty h3{margin:0;font-size:.95rem;font-weight:600}.im-empty p{margin:0;font-size:.83rem;color:var(--text-muted);max-width:40ch}.im-empty-cta{margin-top:8px}.im-alts-wrap{margin-top:auto;display:flex;flex-direction:column;gap:12px;padding-top:8px}.im-divider{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.im-divider:before,.im-divider:after{content:"";flex:1;height:1px;background:var(--border)}.im-alts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.im-alt{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-main);border:1px dashed var(--border);border-radius:12px;color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.im-alt:hover:not(:disabled){border-color:var(--accent-text);background:var(--bg-tertiary);transform:translateY(-1px)}.im-alt:disabled{opacity:.55;cursor:default}.im-alt>svg{color:var(--accent-text);flex:none}.im-alt-txt{display:block;min-width:0}.im-alt-txt strong{display:block;font-size:.88rem;font-weight:600}.im-alt-txt small{display:block;font-size:.75rem;color:var(--text-muted);margin-top:2px}.im-scan{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-text);font-size:.88rem}.im-scan svg{animation:scan-pulse 1.1s ease-in-out infinite}.im-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:10px;font-size:.86rem}.im-banner svg{flex:none;margin-top:1px}.im-banner-error{background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);color:var(--danger)}.im-banner .link-btn{background:none;border:none;padding:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}.im-back{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;padding:4px 10px 4px 6px;border:none;border-radius:999px;background:var(--bg-tertiary);color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:color .15s,background .15s}.im-back:hover{color:var(--text);background:color-mix(in srgb,var(--accent) 16%,var(--bg-tertiary))}.im-cols{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;align-items:start}.im-cover{display:flex;flex-direction:column;gap:8px;position:sticky;top:0}.im-gallery-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.im-gallery-thumbs img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:5px;border:1px solid var(--border);display:block}.im-gallery-note{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:.76rem;color:var(--text-muted)}.im-fields{display:flex;flex-direction:column;gap:20px;min-width:0}.im-section{display:flex;flex-direction:column;gap:12px}.im-section-title,.im-label,.field>.im-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0}.im-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.im-reveal{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.im-reveal.open{grid-template-rows:1fr}.im-reveal>div{overflow:hidden;min-height:0;display:flex;flex-direction:column;gap:12px;padding:4px;margin:-4px}.im-input-group{display:flex;align-items:stretch;background:var(--bg-main);border:1px solid var(--border);border-radius:10px;transition:border-color .15s,box-shadow .15s}.im-input-group:focus-within{border-color:var(--accent-text);box-shadow:0 0 0 3px var(--ring)}.im-modal .field .im-input-group input,.im-modal .field .im-input-group input:focus{border:none;background:transparent;box-shadow:none;width:100%;padding:10px 12px}.im-input-group input{flex:1;min-width:0}.im-input-group .fill-wrap{position:relative;display:flex;flex:none}.im-input-group .btn-fill{border:none;border-left:1px solid var(--border);border-radius:0 9px 9px 0;background:color-mix(in srgb,var(--accent) 10%,transparent);padding:0 14px}.im-input-group .btn-fill:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 22%,transparent)}.im-input-group.is-dup{border-color:var(--danger)}.im-input-group.is-dup:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 25%,transparent)}.im-warn{display:flex;align-items:center;gap:6px;color:var(--danger);font-size:.78rem}.im-review{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,transparent),color-mix(in srgb,var(--accent-2) 8%,transparent));border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:12px;padding:16px}.im-review .im-section-title{color:var(--accent-text)}.im-modal .review-prompt{border-radius:12px;padding:12px 16px}.im-cf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.im-cf-wide{grid-column:1 / -1}.im-genres{position:relative;display:flex;flex-direction:column;gap:8px}.im-genres-anchor{position:relative}.im-genres-box{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;background:var(--bg-main);border:1px solid var(--border);border-radius:10px;cursor:text;transition:border-color .15s,box-shadow .15s}.im-genres-box:focus-within{border-color:var(--accent-text);box-shadow:0 0 0 3px var(--ring)}.im-genre-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 6px 4px 10px;border-radius:999px;font-size:.8rem;color:var(--accent-text);background:color-mix(in srgb,var(--accent) 15%,transparent);border:1px solid color-mix(in srgb,var(--accent) 42%,transparent);animation:im-chip-in .15s ease both}@keyframes im-chip-in{0%{opacity:0;transform:scale(.85)}}.im-genre-chip button{display:inline-flex;padding:2px;border:none;border-radius:50%;background:none;color:inherit;cursor:pointer;opacity:.7}.im-genre-chip button:hover{opacity:1;background:color-mix(in srgb,var(--accent) 28%,transparent)}.im-modal .field .im-genres-input,.im-modal .field .im-genres-input:focus{flex:1;width:auto;min-width:80px;border:none;background:none;box-shadow:none;color:var(--text);font-size:.9rem;padding:4px 2px}.im-genres-input:focus{outline:none}.im-genres-pop{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;box-shadow:0 14px 36px -12px #000000a6;max-height:216px;overflow-y:auto;padding:4px}.im-genres-opt{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:7px;background:none;color:var(--text);font-size:.86rem;text-align:left;cursor:pointer}.im-genres-opt:hover,.im-genres-opt.is-active{background:var(--bg-tertiary)}.im-genres-opt>span{display:inline-flex;align-items:center;gap:6px;min-width:0}.im-genres-count{font-size:.72rem;color:var(--text-muted);flex-shrink:0}.im-genres-create{color:var(--accent-text);font-weight:600}.im-genres-empty{padding:8px 10px;font-size:.82rem;color:var(--text-muted)}.im-genres-quick{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.im-genres-quick-label{font-size:.72rem;color:var(--text-muted)}.im-quick-chip{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:3px 10px;font-size:.76rem;cursor:pointer;transition:color .12s,border-color .12s}.im-quick-chip:hover{color:var(--text);border-color:var(--accent-text)}.im-quick-more{background:none;color:var(--accent-text);border:1px dashed color-mix(in srgb,var(--accent) 45%,transparent);border-radius:999px;padding:3px 10px;font-size:.76rem;cursor:pointer}.im-quick-more:hover{border-style:solid}.im-seg button:focus-visible,.im-alt:focus-visible,.im-quick-chip:focus-visible,.im-quick-more:focus-visible,.im-genre-chip button:focus-visible,.im-genres-opt:focus-visible,.im-back:focus-visible{outline:none;box-shadow:0 0 0 3px var(--ring)}@media (prefers-reduced-motion: reduce){.im-step,.im-genre-chip,.im-scan svg,.im-modal .spin{animation:none}.im-skel-img,.im-skel-line{animation:none;background:var(--bg-tertiary)}.im-hit,.im-hit-img img,.im-alt,.im-reveal{transition:none}.im-hit:hover:not(:disabled){transform:none}.im-hit:hover:not(:disabled) img{transform:none}}@media (max-width: 820px){.im-cols{grid-template-columns:168px minmax(0,1fr);gap:16px}.im-body{padding:16px 16px 20px}.im-head,.im-foot{padding-left:16px;padding-right:16px}.im-error{margin-left:16px;margin-right:16px}}@media (max-width: 640px){.modal.im-modal{height:100dvh;max-height:100dvh;border-radius:0}.im-body{padding:12px 16px 16px;gap:12px}.im-foot{flex-wrap:wrap;padding-bottom:calc(12px + env(safe-area-inset-bottom))}.im-foot-right{flex-wrap:wrap;justify-content:flex-end}.im-cols{display:flex;flex-direction:column;gap:16px}.im-cover{position:static}.im-modal .image-field{flex-direction:row;align-items:flex-start;gap:12px}.im-modal .image-preview{width:104px;height:156px;aspect-ratio:auto;align-self:flex-start;flex:none}.im-modal .image-url-row{flex:1;min-width:0}.im-gallery-thumbs{grid-template-columns:repeat(4,56px)}.im-seg{align-self:stretch;overflow-x:auto}.im-seg button{flex:1;white-space:nowrap}.im-alts{grid-template-columns:1fr}.im-results{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.im-cf-grid,.im-row{grid-template-columns:1fr}.im-search-bar .btn-primary .im-btn-label,.im-input-group .btn-fill .im-btn-label{display:none}.im-input-group .btn-fill{min-width:44px;justify-content:center}}@media (pointer: coarse){.im-seg button,.im-alt{min-height:44px}.im-quick-chip,.im-quick-more,.im-genres-opt{min-height:40px}.im-genre-chip button{min-width:28px;min-height:28px}}
