:root{color-scheme:dark;--bg:#211b10;--panel:#302719;--line:#655231;--gold:#edc453;--bright:#ffda63;--ink:#eee9df;--muted:#b7afa0;--track:#504226;font:14px system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}main{max-width:1450px;margin:auto;padding:clamp(12px,2.2vw,30px)}h1,h2,p{margin:0}h1{font:700 clamp(21px,2.6vw,34px)/1.15 Georgia,serif;letter-spacing:.035em}h1 small{font:inherit;color:var(--muted)}h2{font:700 18px Georgia,serif;letter-spacing:.03em}.top,.heading,.record,.nav,.filter,.kpi,.legend{display:flex;align-items:center}.top,.heading,.record,.legend{justify-content:space-between;gap:12px}.top{margin-bottom:14px;flex-wrap:wrap}.nav{gap:7px;flex-wrap:wrap}button,select{font:inherit;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:8px;cursor:pointer}button{padding:7px 11px}button:hover,select:hover{border-color:var(--gold)}button:focus-visible,select:focus-visible{outline:2px solid var(--bright);outline-offset:2px}.ico{width:19px;height:19px;flex:none;color:var(--gold);vertical-align:middle}.nav button{display:grid;justify-items:center;gap:3px;min-width:65px;font-size:11px}.kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-bottom:12px}.kpi{gap:12px;min-height:70px;text-align:left;padding:10px 13px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.kpi strong{display:block;font:700 26px Georgia,serif}.kpi[aria-pressed=true],.type[aria-pressed=true]{border-color:var(--bright);background:#2a2313}.kpi[aria-pressed=true] strong,.today{color:var(--bright)}.controls{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.types,.filters{display:flex;flex:1;align-items:stretch;gap:4px}.type{display:grid;place-items:center;gap:3px;padding:6px;flex:1;font-size:11px;white-space:nowrap}.type small,.muted{color:var(--muted)}.filters{align-items:center;justify-content:space-between;border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:7px}.filter{gap:5px;white-space:nowrap;font-size:11px}.filter select{padding:6px;max-width:110px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.card{border:1px solid var(--line);background:var(--panel);border-radius:10px;min-width:0}.heading{padding:10px 13px;border-bottom:1px solid var(--line)}.heading h2{display:flex;align-items:center;gap:8px}.rows{padding:0 13px}.record{min-height:35px;border-bottom:1px solid #554529}.record:last-child{border:0}.title{display:flex;align-items:center;gap:10px;min-width:0}.title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link{border:0;background:none;padding:0;color:inherit;text-align:left}.link:hover{color:var(--gold)}.meter{height:6px;border-radius:20px;background:var(--track);display:block;min-width:24px;overflow:hidden;flex:1}.meter i{display:block;height:100%;background:var(--gold);border-radius:inherit}.progress{display:flex;align-items:center;gap:9px;width:36%;min-width:110px;justify-content:flex-end;font-size:11px;white-space:nowrap}.progress span:last-child{min-width:48px;text-align:right}.today{background:#332a12;border-radius:5px;padding:3px 6px;font-size:10px;font-weight:700}.empty{color:var(--muted);padding:13px}.recent{margin:11px 0;overflow:auto}table{width:100%;min-width:660px;border-collapse:collapse;text-align:left}th,td{padding:6px 13px;border-bottom:1px solid #554529}th{background:#201d17;color:var(--muted);font-size:11px}td:nth-child(4),th:nth-child(4){text-align:center}td:last-child{width:23%}td .progress{width:100%}.badge{display:inline-block;padding:2px 7px;border:1px solid #50483a;border-radius:5px;font-size:11px}.badge.active{border-color:#927637;color:var(--gold)}.charts{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.chart{width:100%;height:118px;display:block;padding:6px 10px}.axis{stroke:#454037;stroke-width:1}.gold{fill:var(--gold)}svg text{fill:var(--muted);font:9px system-ui}.foot{margin-top:11px;color:var(--muted);font-size:11px}dialog{width:min(680px,94vw);max-height:84vh;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:18px}dialog::backdrop{background:#000a}.close{float:right}.detail{display:grid;grid-template-columns:150px 1fr;gap:8px}.detail dt{color:var(--muted)}.detail dd{margin:0;overflow-wrap:anywhere}@media(max-width:850px){.kpis{grid-template-columns:repeat(3,1fr)}.charts{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.filters,.types{flex-basis:100%;overflow:auto}}@media(max-width:400px){.kpis{grid-template-columns:repeat(2,1fr)}}
/* Phase two: a flatter, quieter workspace with restrained gold accents. */
:root{--panel:#2a2213;--line:#302d25;--gold:#d4af4b;--bright:#f2cc62;--ink:#e8e2d6}
main{max-width:1240px}h1{font:700 clamp(19px,2.3vw,27px)/1.15 system-ui,sans-serif;letter-spacing:.02em}h2{font:650 13px system-ui,sans-serif;letter-spacing:.08em}.nav button{min-width:54px;padding:5px 8px}.nav .ico{width:16px;height:16px}.kpi{min-height:59px}.kpi strong{font:700 22px system-ui,sans-serif}.card,.kpi,.filters{border-radius:7px}.heading{padding:8px 12px}.record{min-height:31px}.type{background:transparent;border-color:transparent}.type:hover,.type[aria-pressed=true]{border-color:var(--line)}.type[aria-pressed=true]{border-bottom-color:var(--gold)}.foot{display:flex;gap:12px;flex-wrap:wrap}.foot #sync-state{margin-left:auto}.entry-actions,.edit-footer{display:flex;align-items:center;gap:9px}.favorite{border:0;background:transparent;padding:3px}.favorite .ico{color:var(--muted)}.favorite[aria-pressed=true] path{fill:var(--gold);stroke:var(--gold)}.editor{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:14px}.editor label{display:grid;gap:5px;color:var(--muted);font-size:12px}.editor .wide{grid-column:1/-1}.editor input,.editor textarea,.editor select{width:100%;background:#3b301b;border:1px solid var(--line);border-radius:6px;color:var(--ink);padding:8px;font:inherit}.editor textarea{resize:vertical}.editor .save{background:var(--gold);color:var(--bg);font-weight:650;margin-left:auto}.editor [role=alert]:empty{display:none}.editor [role=alert]{color:#ee9d90}.entry-actions .favorite{flex:none}
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}h1,h2,.kpi strong,svg text{font-family:inherit}
.entry-heading{margin-bottom:14px}.entry-heading p{font-size:10px;letter-spacing:.14em;color:var(--gold);margin-bottom:3px}.entry-heading h2{font-size:21px;letter-spacing:0;text-transform:none}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 142px;gap:16px}.editor-layout .editor{margin-top:0}.cover-pane{color:var(--muted);font-size:11px}.cover-pane p{margin:6px 0}.cover-pane #cover-preview{display:grid;place-items:center;aspect-ratio:2/3;background:#3b301b;border:1px solid var(--line);border-radius:7px;overflow:hidden}.cover-pane img{width:100%;height:100%;object-fit:contain}.lookup{padding:8px 0;border-bottom:1px solid var(--line)}.lookup button{display:flex;align-items:center;gap:7px}.lookup #lookup-note{margin-top:5px;color:var(--muted);font-size:11px}.lookup #lookup-results:not([hidden]){display:grid;gap:3px;max-height:180px;overflow:auto;margin-top:6px}.lookup #lookup-results button{justify-content:space-between;text-align:left}.lookup #lookup-results small{color:var(--muted);font-size:10px}.lookup #lookup-results [aria-pressed=true]{border-color:var(--gold);background:#282111}@media(max-width:550px){.editor-layout{grid-template-columns:minmax(0,1fr)}.cover-pane{grid-row:1;width:84px}}
/* Desktop keeps the dashboard grid. Phones get a thumb-friendly reading order. */
.candidate-name{display:grid;gap:3px;min-width:0}.candidate-name strong,.candidate-name small{overflow-wrap:anywhere}.lookup #lookup-results button{width:100%;justify-content:flex-start}
@media(max-width:600px){
 main{padding:14px max(12px,env(safe-area-inset-right)) calc(80px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));padding-top:max(14px,env(safe-area-inset-top))}
 .top{margin-bottom:12px}.top h1{font-size:19px;letter-spacing:.035em}.top h1 small{display:block;font-size:10px;letter-spacing:.16em;margin-top:4px}.nav{position:fixed;z-index:5;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);background:#2a2213;padding:4px max(8px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
 .nav button{min-width:0;min-height:48px;background:transparent;border-color:transparent;border-radius:5px;font-size:10px;align-content:center}.nav .ico{width:19px;height:19px}.nav [data-action=add]{color:var(--bright)}.nav [data-action=info]{display:none}
 .kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-bottom:9px}.kpi{min-width:0;min-height:58px;padding:7px 5px;gap:5px;font-size:10px}.kpi .ico{width:14px;height:14px}.kpi strong{font-size:18px}
 .controls{gap:6px}.types{overflow-x:auto;scrollbar-width:thin;scroll-snap-type:x proximity}.type{flex:1 0 47px;min-height:50px;scroll-snap-align:start;font-size:9px}.type .ico{width:16px;height:16px}
 .filters{display:grid;grid-template-columns:.8fr 1fr 1fr auto;gap:5px;padding:6px;overflow:visible}.filter{display:grid;gap:3px;min-width:0;font-size:9px}.filter select{max-width:none;width:100%;min-height:40px;padding:4px;font-size:16px}.filters button{height:40px;align-self:end}
 .grid,.charts{gap:8px}.grid .title span{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.record{min-height:39px;gap:7px}.progress{min-width:94px;font-size:10px}.progress span:last-child{min-width:33px}.rows{padding:0 9px}.heading{padding:8px 9px}.heading h2{font-size:11px}
 .recent{overflow:visible}.recent table,.recent tbody{display:block;width:100%;min-width:0}.recent thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.recent tr{display:grid;grid-template-columns:1fr auto;gap:3px 7px;padding:8px 9px;border-bottom:1px solid var(--line)}.recent tr:last-child{border:0}.recent td{padding:0;border:0;width:auto;min-width:0;text-align:left}.recent td[data-cell=title]{grid-column:1/-1;grid-row:1}.recent td[data-cell=added]{grid-row:2;color:var(--muted);font-size:10px}.recent td[data-cell=rating]{grid-row:3;text-align:left;color:var(--muted);font-size:10px}.recent td[data-cell=rating]::before{content:'Rating '}.recent td[data-cell=progress]{grid-row:3}.recent td[colspan]{grid-column:1/-1}.recent .title{min-height:32px}.recent .title span{white-space:normal}.recent .progress{width:100%;min-width:90px}
 dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 22px);padding:12px;overscroll-behavior:contain}.close{min-width:42px;min-height:42px}.entry-heading h2{font-size:18px}.editor-layout{grid-template-columns:1fr;gap:9px}.cover-pane{grid-row:1;display:flex;width:auto;align-items:center;gap:10px}.cover-pane #cover-preview{width:68px;height:92px;flex:none}.editor{gap:8px}.editor input,.editor textarea,.editor select{font-size:16px;min-height:42px}.lookup #lookup-results button,.editor .save,.favorite{min-height:42px}.foot{gap:6px}.foot #sync-state{margin-left:0}
}
.entry-section{border-top:1px solid var(--line);padding-top:8px}.entry-section summary{cursor:pointer;font-size:12px;color:var(--ink);padding:5px 0}.entry-section output{float:right;color:var(--gold)}.entry-section textarea{margin-top:7px}#rating-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.note-history{max-height:190px;overflow:auto;margin-bottom:8px}.note-history article{padding:7px 0;border-bottom:1px solid var(--line)}.note-history time{color:var(--gold);font-size:10px}.note-history p{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0}.entry-details{display:grid;grid-template-columns:minmax(90px,1fr) 2fr;gap:6px;font-size:12px}.entry-details dt{color:var(--muted)}.entry-details dd{margin:0;overflow-wrap:anywhere}
.library-pane{padding-top:2px}.library-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:8px;align-items:end}.library-filters label{display:grid;min-width:0;gap:4px;color:var(--muted);font-size:11px}.library-filters .library-search{grid-column:1/-1}.library-filters input,.library-filters select{height:36px;width:100%;min-width:0;background:#3b301b;border:1px solid var(--line);border-radius:6px;color:var(--ink);padding:6px 8px;font:inherit}.library-filters input{font-size:14px}.library-filters :is(input,select):focus-visible{outline:2px solid var(--gold);outline-offset:1px}.library-favorite{height:36px;display:flex;align-items:center;gap:5px;font-size:11px}.library-favorite .ico{width:15px;height:15px}.library-favorite[aria-pressed=true]{border-color:var(--gold);color:var(--bright)}.library-favorite[aria-pressed=true] path{fill:var(--gold)}.library-meta{display:flex;justify-content:space-between;align-items:center;margin-top:9px;font-size:11px;color:var(--muted);min-height:28px}.library-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,28%);gap:10px;align-items:center;padding:8px 1px;border-top:1px solid var(--line)}.library-row-main{min-width:0}.library-row .title{font-weight:600;width:100%;min-height:24px}.library-row .title span{white-space:normal;overflow-wrap:anywhere}.library-row-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 9px;margin-left:29px;color:var(--muted);font-size:10px}.library-row-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.library-row-side .progress{width:100%;min-width:0;white-space:normal;text-align:right}.library-row-side .favorite{min-width:32px;min-height:30px}.library-more{margin-top:9px;width:100%}.library-back{color:var(--gold);margin:-4px 0 9px}.edit-footer{position:sticky;bottom:-1px;background:var(--panel);padding:6px 0;border-top:1px solid var(--line)}
@media(max-width:600px){.library-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.library-filters .library-favorite{justify-self:stretch;justify-content:center}.library-filters input,.library-filters select{font-size:16px;height:42px}.library-favorite,.library-back{min-height:42px}.library-row{grid-template-columns:minmax(0,1fr) minmax(82px,25%);gap:6px;padding:8px 0}.library-row .title{min-height:32px}.library-row .title .ico{width:16px;height:16px}.library-row-meta{margin-left:26px;font-size:9px}.library-row-side .favorite{min-height:42px;min-width:42px}.library-row-side .progress{font-size:9px}.library-row-side .meter{min-width:16px}}
.section-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:7px;margin:8px 0}.section-toolbar button{min-height:34px}.section-field{display:grid;gap:4px;color:var(--muted);font-size:11px}.section-field input,.section-field select{width:100%;min-width:0;color:var(--ink);background:#3b301b;border:1px solid var(--line);border-radius:6px;padding:7px 8px;font:inherit}.section-toolbar .section-field{flex:1;min-width:104px}.section-form{display:grid;gap:10px}.section-form [role=alert]{color:#ee9d90}.confirm-actions{justify-content:flex-end}.trash-action{color:#e6a09a}.membership-list{display:grid;gap:3px;margin:8px 0}.membership-list label{display:flex;align-items:center;gap:8px;min-height:28px}.membership-list input[type=checkbox]{width:16px;min-height:16px;margin:0;accent-color:var(--gold)}.part-row{display:grid;grid-template-columns:55px minmax(85px,2fr) minmax(62px,1fr) minmax(62px,1fr) auto;gap:5px;align-items:end;margin:7px 0}.part-row button{height:36px}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:12px}.calendar-nav{align-items:center;justify-content:space-between}.calendar-nav strong{font-size:12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.calendar-grid>span{padding:5px 0;font-size:10px;color:var(--muted)}.calendar-grid button{min-height:34px;padding:4px 1px;position:relative;font-size:11px}.calendar-grid button[aria-current=date]{border-color:var(--gold);color:var(--gold)}.calendar-grid button[aria-pressed=true]{background:#302715;border-color:var(--bright)}.calendar-grid button i{position:absolute;bottom:4px;left:50%;height:3px;width:3px;border-radius:50%;background:var(--gold)}.calendar-agenda time{font-size:10px;white-space:nowrap;color:var(--muted)}.calendar-agenda .title span{white-space:normal}.calendar-agenda .record{padding:4px 0}.calendar-agenda .record>button:not(.title){font-size:10px}.calendar-agenda{max-height:380px;overflow:auto}#media-detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:7px}
@media(max-width:600px){.section-toolbar button{min-height:42px}.section-field input,.section-field select{font-size:16px;min-height:42px}.calendar-layout{grid-template-columns:1fr;gap:7px}.calendar-grid button{min-height:39px}.calendar-agenda{max-height:none}.part-row{grid-template-columns:44px minmax(0,1fr) 52px 52px 32px;gap:4px}.part-row input{padding:5px 3px}.part-row button{padding:4px;height:42px}.membership-list label{min-height:42px}.trash-action{font-size:11px}}
.editor [hidden]{display:none}
.series-fields{display:grid;grid-template-columns:minmax(0,1fr) 80px;gap:8px;margin:7px 0}.series-fields .wide{grid-column:1/-1}
.icon-button{display:inline-grid;place-items:center;min-width:34px;min-height:34px;padding:6px}.nav .icon-button{min-width:42px}.icon-button:disabled{opacity:.45;cursor:wait}.icon-button[hidden],.editor .icon-button[hidden]{display:none}.editor .save .ico{color:var(--bg)}.nav .icon-button .ico{width:18px;height:18px}#calendar-job,#achievement-note{font-size:11px}.nav .icon-button:hover,.nav .icon-button:focus-visible{border-color:var(--gold)}
@media(max-width:600px){.icon-button{min-width:42px;min-height:42px}.nav .icon-button{min-height:48px}}
.calendar-date{display:grid;justify-items:end;gap:2px;flex:none}.calendar-date small{font-size:9px;color:var(--muted)}
.foot .icon-button[data-action=sync]{color:var(--muted);background:transparent;border-color:transparent;font-size:inherit}
.foot .icon-button:is([data-action=sync],[data-action=info]) .ico{width:1em;height:1em;color:inherit}
.foot .icon-button[data-action=sync]:hover,.foot .icon-button[data-action=sync]:focus-visible{border-color:var(--line)}
.foot .sync-group{display:inline-flex;align-items:center;gap:4px;margin-left:auto}
.foot .sync-group #sync-state{margin-left:0}
.foot .sync-group .icon-button:is([data-action=sync],[data-action=info]){border:0;border-radius:0;background:none;min-width:0;min-height:0;padding:3px 0;flex:none}
@media(max-width:600px){.foot .sync-group{margin-left:0}.foot .sync-group .icon-button:is([data-action=sync],[data-action=info]){min-height:36px;padding-right:8px}}
.foot .sync-group .icon-button[data-action=sync]{position:relative;isolation:isolate}
.foot .sync-group .icon-button[data-action=sync] .ico{position:relative;z-index:1}
#library-selection[hidden]{display:none}.bulk-check{float:left;margin:4px 7px 0 0}.bulk-check input{accent-color:var(--gold);width:17px;height:17px}.review-list{max-height:42dvh;overflow:auto;padding-left:24px}.review-list li{padding:5px}.review-list small,.review-row small{color:var(--muted)}.review-row{display:grid;grid-template-columns:105px minmax(0,1fr) minmax(0,1fr);gap:7px;border-top:1px solid var(--line);padding:6px 0}.review-row p{white-space:pre-wrap;overflow-wrap:anywhere;max-height:110px;overflow:auto}.review-row small{display:block;font-size:10px}@media(max-width:600px){.review-row{grid-template-columns:1fr 1fr}.review-row strong{grid-column:1/-1}.bulk-check{padding:3px}}
/* Dashboard palette and compact spacing from Excel 2.6.7. */
:root{--bg:#211b10;--panel:#302719;--line:#554529;--ink:#ede8d9;--muted:#c6c2b6;--gold:#d4af4b}
.top{padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:8px}
.top h1,.heading h2{color:var(--gold)}
.card,.kpi,.filters,dialog{border-radius:10px}
.kpi{min-height:54px}
.controls{gap:7px;margin-bottom:8px}
.type[aria-pressed=true]{background:transparent;box-shadow:inset 0 -2px var(--gold);color:var(--gold)}
.record{min-height:27px}
.pin{border-color:transparent;background:transparent}
.pin:not([aria-pressed=true]) .ico{color:var(--muted)}
.pin[aria-pressed=true] .ico path{fill:var(--gold)}
#pin-message:empty{display:none}
#pin-message{font-size:11px}
.nav-label{display:none}
@media(max-width:600px){
 main{padding-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right))}
 .top{padding-bottom:12px;margin-bottom:10px}
 .top h1{font-size:clamp(18px,5.4vw,23px)}
 .top h1 small{letter-spacing:.13em}
 .kpis{gap:6px;margin-bottom:8px}
 .kpi{min-height:50px;padding:6px 8px;gap:7px}
 .kpi strong{font-size:20px;line-height:1.1}
 .types{gap:1px}
 .type{flex-basis:42px;min-height:48px;padding-inline:3px}
 .filters{padding:7px;gap:6px}
 .filter select,.filters button{min-height:44px}
 .filters button{min-width:44px}
 .grid .heading,.recent .heading{padding:10px 12px}
 .grid .rows{padding:0 12px}
 .grid .record{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;padding:7px 0}
 .grid .title{font-size:14px;line-height:1.35;gap:8px;min-height:30px}
 .grid .title span{display:block;overflow-wrap:anywhere}
 .grid .progress{width:auto;min-width:0;margin-left:27px;justify-content:flex-start;white-space:normal;line-height:1.35}
 .grid .progress .meter{flex:0 1 96px}
 .grid .progress span:last-child{min-width:0;text-align:left}
 .upcoming-card .upcoming-date{gap:4px}
 .upcoming-card .today{font-size:9px;padding:2px 5px}
 .calendar-shortcut{font-size:11px;min-height:32px}
 .recent tr{padding:8px 12px}
 .recent .title{font-size:14px}
 .recent .title span{overflow-wrap:anywhere}
 .nav{background:#302719;border-top-color:#655231}
 .nav .icon-button{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:4px 2px}
 .nav .icon-button[data-action=info]{display:none}
 .nav .nav-label{display:block;font-size:10px;line-height:1.2;color:var(--muted)}
 .nav [data-action=add] .ico{box-sizing:content-box;border:1px solid #514526;border-radius:7px;padding:3px;background:#262013}
}
.recent .title,.grid .title{width:100%}
.recent .title span,.grid .title span{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.recent .has-cover{--cover-width:42%;background-image:linear-gradient(90deg,var(--panel),rgb(19 18 15 / .76) 56%,rgb(19 18 15 / .64)),var(--recent-cover);background-position:right center;background-repeat:no-repeat;background-size:var(--cover-width) 100%,var(--cover-width) auto}
@media(min-width:601px){
 .recent table{table-layout:fixed}
 .recent th:first-child{width:14%}
 .recent th:nth-child(2){width:57%}
 .recent th:nth-child(3),.recent td[data-cell=rating]{width:9%;text-align:center}
 
 .recent th:nth-child(4),.recent td:last-child{width:20%}
 .grid .progress{flex-shrink:0}
}
@media(max-width:600px){
 .grid .record{gap:2px;padding:5px 0}
 .grid .title{min-height:25px}
 .grid .title span{white-space:nowrap}
 .recent .has-cover{--cover-width:72%;background-image:linear-gradient(90deg,var(--panel),rgb(19 18 15 / .82) 48%,rgb(19 18 15 / .66)),var(--recent-cover)}
 .recent tr{padding:5px 12px;row-gap:2px}
 .recent .title{min-height:29px;line-height:1.35}
 .recent .title span{white-space:nowrap}
 .recent td[data-cell=progress] .progress{justify-content:flex-end}
 .recent .badge{background:rgb(19 18 15 / .72)}
}
.controls{align-items:center}
.date-controls{display:flex;align-items:center;gap:2px}
.date-controls button,.dashboard-clear{min-height:36px;padding:4px 8px}
.date-controls button:not([aria-haspopup]),.dashboard-clear{min-width:36px;font-size:18px}
@media(min-width:601px){
 .recent .has-cover{--cover-width:48%;background-position:26.923% center;background-image:linear-gradient(90deg,var(--panel),rgb(19 18 15 / .83) 35%,rgb(19 18 15 / .74) 85%,var(--panel)),var(--recent-cover)}
}
@media(max-width:850px){
 .controls .types{order:1}
}
@media(max-width:600px){
 .date-controls button,.dashboard-clear{min-height:44px}
 .date-controls button:not([aria-haspopup]),.dashboard-clear{min-width:44px}
 .dashboard-clear{margin-inline-start:auto}
}
.controls .date-controls{min-width:0;max-width:100%}
.entry-popup{--panel:#211b10;width:min(780px,94vw)}
.entry-popup>.close,.entry-popup>form:first-child .close{margin-inline-start:9px}
.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:42px;margin-bottom:10px}
.editor-heading h2{color:var(--gold);font-size:18px;font-weight:750}
.editor-heading .save{background:var(--gold);border-color:var(--gold)}
.editor-heading .save .ico{color:var(--bg)}
.editor-layout:not(:has(#cover-preview img)){grid-template-columns:minmax(0,1fr)}
.editor-layout:not(:has(#cover-preview img)) .cover-pane{display:none}
.editor-icons{display:flex;flex-wrap:wrap;align-items:center;gap:3px}
.editor-icons button{background:transparent;border-color:transparent;border-radius:6px}
.editor-icons button .ico{color:var(--muted)}
.editor-icons button:hover .ico,.editor-icons button[aria-pressed=true] .ico{color:var(--gold)}
.editor-icons button[aria-pressed=true]{box-shadow:inset 0 -2px var(--gold)}
.editor-icons button[data-editor-status=Completed]:is(:hover,[aria-pressed=true]) .ico{color:#ffdf45}
.editor-icons button[data-editor-status=Dropped]:is(:hover,[aria-pressed=true]) .ico{color:#ef8173}
.editor-state>span{font-size:11px;color:var(--muted)}
.editor-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:8px}
.entry-popup .editor{gap:8px}
.entry-popup .editor :is(input,textarea,select){border-radius:9px}
.entry-popup .entry-section{padding-top:3px}
.entry-popup .entry-section summary{padding:8px 0}
.entry-popup .lookup{padding:0 0 4px}
.entry-popup .lookup button{display:inline-grid;vertical-align:middle}
.entry-popup .lookup #lookup-note{display:inline;margin-left:7px}
@media(max-width:600px){
 .entry-popup{width:calc(100vw - 16px)}
 .editor-icons{gap:1px}
 .editor-icons .icon-button{min-width:40px;padding:4px}
 .entry-popup .editor-heading h2{font-size:15px}
 .editor-heading .entry-actions{gap:3px}
 .entry-popup .editor-layout{grid-template-columns:minmax(0,1fr)}
}
.editor-kind-icons{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;max-width:320px}
.editor-kind-icons .icon-button{min-width:0;border:0;box-shadow:none;padding-bottom:8px}
.editor-kind-icons .icon-button:is(:hover,:focus-visible,[aria-pressed=true]){background:transparent;box-shadow:none}
.editor-kind-icons .icon-button:focus-visible{outline:none}
.editor-kind-icons .icon-button:focus-visible .ico{color:var(--bright);filter:drop-shadow(0 0 3px var(--gold))}
.editor-kind-icons::after{content:"";position:absolute;bottom:0;left:0;width:calc(100% / 7);height:2px;pointer-events:none;background:linear-gradient(var(--gold),var(--gold)) center / 55% 100% no-repeat;transform:translateX(calc(var(--active-kind,0)*100%));transition:transform 220ms ease}
@media(prefers-reduced-motion:reduce){.editor-kind-icons::after{transition:none}}
.editor-kind-icons [data-editor-kind=Movies], [data-chart-kind=Movies]{--media-accent:#f2b36e}
.editor-kind-icons [data-editor-kind="TV Shows"], [data-chart-kind="TV Shows"]{--media-accent:#80c9f5}
.editor-kind-icons [data-editor-kind=Anime], [data-chart-kind=Anime]{--media-accent:#c5a0fb}
.editor-kind-icons [data-editor-kind=Books], [data-chart-kind=Books]{--media-accent:#8bd8aa}
.editor-kind-icons [data-editor-kind=Manga], [data-chart-kind=Manga]{--media-accent:#efa2c0}
.editor-kind-icons [data-editor-kind=Games], [data-chart-kind=Games]{--media-accent:#e6d475}
.editor-kind-icons [data-editor-kind=DLC], [data-chart-kind=DLC]{--media-accent:#7cd8d2}
.editor-kind-icons .icon-button .ico{color:color-mix(in srgb,var(--media-accent) 52%,#aaa49a)}
.editor-kind-icons .icon-button:disabled{opacity:.7;cursor:default}
.editor-kind-icons .icon-button:not(:disabled):is(:hover,:focus-visible,[aria-pressed=true]) .ico{color:var(--media-accent)}
.editor-shortcuts{display:flex;flex-wrap:wrap;gap:6px}
.editor-shortcuts button{display:flex;align-items:center;gap:6px;padding:6px 9px;min-height:42px;font-size:12px}
.editor-shortcuts button[aria-expanded=true]{border-color:var(--gold);color:var(--gold)}
.editor-shortcuts output{color:var(--gold);font-size:11px}
.entry-popup .entry-section summary{list-style:none}
.entry-popup .entry-section summary::-webkit-details-marker{display:none}
.entry-popup .entry-section summary::after{content:'+';float:right;color:var(--muted);margin-left:8px}
.entry-popup .entry-section[open] summary::after{content:'−'}
.editor-draft:not([hidden]){display:contents}
.entry-popup .save[hidden]{display:none}
.entry-search-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px}
.entry-popup .lookup #lookup-note{display:block;margin:5px 0}
.entry-popup .create-own{display:inline-flex;min-height:34px;color:var(--gold);font-size:12px}
.entry-search-only{width:min(740px,94vw)}
.library-columns,.library-row{display:grid;grid-template-columns:minmax(0,3.65fr) minmax(0,.65fr) minmax(90px,1fr) auto;align-items:center;gap:8px}
.library-columns{padding:6px;color:var(--muted);font-size:10px}
.library-columns span:last-child{width:74px}
.library-row{padding:4px 6px}
.library-status,.library-rating{font-size:11px}
.library-rating{color:var(--gold)}
.library-row-main .title{width:100%;min-width:0}
.library-row-main .title span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.library-row-meta{margin-top:2px}
@media(min-width:601px){dialog:has(.library-pane),dialog:has(.calendar-layout){width:min(1020px,94vw)}}
@media(max-width:600px){
 .library-columns{display:none}
 .library-row{grid-template-columns:minmax(0,1fr) auto auto;gap:3px 7px}
 .library-row-main{grid-column:1/3}
 .library-row-side{grid-column:3;grid-row:1}
 .library-status,.library-rating{font-size:10px}
}
.status-segments{display:flex;gap:2px;margin:9px 12px;min-height:9px;background:var(--track);border-radius:10px;overflow:hidden}
.status-segments button{border:0;padding:0;min-width:0}.status-segments button,.status-legend i{display:block;border-radius:10px;background:var(--gold)}
.status-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;margin:8px 12px 12px}
.status-legend button{display:flex;align-items:center;gap:6px;min-height:23px;font-size:11px}
.status-legend button[aria-pressed=true]{color:var(--gold)}
.status-legend i{width:6px;height:6px;flex:none}
.status-distribution [data-segment=Planned]{background:#918b7b}
.status-distribution [data-segment=Completed]{background:#ffdf45}
.status-distribution [data-segment=Paused]{background:#9299a4}
.status-distribution [data-segment=Dropped]{background:#dd7971}
.status-distribution [data-segment=Finished]{background:#c6bc70}
.activity-map{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(7,6px);grid-auto-flow:column;gap:3px 5px;margin:11px 12px 7px}
.activity-map button{border:0;padding:0;min-width:0;border-radius:8px;background:color-mix(in srgb,var(--gold) var(--intensity),var(--track))}
.activity-summary{font-size:10px;color:var(--muted);margin:0 12px 10px}
.library-row.has-cover{--cover-width:52%;background-image:linear-gradient(90deg,var(--panel),rgb(19 18 15 / .82) 48%,rgb(19 18 15 / .74) 82%,var(--panel)),var(--recent-cover);background-position:left center;background-repeat:no-repeat;background-size:var(--cover-width) 100%,var(--cover-width) auto}
.library-status .ico{width:16px;height:16px;color:var(--gold)}
@media(max-width:600px){
 .library-row.has-cover{--cover-width:72%;background-position:right center;background-image:linear-gradient(90deg,var(--panel),rgb(19 18 15 / .82) 48%,rgb(19 18 15 / .66)),var(--recent-cover)}
}
.library-row{background-color:var(--panel)}
.library-row.has-cover{background-image:linear-gradient(90deg,var(--panel),rgb(19 18 15 / .82) 24%,rgb(19 18 15 / .74) 41%,var(--panel) 51%,var(--panel)),var(--recent-cover);background-size:100% 100%,var(--cover-width) auto}
.series-toggle{display:flex;align-items:center;gap:8px;text-align:left;width:100%;min-height:40px;padding:5px 8px;border:0;border-bottom:1px solid var(--line);border-radius:0;color:var(--gold)}
.series-toggle strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.series-toggle small{margin-inline-start:auto;color:var(--muted);white-space:nowrap}
.series-chevron{display:inline-block;font-size:18px;transition:transform 150ms ease}
.series-toggle[aria-expanded=true] .series-chevron{transform:rotate(90deg)}
.library-series .series-child{padding-inline-start:24px}
@media(max-width:600px){
 .library-row.has-cover{background-image:linear-gradient(90deg,var(--panel),rgb(19 18 15 / .82) 48%,rgb(19 18 15 / .66)),var(--recent-cover);background-size:var(--cover-width) 100%,var(--cover-width) auto}
 .series-toggle{min-height:44px}
 .library-series .series-child{padding-inline-start:14px}
}
.entry-context{width:min(510px,calc(100vw - 28px));max-height:min(76dvh,650px);background:#211b10;border-color:#514526;padding:15px}
.entry-context::backdrop{background:#0009}
.context-heading{display:flex;align-items:center;gap:6px;margin-bottom:10px}
.context-heading h3{flex:1;margin:0;color:var(--gold);font-size:15px;text-transform:uppercase}
.context-heading .context-done{border-color:#765f30}
.entry-context .entry-section{border:0;padding:0}
.entry-context .entry-section>summary{display:none}
.editor-shortcuts button[hidden]{display:none}
.context-tools{gap:5px;margin-top:1px}
.context-tools button{min-height:35px;padding:5px 7px;font-size:11px}
.context-tools .ico{width:15px;height:15px}
.entry-context textarea{min-height:110px}
@media(max-width:600px){.entry-context{padding:12px}.context-tools button{min-height:42px}}
.editor-parts{display:grid;gap:5px}
.editor-parts[hidden],.part-row[hidden]{display:none}
.part-bar-label{font-size:11px;color:var(--muted)}
.editor-parts{min-width:0}
.part-pills{display:flex;flex-wrap:nowrap;gap:5px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}
.part-pills .part-pill{flex:none;white-space:nowrap}
.part-pill{display:inline-flex;align-items:center;gap:5px;min-height:34px;border-color:#514526;border-radius:999px;font-size:11px}
.part-pill .ico{width:13px;height:13px}
.part-add{color:var(--gold)}
.editor [data-entry-tools]:empty{display:none}
.linked-part-context>.muted{margin-top:10px;line-height:1.45;white-space:pre-wrap}
@media(max-width:600px){.part-pill{min-height:42px}}
.ownership-group>span{font-size:12px;color:var(--muted)}
.ownership-icons{margin-top:3px}
.ownership-icons .icon-button{min-width:44px;min-height:40px}
.ownership-icons .icon-button[aria-pressed=true]{border-color:#514526;background:#262013;box-shadow:none}
#ownership-price[hidden],#legacy-format[hidden]{display:none}
.ownership-icons{--format-button:46px;--price-width:calc(var(--price-digits,5) * 1ch + 19px);--physical-gap:0px;--digital-gap:0px;position:relative;display:grid;grid-template-columns:var(--format-button) var(--physical-gap) var(--format-button) var(--digital-gap) var(--format-button);gap:0;width:max-content;max-width:100%;transition:grid-template-columns 240ms ease}
.ownership-icons[data-format="Físico"]{--physical-gap:var(--price-width)}
.ownership-icons[data-format="Digital"]{--digital-gap:var(--price-width)}
.ownership-icons [data-ownership="Físico"]{grid-column:1}
.ownership-icons [data-ownership="Digital"]{grid-column:3}
.ownership-icons [data-ownership="Pirata"]{grid-column:5}
.ownership-icons .icon-button{grid-row:1;justify-self:start}
#ownership-price{position:absolute;align-items:center;grid-column:2;grid-row:1;inset-inline-start:0;top:50%;width:var(--price-width);transform:translateY(-50%);opacity:0;visibility:hidden;pointer-events:none;transition:none}
.ownership-icons[data-format="Digital"] #ownership-price{grid-column:4}
.ownership-icons:is([data-format="Físico"],[data-format="Digital"]) #ownership-price{opacity:1;visibility:visible;pointer-events:auto}
#ownership-price input{width:100%;padding-inline:13px 0;font-variant-numeric:tabular-nums;font-size:inherit}
.price-currency{position:absolute;inset-inline-start:0;top:50%;transform:translateY(-50%);color:var(--gold);pointer-events:none}
@media(prefers-reduced-motion:reduce){.ownership-icons,#ownership-price{transition:none}}
.ownership-icons{--format-height:42px}
.ownership-icons .icon-button{width:var(--format-button);height:var(--format-height);min-height:var(--format-height)}
.ownership-icons .icon-button:is([data-ownership="Físico"],[data-ownership="Digital"])[aria-pressed=true]{background:transparent;border-color:transparent}
#ownership-price{margin-inline-start:-1px;height:var(--format-height)}
.entry-popup #ownership-price input{height:100%;min-height:0;background:transparent;border:0;border-radius:0;appearance:none}
#ownership-price input::-webkit-inner-spin-button,#ownership-price input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.editor-progress{display:grid;grid-template-columns:minmax(100px,128px) minmax(0,1fr);gap:7px;align-items:center}
.progress-counts,.editor-progress-track{height:38px;border:1px solid #514526;border-radius:10px;background:#1d1910}
.progress-counts{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}
.entry-popup .progress-counts input{height:100%;min-height:0;min-width:0;border:0;background:transparent;padding:0 5px;text-align:center;appearance:textfield}
.progress-counts input::-webkit-inner-spin-button,.progress-counts input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.progress-counts span{color:var(--muted)}
.editor-progress-track{position:relative;display:grid;place-items:center;overflow:hidden;isolation:isolate}
.editor-progress-track i{position:absolute;inset:0 auto 0 0;max-width:100%;border-radius:8px;transition:width 220ms ease,background-color 220ms ease}
.editor-progress-track span{z-index:1;color:#fff;font-size:11px;font-weight:700}
@media(max-width:600px){.progress-counts,.editor-progress-track{height:42px}}
@media(prefers-reduced-motion:reduce){.editor-progress-track i{transition:none}}
.progress-sparks{display:none;position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}
.just-completed .progress-sparks{display:block}
.progress-sparks i{position:absolute;inset:-4px auto auto var(--spark-x);width:var(--spark-size);height:var(--spark-size);border-radius:50%;background:#fff;opacity:var(--spark-opacity);animation:progress-spark-random var(--spark-time) linear var(--spark-delay) both;transition:none}
@keyframes progress-spark-random{from{transform:translate(-18px,0)}to{transform:translate(22px,49px)}}
@media(prefers-reduced-motion:reduce){.just-completed .progress-sparks{display:none}}
.editor-kind-icons::after{transform:translateX(var(--active-kind,0%))}
#library-filter-options{display:contents}
.library-filter-toggle{display:none}
.library-filter-toggle span:not(:empty){background:var(--gold);color:var(--bg);padding:1px 5px;border-radius:8px}
.calendar-approximate{font-size:11px;color:var(--gold);margin:12px 0 4px;padding-top:8px;border-top:1px solid var(--line)}
dialog select:not([hidden]){appearance:none;background-color:#3b301b;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:right 13px center,right 8px center;background-size:5px 5px;background-repeat:no-repeat;padding-inline-end:23px}
.cover-pane #cover-preview{height:auto;aspect-ratio:auto;max-height:250px}
.cover-pane img{display:block;height:auto;max-height:250px}
@media(max-width:600px){
 .library-filters{grid-template-columns:minmax(0,1fr) auto}
 .library-filters .library-search{grid-column:1}
 .library-filter-toggle{display:flex;align-items:center;justify-content:center;gap:4px;min-height:42px;font-size:11px;padding:5px 7px}
 .library-filter-toggle .ico{width:14px;height:14px}
 #library-filter-options{display:none;grid-column:1/-1}
 .library-filters.is-open #library-filter-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 .cover-pane #cover-preview{width:auto;max-width:84px;height:auto;max-height:62px}
 .cover-pane img{width:auto;max-width:82px;max-height:60px}
 .entry-popup .cover-pane p{margin:0}
 .entry-popup .cover-pane p:first-of-type{display:none}
 .recent tr{grid-template-columns:auto auto minmax(0,1fr);column-gap:9px}
 .recent td[data-cell=added]{grid-column:1}
 
 .recent td[data-cell=rating]{display:none}
 
 
 .recent td[data-cell=progress]{grid-column:3;grid-row:2}
 .recent td[data-cell=progress] .progress{min-width:0;white-space:normal;text-align:right}
}
.editor-kind-icons::after{transition:none}
.editor-kind-icons.animate-kind::after{transition:transform 220ms ease}
@media(prefers-reduced-motion:reduce){.editor-kind-icons.animate-kind::after{transition:none}}
@media(max-width:600px){
 .kpi-label,.type-label{display:none}
 .kpi{min-height:42px;justify-content:center;gap:8px}
 .kpi .ico{width:17px;height:17px}
 .type{min-height:44px;gap:2px}
 .type small{font-size:11px}
}
@media(max-width:600px){
 .kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:2px}
 .kpis .kpi,.controls .type{position:relative;background:transparent;border:0;border-radius:0;box-shadow:none}
 .kpis .kpi{flex-direction:column;justify-content:center;gap:3px;min-height:44px;padding:3px 0}
 .kpis .kpi strong{font-size:15px;line-height:1}
 .kpis .kpi[aria-pressed=true]::after,.controls .type[aria-pressed=true]::after{content:"";position:absolute;bottom:0;inset-inline:25%;height:2px;border-radius:2px;background:var(--gold)}
}
.date-controls button{background:transparent;border-color:transparent;border-radius:0;box-shadow:none}
.date-controls button:hover{color:var(--bright);border-color:transparent}
/* Touch feedback and motion on small screens. */
@media(max-width:600px){
 button,select{touch-action:manipulation}
 .nav,.editor-icons,.editor-shortcuts,.part-pills,.date-controls,.library-row-side{ -webkit-tap-highlight-color:transparent }
 .nav button,.editor-icons button,.editor-shortcuts button,.part-pill,.date-controls button,.library-row-side button,.calendar-grid button,.library-filter-toggle{transition:background-color 130ms ease,color 130ms ease,transform 130ms ease}
 .nav button:active,.editor-icons button:active,.editor-shortcuts button:active,.part-pill:active,.date-controls button:active,.library-row-side button:active,.calendar-grid button:active,.library-filter-toggle:active{transform:scale(.96);background-color:#2a2315;color:var(--bright)}
 .editor-icons .icon-button,.part-pill,.context-tools button,.library-filter-toggle,.calendar-grid button{min-height:44px}
 .editor-kind-icons .icon-button{min-width:0}
 .library-row-side .entry-actions{gap:2px}
 .library-row-side .icon-button,.library-row-side .favorite{min-height:44px;min-width:44px}
 dialog{max-height:min(88dvh,calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 20px));overscroll-behavior:contain;scroll-padding-block:14px}
 .entry-context{max-height:76dvh}
 .types{overscroll-behavior-inline:contain;scroll-snap-type:x proximity}
 .lookup #lookup-results,.note-history{overscroll-behavior:contain}
 dialog[open]{animation:mobile-dialog-in 170ms cubic-bezier(.2,.75,.25,1) both}
 @keyframes mobile-dialog-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
}
@media(max-width:600px) and (prefers-reduced-motion:reduce){
 dialog[open]{animation:none}
 .nav button,.editor-icons button,.editor-shortcuts button,.part-pill,.date-controls button,.library-row-side button,.calendar-grid button,.library-filter-toggle{transition:none}
 .nav button:active,.editor-icons button:active,.editor-shortcuts button:active,.part-pill:active,.date-controls button:active,.library-row-side button:active,.calendar-grid button:active,.library-filter-toggle:active{transform:none}
}
html:has(dialog[open]){overflow:hidden;overscroll-behavior:none;scrollbar-gutter:stable}
@media(max-width:600px){
 dialog[open]{overflow-y:auto;overscroll-behavior-y:contain}
 dialog button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
 dialog :is(.icon-button,.close,.part-pill,.series-toggle,.context-done){min-height:44px}
 dialog button:active{background-color:#282216}
 dialog button.save:active,dialog .context-done:active{background-color:var(--bright);color:var(--bg)}
}
@media(prefers-reduced-motion:reduce){
 dialog,dialog::backdrop,dialog *,dialog *::before,dialog *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 dialog button:active{transform:none!important}
}
.about-note{font-size:12px;margin:8px 0;line-height:1.45}
.provider-settings-form small{color:var(--gold);margin-inline-start:5px}
.provider-settings-form .save{margin-inline-start:auto}
.provider-requirement{display:inline-block;color:var(--muted);font-size:10px;font-style:normal}
.entry-popup .entry-search-line{position:relative;display:block}
.entry-popup .entry-search-line input{padding-inline-end:48px}
.entry-popup .entry-search-line #lookup-button{position:absolute;inset-inline-end:3px;bottom:2px;min-height:30px;min-width:35px;background:transparent;border-color:transparent}
.lookup-spinner{display:none;width:15px;height:15px;border:2px solid #514526;border-top-color:var(--gold);border-radius:50%}
#lookup-button[aria-busy=true] .ico{display:none}
#lookup-button[aria-busy=true] .lookup-spinner{display:block;animation:lookup-turn .7s linear infinite}
@keyframes lookup-turn{to{transform:rotate(1turn)}}
@media(prefers-reduced-motion:reduce){#lookup-button[aria-busy=true] .lookup-spinner{animation:none}}
.entry-popup #lookup-results button{display:flex;gap:8px;align-items:center;min-height:40px;padding:3px 7px}
.entry-popup #lookup-results button[aria-pressed=true]{background:#312714;border-color:#765f30}
.candidate-cover{width:30px;height:32px;display:grid;place-items:center;flex:none;border-radius:4px;overflow:hidden;background:#201c14}
.candidate-cover img{width:100%;height:100%;object-fit:cover}
.candidate-cover .ico{width:16px;height:16px}
.candidate-name strong{font-size:12px}
.inline-cover{display:none}
.entry-add-popup .editor-heading .save:not([hidden]){display:flex;gap:6px;padding-inline:8px;font-size:12px}
@media(max-width:600px){
 .entry-add-popup .editor-heading{position:sticky;top:-12px;z-index:3;background:var(--panel);padding-block:5px}
 .entry-add-popup .cover-pane{display:none}
 .inline-cover:not([hidden]){display:block;width:48px;height:48px;border-radius:6px;overflow:hidden}
 .inline-cover img{width:100%;height:100%;object-fit:cover}
 .entry-popup #lookup-results button{min-height:44px}
 .entry-popup .entry-search-line #lookup-button{min-height:38px;min-width:42px}
}
.entry-add-popup .editor-heading .save{color:var(--bg);font-weight:650}
.part-pill[aria-pressed=true]{color:var(--gold);border-color:var(--gold);background:#282015}
.genre-editor{display:grid;gap:6px}
.genre-caption{color:var(--muted);font-size:12px}
.genre-pills,.genre-actions,.genre-suggestions{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.genre-pills:empty,.genre-suggestions:empty{display:none}
.genre-pill{color:var(--gold);background:#282115;border-color:#514526;border-radius:999px;padding:5px 9px;min-height:28px;font-size:11px;overflow-wrap:anywhere;text-align:left}
.genre-pill span{margin-inline-start:3px;color:var(--muted)}
.genre-actions .link{min-height:32px;padding-inline:4px;font-size:11px;color:var(--muted)}
.genre-actions .link:first-child{color:var(--gold)}
.genre-add-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:end;margin-block:10px}
.genre-suggestions .genre-pill:not([aria-pressed=true]){background:transparent;color:var(--muted)}
.genre-context .genre-suggestions{max-height:min(28dvh,230px);overflow:auto;overscroll-behavior:contain;align-content:start;padding:3px}
.genre-context textarea{min-height:75px}
.genre-context [role=status]:not(:empty){margin-top:7px;font-size:11px}
@media(max-width:600px){.genre-actions .link,.genre-pill{min-height:40px}}
/* Keep the mobile page within the viewport while preserving nested scrollers. */
@media(max-width:600px){
 html,body{max-inline-size:100%;overflow-x:clip;overscroll-behavior-x:none}
 #app{width:100%;min-width:0}
 .grid,.charts{grid-template-columns:minmax(0,1fr)}
 .controls,.types,.date-controls,.foot,.sync-group{min-width:0;max-width:100%}
 .foot{overflow-wrap:anywhere}
 .sync-group{flex-wrap:wrap}
}
@media(max-width:600px){
 dialog{box-sizing:border-box;max-inline-size:calc(100% - 16px);overflow-x:hidden;overscroll-behavior-x:none}
 dialog #panel,dialog .editor-layout,dialog .editor,dialog .editor-detail-grid,dialog #media-detail-fields,dialog .calendar-layout,dialog .section-form{min-inline-size:0;max-inline-size:100%}
 dialog .editor,dialog .editor-detail-grid,dialog #media-detail-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
 dialog :is(label,input,select,textarea,.entry-heading,.entry-actions,.editor-icons,.part-pills,.genre-actions,.context-heading){min-inline-size:0;max-inline-size:100%}
 dialog :is(input,select,textarea){box-sizing:border-box}
 dialog input[type=date]{inline-size:100%;min-inline-size:0}
 dialog input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:start}
 dialog .entry-heading h2,dialog .context-heading h3{min-inline-size:0;overflow-wrap:anywhere}
 dialog .editor-heading .entry-actions{flex-wrap:wrap;justify-content:flex-end}
 dialog .entry-heading,.entry-context .context-heading{overflow-wrap:anywhere}
 dialog .part-row{grid-template-columns:40px minmax(0,1fr) minmax(0,47px) minmax(0,47px) 32px}
 dialog .part-row input{width:100%}
 dialog .calendar-layout{grid-template-columns:minmax(0,1fr)}
 dialog .section-toolbar{max-inline-size:100%}
 dialog .section-toolbar .section-field{min-width:min(104px,100%)}
 dialog :is(.record,.review-row,.library-row,.editor-progress-track,.note-history){overflow-wrap:anywhere}
}
.entry-mobile-close{display:none}
.editor-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
@media(max-width:600px){
 .entry-popup>form:first-child{display:none}
 .entry-popup .editor-heading{position:sticky;top:-12px;z-index:3;background:var(--panel);margin-bottom:5px;padding:4px 0;min-height:44px;gap:4px;border-bottom:1px solid var(--line)}
 .entry-popup .editor-heading h2{font-size:clamp(12px,3.7vw,15px)}
 .entry-popup .editor-heading .entry-actions{flex:none;flex-wrap:nowrap;gap:1px}
 .entry-popup .editor-heading .entry-actions button{min-width:40px;min-height:44px;padding:4px}
 .entry-mobile-close{display:inline-grid}
 .entry-popup .editor{gap:6px}
 .entry-popup .editor-shortcuts button{font-size:11px;padding-inline:6px}
 .entry-popup .genre-editor{gap:4px}
 .entry-popup .cover-pane{gap:6px}
 .entry-popup .library-back{margin-bottom:3px}
 .entry-popup .editor-dates input{display:block;appearance:none;inline-size:100%;max-inline-size:100%;min-inline-size:0}
}
@media(max-width:420px){
 .editor-dates{gap:6px}
}
.entry-details-context .context-done{display:flex;align-items:center;gap:5px;font-size:12px;padding-inline:9px}
.entry-details-context .context-heading h3:focus{outline:none}
.entry-details-context .editor-detail-grid>label{min-inline-size:0}
.entry-details-context .editor-detail-grid input{min-inline-size:0;max-inline-size:100%}
.entry-details-context .ownership-icons{--format-height:44px}
.entry-details-context .ownership-icons .icon-button{height:var(--format-height);min-height:var(--format-height)}
.entry-details-context #ownership-price{top:0;transform:none;height:var(--format-height)}
.entry-details-context #ownership-price input{height:100%;line-height:normal}
@media(max-width:600px){
 .entry-details-context{width:min(400px,calc(100% - 28px))}
 .entry-details-context .context-heading{margin-bottom:8px}
 .entry-details-context .editor-detail-grid{grid-template-columns:minmax(0,1fr);gap:8px}
 .entry-details-context .editor-detail-grid>label{grid-column:1/-1}
 .entry-details-context input[type=date]{display:block;appearance:none}
 .entry-details-context input[type=date]::-webkit-date-and-time-value{min-width:0}
 .entry-details-context .entry-cover-field input{text-overflow:ellipsis}
}
@media(max-width:600px){
 main#app{padding-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right));padding-bottom:calc(68px + env(safe-area-inset-bottom))}
 .top .nav{grid-template-columns:repeat(4,minmax(0,1fr));padding-block:3px calc(6px + env(safe-area-inset-bottom));align-items:stretch}
 .top .nav .icon-button{display:grid;grid-template-rows:26px 14px;place-content:center;place-items:center;gap:2px;min-width:0;min-height:50px;padding:4px 2px}
 .top .nav .icon-button .ico{grid-row:1}
 .top .nav .nav-label{grid-row:2;line-height:14px;white-space:nowrap}
 .top .nav [data-action=add] .ico{box-sizing:border-box;width:26px;height:26px;padding:3px}
 .controls .types{flex-basis:100%;min-width:0;gap:0}
 .controls .type{flex:1 1 0;min-width:0}
 .dashboard-clear{background:transparent;border-color:transparent}
}
.startup-screen{max-width:420px;margin:12vh auto 0;padding:16px;color:var(--ink);line-height:1.5}
.startup-screen h1{color:var(--gold);margin-bottom:10px}
.startup-screen a{display:inline-block;padding-block:9px;color:var(--gold)}
.recent .meter.just-completed{position:relative}
.recent .progress-sparks i{animation-name:recent-spark-random}
@keyframes recent-spark-random{from{transform:translate(-6px,0)}to{transform:translate(10px,13px)}}
@media(max-width:600px){
 .entry-popup .editor-heading .entry-actions{gap:6px}
 .entry-popup .editor-heading .entry-actions .trash-action{margin-inline-end:3px}
}
@media(max-width:350px){
 .entry-popup .editor-heading .entry-actions{gap:4px}
 .entry-popup .editor-heading .entry-actions .trash-action{margin-inline-end:1px}
}
@media(max-width:600px){
 .recent tbody tr{align-items:center;grid-template-columns:max-content 16px minmax(0,1fr)}
 .recent td:is([data-cell=added],[data-cell=progress]){grid-row:2;align-self:center;line-height:16px}
 
 
 .recent td[data-cell=progress] .progress{align-items:center;min-height:16px;line-height:16px}
}
.entry-popup .editor-heading .entry-actions :is(.trash-action,.save,.entry-mobile-close),
.entry-popup>form:first-child .close{background:transparent;border-color:transparent;box-shadow:none}
.entry-popup .editor-heading .entry-actions .save,
.entry-popup .editor-heading .entry-actions .save .ico{color:var(--gold)}
.entry-popup .editor-heading .entry-actions .save:hover,
.entry-popup .editor-heading .entry-actions .save:hover .ico{color:var(--bright)}
.entry-popup .editor-heading .entry-actions .trash-action .ico,
.entry-popup .editor-heading .entry-actions .entry-mobile-close .ico{color:var(--muted)}
.entry-popup .editor-heading .entry-actions .trash-action:hover .ico{color:#ef8173}
.entry-popup .editor-heading .entry-actions .entry-mobile-close:hover .ico{color:var(--ink)}
.entry-popup .title-input-wrap input{padding-inline-end:48px}
.editor-rating-actions{display:grid;grid-template-columns:repeat(3,auto) minmax(0,1fr);gap:5px}
.editor-rating-actions button,.title-tools-context .context-tools button{background:transparent;border-color:transparent;box-shadow:none}
.editor-rating-actions button{min-width:42px;justify-content:center;padding:4px}
.editor-rating-actions output{font-size:12px;font-weight:650}
.entry-context.title-tools-context{width:min(280px,calc(100vw - 28px));padding:10px 12px}
.title-tools-context .context-heading{margin-bottom:4px}
.title-tools-context .context-done{display:none}
.title-tools-context .context-tools{display:grid;gap:2px}
.title-tools-context .context-tools button{justify-content:flex-start;min-height:38px;padding:4px 6px}

.editor-rating-indicator{display:flex;align-items:center;gap:7px;min-width:0;padding-inline:4px}
.editor-rating-line{display:block;flex:1;min-width:0;height:4px;border-radius:4px;background:var(--track);overflow:hidden}
.editor-rating-line i{display:block;height:100%;width:var(--rating-fill,0%);border-radius:inherit;background:var(--gold);transition:width 180ms ease}
.editor-rating-indicator output{white-space:nowrap}
@media(prefers-reduced-motion:reduce){.editor-rating-line i{transition:none}}
.editor-rating-actions{grid-template-columns:auto minmax(0,1fr)}
.editor-rating-actions .editor-rating-indicator{justify-content:flex-start;padding-inline:7px;gap:7px}
.editor-rating-stack{display:grid;justify-items:start;gap:3px;min-width:0}
.editor-rating-stack .editor-rating-line{width:100%;height:5px}
.rating-review-field{margin-top:12px}
.editor-progress-track.just-completed span{color:#201606}
.editor [data-entry-tools=details]{flex-wrap:nowrap;overflow-x:auto;max-width:100%;min-width:0;overscroll-behavior-inline:contain}
.editor [data-entry-tools=details] button{flex:none;white-space:nowrap}
.editor-series-position{display:flex;justify-content:flex-end;min-width:0}
.editor-series-position button{display:flex;align-items:center;gap:6px;max-width:100%;border-color:transparent;background:none;padding:4px 6px;font-size:12px}
.editor-series-position button span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.editor-series-create{display:flex;align-items:center;gap:8px;margin-top:10px}
.editor-series-create input{flex:1;min-width:0}
.editor-series-extras{display:grid;gap:6px;margin-top:8px;max-height:130px;overflow:auto}
.editor-series-extras label:not([hidden]){display:flex;align-items:center;gap:6px}
.editor-series-extras label[hidden]{display:none}
.editor-series-extras[hidden]{display:none}
.editor-series-extras input[type=checkbox]{width:auto;min-height:0}
.editor-rating-actions .editor-rating-indicator{border:0;width:100%;gap:6px}
.editor-rating-indicator:focus-visible{outline:none}
.editor-rating-indicator:focus-visible output{text-decoration:underline;text-underline-offset:2px}
.editor-rating-stack{flex:1;gap:2px}
.editor-rating-stack .editor-rating-line{height:3px}
.editor-rating-caption{display:flex;align-items:center;gap:7px}
.editor-rating-quality{padding:2px 7px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--gold);font-size:10px;white-space:nowrap}
.editor-details-popover{position:fixed;inset:auto;margin:0;width:min(360px,calc(100vw - 16px));max-height:min(60dvh,420px)}
.editor-details-popover::backdrop{background:transparent}
.editor-details-popover #media-detail-fields{margin-top:9px}
.editor-related{margin-top:12px;border-top:1px solid var(--line)}
.editor-related h4{margin-block:8px}
.genre-search-field{margin-bottom:10px}
.genre-context .genre-add-line{margin-top:12px}
.access-picker{display:grid;gap:4px;min-width:0}
.access-selection,.access-options button{display:flex;align-items:center;gap:8px;min-height:36px;text-align:left;min-width:0}
.access-selection span,.access-options button span{overflow-wrap:anywhere}
.access-menu{padding:6px;border:1px solid var(--line);border-radius:8px}
.access-picker[hidden],.access-menu[hidden]{display:none}
.access-options{display:grid;gap:3px;max-height:min(25dvh,170px);overflow:auto;margin-top:5px}
.access-options button{border-color:transparent}
.access-options button[aria-pressed=true]{border-color:var(--gold)}
.editor-kind-icons .icon-button[aria-pressed=false]:not(:hover,:focus-visible) .ico{color:color-mix(in srgb,var(--media-accent) 38%,#726d65)}
.editor-kind-icons .icon-button[aria-pressed=true] .ico{color:var(--media-accent);stroke-width:2}
.editor-kind-icons .icon-button[aria-pressed=true] .ico path{stroke-width:2.2}
.editor-heading{position:relative;isolation:isolate}
.editor-heading-art{position:absolute;z-index:-1;pointer-events:none;inset:0 auto 0 -8px;width:min(210px,46%);overflow:hidden;background:linear-gradient(105deg,color-mix(in srgb,var(--heading-accent,var(--gold)) 20%,transparent),transparent 84%);mask-image:linear-gradient(to right,#000 40%,transparent)}
.editor-heading-art span{position:absolute;top:0;left:var(--x);animation:editor-glyph-fall var(--duration) linear var(--delay) infinite}
.editor-heading-art .ico{color:var(--heading-accent,var(--gold));filter:blur(.45px)}
@keyframes editor-glyph-fall{
 0%{opacity:0;transform:translate(0,0) rotate(var(--tilt)) scale(var(--scale))}
 20%,35%{opacity:.24}
 70%,100%{opacity:0}
 100%{transform:translate(var(--drift),38px) rotate(var(--spin)) scale(var(--scale))}
}
@media(prefers-reduced-motion:reduce){.editor-heading-art span{display:none}}

@media(max-width:400px){
 .entry-popup .editor-heading .entry-actions{gap:2px}
}
.editor-hours{grid-column:1/-1;min-width:0;font-size:11px;color:var(--muted)}
.editor-hours[hidden],#editor-hours-fields[hidden]{display:none}
.editor-hours .link{display:inline-flex;align-items:center;gap:5px;min-height:28px}
.editor-hours .ico{width:13px;height:13px}
#editor-hours-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-block:4px}
#editor-hours-fields :is(button,small){grid-column:1/-1;justify-self:start}
.editor-date-input{position:relative;display:block;min-width:0}
.editor-date-input>.ico{display:none}
.entry-popup .editor-heading .entry-actions .metadata-quick-action{margin-inline-end:7px;background:#edc45312;border-color:#edc45348}
.entry-popup .editor-heading .entry-actions .metadata-quick-action:hover{background:#edc45324;border-color:var(--gold)}
@media(max-width:400px){
 .entry-popup .editor-heading .entry-actions button{min-width:32px}
 .entry-popup .editor-heading .entry-actions .metadata-quick-action{margin-inline-end:3px}
}
@media(max-width:600px){
 .editor-date-input>.ico{display:block;position:absolute;right:8px;top:50%;transform:translateY(-50%);width:14px;height:14px;pointer-events:none}
 .entry-popup .editor-dates input{padding-inline-end:27px}
 .editor-date-input input::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:0;top:0;width:25px;height:100%;padding:0}
}
#editor-entry-details>summary,#media-details>summary{display:none}
#editor-entry-details[open],#media-details[open]{padding:8px;border:1px solid var(--line);border-radius:8px}
#editor-entry-details:not([open]),#media-details:not([open]){display:none}
@media(max-width:600px){#editor-entry-details .editor-detail-grid{grid-template-columns:minmax(0,1fr)}}
.about-performance{display:flex;align-items:flex-start;gap:8px;margin-block:12px;cursor:pointer}
.about-performance input{accent-color:var(--gold)}
.about-performance small{display:block;margin-top:3px}
.low-performance *,.low-performance *::before,.low-performance *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.low-performance .progress-sparks{display:none!important}
@media(min-width:601px){
 .editor-heading-art{inset:-18px auto -14px -18px;width:min(280px,58%);border-start-start-radius:11px;background:radial-gradient(ellipse at top left,color-mix(in srgb,var(--heading-accent,var(--gold)) 30%,transparent),transparent 74%);mask-image:none}
}
@media(max-width:600px), (hover:none) and (pointer:coarse){
 .editor-heading-art span{opacity:.22;animation:none}
 .editor-heading-art span:nth-child(1){left:14%;top:23%;transform:rotate(-16deg) scale(.8)}
 .editor-heading-art span:nth-child(2){left:35%;top:11%;transform:rotate(12deg) scale(.66)}
 .editor-heading-art span:nth-child(3){left:50%;top:47%;transform:rotate(-9deg) scale(.9)}
 .editor-heading-art span:nth-child(4){left:67%;top:27%;transform:rotate(20deg) scale(.7)}
 .editor-heading-art span:nth-child(n+5){display:none}
}
@media(max-width:600px){
 .editor-heading-art{inset:-12px auto -10px -12px;width:min(230px,65%);border-start-start-radius:11px;background:radial-gradient(ellipse at top left,color-mix(in srgb,var(--heading-accent,var(--gold)) 30%,transparent),transparent 76%);mask-image:none}
}
.recent tbody tr:has(.title){position:relative}
.recent tbody tr:has(.title)::after{content:"";position:absolute;inset:0;pointer-events:none;background:var(--gold);opacity:0;transition:opacity 160ms ease}
@media(hover:hover) and (pointer:fine){
 .recent tbody tr:has(.title):hover::after{opacity:.08}
}
.recent tbody tr:has(.title:focus-visible)::after{opacity:.08}
.recent .title .recent-title-status{display:inline-flex;flex:none;margin-inline-start:-5px}
.recent .recent-title-status .ico{width:14px;height:14px;color:var(--gold)}
@media(max-width:600px){
 .recent tr{grid-template-columns:auto minmax(0,1fr)}
 .recent td[data-cell=progress]{grid-column:2}
}
.dashboard-pins{position:relative;z-index:5;padding-inline-start:7px;border-inline-start:1px solid var(--line)}
.dashboard-pins summary{display:grid;place-items:center;min-width:40px;min-height:34px;cursor:pointer;list-style:none}
.dashboard-pins summary::-webkit-details-marker{display:none}
.dashboard-pins[open] summary,.dashboard-pins summary:hover{background:#edc45315;border-radius:7px}
.dashboard-pins-menu{position:absolute;top:calc(100% + 4px);right:0;width:min(310px,calc(100vw - 36px));max-height:50dvh;overflow:auto;overscroll-behavior:contain;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #0008}
.dashboard-pins-menu h2{color:var(--gold);margin-bottom:5px}
.dashboard-pins-menu .title{min-height:38px}
.dashboard-pins-menu .title span{white-space:normal;overflow-wrap:anywhere}
@media(min-width:601px) and (hover:hover){.low-performance .editor-heading-art span{display:none}}
.category-controls{display:flex;align-items:center;gap:7px;flex:1;min-width:0}
.category-controls .types{order:0;flex:1 1 auto;min-width:0}
.dashboard-pins summary.type{min-width:42px;padding-inline:5px}
@media(max-width:850px){.category-controls{flex-basis:100%}}
@media(max-width:600px){
 .category-controls{gap:3px}
 .dashboard-pins{padding-inline-start:3px}
 .dashboard-pins summary.type{min-width:32px}
 .entry-popup .editor-heading{flex-wrap:wrap}
 .entry-popup .editor-heading h2{flex:none;white-space:nowrap;overflow-wrap:normal;font-size:14px}
 .entry-popup .editor-heading .entry-actions{margin-inline-start:auto;gap:1px}
 .entry-popup .editor-heading .entry-actions button{min-width:30px;min-height:40px;padding:2px}
 .entry-popup .editor-heading .entry-actions .ico{width:15px;height:15px}
}
:is(.recent tbody tr,.record,.library-row):has(button.title[data-entry]){cursor:pointer}
.dashboard-fold{display:none}
@media(max-width:600px){
 .dashboard-fold{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:4px;border:0;background:transparent}
 .dashboard-fold[aria-expanded=true] .ico{transform:rotate(180deg)}
 .upcoming-card .calendar-shortcut{margin-inline-start:auto}
}
.recent .recent-title-status{align-items:center;gap:4px}
.recent .recent-title-status em{color:var(--muted);font-size:11px;font-weight:400}
@media(max-width:600px), (hover:none) and (pointer:coarse){
 .recent .recent-title-status em{display:none}
}
.date-controls{display:grid;grid-template-columns:auto minmax(0,auto) auto;justify-items:center}
.date-controls .dashboard-clear{grid-column:2;margin:0;min-height:30px;min-width:36px;background:transparent;border-color:transparent}
.dashboard-native-date{position:relative;display:grid;place-items:center;min-height:36px;padding-inline:7px;color:var(--gold);font-size:12px;cursor:pointer}
.dashboard-native-date:focus-within{outline:2px solid var(--bright);outline-offset:1px;border-radius:5px}
.dashboard-native-date input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;font-size:16px}
.dashboard-native-date input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;padding:0;cursor:pointer}
@media(max-width:600px){.dashboard-native-date{min-height:44px}}
.dashboard-pins-menu .record.has-cover:focus-within{background:linear-gradient(90deg,var(--panel) 22%,rgb(21 20 17 / .55)),var(--recent-cover) right center / 70% auto no-repeat}
@media(hover:hover) and (pointer:fine){
 .dashboard-pins-menu .record.has-cover:hover{background:linear-gradient(90deg,var(--panel) 22%,rgb(21 20 17 / .55)),var(--recent-cover) right center / 70% auto no-repeat}
}
.library-progress{display:grid;grid-template-columns:minmax(0,1fr) 13ch 11ch;align-items:center;gap:7px;min-width:0;margin:1px 10px 3px 29px;color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}
.library-progress .meter{height:4px;min-width:0}
.library-progress>span:not(.meter){white-space:nowrap}
.library-progress-value{grid-column:2;justify-self:end}
.library-progress-count{grid-column:3;justify-self:end}
.library-rating{display:flex;align-items:baseline;gap:4px 7px;flex-wrap:wrap}
.library-rating em{color:var(--muted);font-size:10px}
@media(hover:hover) and (pointer:fine){
 .library-row .pin:hover:not(.hover-dismissed){position:relative;border-color:transparent;background:transparent;box-shadow:none}
 .library-row .pin:hover:not(.hover-dismissed) .ico{color:var(--bright)}
 .library-row .pin:hover:not(.hover-dismissed) .ico path{fill:var(--bright)}
 .library-row .pin:hover:not(.hover-dismissed)::after{content:"";position:absolute;inset:50% auto auto 50%;width:19px;height:19px;transform:translate(-50%,-50%);pointer-events:none;background:radial-gradient(circle at var(--pin-dot-x,60%) var(--pin-dot-y,40%),#fff 0 1px,transparent 1.4px),radial-gradient(circle at 48% 57%,#fff 0 .8px,transparent 1.2px),radial-gradient(circle at 72% 34%,#fff 0 .7px,transparent 1.1px);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M16 3l5 5-3 1-4 4v4l-2 2-7-7 2-2h4l4-4z'/%3E%3C/svg%3E") center/contain}
}
@media(max-width:600px){
 .library-progress{margin-inline:26px 0;gap:5px}
}
@media(max-width:600px), (hover:none) and (pointer:coarse){
 .entry-popup .editor-heading{flex-wrap:wrap}
 .entry-popup .editor-heading .entry-actions{flex-wrap:wrap;justify-content:flex-end;gap:2px}
 .entry-popup .editor-heading .entry-actions button,
 .entry-context .context-heading button,.dashboard-fold,.date-controls .dashboard-clear,
 .dashboard-pins summary.type,.library-row-side button{min-width:44px;min-height:44px}
 .editor-kind-icons .icon-button,.editor-state .icon-button,
 .editor-rating-actions button,.editor .part-pill,.genre-actions .link,.genre-pill,
 .access-selection,.access-options button,.dashboard-pins-menu .title{min-height:44px}
 .editor-state .icon-button,.editor-rating-actions button:not(.editor-rating-indicator){min-width:44px}
 .editor .title-options{min-width:44px}
 .library-row .bulk-check{min-width:44px;min-height:44px;display:inline-grid;place-items:center;vertical-align:middle}
 .library-filters :is(input,select),.editor :is(input:not([type=hidden]),select){min-height:44px}
 .editor .progress-counts input,.editor #ownership-price input{min-height:0}
 .entry-popup .editor-heading .entry-actions button:active,.dashboard-fold:active,.date-controls .dashboard-clear:active{background-color:#edc45318}
}
@media(max-width:600px){
 .controls .date-controls{width:100%;grid-template-columns:auto auto minmax(0,1fr)}
 .date-controls [data-action=dashboard-month-next]{justify-self:start}
 .date-controls .dashboard-clear{grid-column:3;justify-self:end}
 .foot .sync-group{width:100%;flex-wrap:nowrap}
 .foot .sync-group #sync-state{min-width:0}
 .foot .sync-group .icon-button:is([data-action=sync],[data-action=info]){min-width:44px;min-height:44px;padding:0}
 .foot .sync-group .icon-button[data-action=info]{display:inline-flex;justify-content:center;align-items:center;gap:5px;margin-inline-start:auto;color:var(--ink);padding-inline:4px}
 .foot .sync-group .icon-button[data-action=info]::after{content:"Acerca de";white-space:nowrap}
 .foot .sync-group .icon-button[data-action=info] .ico{width:16px;height:16px;color:var(--gold)}
}
@media(hover:hover) and (pointer:fine){
 :is(.pin,.favorite):hover{background:transparent;border-color:transparent;box-shadow:none}
 :is(.pin,.favorite):hover:not(.hover-dismissed) .ico{color:var(--bright);filter:drop-shadow(0 0 3px #edc45380)}
}
@media(max-width:600px){
 .controls .date-controls{grid-template-columns:auto auto auto minmax(0,1fr)}
 .date-controls .dashboard-clear{grid-column:4;grid-row:1}
}
@media(min-width:601px) and (hover:hover) and (pointer:fine){
 .library-pane .library-filters{row-gap:5px}
 .library-pane .library-filters :is(input,select,button){height:32px;min-height:32px}
 .library-pane .library-meta{margin-top:4px}
 .library-pane .library-columns{padding-block:3px}
 .library-pane .library-row{padding-block:2px}
 .library-pane .library-row-main .title{min-height:21px}
 .library-pane .library-progress{margin-block:0 2px}
 .library-pane .library-row-side button{min-height:30px}
 .library-pane .series-toggle{min-height:34px}
}
.top .nav [data-action=stats]{display:none}
.dashboard-summary{margin-top:10px}
.dashboard-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:10px 12px}
.dashboard-summary dt,.dashboard-summary small{color:var(--muted);font-size:11px}
.dashboard-summary dd{margin:3px 0;color:var(--gold);font-weight:650;overflow-wrap:anywhere;text-transform:capitalize}
@media(max-width:600px){
 .top .nav{grid-template-columns:repeat(5,minmax(0,1fr))}
 .top .nav [data-action=stats]{display:grid}

 .mobile-stats .charts{grid-template-columns:1fr}
 .dashboard-summary dl{gap:7px}
}
.editor-heading-status{display:none}
@media(min-width:601px) and (hover:hover) and (pointer:fine){
 .editor-heading-status{display:inline;margin-inline-start:9px;color:var(--muted);font-size:12px;font-weight:400}
}
.editor-heading h2{display:flex;align-items:center;min-width:0;max-width:100%}
.editor-heading-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.editor-heading-status{flex:none;align-self:center}
.editor-heading-status:empty{display:none}
.editor-heading h2:has(.editor-heading-input:not([hidden])){flex:1 1 160px}
.editor-heading-input{width:100%;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-overflow:ellipsis}
.editor-heading-input:focus-visible{outline:0;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}
.entry-popup .editor-heading .title-options{border-color:transparent;background:transparent;box-shadow:none}
.editor-kind-icons .icon-button{grid-template-rows:20px 12px;align-content:center;justify-items:center;gap:2px;padding-inline:0}
.editor-kind-label{visibility:hidden;white-space:nowrap;color:var(--ink);font-size:10px;line-height:12px}
.editor-kind-icons [aria-pressed=true] .editor-kind-label{visibility:visible}
.editor-kind-icons::after{background-position:center}
@media(max-width:600px){
 .editor-heading-input{font-size:16px}
}
.editor-heading-input{resize:none;overflow:hidden;display:block;line-height:1.25;white-space:nowrap}
.editor-heading-input[hidden]{display:none}
.stat-detail{position:fixed;z-index:20;max-width:calc(100vw - 16px);margin:0;padding:6px 9px;background:var(--panel);border:1px solid var(--line);border-radius:7px;color:var(--ink);font-size:12px;box-shadow:0 3px 12px #0004;pointer-events:none}
.stat-detail::after{content:"";position:absolute;left:var(--stat-arrow,50%);top:100%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--line)}
.stat-detail.below::after{top:auto;bottom:100%;border-top-color:transparent;border-bottom-color:var(--line)}
.stat-detail:empty{display:none}
[data-stat]{cursor:pointer}
.chart [data-stat][aria-pressed=true] .gold{fill:var(--bright)}
@media(max-width:600px){
 .entry-popup .cover-pane{width:100%;justify-content:space-between}
 .entry-popup .cover-pane #cover-preview{order:1;margin-inline-start:auto}
 .entry-popup .cover-pane #cover-preview,.entry-popup .inline-cover{border:0}
 .entry-popup .inline-cover{justify-self:end}
 .editor-heading-input{white-space:pre-wrap;overflow-wrap:anywhere;height:20px}
 .editor-heading-input.long-title{height:36px;font-size:14px;line-height:18px}
 .recent td[data-cell=added]{grid-column:1;white-space:nowrap}
 .recent td[data-cell=progress]{grid-column:2;min-width:0;width:auto}
 .recent td[data-cell=progress] .progress{width:100%;min-width:0;justify-content:flex-end;white-space:nowrap}
 .recent td[data-cell=progress] .meter{min-width:0;max-width:130px}
 #popup:has(.mobile-stats)>form{display:flow-root}
 #popup:has(.mobile-stats)>form .close{position:absolute;top:12px;right:12px;z-index:1;border:0;background:transparent}
 #popup:has(.mobile-stats) .entry-heading{min-height:42px;padding-inline-end:46px;display:flex;align-items:center;margin-bottom:4px}
 .mobile-stats,.mobile-stats .charts{width:100%;min-width:0}
 .mobile-stats .card,.mobile-stats .heading{border:0}
 .mobile-stats .dashboard-summary dl>div{display:grid;grid-template-rows:minmax(2.6em,auto) auto 1fr;align-items:start}
 .mobile-stats .activity-map{grid-template-rows:repeat(7,10px)}
 .mobile-stats .status-segments{min-height:20px}
}
@media(max-width:600px){
 .entry-popup .editor-heading .entry-actions button{border-color:transparent;box-shadow:none}
}
@media(max-width:600px){
 .entry-popup .editor-dates{column-gap:12px}
 .entry-popup .editor-dates label{gap:0}
 .entry-popup .editor-dates input{min-height:44px;padding-block:2px;padding-inline-start:0;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}
 .entry-popup .editor-date-input>.ico{right:4px}
}
.entry-duration{font-size:11px}
.dashboard-rankings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:8px 12px 12px}
.dashboard-rankings section{min-width:0}
.dashboard-rankings h3{font-size:12px;color:var(--gold);margin:0 0 4px}
.dashboard-rankings small{white-space:nowrap}
.mobile-stats .dashboard-rankings{grid-template-columns:minmax(0,1fr)}
@media(max-width:600px), (hover:none) and (pointer:coarse){.dashboard-rankings{grid-template-columns:minmax(0,1fr)}}
.login-card{width:min(100%,390px);margin:clamp(26px,12vh,104px) auto;padding:clamp(16px,5vw,26px);border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.login-card>p{font-size:11px;letter-spacing:.13em;color:var(--gold);margin-bottom:8px}
.login-card form{display:grid;gap:12px;margin-top:18px}
.login-card label{display:grid;gap:5px}
.login-card input,.account-settings input{width:100%;min-width:0;min-height:44px;padding:8px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:7px;font:16px system-ui}
.login-card button,.account-settings button{min-height:44px}
.login-card button[type=submit]{background:var(--gold);color:var(--bg);font-weight:700}
.login-card [role=alert]{color:#ffb4a7}.login-card [role=alert]:empty{display:none}
.account-settings{margin-top:14px}.account-settings>*{margin-block:5px}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--bright);outline-offset:2px}
.share-options{border-top:1px solid var(--line);padding:8px 6px;font-size:12px}
.share-options summary{cursor:pointer;min-height:36px;align-content:center}
.share-options p{color:var(--muted);margin:5px 0}
.share-options label{margin-block:8px}
.public-share{max-width:620px;margin:7vh auto;padding:16px}
.public-share h1{margin:8px 0 16px;color:var(--gold);overflow-wrap:anywhere}
.public-share img{display:block;max-width:min(180px,100%);max-height:260px;margin-bottom:16px;border-radius:8px}
.public-share p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}
@media(min-width:601px) and (hover:hover) and (pointer:fine){
 .top .nav button{position:relative}
 .top .nav button .ico{transition:transform 150ms ease}
 .top .nav .nav-label{display:block;position:absolute;z-index:6;top:calc(100% + 3px);left:50%;transform:translateX(-50%);padding:4px 6px;border-radius:5px;background:var(--panel);color:var(--ink);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity 150ms ease}
 .top .nav button:is(:hover,:focus-visible) .ico{transform:translateY(-3px)}
 .top .nav button:is(:hover,:focus-visible) .nav-label{opacity:1}
}
@media(prefers-reduced-motion:reduce){.top .nav button .ico,.top .nav .nav-label{transition:none}}
.recent th:nth-child(2){width:68%}
.recent th:last-child,.recent td[data-cell=rating]{width:18%;text-align:start}
.recent .library-progress{margin-inline-end:6px}
@media(min-width:601px) and (hover:hover) and (pointer:fine){
 .recent td{padding-block:2px}
 .recent .title{min-height:21px}
 .recent .library-progress,.library-pane .library-progress{margin-block:0 1px}
 .library-pane .library-filters{row-gap:4px}
 .library-pane .library-meta{min-height:25px;margin-top:2px}
 .library-pane .library-row{padding-block:1px}
 .library-pane .library-row-side button{min-height:28px}
}
@media(max-width:600px){
 .recent tr{padding-block:4px;row-gap:0}
 .recent td[data-cell=added]{margin-inline-start:26px}
 .recent .library-progress{margin-bottom:0}
 .recent .title{min-height:30px}
}
.access-brand{width:24px;height:18px}
.dashboard-goals{margin-top:10px}
.goal-list,.goal-form,.goal-note{padding:8px 12px}
.goal-list p,.goal-note{font-size:12px}
.goal-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:4px 9px;padding-block:3px}
.goal-row progress{grid-column:1/3;width:100%;height:6px;accent-color:var(--gold)}
.goal-row button{grid-column:3;grid-row:1/3;background:transparent;border-color:transparent}
.goal-form{display:flex;flex-wrap:wrap;gap:7px;align-items:end}
.goal-form label{display:grid;gap:4px;flex:1;min-width:68px;font-size:12px;color:var(--muted)}
.goal-form input,.goal-form select{min-width:0;width:100%;height:36px;padding:5px 7px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);font:inherit}
.goal-form button{min-height:36px}
@media(max-width:600px){
 .goal-form input,.goal-form select,.goal-form button,.goal-row button{min-height:44px;font-size:16px}
 .goal-form button{flex-basis:100%}
}
.goal-row strong{min-width:0;overflow-wrap:anywhere}
.goal-progress-form{grid-column:1/-1;display:flex;align-items:center;gap:7px;font-size:12px}
.goal-progress-form label{display:flex;align-items:center;gap:7px}
.goal-progress-form input{width:74px;min-height:36px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:5px;font-size:16px}
.goal-form-error{flex-basis:100%;color:#ffb4a7}
.goal-form-error:empty{display:none}
@media(max-width:600px){.goal-progress-form :is(button,input){min-height:44px}}
.avatar-options{display:flex;flex-wrap:wrap;gap:5px}
.avatar-options button{min-width:44px;min-height:44px}
.avatar-options button[aria-pressed=true]{border-color:var(--gold);background:#edc45316}
@media(max-width:600px){
}
.account-avatar-photo{width:26px;height:26px;object-fit:cover;border-radius:50%;display:block}
.avatar-options .account-avatar-photo{width:32px;height:32px}
.avatar-upload{display:grid;gap:5px;max-width:320px;font-size:12px}
.avatar-upload input[type=file]{padding:5px}
.avatar-upload input::file-selector-button{min-height:32px;border:0;border-radius:5px;background:var(--gold);color:var(--bg);margin-inline-end:7px}
.avatar-credits{color:var(--muted);font-size:11px}
.avatar-credits a{color:var(--gold)}
.dashboard-goal-popover .dashboard-pins-menu{width:min(340px,calc(100vw - 36px))}
.goal-glance{padding-block:8px;border-bottom:1px solid var(--line);font-size:12px}
.goal-glance h3{margin:0 0 4px;overflow-wrap:anywhere}
.goal-glance h3 small,.goal-glance dt{color:var(--muted);font-weight:400}
.goal-glance progress{width:100%;height:7px;accent-color:var(--gold)}
.goal-glance dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px;margin:5px 0 0}
.goal-glance dd{margin:1px 0;color:var(--gold);font-variant-numeric:tabular-nums}
.dashboard-goal-popover .link{min-height:44px;color:var(--gold)}
.quick-progress-row>.icon-button{flex:none;background:none;border-color:transparent}
.quick-progress-row>.progress{margin-inline-start:auto}
.quick-undo{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:3px 12px;font-size:12px}
.goal-actions{grid-column:3;grid-row:1/3;display:flex;gap:2px}
.goal-history{grid-column:1/-1;font-size:12px}
.goal-history summary,.shared-links summary{cursor:pointer;padding-block:7px}
.goal-history ul{display:flex;flex-wrap:wrap;gap:6px 12px;list-style:none;padding:0;margin:5px 0}
.calendar-layout.calendar-week{grid-template-columns:minmax(0,1fr)}
.calendar-layout [hidden],.share-spoilers[hidden]{display:none!important}
.share-preview{white-space:pre-wrap;max-height:180px;overflow:auto}
@media(max-width:600px){.quick-progress-row>.icon-button,.quick-progress-form button{min-width:44px;min-height:44px}}
.about-sections{display:grid;gap:10px}
.about-block{min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:10px}
.about-block h3{margin:0 0 6px;color:var(--gold);font-size:13px}
.about-block p{font-size:12px}
.about-goals-link{margin-top:8px;min-height:44px}
.goals-back{min-height:40px;color:var(--gold)}
.about-goals .dashboard-goals>.heading{display:none}
.about-goals .goal-form label:has([name=title]){flex:2;min-width:min(100%,180px)}
.settings-heading{padding-bottom:12px;border-bottom:1px solid var(--line)}
.settings-layout{display:grid;grid-template-columns:132px minmax(0,1fr);gap:20px}
.settings-nav{display:flex;flex-direction:column;gap:4px}
.settings-nav button{display:flex;align-items:center;gap:8px;text-align:start;min-height:42px;border-color:transparent;background:transparent}
.settings-nav button:is(:hover,[aria-current=true]){background:#edc45312;color:var(--gold)}
.settings-layout .about-block{padding:3px 0 0;border:0}
.settings-layout .about-block[hidden]{display:none}
.settings-layout .about-block h3{font-size:18px;color:var(--ink);margin-bottom:9px}
.settings-profile{display:flex;align-items:center;gap:12px;padding:11px;margin:9px 0 15px;border-radius:10px;background:#edc4530b}
.settings-avatar{display:grid;place-items:center;width:52px;height:52px;flex:none;border:1px solid var(--line);border-radius:50%;background:var(--bg)}
.settings-avatar .account-avatar-photo{width:100%;height:100%}
.settings-caption{font-weight:650;margin-bottom:7px}
.settings-layout .avatar-upload{margin-top:13px}
.settings-layout .shared-links{margin-top:10px}
.settings-layout .about-performance{padding-block:9px;border-block:1px solid var(--line)}
@media(max-width:600px){
 .settings-layout{grid-template-columns:minmax(0,1fr);gap:12px}
 .settings-nav{flex-direction:row;flex-wrap:wrap;gap:3px;padding-bottom:6px;border-bottom:1px solid var(--line)}
 .settings-nav button{min-height:44px;padding-inline:7px;font-size:12px}
 .settings-nav button .ico{width:15px;height:15px}
}
.editor-details-popover{z-index:10}
.entry-actions [data-editor-section=editor-entry-details][hidden]{display:none}
.editor .global-search-toggle{display:flex;align-items:center;gap:7px;min-height:36px;margin-top:3px}
.editor .global-search-toggle input{width:16px;min-height:16px;accent-color:var(--gold)}
@media(max-width:600px){.editor .global-search-toggle{min-height:44px}}
.admin-libraries{display:grid;gap:8px}
.admin-libraries label{display:grid;gap:4px;max-width:260px}
.admin-libraries select{min-height:44px;padding:6px 12px}
.admin-library-results details{border-top:1px solid var(--line);padding:6px 0}
.admin-library-results summary{cursor:pointer;min-height:40px;align-content:center}
.admin-library-results summary small{margin-inline-start:8px;color:var(--muted)}
.admin-library-results p{padding:4px 10px;white-space:pre-wrap;overflow-wrap:anywhere}
.part-pills::-webkit-scrollbar{display:none}
.editor-details-popover{padding:0;overflow:auto;overscroll-behavior:contain;background:#302719;border:1px solid var(--line);box-shadow:0 10px 28px #0009}
.editor-details-popover .context-heading{position:sticky;top:0;z-index:2;background:#302719;padding:10px 12px;margin:0;border-bottom:1px solid var(--line)}
.editor-details-popover .context-heading [aria-label=Volver]{display:none}
.editor-details-popover #editor-entry-details{padding:0 12px 12px;border:0;background:none}
.editor-details-popover .editor-detail-grid{gap:8px}
.details-group-label{margin:4px 0 0;color:var(--gold);font-size:11px;letter-spacing:.06em;text-transform:uppercase}
@media(min-width:601px){
 .recent td[data-cell=title]{position:relative;vertical-align:middle}
 .recent td[data-cell=title] .title{padding-inline-start:29px}
 .recent td[data-cell=title] .title>.ico{position:absolute;top:50%;inset-inline-start:12px;transform:translateY(-50%)}
}
@media(min-width:601px){
 .library-row-main{position:relative}
 .library-row-main .title{padding-inline-start:29px}
 .library-row-main .title>.ico{position:absolute;top:50%;inset-inline-start:var(--library-icon-offset,0px);transform:translateY(-50%)}
 .library-row-main:has(>.bulk-check){--library-icon-offset:32px;display:grid;grid-template-columns:32px minmax(0,1fr)}
 .library-row-main>.bulk-check{grid-column:1;grid-row:1/4;align-self:center;margin:0}
 .library-row-main:has(>.bulk-check)>:not(.bulk-check){grid-column:2}
}
.avatar-options button[hidden]{display:none}
.top h1 small{display:block;margin-top:4px;font-size:.48em;letter-spacing:.11em}
.goal-icon-picker{display:flex;flex:1 0 100%;flex-wrap:wrap;gap:4px;min-width:0;margin:0;padding:4px 0;border:0}
.goal-icon-picker legend{color:var(--muted);font-size:12px;margin-bottom:3px}
.goal-form .goal-icon-picker label{display:grid;position:relative;flex:0 0 auto;min-width:0;cursor:pointer}
.goal-icon-picker input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.goal-icon-picker label>span{display:grid;place-items:center;min-width:36px;min-height:36px;padding:3px;border:1px solid var(--line);border-radius:7px}
.goal-icon-picker input:checked+span{border-color:var(--gold);background:#edc45318;color:var(--gold)}
.goal-icon-picker input:focus-visible+span{outline:2px solid var(--bright);outline-offset:2px}
@media(max-width:600px){.goal-icon-picker label>span{min-width:44px;min-height:44px}}
.goal-presets,.goal-custom{padding:10px 12px;border-top:1px solid var(--line)}
.goal-presets h3{margin:0 0 8px;font-size:13px}
.goal-preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,155px),1fr));gap:6px}
.goal-preset-grid button{display:flex;align-items:center;gap:7px;min-height:44px;text-align:start}
.goal-preset-grid small{display:block;color:var(--muted)}
.goal-custom summary{cursor:pointer;min-height:40px;align-content:center;color:var(--gold)}
.goal-custom .goal-form{padding-inline:0}
.top .nav{margin-inline-start:auto}
.header-account{display:flex;align-items:center;gap:5px;min-width:0;margin-inline-start:auto;font-size:12px}
.header-profile-button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:14ch}
.header-account button{border-color:transparent;background:transparent}
.header-account button:hover{border-color:var(--line)}
.about-brand{color:var(--gold);margin-bottom:7px}
@media(max-width:600px){
 .top{flex-wrap:nowrap}
 .top h1{min-width:0}
 .header-account{max-width:42%;gap:3px}
 .header-account button{min-width:44px;min-height:44px;flex:none}
}
.top .dashboard-clock{margin-inline-start:auto;color:var(--muted);font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.top .nav,.header-account{margin-inline-start:0}
@media(max-width:600px){
 .top{flex-wrap:wrap}
 .top .dashboard-clock{order:2;flex-basis:100%;margin:0;font-size:11px}
 .header-account{margin-inline-start:auto}
}
.header-profile-button{display:flex;align-items:center;gap:8px;min-width:0;padding:4px 6px}
.header-profile-button .account-avatar-photo{flex:none}
@media(max-width:600px){.header-account .header-profile-button{flex:0 1 auto}}
.header-account .header-profile-button:is(:hover,:focus-visible){color:var(--bright);background:#edc45314;border-color:#edc45355;box-shadow:0 0 12px #edc45324}
.header-profile-button:is(:hover,:focus-visible) :is(.account-avatar-photo,.ico){filter:brightness(1.2) drop-shadow(0 0 4px #edc45370)}
.display-preferences{display:flex;flex-wrap:wrap;gap:8px;margin-block:12px}
.display-preferences label{display:grid;gap:4px}
.display-preferences select{min-height:36px;padding:5px 9px}
.top .dashboard-clock{display:grid;gap:3px;justify-items:start}
.dashboard-clock progress{width:100%;height:3px;appearance:none;border:0;border-radius:4px;background:var(--track);accent-color:var(--gold)}
.dashboard-clock progress::-webkit-progress-bar{background:var(--track);border-radius:4px}
.dashboard-clock progress::-webkit-progress-value{background:var(--gold);border-radius:4px}
.dashboard-clock progress::-moz-progress-bar{background:var(--gold);border-radius:4px}



:root[data-density=minimal] #app > .dashboard-statistics{display:none}

@media(max-width:600px){
 .top .dashboard-clock{flex-basis:auto;justify-items:start}
 .kpis .kpi{flex-direction:row;gap:4px}
 .category-controls{flex-wrap:wrap;justify-content:space-between}
 .controls .category-controls .types{display:contents}
 .category-controls .type,.category-controls .dashboard-pins summary.type{display:flex;align-items:center;justify-content:center;gap:3px;flex:0 0 auto;min-width:44px;min-height:44px;padding:3px}
 .category-controls .type-label{display:none}

}

@media(max-width:600px){

 .top .dashboard-clock progress{min-width:100%}
}

/* Compact rows keep metadata on the same line as the title. */
:root:is([data-density=compact],[data-density=minimal]) :is(.library-row-main,.recent td[data-cell=title]){position:relative}
:root:is([data-density=compact],[data-density=minimal]) .library-row-main:not(:has(>.bulk-check)){display:flex;align-items:center;gap:8px}
:root:is([data-density=compact],[data-density=minimal]) .recent td[data-cell=title]{display:table-cell}
:root:is([data-density=compact],[data-density=minimal]) .recent td[data-cell=title] .title{display:inline-flex;width:60%;vertical-align:middle}
:root:is([data-density=compact],[data-density=minimal]) .recent td[data-cell=title] .library-progress{display:inline-grid;width:38%;vertical-align:middle}
:root:is([data-density=compact],[data-density=minimal]) :is(.library-row-main,.recent) .library-progress{flex:0 0 38%;margin:0;grid-template-columns:minmax(0,1fr) auto auto}
:root:is([data-density=compact],[data-density=minimal]) .library-row-meta{display:none}
:root:is([data-density=compact],[data-density=minimal]) .library-rating em{display:none}
:root:is([data-density=compact],[data-density=minimal]) .library-row-main:has(>.bulk-check){display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,38%)}
:root:is([data-density=compact],[data-density=minimal]) .library-row-main:has(>.bulk-check)>.library-progress{grid-column:3;grid-row:1}
:root[data-density=minimal] .top .nav [data-action=stats]{display:grid}
@media(max-width:600px){
 :root:is([data-density=compact],[data-density=minimal]) .recent tbody tr:has(.title){grid-template-columns:auto minmax(0,1fr);column-gap:5px}
 :root:is([data-density=compact],[data-density=minimal]) .recent td[data-cell=added]{grid-row:1;margin-inline-start:0}
 :root:is([data-density=compact],[data-density=minimal]) .recent td[data-cell=title]{display:flex;align-items:center;grid-column:2;grid-row:1;min-width:0;gap:5px}
 :root:is([data-density=compact],[data-density=minimal]) .recent td[data-cell=title] .title{width:auto;flex:1;min-width:0}
 :root:is([data-density=compact],[data-density=minimal]) .recent td[data-cell=title] .library-progress,
 :root:is([data-density=compact],[data-density=minimal]) .library-row-main .library-progress{width:auto;flex:0 0 auto;display:block}
 :root:is([data-density=compact],[data-density=minimal]) .library-progress :is(.meter,.library-progress-count){display:none}
 :root:is([data-density=compact],[data-density=minimal]) .library-row{grid-template-columns:minmax(0,1fr) auto auto auto;gap:3px}
 :root:is([data-density=compact],[data-density=minimal]) .library-row-main{grid-column:1;grid-row:1}
 :root:is([data-density=compact],[data-density=minimal]) .library-row-main:has(>.bulk-check){grid-template-columns:auto minmax(0,1fr) auto}
 :root:is([data-density=compact],[data-density=minimal]) .library-row-side{grid-column:4;grid-row:1}
 :root:is([data-density=compact],[data-density=minimal]) .library-row>.library-status{grid-column:2;grid-row:1}
 :root:is([data-density=compact],[data-density=minimal]) .library-row>.library-rating{grid-column:3;grid-row:1;white-space:nowrap}
}
/* Keep native controls and nested panels legible in each palette. */
@media(max-width:600px){
}
.view-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border:0;padding:0;margin:12px 0 0;min-width:0}
.view-picker legend{margin-bottom:6px;font-weight:650}
.view-option{position:relative;min-width:0;cursor:pointer}
.view-option input{position:absolute;opacity:0}
.view-option-body{display:flex;flex-direction:column;gap:4px;height:100%;padding:6px;border:1px solid var(--line);border-radius:8px;color:var(--ink);overflow-wrap:anywhere}
.view-option svg{width:100%;height:auto;background:var(--bg);border-radius:5px}
.view-option svg rect{fill:var(--panel);stroke:var(--line)}
.view-option svg path{stroke:var(--muted);fill:none;stroke-width:2;stroke-linecap:round}
.view-option svg .preview-accent{stroke:var(--gold)}
.view-option small{color:var(--muted);line-height:1.35}
.view-option input:checked+.view-option-body{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.view-option input:focus-visible+.view-option-body{outline:2px solid var(--bright);outline-offset:2px}

/* Light surfaces and readable states for controls with custom dark styling. */
#review-changes{width:min(660px,calc(100% - 24px));overflow:auto;overscroll-behavior:contain;border-color:var(--line)}
#review-changes h3{margin:0 0 10px}
#review-changes .section-toolbar{justify-content:flex-end;margin-bottom:0}
#review-confirm{border-color:var(--gold)}
:root[data-density=minimal] .top+.kpis{display:none}
:root[data-density=minimal] .category-controls .type-label{display:none}
:root[data-density=minimal] .category-controls .type{display:flex;align-items:center;justify-content:center;gap:5px}

.dashboard-date-filter{position:relative;z-index:6}
 .dashboard-date-filter summary{display:flex;gap:4px;align-items:center;justify-content:center;min-height:44px;min-width:44px;color:var(--gold);list-style:none;cursor:pointer;font-size:11px}
 .dashboard-date-filter summary::-webkit-details-marker{display:none}
 .dashboard-filter-menu{position:absolute;top:100%;inset-inline-end:0;width:min(250px,calc(100vw - 86px));padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:9px;box-shadow:0 8px 24px #0005}
 .controls .dashboard-filter-menu .date-controls{grid-template-columns:auto minmax(0,1fr) auto auto}
 .dashboard-filter-menu .date-controls .dashboard-clear{grid-column:4;grid-row:1;justify-self:center}
.dashboard-filter-menu .dashboard-native-date{min-width:0;white-space:nowrap;padding-inline:2px}
.dashboard-filter-menu .dashboard-native-date span{max-width:100%;overflow:hidden;text-overflow:ellipsis}
@media(pointer:coarse){.dashboard-filter-menu .date-controls button{min-width:44px;min-height:44px}}
.upcoming-date{display:flex;flex:none;align-items:center;justify-content:flex-end;gap:6px;white-space:nowrap;color:var(--muted);font-size:11px;text-align:end}
.upcoming-date b{color:var(--gold);white-space:nowrap}
.upcoming-date time{white-space:nowrap}

@media(min-width:851px){.kpis{grid-template-columns:repeat(7,minmax(0,1fr))}}
@media(max-width:600px){.kpis{grid-template-columns:repeat(7,minmax(0,1fr))}}

@media(max-width:600px){
 :root[data-density=minimal] .top{row-gap:4px;padding-bottom:6px;margin-bottom:4px}
 :root[data-density=minimal] .top .dashboard-clock{font-size:10px}
 :root[data-density=minimal] .category-controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}
 :root[data-density=minimal] .category-controls .type,
 :root[data-density=minimal] .category-controls .dashboard-pins summary.type{width:100%;padding:2px;gap:3px}
 :root[data-density=minimal] .category-controls .dashboard-pins,
 :root[data-density=minimal] .dashboard-date-filter{min-width:0;padding-inline-start:0}
 :root[data-density=minimal] .category-controls .dashboard-pins:not(.dashboard-goal-popover) .dashboard-pins-menu{width:min(260px,calc(100vw - 84px))}
 :root[data-density=minimal] :is(.grid,.recent) .heading{padding:2px 9px}
 :root[data-density=minimal] .grid .rows{padding-inline:9px}
 :root[data-density=minimal] .grid .upcoming-card .record{row-gap:1px;padding-block:3px}
 :root[data-density=minimal] .upcoming-card .title{min-height:24px}
 :root[data-density=minimal] .upcoming-date{justify-content:flex-start;margin-inline-start:27px;text-align:start}
 :root[data-density=minimal] .category-controls :is(.dashboard-pins,.dashboard-date-filter){border-inline-start:0}
 :root[data-density=minimal] .recent .title{gap:5px}
 :root[data-density=minimal] .recent .title .recent-title-status{margin-inline-start:0}
 :root[data-density=minimal] .recent .library-progress-value{display:block;line-height:1.2;text-align:end}
}
.editor-heading-input.long-title{height:2.5em;font-size:.84em;line-height:1.25;white-space:pre-wrap;overflow-wrap:anywhere}


.date-placeholder{display:none}
@media(max-width:600px){
 .entry-popup .editor-heading{padding-block:4px;row-gap:2px}
 .entry-popup .editor-heading h2:has(.editor-heading-input:not([hidden])){flex:1 0 100%}
 .entry-popup .editor-heading .entry-actions{display:flex;flex:1 1 auto;flex-wrap:nowrap;justify-content:space-between;gap:0;min-width:0;margin:0}
 .entry-popup .editor-heading .entry-actions button:not([hidden]){flex:1 1 0;min-width:0;min-height:44px;padding:2px;margin:0}
 .entry-popup .editor-heading .entry-actions button:not([hidden],:active){background:transparent;border-color:transparent;box-shadow:none}
 .entry-popup .editor-heading .entry-actions .save:not([hidden]){color:var(--gold)}
 .entry-popup .cover-pane{min-height:0;gap:5px;padding-block:0}
 .entry-popup .cover-pane #cover-preview,.entry-popup .cover-pane img{max-height:42px}
 .entry-popup .cover-pane p{font-size:11px}
 .entry-popup .editor-series-position{justify-content:flex-start}
 .entry-popup .editor-series-position button{min-height:32px;padding:2px 0}
 .entry-popup .editor-dates label{gap:2px}
 .entry-popup .editor-dates input{height:44px;line-height:1.2;padding-inline:0 25px}
 .entry-popup .editor-dates input::-webkit-date-and-time-value{margin:0;text-align:start;line-height:1.2}
 .entry-popup .editor-date-input.date-empty input{opacity:0}
 .entry-popup .editor-date-input:focus-within{outline:1px solid var(--gold);outline-offset:2px}
 .entry-popup .editor-date-input.date-empty .date-placeholder{display:block;position:absolute;inset-inline-start:0;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--muted)}
}
.editor-progress>.editor-series-position{grid-column:1/-1}
.editor-progress>.editor-series-position:empty{display:none}
@media(max-width:600px){
 .entry-popup .editor-progress:has(.editor-series-position button){grid-template-columns:minmax(75px,32%) minmax(0,1fr) 40px;gap:6px}
 .entry-popup .editor-progress>.editor-series-position{grid-column:3;grid-row:1;justify-content:center}
 .entry-popup .editor-series-position button{width:40px;min-height:44px;justify-content:center}
 .entry-popup .editor-series-position button span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
}
@media(max-width:600px){
 .entry-popup .editor-heading .entry-actions button:not([hidden]){min-width:44px}
}
@media(min-width:388px) and (max-width:600px){
 .entry-popup .editor-heading .entry-actions{margin-inline:-4px}
}
@media(max-width:387px){
 .entry-popup .editor-heading .entry-actions{display:grid;grid-template-columns:repeat(4,minmax(44px,1fr))}
}

.recent-date-short,.progress-pending-short{display:none}
@media(max-width:600px){
 :root[data-density=minimal] .recent:not(.editorial-recent){overflow:clip}
 :root[data-density=minimal] .recent-date-short,:root[data-density=minimal] :is(.recent,.library-row) .progress-pending-short{display:inline}
 :root[data-density=minimal] .recent-date-full,:root[data-density=minimal] :is(.recent,.library-row) .progress-pending-full{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 :root[data-density=minimal] .recent tbody tr:has(.title){grid-template-columns:5.5ch minmax(0,1fr);column-gap:7px}
 :root[data-density=minimal] .recent td[data-cell=title] .title{gap:5px}
 :root[data-density=minimal] .recent .library-progress{min-width:5.5ch}
 :root[data-density=minimal] .recent .has-cover{background-image:linear-gradient(90deg,var(--panel),color-mix(in srgb,var(--panel) 87%,transparent) 53%,color-mix(in srgb,var(--panel) 70%,transparent)),var(--recent-cover)}
 :root[data-density=minimal] .foot{margin-top:4px}
 :root[data-density=minimal] .foot .sync-group{gap:0}
}

@media(max-width:600px){
 .entry-popup .editor-heading{padding-block-start:10px}
 .entry-popup .editor-heading:has(.inline-cover:not([hidden])){display:grid;grid-template-columns:46px minmax(0,1fr);gap:0 10px}
 .entry-popup .editor-heading>.inline-cover:not([hidden]){grid-column:1;grid-row:1/3;justify-self:start;align-self:center;width:46px;height:68px;min-height:0}
 .entry-popup .editor-heading>.inline-cover img{display:block;object-fit:contain}
 .entry-popup .editor-heading:has(.inline-cover:not([hidden])) h2{grid-column:2;grid-row:1;padding-inline-end:44px;min-height:26px;align-items:center}
 .entry-popup .editor-heading:has(.inline-cover:not([hidden])) .entry-actions{grid-column:2;grid-row:2;display:flex;justify-content:flex-start;gap:0;margin:0;background:linear-gradient(var(--line),var(--line)) left top / calc(100% - 44px) 1px no-repeat}
 .entry-popup .editor-heading:has(.inline-cover:not([hidden])) .entry-mobile-close{position:absolute;top:5px;inset-inline-end:0;width:44px}
 .entry-popup .editor-layout>.cover-pane #cover-preview,.entry-popup .editor-layout>.cover-pane:not(:has(p:nth-of-type(2))){display:none}
}


@media(max-width:600px){
 .entry-search-only .editor-heading:not(:has(.inline-cover:not([hidden]))){display:flex;flex-wrap:nowrap}
 .entry-search-only .editor-heading:not(:has(.inline-cover:not([hidden]))) .entry-actions{display:flex;flex:0 0 auto;margin:0}
 #popup:has(.calendar-layout) .entry-heading{margin-bottom:5px}
 #popup:has(.calendar-layout) :is(.calendar-view-tools,.calendar-nav){margin-block:3px}
 #popup:has(.calendar-layout) .calendar-grid{gap:3px}
 :root[data-density=minimal] .library-row-main:not(:has(>.bulk-check)){gap:4px}
}


.ownership-icons .icon-button{position:relative}

.ownership-amount{position:absolute;inset-block-start:calc(50% + 11px);left:50%;transform:translateX(-50%);font-size:10px;text-align:center;font-variant-numeric:tabular-nums;line-height:11px;white-space:nowrap;color:var(--gold);pointer-events:none}
.low-performance .ownership-icons{transition:none}
.entry-popup #ownership-price input:focus-visible{outline:0;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}
.ownership-icons .icon-button:is([data-ownership="Físico"],[data-ownership="Digital"])[aria-pressed=true]:focus-visible{outline:0}
.ownership-icons .icon-button:is([data-ownership="Físico"],[data-ownership="Digital"])[aria-pressed=true]:focus-visible .ico{outline:2px solid var(--gold);outline-offset:3px;border-radius:50%}

.kpis .kpi strong,.category-controls .type small{font-size:20px;line-height:1.1;font-weight:700;font-variant-numeric:tabular-nums}
.kpis .kpi>.ico,.category-controls .type>.ico{width:17px;height:17px}
@media(min-width:601px){
 .kpis .kpi{display:grid;grid-template-columns:17px minmax(0,1fr);grid-template-rows:auto auto;align-content:center;align-items:center;gap:2px 8px}
 .kpis .kpi>span{display:contents}
 .kpis .kpi-label{grid-column:2;grid-row:1}
 .kpis .kpi>.ico{grid-column:1;grid-row:1/-1;align-self:center}
 .kpis .kpi strong{grid-column:2;grid-row:2}
 :root:not([data-density=minimal]) .category-controls .type{grid-template-columns:auto auto;grid-template-rows:auto auto;justify-content:center;gap:2px 5px}
 :root:not([data-density=minimal]) .category-controls .type>.ico{grid-column:1;grid-row:1}
 :root:not([data-density=minimal]) .category-controls .type small{grid-column:2;grid-row:1}
 :root:not([data-density=minimal]) .category-controls .type-label{grid-column:1/-1;grid-row:2}
}
@media(max-width:450px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}

#popup[open]:has(.settings-layout){display:flex;flex-direction:column;height:min(500px,84dvh);overflow:hidden}
#popup:has(.settings-layout)>form>.close{position:absolute;inset-block-start:12px;inset-inline-end:12px}
#popup:has(.settings-layout)>#panel{display:flex;flex:1;flex-direction:column;min-height:0}
.settings-heading{flex:none;padding-inline-end:44px}
.settings-layout{flex:1;min-height:0}
.settings-layout>.settings-nav{align-self:start;max-height:100%;overflow:auto}
.settings-layout>.about-sections{display:block;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-inline-end:4px}
@media(max-width:600px){
 .settings-layout{grid-template-rows:auto minmax(0,1fr)}
}

.library-results-layout{min-width:0}
.library-scope{margin-block:0 6px;color:var(--gold);font-size:12px}
.library-preview{min-width:0;border-inline-start:1px solid var(--line);padding-inline-start:12px}
.library-preview[hidden]{display:none}
.library-preview img{display:block;max-width:100%;max-height:150px;border-radius:6px;margin-block:8px;object-fit:contain}
.library-preview .preview-synopsis{max-height:9em;overflow:auto;margin-block:8px;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}
.library-preview .library-progress{margin-inline:0}
.library-preview button{margin-top:6px}
.library-row .title[aria-current=true]{color:var(--bright)}
.extra-charts{margin-block:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.extra-stat-rows{padding:6px 12px}
.extra-stat-row{display:grid;width:100%;grid-template-columns:minmax(70px,1fr) minmax(40px,2fr) auto;align-items:center;gap:8px;min-height:28px;font-size:12px}
.extra-stat-row .meter{width:100%}
.extra-stat-row span:last-child{min-width:5ch;text-align:end;font-variant-numeric:tabular-nums}
@media(min-width:851px){
 .library-results-layout.with-preview{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,24%);gap:10px;align-items:start}
 .library-results-layout.with-preview .library-preview{position:sticky;top:0}
}
@media(max-width:850px){
 [data-action=library-preview]{display:none}
 .library-preview{display:none}
 .extra-charts{grid-template-columns:1fr}
}
@media(max-width:600px){
 :root[data-density=details] .library-row-main .title span,
 :root[data-density=details] .recent .title>span:first-of-type{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere}
}

#review-changes{padding:16px}
#review-changes h3{color:var(--gold);font-size:18px}
#review-changes .review-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 10px;padding:10px 0;font-size:13px;line-height:1.45}
#review-changes .review-row>strong{grid-column:1/-1}
#review-changes .review-row>div{min-width:0;padding:6px 8px;background:var(--panel);border-radius:6px}
#review-changes .review-row .review-before{color:var(--muted)}
#review-changes .review-row .review-after{background:color-mix(in srgb,var(--gold) 8%,var(--panel))}
#review-changes .review-row small{margin-bottom:2px;font-weight:650}
#review-changes .section-toolbar{position:sticky;bottom:-16px;padding-block:8px 0;background:inherit}

.title .title-formats{display:inline-flex;flex:none;align-items:center;gap:4px;overflow:visible}
.title .title-formats>span{display:inline-flex;flex:none}
.title .title-formats .ico{width:13px;height:13px;color:var(--muted)}
.library-row-main:has(>.is-pending):not(:has(>.bulk-check)),.recent .pending-title-line{display:flex;align-items:center;gap:6px;min-width:0}
.recent .pending-title-line{width:100%}
#library-results .library-row-main:has(>.is-pending) .title,.recent .pending-title-line .title{flex:0 1 auto;width:auto;min-width:0}
.library-row-main>.is-pending,.recent .pending-title-line>.is-pending{display:flex;flex:0 0 auto;align-items:center;gap:5px;width:auto;margin:0 0 0 auto}
.library-row-main>.is-pending .library-progress-count,.recent .pending-title-line>.is-pending .library-progress-count{display:none}
.library-row-main:has(>.is-pending):has(>.bulk-check){display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
.library-row-main:has(>.bulk-check)>.is-pending{grid-column:3;grid-row:1}
@media(max-width:600px){
 .recent .pending-title-line>.is-pending{min-width:0}
}
:root .recent td[data-cell=title] .pending-title-line>.title{flex:1 1 0;width:auto}
:root .recent td[data-cell=title] .pending-title-line>.is-pending{width:auto;display:flex}

.trash-pager[hidden]{display:none}
.trash-pager{justify-content:space-between;align-items:center;gap:6px}
.trash-pager output{color:var(--muted);font-variant-numeric:tabular-nums}
div[data-trash-page]{max-height:50dvh;overflow:auto;overscroll-behavior:contain}
[data-trash-page] .record>span{min-width:0;overflow-wrap:anywhere}

/* Editorial dashboard */
.editorial-grid{align-items:start;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.editorial-grid .heading,.editorial-recent .heading{background:transparent}
.editorial-grid .record{border-color:var(--line)}
.editorial-grid .quick-progress-row{display:grid;grid-template-columns:30px minmax(0,1fr) 36px;column-gap:9px;min-height:48px}
.editorial-thumb{position:relative;display:grid;place-items:center;width:30px;height:36px;border-radius:4px;overflow:hidden;background:var(--track)}
.editorial-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.editorial-thumb img[hidden]{display:none}
.editorial-thumb .ico{width:14px;height:14px}
.editorial-entry{min-width:0;display:grid;gap:3px}
.editorial-entry>.title{font-weight:600}
.editorial-grid .editorial-entry .title span{display:block;white-space:nowrap}
.editorial-entry>.progress{width:min(100%,260px);min-width:0;justify-content:start;line-height:1.2}
.editorial-entry .progress .meter{height:4px;min-width:0}
.editorial-entry .progress span:last-child{min-width:0}
.editorial-entry>.progress.muted{white-space:normal}
.editorial-grid .quick-progress-row>[data-quick-progress]{justify-self:center}
.editorial-recent th{background:color-mix(in srgb,var(--panel) 95%,var(--ink))}
@media(max-width:850px){
 .editorial-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:600px){
 .editorial-grid .quick-progress-row,
 :root[data-density=minimal] .editorial-grid .quick-progress-row{grid-template-columns:27px minmax(0,1fr) 44px;column-gap:7px;min-height:48px}
 .editorial-thumb{width:27px;height:34px}
 .editorial-entry>.title{min-height:20px}
}

.editorial-grid .quick-progress-row>.editorial-thumb{grid-area:1/1;align-self:center}
.editorial-grid .quick-progress-row>.editorial-entry{grid-area:1/2;align-self:center}
.editorial-grid .quick-progress-row>[data-quick-progress]{grid-area:1/3}
.editorial-entry>.title>.ico{display:none}

:root:not([data-update-available]) .top [data-install-update]{display:none}
.top [data-install-update] .ico{color:var(--bright)}

.category-controls>.dashboard-date-filter{margin-inline-start:auto}
@media(max-width:600px){
 :root[data-density=minimal] .category-controls>.dashboard-date-filter{grid-column:-2/-1;justify-self:stretch}
}

.dashboard-shortcuts{display:flex;align-items:center;min-inline-size:0;margin:0;padding:0 3px 2px;border:1px solid var(--line);border-radius:8px}
.dashboard-shortcuts legend{padding:0 4px;color:var(--muted);font-size:10px;line-height:1}
.category-controls .dashboard-shortcuts .dashboard-pins{padding:0;border:0}
.category-controls .dashboard-shortcuts .type{display:flex;align-items:center;justify-content:center;gap:3px;margin:0}
.category-controls .dashboard-shortcuts .type-label{display:none}
.dashboard-shortcut-empty{cursor:default;opacity:.55;min-width:42px;min-height:34px}
.dashboard-shortcut-empty .ico{color:var(--muted)}
.dashboard-shortcut-empty:hover{border-color:transparent}
@media(max-width:600px){
 #app>.top{position:sticky;top:0;z-index:7;padding-block-start:max(6px,env(safe-area-inset-top));background:var(--bg)}
 :root[data-density=minimal] .category-controls>.dashboard-shortcuts{grid-column:span 2}
 .category-controls .dashboard-shortcuts>.dashboard-pins,.category-controls .dashboard-shortcuts>.dashboard-shortcut-empty{flex:1}
}

.title .title-formats,.recent .title .recent-title-status{align-items:center;line-height:1}
.recent .title .recent-title-status{margin-inline-start:0}
.title .title-formats .ico,.recent .title .recent-title-status .ico{display:block;width:14px;height:14px}

.release-note{border-top:1px solid var(--line);padding:10px 0}
.release-note summary{cursor:pointer}
.release-note summary strong{color:var(--gold);margin-inline-end:6px}
.release-note ul{padding-inline-start:20px}
.release-note li+li{margin-block-start:5px}
.release-screens{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:10px;align-items:start}
.release-screens figure{margin:0;min-width:0}
.release-screens img{display:block;width:100%;border:1px solid var(--line);border-radius:6px}
.release-screens figcaption{margin-block-start:4px;color:var(--muted);font-size:11px}
@media(max-width:600px){.release-screens{grid-template-columns:minmax(0,1fr)}}

:root:is([data-density=compact],[data-density=minimal]) .category-controls .type{display:flex;align-items:center;justify-content:center;gap:4px}
:root:is([data-density=compact],[data-density=minimal]) .category-controls .type-label{display:none}
@media(max-width:600px){
 :root:is([data-density=compact],[data-density=minimal]) .category-controls{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:0 4px}
 :root:is([data-density=compact],[data-density=minimal]) .category-controls .types{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;overflow:visible}
 :root:is([data-density=compact],[data-density=minimal]) .category-controls .types .type{min-width:0;width:100%;padding-inline:0;gap:2px}
 :root:is([data-density=compact],[data-density=minimal]) .category-controls .type small{font-size:16px}
 :root:is([data-density=compact],[data-density=minimal]) .category-controls .types .ico{width:15px;height:15px}
 :root:is([data-density=compact],[data-density=minimal]) .category-controls>.dashboard-shortcuts{grid-column:2;padding:0}
 :root:is([data-density=compact],[data-density=minimal]) .category-controls>.dashboard-date-filter{grid-column:3}
}
@media(max-width:420px){
 :root[data-density=minimal] .category-controls{grid-template-columns:minmax(0,1fr) auto 34px;column-gap:2px}
 :root[data-density=minimal] .category-controls .type small{font-size:13px}
 :root[data-density=minimal] .category-controls .types .ico{width:13px;height:13px}
 :root[data-density=minimal] .category-controls .dashboard-shortcuts .type{min-width:32px}
 :root[data-density=minimal] .category-controls .dashboard-date-filter summary{min-width:34px}
}

@media(max-width:600px){.settings-layout .view-picker{display:none}}

.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.editorial-grid fieldset.card{min-inline-size:0;margin:0;padding:0}
:is(.editorial-grid,.editorial-recent) legend{margin-inline-start:8px;padding-inline:4px;color:var(--muted);font-size:12px;line-height:1}
.dashboard-legend{display:flex;align-items:center;gap:8px;white-space:nowrap;transform:translateY(-2px)}
.dashboard-legend .calendar-shortcut{font:inherit;min-height:0}
@media(max-width:850px){.editorial-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){
 .dashboard-legend .dashboard-fold{width:28px;height:20px;min-height:20px;padding:0;outline:none;background:transparent;border:0}
 .dashboard-legend .dashboard-fold:focus-visible{box-shadow:inset 0 -1px var(--gold)}
 .dashboard-legend .dashboard-fold .ico{width:13px;height:13px}
 .dashboard-legend .calendar-shortcut{min-height:20px}
 
}

fieldset.editorial-recent{min-inline-size:0;padding:0}
.dashboard-legend-label{display:inline-flex;align-items:center;gap:6px;padding-inline:4px;border-radius:5px}
.dashboard-legend-label>.ico{width:14px;height:14px}
.dashboard-legend-label:has(.dashboard-fold[aria-expanded=false]){background:var(--gold);color:var(--bg)}
.dashboard-legend-label:has(.dashboard-fold[aria-expanded=false]) .ico{color:inherit}
.dashboard-legend-label .dashboard-fold{color:inherit}
.dashboard-legend-label:has(.dashboard-fold[aria-expanded=false]) .dashboard-fold:focus-visible{box-shadow:inset 0 -1px currentColor}

:is(.editorial-grid,.editorial-recent) legend{pointer-events:none}
.dashboard-legend button{pointer-events:auto}

@media(max-width:600px){
 .top .nav{inset-inline:max(10px,env(safe-area-inset-left)) max(10px,env(safe-area-inset-right));bottom:calc(8px + env(safe-area-inset-bottom));margin:0;padding:3px 4px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 50%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 18px #0005}
}

.dashboard-fold-content{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr;min-inline-size:0;overflow:clip;overflow-anchor:none}
.dashboard-fold-content>div{min-width:0;min-height:0;overflow:clip}
@media(max-width:600px){
 .dashboard-fold-content[inert]{grid-template-rows:0fr}
}
@media(max-width:600px) and (prefers-reduced-motion:no-preference){
 :root .dashboard-fold-content{transition:grid-template-rows 180ms ease-in-out!important}
}

@media(max-width:600px){
 .editorial-grid .editorial-entry>.progress{margin-inline-start:0}
 .editorial-grid .editorial-entry .title span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere}
 .editorial-recent .library-progress-value{min-width:5.5ch;text-align:end}
 .entry-popup .editor-heading:has(.inline-cover:not([hidden])) .entry-actions>button:not([hidden],.entry-mobile-close){flex:0 1 36px;min-inline-size:0;min-height:36px;padding-inline:0}
}

@media(max-width:600px){
 html,body{overflow-x:clip;overscroll-behavior:none}
 main#app{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
 dialog[open]{overscroll-behavior-y:none}
 .category-controls{position:relative}
 .category-controls .dashboard-shortcuts .dashboard-pins{position:static}
 .category-controls .dashboard-shortcuts .dashboard-pins-menu{inset-inline:auto 0;max-inline-size:100%;z-index:6}
 .category-controls .types .type small{min-inline-size:0;overflow:hidden;text-overflow:ellipsis}
}

@media(max-width:600px){
 .category-controls .dashboard-shortcuts{border:0;border-radius:0;padding:0}
 .category-controls .dashboard-shortcuts legend{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}
 .category-controls .dashboard-shortcuts .type{position:relative}
 .category-controls .dashboard-shortcuts .type::before,
 .category-controls .dashboard-shortcuts>:last-child:is(button)::after,
 .category-controls .dashboard-shortcuts>:last-child>summary::after{content:"";position:absolute;inset-block-start:calc(50% - 9px);height:18px;width:1px;background:var(--line);pointer-events:none}
 .category-controls .dashboard-shortcuts .type::before{inset-inline-start:0}
 .category-controls .dashboard-shortcuts>:last-child:is(button)::after,
 .category-controls .dashboard-shortcuts>:last-child>summary::after{inset-inline-end:0}
}

main#app{padding-block-start:max(8px,env(safe-area-inset-top))}
.top .library-brand{display:flex;align-items:center;gap:9px}
.library-mark{display:block;flex:none;width:43px;height:auto}
.library-mark-sparks{display:none}
@media(min-width:601px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 :root:not(.low-performance) .library-mark-sparks{display:block}
 .library-mark-sparks circle{animation:library-mark-spark 3.8s linear infinite;animation-delay:var(--spark-delay)}
}
@keyframes library-mark-spark{0%,100%{opacity:0;transform:translate(-3px,-6px)}15%{opacity:.95}80%{opacity:.8}95%{opacity:0;transform:translate(3px,6px)}}
@media(max-width:600px){
 .top .library-brand{gap:6px}
 .library-mark{width:35px}
}

@media(max-width:600px), (hover:none) and (pointer:coarse){
 .entry-actions .save > span{display:none}
}

@media(pointer:coarse){html,dialog{touch-action:pan-x pan-y}}

@media(max-width:600px) and (prefers-reduced-transparency:reduce){.top .nav{background:var(--panel);backdrop-filter:none}}

/* Dashboard section headers, pending progress and mobile keyboard. */
.top .brand-home{display:grid;place-items:center;min-width:0;padding:0;background:transparent;border:0;color:inherit;flex:none}
.top .brand-home svg{display:block}
#app .dashboard-legend-label,#app .dashboard-statistics .heading h2,.mobile-stats .heading h2{
 display:inline-flex;align-items:center;gap:6px;padding:3px 7px;border:1px solid var(--line);
 border-radius:8px;background:transparent;font:750 12px/1.3 system-ui,sans-serif;letter-spacing:normal
}
#app .dashboard-statistics .heading,.mobile-stats .heading{padding:6px 9px;border-bottom:0}
#app .dashboard-legend-label:has(.dashboard-fold[aria-expanded=false]){background:var(--gold);color:var(--bg)}
.pending-meter{background:repeating-linear-gradient(135deg,#80602080 0 6px,#33260f66 6px 12px)!important}
#app .library-progress.is-pending>.pending-meter,#library-results .library-progress.is-pending>.pending-meter{display:block;min-width:20px}
#app .recent .library-progress.is-pending,#library-results .library-row-main:has(>.is-pending){min-width:0}
#library-results .library-row-main:has(>.is-pending):not(:has(>.bulk-check)){display:grid}
#library-results .library-row-main>.is-pending{display:grid;width:100%;margin:0}
@media(pointer:coarse){
 html,body,button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
 :is(.dashboard-statistics,.mobile-stats) :is(button,[data-stat]):focus{outline:none!important;box-shadow:none!important}
 dialog[open].keyboard-visible{
  position:fixed;inset:var(--keyboard-top) 0 auto;margin:8px auto;
  max-height:calc(var(--keyboard-height) - 16px);max-block-size:calc(var(--keyboard-height) - 16px);
  overflow-y:auto;overscroll-behavior:contain
 }
}
@media(max-width:600px),(hover:none) and (pointer:coarse){
 .entry-popup .editor-heading-art{
  inset:0;width:auto;overflow:visible;border-radius:inherit;mask-image:none;
  background:radial-gradient(ellipse 215px 115px at 0 0,color-mix(in srgb,var(--heading-accent,var(--gold)) 24%,transparent),transparent 100%)
 }
 .entry-popup .editor-heading-art span{animation:none;opacity:.15;line-height:0}
 .entry-popup .editor-heading-art span:nth-child(1){left:14px;top:12px;transform:rotate(-16deg) scale(.78)}
 .entry-popup .editor-heading-art span:nth-child(2){left:52px;top:32px;transform:rotate(12deg) scale(.66)}
 .entry-popup .editor-heading-art span:nth-child(3){left:98px;top:9px;transform:rotate(-9deg) scale(.84)}
 .entry-popup .editor-heading-art span:nth-child(n+4){display:none}
 .entry-popup .editor-heading-art .ico{filter:none}
 .entry-popup .editor-icons button[data-editor-status]{
  border:0;background:transparent;box-shadow:none;border-radius:0
 }
 .entry-popup .editor-icons button[data-editor-status]:focus{outline:none}
}
@media(max-width:600px){
 #review-changes{width:min(380px,calc(100% - 24px));max-height:72dvh;padding:12px;overflow:hidden}
 #review-changes h3{font-size:15px;margin:0 0 7px}
 #review-changes .review-comparison{max-height:calc(72dvh - 118px);overflow:auto;overscroll-behavior:contain}
 #review-changes .review-row{gap:3px 6px;padding:5px 0;font-size:12px;line-height:1.3}
 #review-changes .review-row>div{padding:4px 5px}
 #review-changes .review-row small{margin:0 0 1px}
 #review-changes .section-toolbar{position:static;flex-wrap:wrap;gap:5px;padding-top:8px}
 #review-changes .section-toolbar button{min-height:40px;padding:4px 6px;font-size:12px}
}

/* Keep the mobile title details independent of the editor's scroll position. */
dialog.editor-details-sheet[open]{
 position:fixed;inset:0;margin:auto;width:min(440px,calc(100% - 24px));
 max-height:min(650px,calc(100dvh - 32px));display:flex;flex-direction:column;
 overflow:hidden;
}
dialog.editor-details-sheet::backdrop{background:#0009}
dialog.editor-details-sheet[open].keyboard-visible{
 inset:var(--keyboard-top) 0 auto;margin:8px auto;
 max-height:calc(var(--keyboard-height) - 16px);
 max-block-size:calc(var(--keyboard-height) - 16px);overflow:hidden;
}
.editor-details-sheet .context-heading{position:static;flex:none}
.editor-details-popover .context-heading h3:focus{outline:none}
.editor-details-sheet #editor-entry-details{
 flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;
 padding:10px 12px 16px;scroll-padding-block:8px;
}
.editor-details-sheet #media-detail-fields{grid-template-columns:minmax(0,1fr)}

@media(max-width:600px) and (prefers-reduced-transparency:no-preference){
 @supports ((backdrop-filter:blur(12px)) or (-webkit-backdrop-filter:blur(12px))){
  #app>.top{background:color-mix(in srgb,var(--panel) 50%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
 }
}

.featured-covers{margin-block:12px;padding:12px}
.featured-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(4px,1vw,12px)}
.featured-track button{min-width:0;padding:0;overflow:hidden;text-align:start}
.featured-track img{display:block;width:100%;height:clamp(110px,16vw,220px);object-fit:contain;background:var(--panel)}
.featured-track span{display:block;text-align:center;padding:6px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cover-viewer{width:min(94vw,520px);max-height:calc(100dvh - 24px);padding:8px}
.cover-viewer>button{display:grid;margin:0 0 4px auto}
.cover-viewer img{display:block;margin:auto;max-width:100%;max-height:calc(100dvh - 92px);object-fit:contain}
@media(max-width:600px){
 .featured-covers{display:none}
 .entry-popup button.inline-cover{padding:0;min-width:0;background:transparent;cursor:zoom-in}
}

@media(max-width:600px){
 :root[data-update-available] .top .header-account{max-width:none;flex:none}
 :root[data-update-available] .top [data-install-update]{display:inline-grid;place-items:center}
}

.dashboard-framed{min-inline-size:0;border:1px solid var(--line);border-radius:10px}
.dashboard-framed legend{margin-inline-start:8px;padding:0 4px;background:transparent;color:var(--muted);font-size:12px;font-weight:700}
.featured-track button{border:0;background:transparent;border-radius:0;box-shadow:none}
.featured-track img{background:transparent}
.featured-track button:is(:hover,:focus-visible){color:var(--gold)}
.entry-cover-field{display:grid;gap:5px;min-width:0}
.entry-cover-field input{min-width:0;max-width:100%}
.review-cover img{display:block;max-width:100%;height:95px;object-fit:contain}
@media(max-width:600px){
 .entry-popup .editor-heading-art{
  inset:-12px -12px 0; border-start-start-radius:inherit;
 }
}

:is(.dashboard-statistics,.mobile-stats) [data-stat]:hover:not(:focus-visible){outline:none;box-shadow:none}
@media(min-width:601px){
 .editor-details-popover{width:min(540px,calc(100vw - 16px));scrollbar-width:thin}
 .editor-details-popover #editor-entry-details[open]{padding:4px 16px 16px}
 .editor-details-popover .context-heading{padding-inline:16px}
 .editor-details-popover :is(.editor-detail-grid,#media-detail-fields){gap:10px 14px;align-items:start}
 .editor-details-popover :is(.editor-detail-grid,#media-detail-fields) label{font-size:13px;line-height:1.35}
 .editor-details-popover :is(.editor-detail-grid,#media-detail-fields) input:not([type=hidden]){font-size:14px;min-height:36px}
 .editor-details-popover .entry-cover-field{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 14px;align-items:start}
}

@media(max-width:600px){
 dialog:is(.entry-popup,.entry-context,.cover-viewer)[open]{
  --editor-gutter-top:max(8px,calc(env(safe-area-inset-top) - var(--editor-view-top,0px)));
  --editor-gutter-bottom:max(8px,env(safe-area-inset-bottom));
  --editor-gutter-left:max(8px,env(safe-area-inset-left));
  --editor-gutter-right:max(8px,env(safe-area-inset-right));
  position:fixed;
  inset:calc(var(--editor-view-top,0px) + var(--editor-gutter-top)) auto auto calc(var(--editor-view-left,0px) + var(--editor-gutter-left));
  margin:0;
  inline-size:calc(var(--editor-view-width,100vw) - var(--editor-gutter-left) - var(--editor-gutter-right));
  max-inline-size:none;
  max-block-size:calc(var(--editor-view-height,100dvh) - var(--editor-gutter-top) - var(--editor-gutter-bottom));
  overflow-x:hidden;
  overscroll-behavior:contain;
 }
 dialog:is(.entry-popup,.entry-context,.cover-viewer)[open].keyboard-visible{
  --editor-gutter-bottom:8px;
  max-height:calc(var(--editor-view-height,100dvh) - var(--editor-gutter-top) - var(--editor-gutter-bottom));
 }
 dialog.entry-popup[open]{overflow-y:auto;padding:10px 10px 16px;scroll-padding-block:8px 20px}
 dialog.entry-popup[open] .editor-heading{top:-10px;padding-block-start:0}
 dialog.entry-popup[open] :is(#panel,.editor-layout,.editor,.editor-heading,.entry-actions){min-inline-size:0;max-inline-size:100%}
 dialog.entry-popup[open] :is(.editor-date-input,.editor-search-bar,.editor-parts,.genre-actions){min-inline-size:0;max-inline-size:100%}
 dialog.entry-popup[open] .editor-heading-art{inset-inline:-10px}
 dialog.editor-details-sheet[open]{overflow:hidden}
}



@media(min-width:601px){
 #app>.top{
  position:sticky;top:8px;z-index:7;padding:8px 12px;
  border:1px solid var(--line);border-radius:12px;background:var(--panel);
 }
}
@media(min-width:601px) and (prefers-reduced-transparency:no-preference){
 @supports ((backdrop-filter:blur(8px)) or (-webkit-backdrop-filter:blur(8px))){
  #app>.top{background:color-mix(in srgb,var(--panel) 50%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
 }
}

.cover-source{min-width:0}
.cover-source>div{display:flex;justify-content:space-between;align-items:center;gap:4px;min-height:30px}
.cover-source .icon-button{min-width:30px;min-height:30px;padding:3px;border:0;background:transparent}
.cover-source .ico{width:14px;height:14px}
.cover-source input{width:100%}
#cover-choice:not([hidden]){display:flex;gap:6px;grid-column:1/-1}
#cover-choice [aria-pressed=true]{border-color:var(--gold);color:var(--gold)}
#cover-feedback{grid-column:1/-1}

@media(max-width:600px){
 #app>.top{
  top:max(4px,env(safe-area-inset-top));padding:5px 8px;
  border:1px solid var(--line);border-radius:10px;background:var(--panel);
 }
}
@supports ((backdrop-filter:blur(8px)) or (-webkit-backdrop-filter:blur(8px))){
 #app>.top{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
 #app>.top::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;
  background:color-mix(in srgb,var(--panel) 50%,transparent);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
 }
}
@media(prefers-reduced-transparency:reduce){
 #app>.top::before{background:var(--panel);-webkit-backdrop-filter:none;backdrop-filter:none}
}

@media(min-width:601px){
 dialog.entry-popup[open]{padding:18px}
 .entry-popup .editor-heading-art{
  inset:-18px auto -12px -18px;
  border-start-start-radius:11px;
  background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--heading-accent,var(--gold)) 30%,transparent),transparent 74%);
 }
 .entry-popup .editor-heading h2{flex-direction:column;align-items:flex-start;justify-content:center;gap:3px}
 .entry-popup .editor-heading-title{max-width:100%}
 .entry-popup .editor-heading-status{align-self:flex-start;margin:0;line-height:1.15}
}
@media(max-width:600px){
 dialog.entry-popup[open] .editor-heading-art{inset:-10px auto 0 -10px;width:calc(100% + 20px);border-start-start-radius:11px}
}

.rating-line-stroke{fill:none;stroke:var(--gold);stroke-width:2;stroke-linejoin:round;pointer-events:none}
@media(min-width:601px){
 .editorial-recent :is(th,td)[data-cell=actions]{width:75px;padding-inline:4px}
 .recent-actions{display:flex;align-items:center;justify-content:flex-end;gap:3px}
 .recent-actions button{display:grid;place-items:center;min-width:28px;min-height:28px;padding:3px;border:0;background:transparent}
 .recent-actions .ico{width:16px;height:16px}
}

@media(max-width:600px){
 dialog.entry-popup[open]{
  background:radial-gradient(ellipse 230px 122px at top left,
   color-mix(in srgb,var(--editor-corner-accent,var(--gold)) 24%,transparent),transparent) padding-box,var(--panel);
 }
 dialog.entry-popup[open] .editor-heading-art{background:none;border-radius:0}
 dialog.entry-popup[open] .editor-heading{
  z-index:12;
  background:radial-gradient(ellipse 230px 122px at top left,
   color-mix(in srgb,var(--editor-corner-accent,var(--gold)) 24%,transparent),transparent),var(--panel);
 }
 dialog.entry-popup[open].keyboard-visible{padding-block-end:24px;scroll-padding-block-end:24px}
 dialog.entry-popup[open] button.inline-cover:not([hidden]){box-shadow:none;border:0}
}

@media(min-width:601px){
 .entry-popup .editor-heading-art{
  mask-image:linear-gradient(to right,#000 52%,transparent),linear-gradient(to bottom,#000 56%,transparent);
  mask-composite:intersect;
 }
}

@media(min-width:601px){
 #app>.top{background:rgba(48,39,25,.39);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
 #app>.top::before{content:none}
}
@media(min-width:601px) and (prefers-reduced-transparency:reduce){
 #app>.top{-webkit-backdrop-filter:none;backdrop-filter:none}
}

@media(max-width:600px){.top .dashboard-clock{display:none}}

.header-account .header-profile-button:is(:hover,:active,:focus){border-color:transparent;background:transparent;box-shadow:none;outline:0}
.header-account .header-profile-button:focus-visible :is(img,svg){outline:2px solid var(--gold);outline-offset:2px;border-radius:50%}

.bar-preference{display:flex;justify-content:space-between;gap:8px;margin-top:12px}
#bar-transparency{width:100%;accent-color:var(--gold)}
@media(min-width:601px){#app>.top{background:color-mix(in srgb,var(--panel) var(--bar-opacity,39%),transparent)}}
@media(max-width:600px){
 #app>.top::before,.top .nav{background:color-mix(in srgb,var(--panel) var(--bar-opacity,39%),transparent)}
}


#bar-blur{width:100%;accent-color:var(--gold)}
@media(min-width:601px){#app>.top{-webkit-backdrop-filter:blur(var(--bar-blur,10px));backdrop-filter:blur(var(--bar-blur,10px))}}
@media(max-width:600px){
 #app>.top::before,.top .nav{-webkit-backdrop-filter:blur(var(--bar-blur,10px));backdrop-filter:blur(var(--bar-blur,10px))}
}

@media(max-width:600px){
 .top .nav .icon-button{grid-template-rows:26px auto;gap:0}
 .top .nav .nav-label{max-height:14px;overflow:hidden;opacity:1}
 .dock-labels-hidden .top .nav .nav-label{max-height:0;opacity:0}
}
@media(max-width:600px) and (prefers-reduced-motion:no-preference){
 html:not(.reduce-user-motion) .top .nav .nav-label{transition:max-height 180ms ease,opacity 140ms ease!important}
}

@media(max-width:600px){
 .settings-layout>.settings-nav{flex-wrap:nowrap;justify-content:center;gap:4px;overflow:visible}
 .settings-nav button{justify-content:center;gap:0;min-width:44px;padding-inline:4px;font-size:0}
 .settings-nav button .ico{width:18px;height:18px}
}

@media(max-width:600px){
 .top .nav{
  inline-size:calc(100% - max(10px,env(safe-area-inset-left)) - max(10px,env(safe-area-inset-right)));
  margin-inline:auto;padding-block:3px;
 }
 .top .nav{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:column}
 .top .nav [data-workspace]{display:none}
 .top .nav .icon-button{min-height:47px}
 .dock-labels-hidden .top .nav{inline-size:min(252px,calc(100% - 20px));padding-block:1px}
 .dock-labels-hidden .top .nav .icon-button{min-height:44px;grid-template-rows:26px 0;gap:0;padding-block:1px}
 .dock-labels-hidden .top .nav .icon-button .ico{width:21px;height:21px}
}
@media(max-width:600px) and (prefers-reduced-motion:no-preference){
 html:not(.reduce-user-motion) .top .nav{transition:inline-size 180ms ease,padding-block 180ms ease!important}
 html:not(.reduce-user-motion) .top .nav .icon-button{transition:min-height 180ms ease!important}
}

.foot[hidden]{display:none}
:is(.dashboard-statistics,.mobile-stats) .charts>fieldset{min-inline-size:0}
@media(max-width:600px){
 .mobile-stats .charts{grid-template-columns:minmax(0,1fr)}
 .mobile-stats .chart{height:auto;aspect-ratio:328 / 105;padding:0}
}

.extra-charts .rating-line{width:100%;padding:0}
.rating-line .axis,.rating-line-stroke{vector-effect:non-scaling-stroke}
.kind-stat-row{grid-template-columns:minmax(100px,1fr) minmax(0,3fr) 3ch}
.kind-stat-row span:last-child{min-width:0}
.kind-stat-name{display:flex;align-items:center;gap:6px}
.kind-stat-name .ico{color:var(--media-accent,var(--gold));flex:none}
.kind-stat-track,.kind-stat-fill{display:block;height:14px;border-radius:4px}
.kind-stat-track{background:var(--track)}
.kind-stat-fill{position:relative;overflow:hidden;background:color-mix(in srgb,var(--media-accent,var(--gold)) 72%,var(--bg))}
.kind-stat-fill>span{display:none;position:absolute;left:var(--x);top:100%;color:white;line-height:0}
.kind-stat-fill .ico{width:13px;height:13px;stroke-width:2.3;filter:none}
@media(min-width:601px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 :root:not(.low-performance) .kind-stat-row:hover .kind-stat-fill>span{display:block;animation:kind-stat-rise var(--duration) linear var(--delay) infinite}
}
@keyframes kind-stat-rise{
 0%{opacity:0;transform:translate(0,0) rotate(0)}
 40%{opacity:1}
 100%{opacity:0;transform:translate(var(--drift),-25px) rotate(var(--tilt))}
}
.dashboard-summary-strip{display:flex;align-items:flex-start;overflow-x:auto;padding:8px 12px 12px;gap:12px}
.dashboard-summary-strip>dl{display:contents}
.dashboard-summary-strip dl>div{flex:1 0 110px;min-width:0}
.dashboard-summary-strip dt{min-height:2.6em}

.rating-chart-card .rating-line{width:100%;padding:0}
@media(min-width:601px){.activity-chart-card .activity-map{grid-template-rows:repeat(7,minmax(12px,1fr));min-height:150px}}
#rating-fields [role=alert][hidden]{display:none}


#rating-fields input:focus::placeholder{color:transparent}

.activity-chart-card [data-activity-type]{max-width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:5px;padding:3px 6px}

.kind-stat-fill .ico{color:#fff;stroke:#fff;filter:none}
@media(hover:hover) and (pointer:fine){
 .kind-stat-row:hover .kind-stat-name .ico{color:#fff;stroke:#fff;filter:none}
}

@media(max-width:600px){
 #app .editorial-recent .dashboard-fold-content,
 #app .editorial-recent .dashboard-fold-content>div{border-end-start-radius:inherit;border-end-end-radius:inherit}
 :root[data-density=minimal] #app .editorial-recent tr.has-cover{
  background-image:linear-gradient(90deg,var(--panel) 18%,color-mix(in srgb,var(--panel) 85%,transparent) 49%,color-mix(in srgb,var(--panel) 64%,transparent)),var(--recent-cover);
  background-size:100% 100%,cover;
  background-position:center,right center;
 }
 :root[data-density=minimal] #app .editorial-recent td[data-cell=title] .library-progress{
  display:grid;grid-template-columns:minmax(0,1fr) 4ch;gap:8px;
  flex:0 0 clamp(58px,19vw,86px);min-width:0;margin:0;align-items:center;
 }
 :root[data-density=minimal] #app .editorial-recent .library-progress>.meter{
  display:block;width:100%;min-width:0;height:4px;margin:0;
 }
 :root[data-density=minimal] #app .editorial-recent .library-progress-value{min-width:0;white-space:nowrap}
}

@media(max-width:600px){
 #app fieldset.card:has(>legend .dashboard-fold[aria-expanded=false]){
  border-inline-color:transparent;border-bottom-color:transparent;
  border-radius:0;background:transparent;box-shadow:none;
 }

}

@media(max-width:600px){
 #app .editorial-recent{margin-block:8px}
 #app .editorial-recent:has(>legend .dashboard-fold[aria-expanded=true])>.dashboard-fold-content{
  margin-block-start:-5px;
 }
 #app .editorial-recent:has(>legend .dashboard-fold[aria-expanded=true]):has(tbody>tr.has-cover:first-child)>.dashboard-fold-content{
  margin-block-start:-13px;
  border-start-start-radius:inherit;border-start-end-radius:inherit;
 }
 #app .editorial-recent tbody>tr.has-cover:first-child{padding-block-start:12px}
 #app .editorial-recent>legend{position:relative;z-index:1}
}

@media(max-width:600px){
 :root[data-density=minimal] #app .editorial-recent tbody>tr.has-cover:first-child{
  background-image:
   linear-gradient(to bottom,var(--panel),transparent),
   radial-gradient(ellipse at 50% 100%,transparent 52%,var(--panel) 100%),
   linear-gradient(90deg,var(--panel) 18%,color-mix(in srgb,var(--panel) 85%,transparent) 49%,color-mix(in srgb,var(--panel) 64%,transparent)),
   var(--recent-cover);
  background-size:100% 12px,100% 12px,100% 100%,cover;
  background-position:center top,center top,center,right center;
 }
}

:is(.title,[data-candidate]) .duplicate-mark{display:inline-flex;align-items:center;gap:2px;flex:none;color:var(--gold);font-size:10px;line-height:1}
:is(.title,[data-candidate]) .duplicate-mark .ico{width:14px;height:14px}
[data-candidate] .duplicate-mark{margin-inline-start:auto;align-self:center;justify-self:end}

.entry-scroll-body{display:contents}
@media(max-width:600px){
 dialog.entry-popup[open],dialog.entry-popup[open].keyboard-visible{
  display:flex;flex-direction:column;padding:0;overflow:hidden;background:var(--panel);
 }
 dialog.entry-popup[open]>#panel{
  display:flex;flex-direction:column;min-block-size:0;overflow:hidden;
 }
 dialog.entry-popup[open] .editor-heading{
  position:relative;top:auto;flex:none;margin:0;padding:8px 10px 5px;
  border-radius:inherit;overflow:hidden;
  background:radial-gradient(ellipse 260px 130px at 0 0,
   color-mix(in srgb,var(--editor-corner-accent,var(--gold)) 26%,transparent),transparent),var(--panel);
 }
 dialog.entry-popup[open] .editor-heading-art{
  inset:0;width:100%;border-radius:inherit;overflow:hidden;
 }
 dialog.entry-popup[open] .entry-scroll-body{
  display:block;flex:1 1 auto;min-block-size:0;overflow:auto;
  overscroll-behavior:contain;overflow-anchor:none;
  padding:5px 10px 16px;scroll-padding-block:8px 20px;
 }
 dialog.entry-popup[open].keyboard-visible .entry-scroll-body{padding-block-end:24px}
}

.recent-progress-rounded{display:none}
@media(max-width:600px){
 .editorial-recent .recent-progress-full{display:none}
 .editorial-recent .recent-progress-rounded{display:inline}
}

button.dashboard-clock,button.archive-clock{padding:0;border:0;background:transparent;cursor:pointer;text-align:start}



.farplane-manual figure{margin:12px 0}
.farplane-manual figure img{display:block;width:100%;height:auto;max-width:720px;border-radius:8px}
.farplane-manual figcaption{margin-top:5px;font-size:.85em;opacity:.8}
.farplane-manual details{border-block-start:1px solid color-mix(in srgb,currentColor 20%,transparent)}
.farplane-manual summary{padding:9px 0;cursor:pointer;font-weight:650}
.farplane-manual details>p{margin:0 0 12px;line-height:1.55}

.top [data-install-update]:disabled{opacity:.55;cursor:default}

main .top .dashboard-clock,.top .dashboard-clock{min-height:0;align-content:center;justify-items:start;gap:3px;font:400 12px/1.2 system-ui,sans-serif;font-variant-numeric:tabular-nums}

/* Activation keeps the selected state without browser focus frames. */
*:focus, *:focus-visible, *:focus-within {
 outline: none !important;
}
*:focus, *:focus-visible {
 box-shadow: none !important;
}
* { -webkit-tap-highlight-color: transparent; }
button, button *, a, a *, summary {
 -webkit-user-select: none;
 user-select: none;
}


/* Recent tables share one edge-to-edge surface and one-line collapsed state. */
#app fieldset.editorial-recent{
 position:relative;
 min-inline-size:0;
 margin:22px 0;
 padding:0;
 border-radius:10px;
}
#app .editorial-recent>legend{
 position:static;
 inset:auto;
 margin-inline-start:8px;
 padding-inline:4px;
 z-index:1;
}
#app .editorial-recent .dashboard-legend-label{
 background:var(--panel);
}
#app .editorial-recent .dashboard-fold{
 display:grid;
 place-items:center;
 width:24px;
 min-height:22px;
 padding:0;
 border:0;
 background:transparent;
}
#app .editorial-recent .dashboard-fold .ico{width:13px;height:13px}
#app .editorial-recent .dashboard-fold[aria-expanded=true] .ico{transform:rotate(180deg)}
#app .editorial-recent>.dashboard-fold-content{
 margin-block-start:0;
 border-radius:inherit;
}
#app .editorial-recent .dashboard-fold-content>div{
 border-radius:inherit;
}
#app .editorial-recent .dashboard-fold-content[inert]{grid-template-rows:0fr}
#app .editorial-recent:has(.dashboard-fold-content[inert]){
 min-height:1px;
 border-inline-color:transparent;
 border-bottom-color:transparent;
 border-radius:0;
 background:transparent;
}
#app .editorial-recent table{
 width:100%;
 max-width:none;
 margin:0;
 border-spacing:0;
}
#app .editorial-recent tbody>tr.has-cover:first-child{padding-block-start:4px}
@media(min-width:601px){
 #app .editorial-recent table{min-width:0;table-layout:fixed}
 #app .editorial-recent th:first-child{width:14%}
 #app .editorial-recent th:nth-child(2){width:calc(71% - 80px)}
 #app .editorial-recent th[data-cell=rating],
 #app .editorial-recent td[data-cell=rating]{width:15%;text-align:start}
 #app .editorial-recent th[data-cell=actions],
 #app .editorial-recent td[data-cell=actions]{width:80px;padding-inline:6px 10px;text-align:center}
 #app .editorial-recent th{height:32px;padding-block:9px 5px}
 #app .editorial-recent tbody tr:last-child td{border-bottom:0}
 #app .editorial-recent tr.has-cover{
  background-image:linear-gradient(90deg,var(--panel) 12%,color-mix(in srgb,var(--panel) 65%,transparent) 46%,color-mix(in srgb,var(--panel) 90%,transparent) 100%),var(--recent-cover);
  background-size:100% 100%,cover;
  background-position:center,right center;
 }
}
@media(prefers-reduced-motion:no-preference){
 #app .editorial-recent .dashboard-fold-content{transition:grid-template-rows 180ms ease-in-out}
}

#app fieldset.editorial-recent{overflow:visible}


@media(min-width:601px){
 #app .editorial-recent :is(th,td){width:auto!important}
 #app .editorial-recent .recent-date-col{width:14%}
 #app .editorial-recent .recent-rating-col{width:15%}
 #app .editorial-recent .recent-actions-col{width:80px}
}

#app .editorial-recent tbody tr:has(.title)::after{content:none}
@media(hover:hover) and (pointer:fine){#app .editorial-recent tbody tr:has(.title):hover{filter:brightness(1.08)}}



/* Recent records use the existing mobile frame and a headerless desktop table. */
#app .editorial-recent thead{display:none}
#app fieldset.editorial-recent:not(:has(.dashboard-fold-content[inert])){
 background:var(--panel);
}
#app .editorial-recent>.dashboard-fold-content,
#app .editorial-recent>.dashboard-fold-content>div{
 border-start-start-radius:0;
 border-start-end-radius:0;
}
@media(max-width:600px){
 #app fieldset.editorial-recent{margin-block:8px}
 #app fieldset.editorial-recent>legend{
  position:relative;
  inset:auto;
  margin-inline-start:8px;
 }
 #app .editorial-recent .dashboard-legend-label{background:transparent}
 #app .editorial-recent .dashboard-legend-label:has(.dashboard-fold[aria-expanded=false]){
  background:var(--gold);
 }
 #app fieldset.editorial-recent>.dashboard-fold-content{
  margin-block-start:-5px!important;
 }
 #app fieldset.editorial-recent:has(tbody>tr.has-cover:first-child)>.dashboard-fold-content:not([inert]){
  margin-block-start:-8px!important;
 }
 #app .editorial-recent tbody>tr.has-cover:first-child{padding-block-start:12px}
 :root[data-density=minimal] #app .editorial-recent tbody>tr.has-cover:first-child{
  background-image:
   linear-gradient(to bottom,var(--panel),transparent),
   radial-gradient(ellipse at 50% 100%,transparent 52%,var(--panel) 100%),
   linear-gradient(90deg,var(--panel) 18%,color-mix(in srgb,var(--panel) 85%,transparent) 49%,color-mix(in srgb,var(--panel) 64%,transparent)),
   var(--recent-cover);
  background-size:100% 12px,100% 12px,100% 100%,cover;
  background-position:center top,center top,center,right center;
 }
}

/* Carry the first desktop cover into the space below the section legend. */
@media(min-width:601px){
 #app fieldset.editorial-recent:has(tbody>tr.has-cover:first-child)>.dashboard-fold-content:not([inert]){
  margin-block-start:-8px;
 }
 #app .editorial-recent tbody>tr.has-cover:first-child td{padding-block-start:12px}
 #app .editorial-recent tbody>tr.has-cover:first-child{
  background-image:
   linear-gradient(to bottom,var(--panel),transparent),
   radial-gradient(ellipse at 50% 100%,transparent 52%,var(--panel) 100%),
   linear-gradient(90deg,var(--panel) 12%,color-mix(in srgb,var(--panel) 65%,transparent) 46%,color-mix(in srgb,var(--panel) 90%,transparent) 100%),
   var(--recent-cover);
  background-size:100% 12px,100% 12px,100% 100%,cover;
  background-position:center top,center top,center,right center;
 }
}

/* Blur only the cover surface, keeping row content and controls crisp. */
#app .editorial-recent .recent-row-backdrop{display:none}
#app .editorial-recent tr.has-cover{
 isolation:isolate;
 background-image:none!important;
}
#app .editorial-recent tr.has-cover .recent-row-backdrop{
 display:block;
 position:absolute;
 inset:0;
 z-index:0;
 pointer-events:none;
 background-image:linear-gradient(90deg,var(--panel) 12%,color-mix(in srgb,var(--panel) 65%,transparent) 46%,color-mix(in srgb,var(--panel) 90%,transparent)),var(--recent-cover);
 background-size:100% 100%,cover;
 background-position:center,right center;
 background-repeat:no-repeat;
 clip-path:inset(0);
}
#app .editorial-recent tr.has-cover:first-child .recent-row-backdrop{
 background-image:
  linear-gradient(to bottom,var(--panel),transparent),
  radial-gradient(ellipse at 50% 100%,transparent 52%,var(--panel) 100%),
  linear-gradient(90deg,var(--panel) 12%,color-mix(in srgb,var(--panel) 65%,transparent) 46%,color-mix(in srgb,var(--panel) 90%,transparent)),
  var(--recent-cover);
 background-size:100% 12px,100% 12px,100% 100%,cover;
 background-position:center top,center top,center,right center;
}
@media(hover:hover) and (pointer:fine){
 #app .editorial-recent tr.has-cover:hover .recent-row-backdrop{filter:blur(3px)}
}
@media(prefers-reduced-motion:no-preference){
 #app .editorial-recent .recent-row-backdrop{transition:filter 160ms ease}
}
@media(max-width:600px),(hover:none) and (pointer:coarse){
 #app .editorial-recent tr.has-cover .recent-row-backdrop{filter:blur(1px)}
}


/* Use independent row boxes so cover compositing cannot bleed between table rows. */
#app .editorial-recent tbody tr:has(.title){
 position:relative;
 isolation:isolate;
 overflow:hidden;
}
#app .editorial-recent td[data-cell=added]{position:static}
#app .editorial-recent td[data-cell=added] time{
 position:relative;
 z-index:1;
}
#app .editorial-recent td[data-cell=title],
#app .editorial-recent td[data-cell=rating],
#app .editorial-recent td[data-cell=actions]{
 position:relative;
 z-index:1;
}
@media(min-width:601px){
 #app .editorial-recent table,
 #app .editorial-recent tbody{display:block}
 #app .editorial-recent colgroup{display:none}
 #app .editorial-recent tbody tr:has(.title){
  display:grid;
  grid-template-columns:14% minmax(0,1fr) 15% 80px;
  align-items:center;
  min-height:40px;
  border-bottom:1px solid var(--line);
 }
 #app .editorial-recent tbody tr:last-child{border-bottom:0}
 #app .editorial-recent tbody tr:has(.title)>td{
  display:block;
  min-width:0;
  border-bottom:0;
 }
 #app .editorial-recent tbody tr:has(.title)>td[data-cell=title]{display:block}
 #app .editorial-recent tbody>tr.has-cover:first-child td{padding-block:2px}
 #app .editorial-recent tbody>tr.has-cover:first-child{padding-block-start:10px}
}

/* Keep the legend's complete border above the extended first cover. */
#app .editorial-recent>legend{
 position:relative;
 inset:auto;
 z-index:2;
}

@media(min-width:601px){
 #app .editorial-recent .recent-actions-col{width:112px}
 #app .editorial-recent tbody tr:has(.title){grid-template-columns:14% minmax(0,1fr) 15% 112px}
 #app .editorial-recent td[data-cell=actions]{padding-inline:3px 8px}
 #app .recent-actions .fp-icon-action{width:30px;min-width:30px}
}
#quick-edit .fp-field-row{margin-top:14px}
#quick-edit .fp-quick-discard{border-top:1px solid var(--line);margin-top:14px;padding-top:8px}
.fp-synopsis>summary{font-size:12px;font-weight:650;color:var(--muted);cursor:pointer;padding-block:8px}
.fp-synopsis>label{margin-top:5px}
@media(max-width:600px){
 .library-row-side .fp-icon-action{min-width:36px;width:36px}
 .fp-synopsis>summary{min-height:44px;display:flex;align-items:center}
}



.fp-workspace-row>span>small{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.4}
.fp-workspace-body>details{padding:8px 0;border-bottom:1px solid var(--line)}
.fp-workspace-body>details>.fp-field{margin-top:10px}

.fp-tool-option{display:flex;align-items:center;gap:10px;text-align:start}.fp-tool-option>svg{width:18px;height:18px;flex:none;color:var(--gold)}
.settings-profile>div{min-width:0}.settings-profile .profile-logout{margin-inline-start:auto;flex:none;background:transparent;border-color:transparent;width:36px;height:36px}.settings-profile .profile-logout:hover{color:var(--bright)}
@media(pointer:coarse){.settings-profile .profile-logout{width:44px;height:44px}}
/* Unified integrated sections. Layout belongs to the body, never to its tab. */
#app fieldset.card.fp-section,.mobile-stats fieldset.card.fp-section{padding:0!important;margin:14px 0!important;border:0!important;background:transparent!important;border-radius:0;min-width:0;min-height:0;overflow:visible;display:block}
#app fieldset.card.fp-section>.fp-section-viewport>.fp-section-body,.mobile-stats fieldset.card.fp-section>.fp-section-viewport>.fp-section-body{padding:12px;min-height:0}
#app fieldset.card.fp-section[data-collapsed=true]>.fp-section-viewport>.fp-section-body,.mobile-stats fieldset.card.fp-section[data-collapsed=true]>.fp-section-viewport>.fp-section-body{padding:0}
#app fieldset.card.fp-section .fp-section-tab,.mobile-stats fieldset.card.fp-section .fp-section-tab{font-size:12px;line-height:1.25;letter-spacing:0;text-transform:none}
#app .editorial-grid{gap:16px;align-items:start}
#app .editorial-grid .fp-section{height:auto}
#app .fp-section .record{min-width:0;min-height:40px;padding:6px 0;gap:9px}
#app .fp-section .record:last-child{border-bottom:0}
#app .fp-section .record .title{min-width:0}
#app .fp-section .record .title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#app .fp-section .quick-progress-row{grid-template-columns:30px minmax(0,1fr) 32px}
#app .fp-section .editorial-thumb{width:27px;height:38px;margin:0}
#app .fp-section .editorial-entry{min-width:0}
#app .fp-section .editorial-entry>.progress{margin-top:4px}
#app .fp-section .quick-progress-row>.icon-button{width:32px;min-width:32px;height:36px;min-height:36px;padding:6px;border:0;background:transparent}
#app .featured-covers.fp-section .featured-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;overflow:visible}
#app .featured-covers.fp-section .featured-track button{min-width:0;width:100%;padding:0;border:0;background:transparent}
#app .featured-covers.fp-section img{height:144px;width:100%;object-fit:contain}
#app .featured-covers.fp-section span{font-size:11px;text-align:center;display:block;margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#app #dashboard-history{margin:18px 0;--fp-section-bg:var(--panel)}
#app #dashboard-history .fp-section-body{padding:0}
#app #dashboard-history .fp-recent-panel{padding:0;margin:0;border:0;background:transparent;min-width:0;overflow:hidden}
#app #dashboard-history .fp-recent-panel[hidden]{display:none!important}
#app #dashboard-history table,#app #dashboard-history tbody{display:block;width:100%;min-width:0;border:0;padding:0;margin:0;overflow:visible}
#app #dashboard-history tbody tr:has(.title){display:grid;grid-template-columns:100px minmax(0,1fr) 130px 106px;align-items:center;min-height:40px;padding:0!important;margin:0;border-bottom:1px solid color-mix(in srgb,var(--gold) 12%,transparent);background-color:transparent;overflow:hidden;cursor:pointer}
#app #dashboard-history tbody tr:last-child{border-bottom:0}
#app #dashboard-history tbody tr:has(.title)>td{display:block;min-width:0;max-width:100%;padding:5px 10px!important;border:0;line-height:1.25;vertical-align:middle}
#app #dashboard-history td[data-cell=added]{font-size:11px}
#app #dashboard-history td[data-cell=title]{padding-left:0!important}
#app #dashboard-history .title{font-size:12px;line-height:1.3;gap:8px;max-width:100%;min-width:0}
#app #dashboard-history .title>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#app #dashboard-history .library-progress{margin:3px 0 0 22px;min-height:10px;gap:8px;font-size:9px}
#app #dashboard-history .library-progress-value{min-width:75px;text-align:right}
#app #dashboard-history .library-progress-count{min-width:55px;text-align:right}
#app #dashboard-history .library-rating{display:flex;align-items:center;gap:5px;font-size:11px;white-space:nowrap}
#app #dashboard-history .library-rating em{font-size:10px;min-width:0;overflow:hidden;text-overflow:ellipsis}
#app #dashboard-history .recent-actions{display:flex;gap:4px;justify-content:flex-end}
#app #dashboard-history .recent-actions button{height:28px;min-height:28px;width:28px;min-width:28px;border:0;background:transparent;padding:5px}
#app #dashboard-history .recent-row-backdrop{background-image:linear-gradient(90deg,var(--panel) 10%,color-mix(in srgb,var(--panel) 40%,transparent) 48%,var(--panel) 95%),var(--recent-cover);opacity:.6;filter:none}
@media(hover:hover) and (pointer:fine){
 #app #dashboard-history tr:hover{background-color:color-mix(in srgb,var(--gold) 8%,transparent)}
 #app #dashboard-history tr:hover .recent-row-backdrop{filter:blur(2px);opacity:.7}
}
@media(max-width:600px){
 #app fieldset.card.fp-section{margin:10px 0!important}
 #app .editorial-grid{gap:0}
 #app fieldset.card.fp-section>.fp-section-viewport>.fp-section-body{padding:8px 10px}
 #app .fp-section .record{min-height:46px;padding:5px 0}
 #app .fp-section .record .title{font-size:13px}
 #app .fp-section .upcoming-date{font-size:10px}
 #app #dashboard-history tbody tr:has(.title){grid-template-columns:48px minmax(0,1fr);min-height:42px}
 #app #dashboard-history tbody tr:has(.title)>td{padding:5px 6px!important}
 #app #dashboard-history td[data-cell=rating]{display:none!important}
 #app #dashboard-history .title{font-size:12px;gap:5px}
 #app #dashboard-history .title svg{width:15px;height:15px}
 #app #dashboard-history .library-progress{margin:3px 0 0 20px;font-size:9px;gap:7px}
 #app #dashboard-history .library-progress-value{min-width:24px;font-size:10px}
 #app #dashboard-history .library-progress-count{display:none}
 #app #dashboard-history .meter{height:3px}
 #app #dashboard-history .recent-date-full{display:none}
 #app #dashboard-history .recent-date-short{display:inline;font-size:10px}
 #app #dashboard-history .recent-row-backdrop{filter:blur(.65px)}
 .mobile-stats .fp-section{min-width:0}
}
@media(max-width:600px){
 #app #dashboard-history tbody tr:has(.title){min-height:44px}
 #app #dashboard-history td[data-cell=title]{display:grid!important;grid-template-columns:minmax(0,1fr) 72px;align-items:center;gap:8px}
 #app #dashboard-history td[data-cell=title]>.title{display:flex!important;align-items:center;width:100%;max-width:100%;margin:0;min-width:0}
 #app #dashboard-history td[data-cell=title]>.title>span:first-of-type{flex:1;min-width:0}
 #app #dashboard-history td[data-cell=title]>.library-progress{display:grid!important;grid-template-columns:minmax(0,1fr) 30px;width:100%;min-width:0;flex:none;margin:0!important;gap:8px;align-items:center}
 #app #dashboard-history .library-progress .meter{width:100%;min-width:0;max-width:100%;margin:0;height:3px}
 #app #dashboard-history .library-progress-value{min-width:0;white-space:nowrap;font-size:10px}
}

/* Library actions share a row; preview belongs to the library title. */
.library-title-line{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.library-list-actions{display:flex;align-items:center;gap:6px;margin-inline-start:auto;flex:none}
.library-pane .library-meta{justify-content:flex-start;gap:12px}
.library-pane .library-meta>p{margin-inline-end:auto}
.library-list-actions>.icon-button,.library-title-line>.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;min-height:32px;padding:6px;flex:none}
.library-pane #library-filters{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:600px){
 .library-pane #library-filters{grid-template-columns:minmax(0,1fr) auto}
 .library-list-actions>.icon-button{width:44px;height:44px;min-width:44px;min-height:44px}
}

@media(max-width:600px){.library-title-line [data-action=library-preview]{display:none}}

/* Chart pairs share their full row height, including the activity filter. */
#app .dashboard-statistics :is(.charts,.extra-charts){align-items:stretch}
#app .dashboard-statistics .charts>.fp-section:not([data-collapsed=true]){display:flex!important;flex-direction:column;height:100%}
#app .dashboard-statistics .charts>.fp-section:not([data-collapsed=true])>.fp-section-viewport{flex:1;display:flex}
#app .dashboard-statistics .charts>.fp-section:not([data-collapsed=true])>.fp-section-viewport>.fp-section-body{flex:1;min-width:0;display:flex;flex-direction:column}
.activity-toolbar{display:flex;justify-content:flex-end;align-items:center;margin:0 0 8px;min-height:28px}
.activity-toolbar select{max-width:160px;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:4px 8px;font:inherit;font-size:12px}
.activity-chart-card .activity-map{flex:1}
#app #dashboard-history tr.has-cover:first-child .recent-row-backdrop{background-image:linear-gradient(90deg,var(--panel) 10%,color-mix(in srgb,var(--panel) 40%,transparent) 48%,var(--panel) 95%),var(--recent-cover);background-size:100% 100%,cover;background-position:center,right center}
#app #dashboard-history tbody>tr.has-cover:first-child{padding:0!important}
#app #dashboard-history tbody>tr.has-cover:first-child>td{padding:5px 10px!important}
.upcoming-record{position:relative;isolation:isolate;overflow:hidden;border-radius:7px}
.upcoming-record .upcoming-backdrop{position:absolute;inset:-6px;z-index:-1;pointer-events:none;background-image:linear-gradient(90deg,var(--panel) 10%,color-mix(in srgb,var(--panel) 50%,transparent) 60%,var(--panel)),var(--recent-cover);background-size:cover;background-position:center;filter:blur(3px);opacity:.6}
.editor-heading-aka{display:block;font:400 12px/1.4 system-ui;color:var(--muted);margin-top:3px;overflow-wrap:anywhere;max-height:2.8em;overflow:hidden}
.editor-heading-aka[hidden]{display:none}
@media(min-width:601px){
 .kpis{display:flex;align-items:stretch;gap:12px}
 .kpi-summary{display:flex;align-items:center;gap:18px;flex:0 1 40%;min-width:0;padding-inline-end:16px;border-inline-end:1px solid var(--line)}
 .kpi-summary>.kpi{flex:1;min-width:0;border:0!important;border-radius:0;background:transparent!important;padding:8px 2px}
 .kpi-status-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex:1;min-width:0;gap:8px}
 .kpi-status-filters>.kpi{min-width:0;width:100%}
}
@media(max-width:600px){
 .editor-heading-aka{display:none!important}
 #app #dashboard-history tbody>tr.has-cover:first-child>td{padding:5px 6px!important}
 .kpi-summary,.kpi-status-filters{display:contents}
}

/* The compact fold toolbar must not reveal KPI panels hidden by Minimalist view. */
:root[data-density=minimal] #app>.kpis{display:none}

/* A media icon spans the title and its progress subtitle. */
#app #dashboard-history tbody tr>td[data-cell=title]{display:flex!important;align-items:center;gap:8px;min-width:0}
#dashboard-history .recent-media-icon{display:grid;place-items:center;flex:0 0 18px;align-self:stretch}
#dashboard-history .recent-media-icon .ico{width:17px;height:17px}
#dashboard-history .recent-title-progress{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
#app #dashboard-history .recent-title-progress .title{margin:0;min-width:0}
#app #dashboard-history .recent-title-progress .library-progress{margin:0!important;width:100%;min-width:0}
#app .extra-charts .extra-stat-rows{flex:1;display:grid;grid-template-rows:repeat(7,minmax(24px,1fr));gap:4px;padding:6px 12px;align-content:stretch}
#app .extra-charts .kind-stat-row{align-self:stretch;align-items:center;margin:0;min-height:24px}
@media(max-width:600px){
 #app #dashboard-history .recent-title-progress .library-progress{display:flex!important;gap:8px;align-items:center}
 #app #dashboard-history .recent-title-progress .title{display:flex!important;width:100%}
}

#app #dashboard-history .recent-title-progress>.library-progress{flex:none!important;height:12px;min-height:12px}
#app #dashboard-history .recent-title-progress>.title{min-height:18px;height:18px;padding:0;justify-content:flex-start;text-align:left}
#app #dashboard-history .recent-title-progress>.title>span:first-child{flex:0 1 auto}


/* Keep the title immediately above its progress; row actions keep their own hit area. */
#app #dashboard-history .recent-title-progress{gap:0!important}
#app #dashboard-history .recent-title-progress>.title{height:16px;min-height:16px;line-height:16px}
#app #dashboard-history .recent-title-progress>.library-progress{height:10px;min-height:10px;line-height:10px;align-items:center}
@media(min-width:601px){
 #app #dashboard-history tbody tr:has(.title){min-height:36px}
 #app #dashboard-history tbody tr:has(.title)>td{padding-block:3px!important}
 #app #dashboard-history tbody>tr.has-cover:first-child>td{padding-block:3px!important}
}
.fp-session-dialog .fp-field{cursor:text}
.fp-session-dialog .fp-field input{pointer-events:auto;touch-action:manipulation;user-select:text;-webkit-user-select:text}

/* Month charts size to their graphic rather than leaving an empty lower half. */
#app .monthly-event-charts{align-items:start}
#app .monthly-event-charts>.monthly-chart-card:not([data-collapsed=true]){height:auto!important}
#app .monthly-event-charts>.monthly-chart-card>.fp-section-viewport{flex:none!important}
#app .monthly-event-charts>.monthly-chart-card>.fp-section-viewport>.fp-section-body{flex:none!important;padding:4px 10px 2px!important}
.monthly-event-charts .chart{height:auto;aspect-ratio:328/105;padding:0;width:100%;display:block}

@media(max-width:600px){.editor-heading .entry-actions{gap:3px!important}.editor-heading .entry-actions>button{min-width:27px;width:27px;padding:5px}.editor-heading .entry-actions .ico{width:17px;height:17px}}

@media(max-width:600px){.editor-heading .entry-actions{min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap!important;scrollbar-width:none;touch-action:pan-x}.editor-heading .entry-actions::-webkit-scrollbar{display:none}.editor-heading .entry-actions>button{flex:none}}

.monthly-chart-card:not([data-collapsed=true]) .fp-section-body>.chart{flex:1;min-height:105px;height:100%}
.monthly-event-charts .monthly-chart-card .fp-section-body>.chart{flex:none;height:auto;min-height:0}

/* All Library header actions share the close button's baseline. */
#popup:has(.library-pane)>.close,#popup:has(.library-pane)>form:first-child .close{position:absolute;top:16px;right:16px;width:34px;height:34px;min-width:34px;min-height:34px;padding:6px;float:none;margin:0;z-index:3}
.library-pane .entry-heading{position:static;min-height:66px;padding-right:0;margin-bottom:8px}
.library-pane .library-title-line{display:block;padding-right:210px;min-height:28px}
.library-heading-actions{position:absolute;top:16px;right:56px;display:flex;align-items:center;gap:5px;margin:0}
.library-heading-actions>button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;min-height:34px;padding:6px;flex:none;margin:0}
.library-heading-actions>button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
@media(max-width:600px){
 #popup:has(.library-pane)>form:first-child .close{top:54px;right:12px;width:40px;height:40px;min-width:40px;min-height:40px}
 .library-pane .entry-heading{min-height:94px}
 .library-pane .library-title-line{padding-right:0}
 .library-heading-actions{top:54px;right:58px;gap:5px}
 .library-heading-actions>button{width:40px;height:40px;min-width:40px;min-height:40px}
}

/* One spacing rhythm for every statistics row and its full-width drawers. */
:is(.dashboard-statistics,.mobile-stats){--stats-gap:14px;display:grid;gap:var(--stats-gap);min-width:0}
:is(.dashboard-statistics,.mobile-stats)>.charts{margin:0!important;gap:var(--stats-gap);min-width:0}
:is(.dashboard-statistics,.mobile-stats)>.dashboard-summary,
:is(.dashboard-statistics,.mobile-stats)>.charts>.fp-section{margin:0!important;width:100%;max-width:100%;min-inline-size:0;justify-self:stretch}
:is(.dashboard-statistics,.mobile-stats)>.charts>.fp-section>.fp-section-viewport{width:100%;min-width:0}

#app .dashboard-statistics fieldset.card.fp-section,.mobile-stats fieldset.card.fp-section{margin:0!important}

.stat-detail[popover]{inset:auto;margin:0;overflow:visible;color:var(--ink);background:var(--panel);border:1px solid var(--line)}

:is(.dashboard-statistics,.mobile-stats)>.charts>.fp-section>.fp-section-viewport>.fp-section-body{width:100%;min-width:0}

.provider-setting-row{display:flex;align-items:flex-end;gap:8px;min-width:0}
.provider-setting-row>label{flex:1;min-width:0}
.provider-setting-row>[data-provider-check]{flex:none;width:38px;min-width:38px;height:38px;display:grid;place-items:center;margin-bottom:0;padding:8px}
.provider-settings-form [data-provider-state]{display:block;margin:4px 0 0;line-height:1.4;font-size:12px}
.provider-settings-form [data-connection=ok]{color:#a7d4ae}
.provider-settings-form [data-connection=invalid],.provider-settings-form [data-connection=quota]{color:#ffb0a8}
@media(max-width:600px){.provider-setting-row>[data-provider-check]{width:44px;min-width:44px;height:44px}}

.lookup .metadata-provider-label{display:flex;align-items:center;gap:8px;max-width:100%;margin:6px 0;font-size:12px;color:var(--muted)}
.lookup .metadata-provider-label select{width:auto;max-width:100%;min-width:0;padding:5px 8px;font-size:12px;color:var(--ink)}
@media(max-width:600px){.lookup .metadata-provider-label select{min-height:40px;font-size:16px;max-width:calc(100% - 28px)}}

/* Pending labels start immediately after the meter, without a right-aligned empty slot. */
#library-results .library-progress.is-pending>.library-progress-value,
#app #dashboard-history .library-progress.is-pending>.library-progress-value{
 justify-self:start;text-align:left;white-space:nowrap;
}

@media(min-width:601px){
 #library-results .library-row-main>.library-progress.is-pending{
  width:auto;margin:0 10px 1px 29px;
 }
}

@media(min-width:601px){
 #library-results .library-row-main:has(>.library-progress.is-pending):not(:has(>.bulk-check)){gap:0}
}

/* Keep both subtitle rows close without shrinking action touch targets. */
@media(min-width:601px){
 #library-results .library-row-main>.title{
  height:16px;min-height:16px;line-height:16px;padding-block:0;
 }
 #library-results .library-row-main>.library-progress{
  margin-block:0;min-height:10px;line-height:10px;
 }
}

.copies-context{width:min(540px,calc(100vw - 24px));max-height:80dvh;overflow:auto}
.copies-context .entry-heading{display:flex;align-items:center;gap:12px}
.copies-context .entry-heading h3{flex:1;min-width:0;overflow-wrap:anywhere}
.copy-record{display:flex;align-items:center;gap:8px;padding:8px 0;border-top:1px solid var(--line)}
.copy-record>[data-open-copy]{display:flex;align-items:center;gap:8px;flex:1;min-width:0;text-align:left}
.copy-record small{display:block;color:var(--muted);margin-top:3px}
.copy-record strong{overflow-wrap:anywhere}
.duplicate-mark[data-copies]{cursor:pointer}

.editor-heading-revisit{display:block;font-size:11px;font-weight:600;color:var(--gold);line-height:1.25}
.revisit-mark{white-space:nowrap;font-size:10px}
.fp-session-history small{display:block;color:var(--muted);font-size:11px}

.fp-session-picker{position:relative;width:100%;margin-block:8px}
.fp-session-picker>[data-session-picker]{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;min-height:40px;gap:12px}
.fp-session-picker>[data-session-picker]::after{content:'⌄';flex:none}
.fp-session-choices{position:absolute;top:100%;left:0;right:0;z-index:5;max-height:220px;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:4px;box-shadow:0 8px 24px #0006}
.fp-session-choices>button{display:block;width:100%;text-align:left;min-height:40px;margin:0;border:0;border-radius:4px}
.fp-session-choices>button[aria-pressed=true]{background:var(--gold);color:var(--bg,#211b10)}
.fp-session-history .fp-cycle-summary{color:var(--gold);font-size:12px}

.fp-session-choices>button{white-space:normal;overflow-wrap:anywhere}
@media(max-width:600px){.fp-session-choices>button{min-height:44px}}
