:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f1eee5;background:#11110f;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #11110f;--surface: #191916;--surface-2: #21211d;--surface-3: #292924;--line: #383832;--line-soft: #2c2c27;--text: #f1eee5;--muted: #a8a499;--muted-2: #77746c;--coral: #ee6b58;--coral-dark: #b94d3e;--teal: #57b5a8;--yellow: #e1b85b;--paper: #e7dfd0;--ink: #24211d;--danger: #e35f5f;--shadow: 0 24px 80px rgba(0, 0, 0, .48)}*{box-sizing:border-box}html{min-width:320px;background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg)}button,input,textarea,select{font:inherit;letter-spacing:0}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.app-shell{min-height:100vh}.topbar{position:sticky;z-index:30;top:0;height:76px;padding:0 clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;background:#11110fed;border-bottom:1px solid var(--line-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;color:var(--bg);background:var(--coral);border-radius:5px;transform:rotate(-3deg)}.brand-mark svg{width:20px}.brand>span:last-child{display:flex;flex-direction:column}.brand strong{font-family:Georgia,Songti SC,serif;font-size:22px;font-weight:600}.brand small{margin-top:1px;color:var(--muted);font-size:10px}.desktop-nav{display:flex;align-items:center;gap:5px}.nav-link{height:42px;padding:0 14px;display:flex;align-items:center;gap:8px;border-radius:5px;color:var(--muted);font-size:14px;transition:color .2s,background .2s}.nav-link svg{width:18px}.nav-link:hover{color:var(--text);background:var(--surface-2)}.nav-link.active{color:var(--text);background:var(--surface-3)}.nav-link.active svg{color:var(--coral)}.mobile-nav{display:none}.main-content{min-height:calc(100vh - 76px)}.page{width:min(1480px,100%);margin:0 auto;padding:52px clamp(20px,4vw,64px) 80px}.page-enter{animation:page-in .35s ease-out both}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,Songti SC,serif;font-weight:500}.eyebrow{display:block;margin-bottom:10px;color:var(--teal);font-size:11px;font-weight:800;text-transform:uppercase}.button{min-height:42px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:5px;cursor:pointer;font-size:14px;font-weight:700;transition:transform .15s,background .2s,border-color .2s,color .2s}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.45;cursor:not-allowed}.button svg{width:17px;height:17px}.button.primary{color:#17120f;background:var(--coral)}.button.primary:hover{background:#f27a67}.button.secondary{color:var(--text);background:var(--surface-2);border-color:var(--line)}.button.secondary:hover{border-color:var(--muted-2)}.button.danger{background:var(--danger);color:#fff}.icon-button{width:42px;height:42px;padding:0;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:5px;color:var(--text);background:var(--surface-2);cursor:pointer}.icon-button svg{width:19px}.icon-button:disabled{opacity:.3;cursor:default}.text-button{padding:0;display:inline-flex;align-items:center;gap:7px;border:0;color:var(--muted);background:none;font-size:13px;cursor:pointer}.text-button:hover{color:var(--text)}.text-button svg{width:16px}.count-pill{min-width:34px;height:28px;padding:0 10px;display:grid;place-items:center;color:var(--bg);background:var(--teal);border-radius:14px;font-size:13px}.page-heading,.dashboard-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.page-heading h1,.dashboard-heading h1{margin-bottom:10px;font-size:clamp(38px,5vw,66px);line-height:1.06}.page-heading p,.dashboard-heading p{margin-bottom:0;color:var(--muted)}.compact-heading{margin-bottom:34px}.compact-heading h1{font-size:clamp(36px,4vw,54px)}.section-block{margin-top:56px}.section-heading{margin-bottom:20px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.section-heading h2{margin:0;font-size:28px}.section-heading p{margin:6px 0 0;color:var(--muted);font-size:14px}.section-heading .eyebrow{margin-bottom:6px}.empty-home{min-height:calc(100vh - 76px);display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;text-align:center}.empty-home-art{width:min(520px,88vw);height:235px;position:relative;margin-bottom:28px}.ghost-cover{position:absolute;bottom:0;display:grid;place-items:center;border:1px solid var(--line);box-shadow:var(--shadow)}.ghost-cover svg{width:46px;height:46px;opacity:.7}.ghost-cover--book{width:132px;height:198px;left:18%;color:var(--yellow);background:#302a20;transform:rotate(-8deg)}.ghost-cover--movie{z-index:2;width:150px;height:225px;left:calc(50% - 75px);color:var(--coral);background:#31201e}.ghost-cover--song{width:170px;height:170px;right:14%;color:var(--teal);background:#1d302d;transform:rotate(8deg)}.empty-home h1{max-width:760px;margin-bottom:16px;font-size:clamp(40px,6vw,76px);line-height:1.05}.empty-home>p{max-width:600px;margin-bottom:28px;color:var(--muted);font-size:17px;line-height:1.8}.empty-actions{display:flex;gap:10px}.media-cover{width:100%;height:100%;position:relative;overflow:hidden;color:var(--paper);background:var(--surface-3);border-radius:5px}.media-cover img{width:100%;height:100%;object-fit:cover}.media-cover--book,.media-cover--movie,.media-cover--anime{aspect-ratio:2 / 3}.media-cover--song{aspect-ratio:1}.cover-placeholder{width:100%;height:100%;min-height:120px;padding:14%;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;border:1px solid rgba(255,255,255,.12);background:#292823}.media-cover--book .cover-placeholder{background:#302a20;color:var(--yellow)}.media-cover--movie .cover-placeholder{background:#301f1c;color:var(--coral)}.media-cover--song .cover-placeholder{background:#1b302c;color:var(--teal)}.media-cover--anime .cover-placeholder{background:#263029;color:#84c49a}.cover-placeholder svg{width:26%;height:auto}.cover-placeholder span{max-width:100%;color:var(--text);font-family:Georgia,Songti SC,serif;font-size:clamp(14px,1.4vw,22px);line-height:1.25;overflow-wrap:anywhere}.cover-placeholder small{font-size:9px;font-weight:800;opacity:.7}.dashboard-heading h1{max-width:740px}.random-button{color:#151813;background:var(--teal)}.stat-strip{margin-top:44px;display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat-strip>div{min-height:112px;padding:24px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px 12px;border-right:1px solid var(--line)}.stat-strip>div:last-child{border-right:0}.stat-strip svg{grid-row:1 / 3;width:22px;color:var(--muted)}.stat-strip span{color:var(--muted);font-size:12px}.stat-strip strong{font-family:Georgia,serif;font-size:30px;font-weight:500}.stat-strip .rating-stat{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:var(--paper);color:var(--ink)}.rating-stat span{color:#746f65}.rating-stat strong{color:var(--ink);font-size:36px}.rating-stat small{margin-left:3px;font-size:14px}.cover-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(14px,2vw,28px)}.mini-cover-card{min-width:0;padding:0;border:0;text-align:left;background:none;cursor:pointer}.mini-cover-card .media-cover{margin-bottom:13px;box-shadow:0 15px 35px #00000047;transition:transform .25s,box-shadow .25s}.mini-cover-card:hover .media-cover{transform:translateY(-6px);box-shadow:0 22px 45px #0000006b}.mini-cover-card>span{display:block;overflow:hidden;color:var(--text);font-size:14px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.mini-cover-card>small{display:block;margin-top:4px;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:48px}.plan-list,.thought-list{border-top:1px solid var(--line)}.plan-row{min-height:92px;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:16px;border-bottom:1px solid var(--line)}.plan-row .media-cover{width:44px;max-height:66px}.plan-row>div>span{color:var(--teal);font-size:10px;font-weight:800}.plan-row h3{margin:3px 0;font-size:15px}.plan-row p{margin:0;color:var(--muted);font-size:12px}.plan-row>svg{width:18px;color:var(--muted-2)}.thought-row{min-height:105px;padding:17px 0;display:block;border-bottom:1px solid var(--line)}.thought-row>span{color:var(--coral);font-size:10px;font-weight:800}.thought-row blockquote{margin:7px 0;display:-webkit-box;overflow:hidden;color:var(--text);font-family:Georgia,Songti SC,serif;font-size:15px;line-height:1.55;-webkit-line-clamp:2;-webkit-box-orient:vertical}.thought-row small{color:var(--muted-2)}.inline-empty{min-height:130px;display:grid;place-items:center;align-content:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);text-align:center}.inline-empty p{margin:0 0 8px}.inline-empty a{color:var(--teal)}.library-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:10px}.search-field,.large-search{min-height:46px;padding:0 14px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}.search-field svg,.large-search svg{width:19px;color:var(--muted)}.search-field input,.large-search input{width:100%;border:0;outline:0;color:var(--text);background:transparent}.search-field input::placeholder,.large-search input::placeholder{color:var(--muted-2)}.view-toggle{padding:4px;display:flex;gap:3px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}.view-toggle button{width:38px;border:0;border-radius:3px;color:var(--muted);background:transparent;cursor:pointer}.view-toggle button.active{color:var(--text);background:var(--surface-3)}.view-toggle svg{width:18px}.filters-panel{max-height:0;margin-top:0;padding:0 18px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:12px;overflow:hidden;border:1px solid transparent;opacity:0;transition:max-height .25s,margin .25s,padding .25s,opacity .2s}.filters-panel.is-open{max-height:150px;margin-top:12px;padding-top:16px;padding-bottom:16px;border-color:var(--line);opacity:1}.filters-panel label{min-width:0;display:flex;flex-direction:column;gap:6px}.filters-panel label span{color:var(--muted);font-size:11px}.filters-panel select,.field input,.field textarea,.field select,.token-field input{width:100%;border:1px solid var(--line);border-radius:5px;color:var(--text);background:var(--surface-2);outline:none}.filters-panel select{height:38px;padding:0 10px}.reset-filters{align-self:end;width:38px;height:38px}.media-grid{margin-top:34px;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:40px clamp(18px,2.6vw,38px)}.media-card{min-width:0}.cover-button{width:100%;padding:0;position:relative;display:block;overflow:visible;border:0;background:none;cursor:zoom-in}.cover-button .media-cover{box-shadow:0 18px 38px #0000004d;transition:transform .28s,box-shadow .28s}.cover-button:hover .media-cover{transform:translateY(-7px) rotate(.4deg);box-shadow:0 26px 55px #0000007a}.cover-action{position:absolute;right:8px;bottom:8px;padding:7px 9px;border-radius:4px;color:#171613;background:#f1eee5eb;font-size:10px;font-weight:800;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s}.cover-button:hover .cover-action,.cover-button:focus-visible .cover-action{opacity:1;transform:translateY(0)}.media-card-info{padding-top:14px}.media-card-info>div:first-child{display:flex;align-items:center;gap:8px}.kind-chip{padding:3px 6px;color:var(--bg);background:var(--teal);border-radius:3px;font-size:9px;font-weight:900}.media-card--movie .kind-chip{background:var(--coral)}.media-card--song .kind-chip{background:var(--yellow)}.media-card--anime .kind-chip{background:#84c49a}.status-text{color:var(--muted);font-size:11px}.media-card-info h2{margin:9px 0 4px;overflow:hidden;font-family:inherit;font-size:15px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.media-card-info p{margin:0;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.card-bottom{min-height:32px;margin-top:10px;padding-top:9px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line-soft)}.card-bottom strong{color:var(--coral);font-family:Georgia,serif;font-size:20px}.card-bottom strong small{font-size:10px}.card-bottom>span{color:var(--muted-2);font-size:11px}.card-bottom a{width:28px;height:28px;display:grid;place-items:center;color:var(--muted)}.card-bottom svg{width:16px}.media-list{margin-top:30px;border-top:1px solid var(--line)}.media-list-row{min-height:112px;padding:12px 0;display:grid;grid-template-columns:58px minmax(0,1fr) 140px 42px;align-items:center;gap:18px;border-bottom:1px solid var(--line)}.media-list-row>button{width:58px;height:86px;padding:0;border:0;background:none;cursor:zoom-in}.media-list-row>button .media-cover--song{height:58px}.list-main>span{color:var(--teal);font-size:10px;font-weight:800}.list-main h2{margin:5px 0 3px;font-family:inherit;font-size:17px;font-weight:700}.list-main p{margin:0;color:var(--muted);font-size:13px}.list-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.list-meta strong{color:var(--coral)}.list-meta span{color:var(--muted-2);font-size:11px}.empty-state{min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);text-align:center}.empty-state>svg{width:38px;height:38px;margin-bottom:14px;color:var(--muted-2)}.empty-state h2{margin-bottom:8px;color:var(--text)}.add-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:36px}.kind-sidebar{display:flex;flex-direction:column;gap:8px}.kind-sidebar>span{margin-bottom:5px;color:var(--muted);font-size:11px}.kind-sidebar button{height:54px;padding:0 12px;display:flex;align-items:center;gap:12px;border:1px solid transparent;border-radius:5px;color:var(--muted);background:transparent;cursor:pointer}.kind-sidebar button>span{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);border-radius:4px}.kind-sidebar button.active{color:var(--text);background:var(--surface-2);border-color:var(--line)}.kind-sidebar button.active>span{color:var(--bg);background:var(--coral);border-color:var(--coral)}.add-workspace{min-height:580px;padding:24px;border:1px solid var(--line);background:var(--surface)}.segmented{display:inline-flex;padding:4px;gap:3px;border:1px solid var(--line);border-radius:5px;background:var(--bg)}.segmented button,.segmented label span{min-height:36px;padding:0 13px;display:flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:3px;color:var(--muted);background:transparent;cursor:pointer}.segmented button.active,.segmented label input:checked+span{color:var(--text);background:var(--surface-3)}.segmented svg{width:16px}.large-search{height:58px;margin:26px 0 18px;background:var(--surface-2)}.large-search input{font-size:16px}.search-intro{min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);text-align:center}.search-intro>svg{width:34px;height:34px;margin-bottom:14px;color:var(--teal)}.search-intro h2{margin-bottom:7px;color:var(--text)}.notice{min-height:46px;margin:12px 0;padding:10px 13px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:5px;color:var(--muted);font-size:13px}.notice svg{width:18px;flex:0 0 auto}.notice a,.notice button{margin-left:auto;display:flex;align-items:center;gap:6px;border:0;color:var(--text);background:none;cursor:pointer}.notice a svg{width:15px}.notice.warning{border-color:#68562f;background:#272318}.notice.warning>svg{color:var(--yellow)}.notice.success{border-color:#315f58;background:#172420;color:var(--teal)}.notice.error{border-color:#6a3434;background:#291b1b;color:#f39b91}.search-results{display:grid;gap:1px;background:var(--line-soft)}.load-more-row{padding:22px;display:flex;justify-content:center;background:var(--surface)}.search-result{min-height:142px;padding:14px;display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:18px;background:var(--surface)}.search-result>.media-cover{width:76px;max-height:114px}.search-result>div:nth-child(2)>span{color:var(--teal);font-size:10px;font-weight:800}.search-result h2{margin:5px 0;font-family:inherit;font-size:17px;font-weight:700}.search-result p,.search-result small{margin:0;color:var(--muted)}.result-actions{display:flex;gap:8px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.manual-form{margin-top:26px}.form-section-heading{margin-bottom:22px}.form-section-heading h2{margin:0;font-size:30px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{min-width:0;display:flex;flex-direction:column;gap:7px}.field>span{color:var(--muted);font-size:12px}.field>span small{color:var(--muted-2)}.field input,.field select{height:43px;padding:0 12px}.field textarea{padding:12px;resize:vertical;line-height:1.65}.field input:focus,.field textarea:focus,.field select:focus,.token-field input:focus{border-color:var(--teal)}.field-wide{grid-column:1 / -1}.field-error{color:#ef8276!important}.cover-upload{min-height:112px;padding:14px;display:flex;align-items:center;gap:16px;border:1px dashed var(--muted-2);border-radius:5px;color:var(--muted);background:var(--surface-2);cursor:pointer;transition:border-color .2s,background .2s}.cover-upload:hover{border-color:var(--teal);background:var(--surface-3)}.cover-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.cover-upload>svg{width:32px;height:32px;margin:0 10px;color:var(--teal);flex:0 0 auto}.cover-upload>img{width:62px;height:84px;object-fit:cover;border-radius:4px}.cover-upload>span{min-width:0;display:flex;flex-direction:column;gap:5px}.cover-upload strong{overflow:hidden;color:var(--text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.cover-upload small{color:var(--muted);font-size:11px;line-height:1.5}.cover-upload--compact{min-height:82px;padding:10px}.cover-upload--compact>img{width:46px;height:62px}.cover-upload--compact>svg{width:25px;margin:0 6px}.remove-cover-button{padding:0;align-self:flex-start;border:0;color:#ef8276;background:none;cursor:pointer;font-size:11px}.form-actions{margin-top:20px;display:flex;justify-content:flex-end;gap:9px}.back-link{margin-bottom:24px;display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:13px}.back-link svg{width:17px}.detail-hero{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:clamp(34px,6vw,82px);align-items:center}.detail-cover-button{padding:0;position:relative;border:0;background:none;cursor:zoom-in}.detail-cover-button .media-cover{box-shadow:var(--shadow)}.detail-cover-button>span{position:absolute;right:12px;bottom:12px;padding:8px 10px;display:flex;align-items:center;gap:7px;border-radius:4px;color:var(--ink);background:#f1eee5ed;font-size:11px;font-weight:800}.detail-cover-button>span svg{width:15px}.detail-copy{max-width:780px}.detail-copy h1{margin-bottom:8px;font-size:clamp(42px,6vw,80px);line-height:1.03;overflow-wrap:anywhere}.original-title{margin-bottom:10px;color:var(--muted-2);font-family:Georgia,serif;font-style:italic}.detail-creators{color:var(--muted);font-size:18px}.status-control{width:fit-content;margin:26px 0;padding:4px;display:flex;gap:3px;border:1px solid var(--line);border-radius:5px}.status-control button{min-width:86px;height:38px;border:0;border-radius:3px;color:var(--muted);background:transparent;cursor:pointer}.status-control button.active{color:var(--ink);background:var(--paper);font-weight:800}.detail-score-row{display:flex;align-items:flex-end;gap:36px}.detail-score-row label{display:flex;flex-direction:column;gap:6px}.detail-score-row label span{color:var(--muted);font-size:11px}.detail-score-row select{height:48px;padding:0 42px 0 12px;border:1px solid var(--line);border-radius:5px;color:var(--coral);background:var(--surface-2);font-family:Georgia,serif;font-size:21px;font-weight:700}.detail-score-row>div{display:grid;grid-template-columns:auto 1fr;gap:2px 9px}.detail-score-row svg{grid-row:1 / 3;width:20px;color:var(--muted-2)}.detail-score-row span{color:var(--muted);font-size:10px}.detail-score-row strong{font-size:13px}.detail-taxonomy{min-height:26px;margin-top:24px;display:flex;flex-wrap:wrap;gap:7px}.detail-taxonomy span{padding:5px 8px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:4px;color:var(--muted);font-size:10px}.detail-taxonomy svg{width:11px}.detail-columns{margin-top:74px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:38px;align-items:start}.detail-panel{padding-top:26px;border-top:1px solid var(--line)}.locked-notice{margin-bottom:22px;padding:16px;display:flex;gap:12px;border:1px solid #564d32;border-radius:5px;color:var(--yellow);background:#211f18}.locked-notice svg{width:20px;flex:0 0 auto}.locked-notice strong{font-size:13px}.locked-notice p{margin:4px 0 0;color:var(--muted);font-size:12px}.reflection-editor{margin-bottom:28px;padding:20px;border:1px solid var(--line);background:var(--surface)}.reflection-type{margin-bottom:18px}.reflection-type input{position:absolute;opacity:0;pointer-events:none}.timeline{margin-top:18px}.timeline-entry{position:relative;padding:0 0 30px 46px}.timeline-entry:before{content:"";position:absolute;top:30px;bottom:0;left:16px;width:1px;background:var(--line)}.timeline-entry:last-child:before{display:none}.timeline-marker{position:absolute;top:0;left:0;width:33px;height:33px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--coral);background:var(--bg)}.timeline-entry--thought .timeline-marker{color:var(--teal)}.timeline-marker svg{width:15px}.timeline-content{padding:18px;border:1px solid var(--line-soft);border-radius:5px;background:var(--surface)}.timeline-meta{display:flex;justify-content:space-between;gap:15px}.timeline-meta span{color:var(--coral);font-size:10px;font-weight:800}.timeline-entry--thought .timeline-meta span{color:var(--teal)}.timeline-meta time{color:var(--muted-2);font-size:10px}.timeline-content>p,.timeline-content blockquote{margin:12px 0 8px;color:var(--text);font-family:Georgia,Songti SC,serif;font-size:16px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.timeline-content blockquote{padding-left:13px;border-left:2px solid var(--coral)}.timeline-content>small{color:var(--muted)}.entry-actions{margin-top:13px;display:flex;gap:12px;opacity:0;transition:opacity .2s}.timeline-entry:hover .entry-actions,.entry-actions:focus-within{opacity:1}.entry-actions button{padding:0;display:flex;align-items:center;gap:5px;border:0;color:var(--muted);background:none;cursor:pointer;font-size:11px}.entry-actions svg{width:13px}.timeline-empty{min-height:170px;display:grid;place-items:center;align-content:center;color:var(--muted-2)}.timeline-empty svg{width:30px}.timeline-empty p{margin:10px 0 0}.metadata-panel{position:sticky;top:105px}.review-text,.muted-copy{margin-bottom:26px;font-family:Georgia,Songti SC,serif;font-size:17px;line-height:1.8;white-space:pre-wrap}.muted-copy{color:var(--muted)}.metadata-list{margin:0 0 28px}.metadata-list>div{padding:10px 0;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line-soft)}.metadata-list dt{color:var(--muted);font-size:12px}.metadata-list dd{margin:0;text-align:right;font-size:12px}.danger-button{width:100%;height:42px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #603737;border-radius:5px;color:#e58b82;background:transparent;cursor:pointer}.danger-button svg{width:16px}.settings-grid{max-width:920px;display:grid;gap:18px}.settings-section{padding:24px;display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:16px;align-items:start;border:1px solid var(--line);background:var(--surface)}.settings-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:5px;color:var(--teal);background:var(--surface-3)}.settings-icon svg{width:20px}.settings-copy h2{margin:0 0 6px;font-family:inherit;font-size:17px;font-weight:750}.settings-copy p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}.token-field{grid-column:2 / -1;display:flex}.token-field input{height:44px;padding:0 48px 0 12px}.token-field button{width:44px;margin-left:-44px;display:grid;place-items:center;border:0;color:var(--muted);background:transparent;cursor:pointer}.token-field svg{width:17px}.settings-section>.button,.backup-actions,.settings-section>.notice,.import-confirm{grid-column:2 / -1;justify-self:start}.backup-actions{display:flex;gap:9px}.import-confirm{width:100%;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #315f58;border-radius:5px;background:#172420}.import-confirm p{margin:5px 0 0;color:var(--muted);font-size:12px}.import-confirm>div:last-child{display:flex;gap:8px}.storage-note .settings-icon{color:var(--yellow)}.installed-badge,.install-hint{min-height:38px;padding:0 11px;display:inline-flex;align-items:center;gap:6px;border-radius:4px;font-size:12px}.installed-badge{color:var(--teal);border:1px solid #315f58;background:#172420}.installed-badge svg{width:15px}.install-hint{color:var(--muted);border:1px solid var(--line);background:var(--surface-2)}.settings-section>.pwa-update-button{grid-column:2 / -1;justify-self:start}.pwa-notices{position:fixed;z-index:120;left:22px;bottom:22px;display:grid;gap:8px;pointer-events:none}.pwa-toast{min-height:44px;padding:9px 12px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:5px;color:var(--text);background:#191916f5;box-shadow:0 16px 42px #0006;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;animation:page-in .25s ease-out both}.pwa-toast svg{width:18px;color:var(--teal)}.pwa-toast span{font-size:12px}.pwa-toast button{min-height:30px;margin-left:8px;padding:0 9px;border:0;border-radius:4px;color:var(--ink);background:var(--teal);cursor:pointer;font-size:11px;font-weight:800}.pwa-toast--offline svg{color:var(--yellow)}.cover-viewer{position:fixed;z-index:100;inset:0;display:grid;grid-template-columns:80px minmax(0,1fr) 80px;align-items:center;color:var(--text);background:#0a0a09f5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:viewer-in .25s ease-out both}@keyframes viewer-in{0%{opacity:0}to{opacity:1}}.viewer-close{position:absolute;z-index:3;top:24px;right:28px}.viewer-progress{position:absolute;top:34px;left:50%;color:var(--muted);font-size:11px;transform:translate(-50%)}.viewer-arrow{justify-self:center}.viewer-center{min-width:0;max-height:94vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.flip-card{width:min(410px,calc(100vw - 210px));position:relative;perspective:1500px;cursor:pointer}.flip-card--book,.flip-card--movie,.flip-card--anime{aspect-ratio:2 / 3;max-height:70vh;width:min(410px,46.66vh)}.flip-card--song{aspect-ratio:1;width:min(520px,65vh,calc(100vw - 210px))}.flip-card-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .52s cubic-bezier(.2,.7,.2,1)}.flip-card.is-flipped .flip-card-inner{transform:rotateY(180deg)}.flip-face{position:absolute;inset:0;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:6px;box-shadow:var(--shadow);backface-visibility:hidden;-webkit-backface-visibility:hidden}.flip-face .media-cover{border-radius:0}.flip-front{background:var(--surface-2)}.flip-back{padding:clamp(18px,3vw,30px);display:flex;flex-direction:column;color:var(--ink);background:var(--paper);transform:rotateY(180deg)}.cover-gloss{position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);pointer-events:none}.back-heading{padding-bottom:15px;border-bottom:1px solid #bcb4a6}.back-heading .eyebrow{margin-bottom:7px;color:#3c786e}.back-heading h2{margin:0 0 4px;display:-webkit-box;overflow:hidden;font-size:clamp(22px,3vw,34px);line-height:1.1;-webkit-line-clamp:2;-webkit-box-orient:vertical}.back-heading p{margin:0;overflow:hidden;color:#6f6a61;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.back-notes{min-height:0;flex:1;padding:8px 0;display:flex;flex-direction:column;justify-content:center;gap:5px;overflow:hidden}.back-note{min-height:0;padding:8px 0;border-bottom:1px solid #c8c0b2}.back-note>span{color:#3c786e;font-size:9px;font-weight:800}.back-note--quote>span{color:#b84d3f}.back-note p{margin:4px 0 2px;display:-webkit-box;overflow:hidden;font-family:Georgia,Songti SC,serif;font-size:clamp(12px,1.6vw,15px);line-height:1.45;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.back-note small{color:#777066;font-size:9px}.back-empty{display:flex;flex-direction:column;align-items:center;color:#746f65;text-align:center}.back-empty svg{width:32px}.back-empty p{max-width:240px;margin:12px 0;font-family:Georgia,Songti SC,serif;line-height:1.6}.back-detail{min-height:36px;align-self:flex-end;color:var(--ink);font-weight:800}.flip-trigger{min-height:38px;margin-top:15px;padding:0 12px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:5px;color:var(--muted);background:var(--surface);cursor:pointer}.flip-trigger svg{width:16px}.viewer-caption{width:min(680px,80vw);min-height:78px;margin-top:12px;display:flex;align-items:flex-start;justify-content:space-between;text-align:center}.viewer-caption>div{min-width:0;margin:0 auto}.viewer-caption span{color:var(--teal);font-size:9px;font-weight:800}.viewer-caption h1{margin:3px 0;overflow:hidden;font-family:inherit;font-size:18px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.viewer-caption p{margin:0;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.viewer-caption>strong{min-width:50px;color:var(--coral);font-family:Georgia,serif;font-size:25px}.viewer-caption>strong small{font-size:10px}.simple-modal{position:fixed;z-index:80;inset:0;padding:24px;display:grid;place-items:center;background:#0a0a09e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.random-result{width:min(380px,100%);padding:28px;position:relative;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);text-align:center}.random-close{position:absolute;top:12px;right:12px;width:34px;height:34px}.random-result .media-cover{width:180px;max-height:270px;margin:16px auto 20px}.random-result>span:not(.eyebrow){color:var(--teal);font-size:10px;font-weight:800}.random-result h2{margin:6px 0;font-size:28px}.random-result p{color:var(--muted)}.random-result .form-actions{justify-content:center}@media(max-width:980px){.stat-strip{grid-template-columns:repeat(3,1fr)}.stat-strip>div:nth-child(3),.stat-strip>div:nth-child(6){border-right:0}.stat-strip>div:nth-child(n+4){border-top:1px solid var(--line)}.stat-strip .rating-stat{grid-column:auto}.cover-row{grid-template-columns:repeat(4,minmax(0,1fr))}.cover-row>:nth-child(n+5){display:none}.dashboard-columns{grid-template-columns:1fr;gap:0}.filters-panel{grid-template-columns:repeat(3,1fr)}.filters-panel.is-open{max-height:240px}.detail-columns{grid-template-columns:1fr}.metadata-panel{position:static}}@media(max-width:720px){.topbar{height:64px;padding:0 18px}.brand small,.desktop-nav{display:none}.brand-mark{width:34px;height:34px}.mobile-nav{position:fixed;z-index:40;right:0;bottom:0;left:0;height:calc(66px + env(safe-area-inset-bottom));padding:5px 7px env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);background:#11110ff5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-nav .nav-link{height:55px;padding:4px;flex-direction:column;justify-content:center;gap:3px;font-size:10px}.mobile-nav .nav-link svg{width:20px}.main-content{min-height:calc(100vh - 64px)}.page{padding:34px 18px 100px}.page-heading,.dashboard-heading{align-items:flex-start;flex-direction:column;gap:22px}.page-heading h1,.dashboard-heading h1{font-size:39px}.section-block{margin-top:42px}.section-heading h2{font-size:24px}.empty-home{min-height:calc(100vh - 130px);padding-top:25px}.empty-home-art{height:180px}.ghost-cover--book{width:96px;height:144px;left:8%}.ghost-cover--movie{width:112px;height:168px;left:calc(50% - 56px)}.ghost-cover--song{width:124px;height:124px;right:5%}.empty-home h1{font-size:40px}.empty-home>p{font-size:14px}.empty-actions{width:100%;flex-direction:column}.dashboard-heading .random-button{width:100%}.stat-strip{grid-template-columns:repeat(2,1fr)}.stat-strip>div{border-right:1px solid var(--line)}.stat-strip>div{min-height:92px;padding:17px}.stat-strip>div:nth-child(2n){border-right:0}.stat-strip>div:nth-child(n+3){border-top:1px solid var(--line)}.stat-strip .rating-stat{grid-column:auto}.cover-row{margin-right:-18px;padding-right:18px;display:flex;gap:15px;overflow-x:auto;scrollbar-width:none}.cover-row>:nth-child(n){display:block;flex:0 0 135px}.library-toolbar{grid-template-columns:1fr auto}.filter-toggle{width:44px;padding:0;font-size:0}.view-toggle{grid-column:1 / -1;justify-self:end}.filters-panel,.filters-panel.is-open{grid-template-columns:repeat(2,minmax(0,1fr))}.filters-panel.is-open{max-height:370px}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 14px}.cover-action{display:none}.media-list-row{grid-template-columns:48px minmax(0,1fr) 34px;gap:12px}.media-list-row>button{width:48px;height:72px}.list-meta{display:none}.media-list-row>.icon-button{width:34px;height:34px}.add-layout{grid-template-columns:1fr;gap:14px}.kind-sidebar{display:grid;grid-template-columns:repeat(4,1fr)}.kind-sidebar>span{grid-column:1 / -1}.kind-sidebar button{justify-content:center}.add-workspace{padding:16px}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.search-result{grid-template-columns:62px 1fr}.search-result>.media-cover{width:62px;max-height:93px}.result-actions{grid-column:1 / -1}.result-actions .button{flex:1}.detail-hero{grid-template-columns:minmax(0,1fr);gap:30px}.detail-cover-button{width:min(260px,72vw);justify-self:center}.detail-cover-button:has(.media-cover--song){width:min(300px,78vw)}.detail-copy h1{font-size:44px}.status-control{width:100%}.status-control button{min-width:0;flex:1}.detail-score-row{align-items:flex-start;flex-direction:column;gap:18px}.detail-columns{margin-top:48px}.entry-actions{opacity:1}.settings-section{padding:18px;grid-template-columns:42px 1fr}.settings-section>.button,.backup-actions,.settings-section>.notice,.import-confirm,.token-field{grid-column:1 / -1}.settings-section>.pwa-update-button,.installed-badge,.install-hint{grid-column:1 / -1;justify-self:start}.backup-actions{width:100%}.backup-actions .button{flex:1}.import-confirm{align-items:stretch;flex-direction:column}.import-confirm>div:last-child .button{flex:1}.pwa-notices{right:12px;bottom:calc(78px + env(safe-area-inset-bottom));left:12px}.pwa-toast{width:100%;justify-content:flex-start}.pwa-toast button{margin-left:auto}.cover-viewer{grid-template-columns:48px minmax(0,1fr) 48px}.viewer-close{top:16px;right:16px}.viewer-progress{top:25px}.viewer-arrow{width:38px;height:38px}.flip-card--book,.flip-card--movie,.flip-card--anime{width:min(calc(100vw - 116px),39.96vh);max-height:60vh}.flip-card--song{width:min(calc(100vw - 116px),55vh)}.flip-back{padding:16px}.back-note{padding:6px 0}.back-note p{font-size:12px}.viewer-caption{width:calc(100vw - 36px)}}@media(max-width:420px){.cover-viewer{grid-template-columns:42px minmax(0,1fr) 42px}.viewer-arrow{width:34px;height:34px}.flip-card--book,.flip-card--movie,.flip-card--anime{width:min(calc(100vw - 96px),37.962vh)}.flip-card--song{width:min(calc(100vw - 96px),52vh)}.back-heading h2{font-size:20px}.back-note:nth-child(n+3){display:none}.kind-sidebar button{padding:0 6px;gap:6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.flip-card-inner{transform:none!important}.flip-card.is-flipped .flip-front{opacity:0;pointer-events:none}.flip-card:not(.is-flipped) .flip-back{opacity:0;pointer-events:none}.flip-back{transform:none}}
