:root{--surface:#f9f9f9;--surface-low:#f3f3f3;--surface-mid:#eeeeee;--surface-high:#e8e8e8;--surface-top:#e2e2e2;--surface-white:#ffffff;--ink:#000000;--text:#1b1b1b;--text-muted:#474747;--text-soft:#5e5e5e;--outline:rgba(198,198,198,0.25);--radius-sm:2px;--radius-md:4px;--shadow-float:0 24px 48px rgba(0,0,0,0.05)}*{box-sizing:border-box}html{background:var(--surface)}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(255,255,255,.7),transparent 22rem),linear-gradient(180deg,#fafafa 0,var(--surface) 100%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{display:block;max-width:100%}.material-symbols-outlined{display:inline-flex;align-items:center;justify-content:center;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;line-height:1;width:1em;height:1em}.material-symbols-outlined.is-filled{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.app-shell{min-height:100vh;padding:5.5rem 1.5rem 7rem}.app-width{width:min(100%,1120px);margin:0 auto}.topbar{position:fixed;inset:0 0 auto;z-index:50;justify-content:space-between;height:4.5rem;padding:0 1.5rem;background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(198,198,198,.14)}.brand,.topbar{display:flex;align-items:center}.brand{gap:.5rem}.brand-mark{font-size:1.8rem;font-weight:900}.brand-name{font-size:1rem;font-weight:900;letter-spacing:.35em}.topbar-actions{display:flex;align-items:center;gap:1rem}.locale-switch{display:flex;gap:.65rem;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.locale-switch a{padding-bottom:.2rem;color:var(--text-soft)}.locale-switch a.is-active{color:var(--ink);border-bottom:2px solid var(--ink)}.ghost-link{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--text-soft)}.profile-pill{padding:0 .9rem;background:var(--surface-low);color:var(--text);font-size:.72rem;font-weight:800;letter-spacing:.14em}.logout-button,.profile-pill{display:inline-flex;align-items:center;min-height:2.6rem;text-transform:uppercase}.logout-button{justify-content:center;padding:0 .95rem;border:0;background:var(--ink);color:var(--surface-top);font-size:.7rem;font-weight:900;letter-spacing:.18em;cursor:pointer;transition:transform .18s ease,opacity .18s ease}.logout-button:hover{opacity:.9}.logout-button:active{transform:scale(.98)}.button{display:inline-flex;align-items:center;justify-content:center;border:0;padding:1rem 1.2rem;background:var(--ink);color:var(--surface-top);font-size:.78rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;cursor:pointer}.button.secondary{background:var(--surface-top);color:var(--text)}.button.danger{background:#111111;color:#ffffff}.button.compact{padding:.7rem .9rem}.button.full{width:100%}.hero-block{display:grid;grid-gap:.7rem;gap:.7rem;margin-bottom:3rem}.section-kicker{margin:0;color:var(--text-soft);font-size:.72rem;font-weight:800;letter-spacing:.25em;text-transform:uppercase}.hero-title{margin:0;font-size:clamp(2.8rem,7vw,5rem);line-height:.92;letter-spacing:-.08em;font-weight:900}.hero-body{width:min(100%,48rem);margin:0;color:var(--text-muted);line-height:1.7}.grid-hero{display:grid;grid-template-columns:2fr 1fr;grid-gap:1.5rem;gap:1.5rem;margin-bottom:3rem}.panel{background:var(--surface-low);padding:1.5rem}.panel.dark{background:var(--ink);color:var(--surface-top)}.stack{display:grid;grid-gap:1.5rem;gap:1.5rem}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.bookmark-card h3,.panel h3,.section-head h2,.section-head h3{margin:0;font-size:1.2rem;font-weight:800;letter-spacing:-.04em}.muted-label{color:var(--text-soft);font-size:.68rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.bookmark-grid,.form-grid,.stats-grid{display:grid;grid-gap:1rem;gap:1rem}.bookmark-grid,.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bookmark-card,.collection-card,.stat-card{display:grid;grid-gap:1rem;gap:1rem;min-height:15rem;padding:1.5rem;background:var(--surface-low)}.bookmark-card:nth-child(3n+2){transform:translateY(1rem)}.bookmark-card-head{display:flex;justify-content:space-between;gap:1rem;align-items:center}.bookmark-card p,.collection-card p,.reader-copy p,.reader-copy pre{margin:0;color:var(--text-muted);line-height:1.7}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem}.chip,.ghost-badge,.ink-badge,.light-badge,.tone-badge{display:inline-flex;align-items:center;min-height:1.9rem;padding:.35rem .65rem;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.chip,.ghost-badge,.light-badge,.tone-badge{background:var(--surface-high);color:#000000}.ink-badge{background:var(--ink);color:var(--surface-top)}.light-badge{background:var(--surface-white)}.ghost-badge{border:1px solid var(--outline);background:transparent}.field,.search-bar,.select,.textarea{width:100%;border:1px solid var(--outline);background:rgba(255,255,255,.84);color:var(--text)}.field,.search-bar,.select{min-height:3.75rem;padding:0 1rem}.search-bar{font-size:1.05rem;letter-spacing:-.03em}.textarea{min-height:8rem;padding:1rem;resize:vertical}.field:focus,.search-bar:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--ink)}.form-card{display:grid;grid-gap:2rem;gap:2rem;padding:2rem;background:var(--surface-low)}.add-bookmark-layout,.add-bookmark-stack{display:grid;grid-gap:3rem;gap:3rem}.add-bookmark-hero{display:grid;grid-gap:.35rem;gap:.35rem}.add-bookmark-title{margin:0;font-size:3.5rem;line-height:1;letter-spacing:-.08em;font-weight:900}.add-bookmark-subtitle{margin:0;color:var(--text-soft);font-size:.85rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.add-bookmark-group{display:grid;grid-gap:1rem;gap:1rem}.add-url-input{width:100%;min-height:5.2rem;padding:1.4rem 1.5rem;border:1px solid rgba(198,198,198,.2);background:var(--surface-white);font-size:1.3rem;font-weight:500}.add-url-input:focus{outline:none;border-color:var(--ink)}.add-asymmetric-grid{display:grid;grid-template-columns:7fr 5fr;grid-gap:2rem;gap:2rem}.add-tags-panel{align-content:start}.tag-composer{display:flex;flex-wrap:wrap;gap:.55rem;align-items:flex-start;min-height:7.5rem;padding:1rem;border:1px solid rgba(198,198,198,.2);background:var(--surface-white)}.tag-chip{display:inline-flex;align-items:center;gap:.35rem;min-height:2rem;padding:0 .75rem;border:0;background:var(--surface-high);color:var(--text);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.tag-chip.selected{background:var(--ink);color:var(--surface-top)}.tag-chip .material-symbols-outlined{font-size:.95rem;width:.95rem;height:.95rem}.tag-inline-input{display:inline-flex;align-items:center;min-height:2rem;background:transparent}.tag-input{min-width:8rem;border:0;background:transparent;color:var(--text);font-size:.9rem}.tag-input:focus{outline:none}.tag-inline-action{border:0;background:transparent;color:var(--text-soft);font-size:1.2rem;cursor:pointer}.state-stack{display:grid;grid-gap:.55rem;gap:.55rem}.state-option{display:flex;align-items:center;justify-content:space-between;min-height:3.5rem;padding:0 1rem;border:0;background:var(--surface-low);color:var(--text);font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}.state-option.active{background:var(--ink);color:var(--surface-top)}.state-option .material-symbols-outlined{font-size:1rem}.add-select{background:var(--surface-white)}.collection-choice-grid{display:grid;grid-gap:.75rem;gap:.75rem}.collection-choice{display:flex;align-items:center;gap:.65rem;min-height:3.2rem;padding:0 1rem;background:var(--surface-low)}.collection-choice.selected{background:var(--surface-high)}.collection-choice input{margin:0}.add-textarea{background:var(--surface-white)}.favorite-toggle{display:inline-flex;align-items:center;gap:.65rem;font-weight:700}.add-actions{display:grid;grid-template-columns:1fr minmax(11rem,30%);grid-gap:1rem;gap:1rem;padding-top:1rem}.add-cancel,.add-submit{min-height:4rem}.inline-help{margin:0;color:var(--text-soft);font-size:.85rem}.tag-bank{display:grid;grid-gap:.75rem;gap:.75rem}.profile-tag-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:rgba(255,255,255,.72)}.profile-tag-item strong{display:block;margin-bottom:.25rem}.profile-tag-delete{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:0;background:var(--surface-high);color:var(--text);cursor:pointer}.form-group{display:grid;grid-gap:.65rem;gap:.65rem}.field-label{color:var(--text-soft);font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.checkbox-row{display:flex;align-items:center;gap:.65rem}.reader-layout{width:min(100%,760px);margin:0 auto}.reader-cover{overflow:hidden;background:var(--surface-low)}.reader-cover-image{width:100%;max-height:30rem;object-fit:cover}.reader-copy{background:rgba(255,255,255,.72);padding:2rem;line-height:1.8;overflow-wrap:anywhere}.reader-copy p+p{margin-top:1.2rem}.list-panel,.reader-manage,.reader-meta{display:grid;grid-gap:1rem;gap:1rem;background:var(--surface-low);padding:1.5rem}.reader-delete-form,.reader-manage-form{display:grid;grid-gap:1rem;gap:1rem}.list{display:grid;grid-gap:.85rem;gap:.85rem}.list-item{justify-content:space-between;gap:1rem;background:rgba(255,255,255,.7);padding:1rem}.bottom-nav,.list-item{display:flex;align-items:center}.bottom-nav{position:fixed;inset:auto 0 0;z-index:45;justify-content:space-around;gap:.5rem;min-height:5rem;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));background:rgba(249,249,249,.84);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-top:1px solid rgba(198,198,198,.16);box-shadow:0 -4px 24px rgba(0,0,0,.04)}.bottom-nav-link{min-width:3.25rem;min-height:3.25rem;color:var(--text-soft);transition:transform .18s ease,color .18s ease,background .18s ease}.bottom-nav-glyph,.bottom-nav-link{display:inline-flex;align-items:center;justify-content:center}.bottom-nav-glyph{width:3rem;height:3rem;background:transparent;color:inherit;font-size:1.55rem;font-weight:900;line-height:1;text-align:center;overflow:hidden}.bottom-nav-link.is-active .bottom-nav-glyph{background:var(--ink);color:var(--surface-top);border-radius:2px}.bottom-nav-link.is-active{color:var(--text)}.bottom-nav-link:active{transform:scale(.92)}.template-bottom-nav{background:rgba(250,250,250,.8);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-top:1px solid rgba(229,229,229,.2);box-shadow:0 -4px 24px rgba(0,0,0,.04)}.template-nav-item{width:auto;min-width:auto;min-height:auto;padding:.75rem;color:#a3a3a3}.template-nav-icon{width:24px;height:24px;min-width:24px;min-height:24px;font-size:24px;line-height:24px;background:transparent}.template-nav-item.is-active{padding:.75rem;background:#171717;color:#fafafa;border-radius:2px}.template-nav-item.is-active .template-nav-icon{width:24px;height:24px;background:transparent;color:inherit;border-radius:0}.auth-layout{width:min(100%,460px);margin:0 auto;padding-top:2rem}.mono-note{padding:1rem;background:var(--surface-mid);color:var(--text-soft);font-size:.84rem;line-height:1.7}@media (max-width:960px){.add-actions,.add-asymmetric-grid,.bookmark-grid,.form-grid,.grid-hero,.stats-grid{grid-template-columns:1fr}.bookmark-card:nth-child(3n+2){transform:none}}@media (max-width:720px){.app-shell{padding-right:1rem;padding-left:1rem}.topbar{padding:0 1rem}.brand-name{font-size:.86rem}.topbar-actions{gap:.65rem}.add-url-input{font-size:1.05rem}.ghost-link{font-size:.64rem;letter-spacing:.12em}.profile-pill{display:none}}