:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#f8f4e9;--surface:#fffdf9;--surface-strong:#fff;--ink-strong:#17262f;--ink-muted:#5c6b72;--line:#d8d7d1;--line-strong:#bcc1b8;--brand:#1f4d5a;--brand-strong:#163842;--accent:#f4a259;--accent-soft:#fde5cf;--good:#206640;--good-soft:#ddf4e5;--owned:#355ca8;--owned-soft:#dce7ff;--shadow-soft:0 14px 40px #232d3614;--shadow-card:0 8px 26px #21303a1a;--radius-sm:12px;--radius-md:16px;--radius-lg:18px;--transition-fast:.16s ease;--app-shell-scroll-offset:6.4rem}*,:before,:after{box-sizing:border-box}html{background:var(--canvas);scroll-padding-top:var(--app-shell-scroll-offset);margin:0;padding:0}html:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 10% 8%,#ffffffe6,transparent 36%),radial-gradient(circle at 16% 14%,#ffe2be6b,transparent 44%),linear-gradient(180deg,#faf7ef 0%,var(--canvas)100%);position:fixed;inset:0}body{color:var(--ink-strong);z-index:1;background:0 0;min-height:100vh;margin:0;padding:0;font-family:Nunito Sans,Avenir Next,Segoe UI,sans-serif;line-height:1.55;position:relative}a{color:var(--brand);transition:color var(--transition-fast)}a:hover{color:var(--brand-strong)}h1,h2,h3{color:#132f38;font-family:Bitter,Iowan Old Style,Palatino Linotype,serif;line-height:1.2}h1{letter-spacing:.01em;margin:0 0 .9rem;font-size:clamp(2.15rem,5.5vw,3.5rem)}h2{margin:0 0 .8rem;font-size:clamp(1.4rem,3vw,2rem)}h3{font-size:1.15rem}p{margin:0 0 .85rem}.eyebrow{text-transform:uppercase;letter-spacing:.09em;color:var(--ink-muted);margin:0 0 .35rem;font-size:.78rem;font-weight:700}.lead{max-width:62ch;color:var(--ink-muted);font-size:1.06rem}.skip-link{background:var(--brand-strong);color:#fff;z-index:50;border-radius:10px;padding:.45rem .65rem;text-decoration:none;position:absolute;top:.5rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus-visible{transform:translateY(0)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #124f8b}#main-content:focus,#main-content:focus-visible{outline:none}#main-content{scroll-margin-top:var(--app-shell-scroll-offset)}.container{width:min(1120px,100%);margin:0 auto;padding:2.7rem 1.2rem 3.5rem}.page-stack{align-content:start;gap:1rem;display:grid}.page-hero{margin-bottom:.3rem}.section-shell{background:color-mix(in srgb,var(--surface)88%,#fff);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:1.2rem clamp(.95rem,2.8vw,1.5rem) 1.35rem}.app-shell-header{z-index:30;padding-top:env(safe-area-inset-top);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(#fcf9f1f5 0%,#f9f4e9ed 100%);position:sticky;top:0}.app-nav.container{padding-top:.72rem;padding-bottom:.72rem}.app-nav{flex-wrap:nowrap;align-items:center;gap:1rem;display:flex}.app-brand-inline{gap:.15rem;display:grid}.app-brand-title{color:#123944;font-family:Bitter,Iowan Old Style,Palatino Linotype,serif;font-size:clamp(1.45rem,2.4vw,1.9rem);font-weight:700;text-decoration:none;display:inline-block}.app-brand-subtitle{color:var(--ink-muted);margin:0;font-size:.86rem}.app-nav-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1rem;margin-left:auto;display:flex}.app-nav-links,.app-nav-auth{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.app-nav a:not(.app-brand-title),.app-nav button{color:#163742;white-space:nowrap;background:linear-gradient(#1f4d5a52,#1f4d5a52) 0 100%/0 2px no-repeat;border:0;border-radius:0;padding:.2rem .08rem;font-weight:700;line-height:1.2;text-decoration:none;transition:color .14s,background-size .14s}.app-nav a:hover,.app-nav button:hover,.app-nav a:not(.app-brand-title)[aria-current=page]{color:#0f2f37;background-size:100% 2px}.app-nav button{font:inherit;cursor:pointer}.app-nav-theme{position:relative}.app-nav .app-nav-menu-trigger{border:1px solid var(--line-strong);width:2.2rem;height:2.2rem;min-height:0;color:var(--ink-strong);background:color-mix(in srgb,var(--surface)92%,#fff);transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast);background-image:none;background-size:0 0;border-radius:10px;padding:0;display:none}.app-nav .app-nav-menu-trigger:hover{color:var(--ink-strong);border-color:var(--line);background:var(--surface-strong);background-image:none;background-size:0 0}.app-nav-menu-icon{gap:.22rem;display:grid}.app-nav-menu-icon span{transform-origin:50%;width:.95rem;height:2px;transition:transform var(--transition-fast),opacity var(--transition-fast);background:currentColor;border-radius:999px;display:block}.app-nav .app-nav-menu-trigger[aria-expanded=true] .app-nav-menu-icon span:first-child{transform:translateY(.35rem)rotate(45deg)}.app-nav .app-nav-menu-trigger[aria-expanded=true] .app-nav-menu-icon span:nth-child(2){opacity:0}.app-nav .app-nav-menu-trigger[aria-expanded=true] .app-nav-menu-icon span:nth-child(3){transform:translateY(-.35rem)rotate(-45deg)}.app-nav .app-nav-theme-trigger{border:1px solid var(--line-strong);width:2rem;height:2rem;min-height:0;color:var(--ink-strong);background:color-mix(in srgb,var(--surface)92%,#fff);transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast);background-image:none;background-size:0 0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.app-nav .app-nav-theme-trigger:hover{color:var(--ink-strong);border-color:var(--line);background:var(--surface-strong);background-image:none;background-size:0 0}.app-nav-theme-menu{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:10.2rem;box-shadow:var(--shadow-card);z-index:70;gap:.15rem;padding:.28rem;display:grid;position:absolute;top:calc(100% + .42rem);right:0}.app-nav .app-nav-theme-option{width:100%;min-height:0;color:var(--ink-strong);text-align:left;background:0 0/0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:.95rem minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.38rem .48rem;font-size:.84rem;line-height:1.15;display:grid}.app-nav .app-nav-theme-option:hover{color:var(--ink-strong);border-color:var(--line);background-color:color-mix(in srgb,var(--surface-strong)85%,var(--canvas));background-image:none;background-size:0 0}.app-nav .app-nav-theme-option[aria-checked=true]{border-color:var(--line);background-color:color-mix(in srgb,var(--surface-strong)92%,var(--canvas))}.app-nav-theme-trigger svg,.app-nav-theme-option svg{stroke:currentColor;stroke-width:1.8px;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:.92rem;height:.92rem}.app-nav-theme-check{text-align:right;min-width:.7rem;color:var(--brand);font-size:.76rem}.app-brand-title:hover,.app-brand-title:active{color:#123944;background:0 0}.app-nav-user{color:var(--ink-muted);text-overflow:ellipsis;max-width:24ch;font-size:.9rem;overflow:hidden}.app-nav-loading{color:var(--ink-muted);font-size:.88rem;font-weight:700}.app-nav-error{color:#8d2b1f;margin:0;padding:0 1.1rem .55rem;font-weight:600}.catalog-controls,.auth-form{gap:.9rem;display:grid}.catalog-filter-shell{border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface)90%,#fff);gap:.6rem;margin:.45rem 0 1rem;padding:.72rem clamp(.7rem,1.8vw,.95rem);display:grid}.catalog-filter-toggle-row{flex-wrap:wrap;align-items:center;gap:.62rem;display:flex}.catalog-toggle-button{border:1px solid var(--line-strong);color:#214754;min-height:0;box-shadow:none;transition:border-color var(--transition-fast),background-color var(--transition-fast);background:linear-gradient(#fff 0%,#f5f6f5 100%);border-radius:999px;padding:.38rem .78rem;font-size:.88rem;font-weight:800}.catalog-toggle-button:hover{background:#fff;border-color:#95a49f}.catalog-filter-summary{color:var(--ink-muted);margin:0;font-size:.88rem;font-weight:700;line-height:1.35}.catalog-controls{grid-template-columns:minmax(260px,2fr) minmax(190px,1fr);align-items:end;gap:.85rem 1rem;margin:.1rem 0 0}.search-input-wrap{position:relative}.catalog-search-input{width:100%;padding-right:2.35rem!important}.search-clear-button{width:1.7rem;height:1.7rem;font-size:1rem;font-weight:800;line-height:1;position:absolute;top:50%;right:.42rem;transform:translateY(-50%);color:#3a525a!important;min-height:0!important;box-shadow:none!important;background:#f5f8f7!important;border:1px solid #b5c0ba!important;border-radius:999px!important;padding:0!important}.search-clear-button:hover{background:#fff!important;border-color:#8ea09b!important}.catalog-type-fieldset{border:0;grid-column:1/-1;gap:.45rem;min-width:0;margin:0;padding:0;display:grid}.catalog-type-fieldset legend{margin:0 0 .08rem;font-weight:700}.catalog-type-options{flex-wrap:wrap;gap:.45rem;display:flex}.catalog-type-option{border:1px solid var(--line-strong);background:var(--surface-strong);border-radius:999px;align-items:center;gap:.38rem;margin:0;padding:.35rem .58rem;font-size:.88rem;font-weight:700;box-shadow:inset 0 1px #ffffff8c;display:inline-flex!important}.catalog-type-option input[type=checkbox]{width:.95rem;height:.95rem;margin:0;padding:0}.catalog-controls label,.auth-form label{gap:.36rem;font-weight:700;display:grid}input,select,button,textarea{font:inherit}.catalog-controls input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.catalog-controls select,.auth-form input:not([type=checkbox]):not([type=radio]),.auth-form select,.auth-form textarea,.tracking-actions button,.invite-table button,.catalog-actions button,.auth-form button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-strong);min-height:2.6rem;color:var(--ink-strong);padding:.56rem .72rem}.catalog-controls input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.catalog-controls select,.auth-form input:not([type=checkbox]):not([type=radio]),.auth-form select,.auth-form textarea{box-shadow:inset 0 1px #ffffff80}button{cursor:pointer}.catalog-actions button,.tracking-actions button,.auth-form button,.invite-table button{color:#fff;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast);background:linear-gradient(#2a6271 0%,#1d4f5f 100%);border-color:#154453;font-weight:700;box-shadow:0 7px 16px #1638423d}.catalog-actions button:hover,.tracking-actions button:hover,.auth-form button:hover,.invite-table button:hover{filter:brightness(1.04);transform:translateY(-1px)}.button-danger{background:linear-gradient(#b84337 0%,#9a2f25 100%)!important;border-color:#812820!important;box-shadow:0 7px 16px #73211a42!important}button:disabled{cursor:not-allowed;opacity:.72;filter:none;box-shadow:none;transform:none}.catalog-actions{flex-wrap:wrap;grid-column:1/-1;justify-self:start;align-items:center;gap:.6rem;display:flex}.catalog-actions button,.tracking-actions button,.auth-form button{font-weight:700}.catalog-actions a{border-radius:var(--radius-sm);border:1px solid var(--line-strong);color:#214754;transition:background-color var(--transition-fast),border-color var(--transition-fast);background:#ffffffbf;padding:.52rem .72rem;font-weight:700;text-decoration:none}.catalog-actions a:hover{background:#fff;border-color:#98a29d}.catalog-reset-button{border-color:var(--line-strong)!important;color:#26444f!important;box-shadow:none!important;background:linear-gradient(#fefefe 0%,#f4f6f5 100%)!important}.catalog-reset-button:hover{background:#fff!important;border-color:#95a49f!important}.catalog-live-note{color:var(--ink-muted);margin:0;font-size:.88rem;font-weight:700}.status-filter-help{color:var(--ink-muted);margin:.3rem 0 .2rem}.catalog-list{gap:.85rem;margin:.25rem 0 0;padding:0;list-style:none;display:grid}.catalog-item{border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-card);transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);background:linear-gradient(#ffffffdb,#fffdf7f0)}.catalog-item:hover{transform:translateY(-2px);box-shadow:0 12px 30px #21303a24}.catalog-item:focus-within{border-color:color-mix(in srgb,var(--brand)55%,#fff)}.catalog-item-completed{border-color:#2066406b;box-shadow:0 10px 28px #1d6c4029}.catalog-card{grid-template-columns:84px minmax(0,1fr);align-items:start;gap:.9rem;padding:.78rem;display:grid}.catalog-cover{border:1px solid #1736403d;border-radius:13px;width:84px;height:114px;text-decoration:none;display:block;position:relative;overflow:hidden;box-shadow:0 6px 15px #18282f2e}.catalog-cover-image,.book-detail-cover-image{object-fit:cover;width:100%;height:100%;display:block}.catalog-cover-fallback,.book-detail-cover-fallback{color:#fff;text-transform:uppercase;letter-spacing:.04em;place-items:center;width:100%;height:100%;font-family:Bitter,Iowan Old Style,Palatino Linotype,serif;display:grid}.catalog-cover-fallback span{font-size:1.25rem;text-decoration:none}.book-detail-cover-fallback span{font-size:2.1rem}.cover-variant-0{background:linear-gradient(145deg,#2a6178 0%,#19404f 80%)}.cover-variant-1{background:linear-gradient(145deg,#9f3e24 0%,#7b2b1d 80%)}.cover-variant-2{background:linear-gradient(145deg,#265850 0%,#163b34 80%)}.cover-variant-3{background:linear-gradient(145deg,#8b6f29 0%,#68511f 80%)}.cover-variant-4{background:linear-gradient(145deg,#5c4d92 0%,#403465 80%)}.cover-variant-5{background:linear-gradient(145deg,#9c4b65 0%,#76394d 80%)}.catalog-cover-check{background:var(--good);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-weight:800;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 2px 7px #0f321e59}.catalog-content{min-width:0}.catalog-type-chip{color:#1b4957;letter-spacing:.03em;text-transform:uppercase;background:#1f4d5a17;border:1px solid #1f4d5a47;border-radius:999px;margin:0 0 .4rem;padding:.14rem .58rem;font-size:.78rem;font-weight:700;display:inline-flex}.catalog-title{margin:0;font-size:1.03rem;font-weight:800}.catalog-title-link{color:inherit;text-decoration:none}.catalog-title-link:hover{text-decoration:underline}.catalog-subtitle{color:var(--ink-muted);margin:.2rem 0 0;font-size:.94rem}.catalog-status-row{flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.55rem;display:flex}.status-chip{border:1px solid #0000;border-radius:999px;align-items:center;gap:.25rem;padding:.17rem .58rem;font-size:.79rem;font-weight:700;text-decoration:none;display:inline-flex}.status-chip a{color:inherit;align-items:center;text-decoration:none;display:inline-flex}.status-chip-completed{background:var(--good-soft);color:#184f33;border-color:#1f603a3d}.status-chip-owned{background:var(--owned-soft);color:#244a90;border-color:#355ca847}.status-chip-muted{color:#55656d;background:#f0f2f3;border-color:#d4dbe0}.book-detail-shell{gap:1.1rem;display:grid}.book-hero{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:linear-gradient(160deg,#ffffffd9,#fffbf3f5);grid-template-columns:148px minmax(0,1fr);gap:1rem;padding:clamp(.85rem,2.2vw,1.2rem);display:grid}.book-detail-cover{border:1px solid #192f3840;border-radius:14px;width:148px;height:205px;overflow:hidden;box-shadow:0 8px 18px #15232933}.book-hero-copy h1{margin-bottom:.55rem}.book-author{color:var(--ink-muted);font-size:1.02rem}.book-chip-row{flex-wrap:wrap;align-items:center;gap:.42rem;display:flex}.book-chip-row .catalog-type-chip,.book-chip-row .status-chip{justify-content:center;align-items:center;min-height:1.7rem;margin:0;padding:.2rem .64rem;font-size:.8rem;line-height:1.2}.where-panel{border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(#ffffffbd,#fffbf5db);padding:.95rem}.external-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:.68rem;margin:0;padding:0;list-style:none;display:grid}.external-link-item{min-width:0}.external-link-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-strong);width:100%;height:100%;min-height:6.3rem;transition:border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);align-content:start;gap:.22rem;padding:.65rem .75rem;text-decoration:none;display:grid}.external-link-card:hover{border-color:color-mix(in srgb,var(--brand)48%,#fff);transform:translateY(-1px);box-shadow:0 7px 16px #1f4d5a1f}.external-link-title{font-weight:700}.external-link-status{color:var(--brand);font-weight:800;line-height:1.2}.external-link-card-muted{background:#f5f7f6;border-color:#d6ddda}.external-link-card-muted .external-link-status{color:#56666c}.external-link-meta{color:var(--ink-muted);margin:0;font-size:.86rem;font-weight:600;line-height:1.35}.external-link-inline{color:var(--brand-strong)}.tracking-panel{border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(#ffffffbd,#fffbf5db);margin-top:.7rem;padding:.95rem}.tracking-actions{flex-wrap:wrap;gap:.56rem;margin:.95rem 0 1rem;display:flex}.owners-list{margin:.35rem 0 0}.auth-form{border:1px solid var(--line);border-radius:var(--radius-md);width:min(540px,100%);max-width:100%;box-shadow:var(--shadow-card);background:linear-gradient(#ffffffd1,#fffcf7e6);padding:.95rem}.checkbox-label{align-items:center;gap:.5rem;font-weight:700;display:inline-flex!important}.checkbox-label input[type=checkbox]{border-radius:.22rem;width:1.05rem;height:1.05rem;margin:0;padding:0}.field-help{color:var(--ink-muted);margin:-.25rem 0 0;font-size:.94rem}.invite-table-wrap{overflow-x:auto}.pagination-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-top:.75rem;padding-top:.1rem;display:flex}.pagination-meta{color:var(--ink-muted);margin:0;font-size:.92rem}.pagination-actions{flex-wrap:nowrap;align-items:center;gap:.5rem;display:flex}.pagination-button{border:1px solid var(--line-strong);background:var(--surface-strong);color:#26444f;min-height:2.15rem;box-shadow:none;border-radius:10px;padding:.38rem .65rem;font-weight:600}.pagination-button:hover{background:#fff;border-color:#95a49f}.pagination-page-label{color:var(--ink-strong);border:1px solid var(--line);background:color-mix(in srgb,var(--surface)75%,white);white-space:nowrap;border-radius:999px;padding:.28rem .55rem;font-size:.88rem;font-weight:700}.invite-table{border-collapse:separate;border-spacing:0;border:1px solid var(--line);width:100%;box-shadow:var(--shadow-card);background:#ffffffd1;border-radius:14px;margin-top:.72rem;overflow:hidden}.invite-table th,.invite-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e4e6df;padding:.56rem .66rem}.invite-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);font-size:.87rem}.invite-table tr:last-child td{border-bottom:0}.invite-table code{word-break:break-word;font-size:.9rem}.invite-row-actions{flex-wrap:wrap;align-items:center;gap:.45rem;min-width:0;display:flex}.invite-action-secondary{border-color:var(--line-strong)!important;color:#26444f!important;box-shadow:none!important;background:linear-gradient(#fefefe 0%,#f4f6f5 100%)!important}.invite-action-secondary:hover{background:#fff!important;border-color:#95a49f!important}.invite-icon-button{border-radius:10px;justify-content:center;align-items:center;width:2.2rem;min-width:2.2rem;height:2.2rem;line-height:1;display:inline-flex;min-height:2.2rem!important;padding:.3rem!important}.invite-icon-button svg{width:1rem;height:1rem;display:block}.invite-icon-spin{animation:.9s linear infinite invite-icon-spin}@keyframes invite-icon-spin{to{transform:rotate(360deg)}}.audit-details{color:#40545d;max-width:34ch}.auth-shell{gap:.85rem;display:grid}.auth-links{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.auth-links p{margin:0}.milestone-card{gap:.95rem;display:grid}.milestone-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.85rem;display:flex}.milestone-total{border:1px solid color-mix(in srgb,var(--brand)18%,var(--line));border-radius:var(--radius-md);background:linear-gradient(#ffffffdb,#fff7e8d9);align-content:start;justify-items:end;gap:.1rem;min-width:10.5rem;padding:.5rem .7rem;display:grid}.milestone-total-count{color:#153642;font-family:Bitter,Iowan Old Style,Palatino Linotype,serif;font-size:clamp(1.4rem,3vw,1.9rem);line-height:1}.milestone-total-label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;font-weight:700}.milestone-badge-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.milestone-badge{--milestone-metal-border:var(--line);--milestone-metal-bg-soft:color-mix(in srgb,var(--surface)90%,#fff);--milestone-metal-bg-strong:color-mix(in srgb,var(--surface)86%,#fff);--milestone-metal-ink:var(--ink-strong);border:1px solid var(--line);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface)90%,#fff);align-content:start;gap:.12rem;min-height:4.2rem;padding:.55rem .6rem;display:grid}.milestone-badge-label{color:var(--milestone-metal-ink);font-weight:800}.milestone-badge-threshold{color:var(--ink-muted);font-size:.88rem}.milestone-badge-achieved{border-color:color-mix(in srgb,var(--milestone-metal-border)56%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--milestone-metal-bg-soft)92%,#fff),color-mix(in srgb,var(--milestone-metal-bg-strong)80%,#fff))}.milestone-badge-current{border-color:color-mix(in srgb,var(--milestone-metal-border)68%,var(--line-strong));background:linear-gradient(180deg,color-mix(in srgb,var(--milestone-metal-bg-soft)88%,#fff),color-mix(in srgb,var(--milestone-metal-bg-strong)76%,#fff));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--milestone-metal-border)22%,transparent)}.milestone-badge-upcoming{opacity:.92}.milestone-badge-bronze{--milestone-metal-border:#a86a3f;--milestone-metal-bg-soft:#f4dfd0;--milestone-metal-bg-strong:#eabf9f;--milestone-metal-ink:#5d3520}.milestone-badge-silver{--milestone-metal-border:#8f98a3;--milestone-metal-bg-soft:#eef2f6;--milestone-metal-bg-strong:#d8dee6;--milestone-metal-ink:#35414f}.milestone-badge-gold{--milestone-metal-border:#b8881f;--milestone-metal-bg-soft:#fbefc4;--milestone-metal-bg-strong:#f1d77b;--milestone-metal-ink:#5a4107}.milestone-badge-platinum{--milestone-metal-border:#5f7f8c;--milestone-metal-bg-soft:#e0eef0;--milestone-metal-bg-strong:#b8d4d8;--milestone-metal-ink:#1d404b}.milestone-progress-shell{gap:.45rem;display:grid}.milestone-progress-track{border:1px solid var(--line);background:color-mix(in srgb,var(--surface)84%,#eef2f4);border-radius:999px;height:.92rem;overflow:hidden}.milestone-progress-fill{border-radius:inherit;height:100%;transition:width var(--transition-fast);background:linear-gradient(90deg,#1d4f5f 0%,#2a6271 100%)}.milestone-progress-text{color:var(--ink-muted);margin:0;font-weight:700}.reading-pace-card{gap:.65rem;display:grid}.reading-pace-body{margin:0}.reading-pace-rate{font-weight:700}.feedback-error{color:#82281d;margin:0;font-weight:600}.feedback-success{color:#1f5d3b;margin:0;font-weight:600}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}input[type=checkbox],input[type=radio]{accent-color:var(--brand)}:root[data-theme-resolved=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#101922;--surface:#16232e;--surface-strong:#1d2d38;--ink-strong:#e5edf2;--ink-muted:#b7c6cf;--line:#30414c;--line-strong:#475a67;--brand:#7fbcce;--brand-strong:#a6d3e2;--accent:#f5b070;--accent-soft:#4e3520;--good:#5bc18c;--good-soft:#1e3f2d;--owned:#88b0ff;--owned-soft:#213962;--shadow-soft:0 14px 40px #03080c6b;--shadow-card:0 8px 26px #03080c80}:root[data-theme-resolved=dark]:before{background:radial-gradient(circle at 10% 8%,#9dc4d547,transparent 36%),radial-gradient(circle at 16% 14%,#7fbcce29,transparent 45%),linear-gradient(180deg,#0c141b 0%,var(--canvas)100%)}:root[data-theme-resolved=dark] h1,:root[data-theme-resolved=dark] h2,:root[data-theme-resolved=dark] h3{color:#dceaf0}:root[data-theme-resolved=dark] a:focus-visible,:root[data-theme-resolved=dark] button:focus-visible,:root[data-theme-resolved=dark] input:focus-visible,:root[data-theme-resolved=dark] select:focus-visible,:root[data-theme-resolved=dark] textarea:focus-visible{outline-color:#86c7e2}:root[data-theme-resolved=dark] .section-shell{background:var(--surface)}:root[data-theme-resolved=dark] .app-shell-header{background:linear-gradient(#101922f5 0%,#101922eb 100%)}:root[data-theme-resolved=dark] .app-brand-title,:root[data-theme-resolved=dark] .app-brand-title:hover,:root[data-theme-resolved=dark] .app-brand-title:active{color:#d7e8ef}:root[data-theme-resolved=dark] .app-nav a:not(.app-brand-title),:root[data-theme-resolved=dark] .app-nav button{color:#c1d4dd;background-image:linear-gradient(#7fbcce80,#7fbcce80)}:root[data-theme-resolved=dark] .app-nav a:hover,:root[data-theme-resolved=dark] .app-nav button:hover,:root[data-theme-resolved=dark] .app-nav a:not(.app-brand-title)[aria-current=page]{color:#e5f2f7}:root[data-theme-resolved=dark] .app-nav-error{color:#f2a79a}:root[data-theme-resolved=dark] .app-nav .app-nav-theme-trigger{color:#d7e8ef;background:#1d2b36eb 0 0/0 0;border-color:#506571}:root[data-theme-resolved=dark] .app-nav .app-nav-theme-trigger:hover{background:#273947f2;border-color:#677e8a}:root[data-theme-resolved=dark] .app-nav .app-nav-menu-trigger{color:#d7e8ef;background:#1d2b36eb 0 0/0 0;border-color:#506571}:root[data-theme-resolved=dark] .app-nav .app-nav-menu-trigger:hover{background:#273947f2;border-color:#677e8a}:root[data-theme-resolved=dark] .app-nav-theme-menu{border-color:var(--line-strong);background:var(--surface)}:root[data-theme-resolved=dark] .app-nav .app-nav-theme-option{color:var(--ink-strong);background-image:none;background-size:0 0}:root[data-theme-resolved=dark] .app-nav .app-nav-theme-option:hover{background-color:#273947f5;background-image:none;background-size:0 0;border-color:#5b717d}:root[data-theme-resolved=dark] .app-nav .app-nav-theme-option[aria-checked=true]{background-color:#2e4251fa;border-color:#5b717d}:root[data-theme-resolved=dark] .app-nav-right.app-nav-right-open{background:#18252ff5;border-color:#4a5f6b}:root[data-theme-resolved=dark] .app-nav-theme-check{color:var(--brand-strong)}:root[data-theme-resolved=dark] .catalog-filter-shell{background:color-mix(in srgb,var(--surface)96%,#000)}:root[data-theme-resolved=dark] .catalog-toggle-button{color:#d2e3eb;background:linear-gradient(#263743 0%,#1b2b35 100%)}:root[data-theme-resolved=dark] .catalog-toggle-button:hover{background:#2a3d49;border-color:#6b818d}:root[data-theme-resolved=dark] .search-clear-button{color:#cae0ea!important;background:#233540!important;border-color:#556a75!important}:root[data-theme-resolved=dark] .search-clear-button:hover{background:#2b3f4c!important;border-color:#738995!important}:root[data-theme-resolved=dark] .catalog-type-option,:root[data-theme-resolved=dark] .catalog-controls input:not([type=hidden]):not([type=checkbox]):not([type=radio]),:root[data-theme-resolved=dark] .catalog-controls select,:root[data-theme-resolved=dark] .auth-form input:not([type=checkbox]):not([type=radio]),:root[data-theme-resolved=dark] .auth-form select,:root[data-theme-resolved=dark] .auth-form textarea{box-shadow:inset 0 1px #ffffff14}:root[data-theme-resolved=dark] .catalog-actions a{color:#cde0e8;background:#1d2d38d9}:root[data-theme-resolved=dark] .catalog-actions a:hover{background:#2a3e4b;border-color:#637a86}:root[data-theme-resolved=dark] .catalog-reset-button{color:#d2e3eb!important;background:linear-gradient(#253743 0%,#1d2d38 100%)!important}:root[data-theme-resolved=dark] .catalog-reset-button:hover{background:#2b3f4b!important;border-color:#6b818d!important}:root[data-theme-resolved=dark] .catalog-item{background:linear-gradient(#1b2832eb,#17232cf2)}:root[data-theme-resolved=dark] .catalog-item:hover{box-shadow:0 12px 30px #01070a94}:root[data-theme-resolved=dark] .catalog-item:focus-within{border-color:color-mix(in srgb,var(--brand)60%,#000)}:root[data-theme-resolved=dark] .catalog-item-completed{border-color:#5bc18c85;box-shadow:0 10px 28px #0c311f6b}:root[data-theme-resolved=dark] .catalog-cover{border-color:#8fb5c559;box-shadow:0 6px 15px #020a0e8f}:root[data-theme-resolved=dark] .catalog-type-chip{color:#c4e0ea;background:#7fbcce33;border-color:#7fbcce73}:root[data-theme-resolved=dark] .status-chip-completed{color:#bce9d2;border-color:#5bc18c80}:root[data-theme-resolved=dark] .status-chip-owned{color:#c8d8ff;border-color:#88b0ff80}:root[data-theme-resolved=dark] .status-chip-muted{color:#b9cad3;background:#253742;border-color:#435761}:root[data-theme-resolved=dark] .book-hero{background:linear-gradient(160deg,#1b2832eb,#17232cf5)}:root[data-theme-resolved=dark] .book-detail-cover{border-color:#8fb5c559;box-shadow:0 8px 18px #020a0e99}:root[data-theme-resolved=dark] .where-panel,:root[data-theme-resolved=dark] .tracking-panel{background:linear-gradient(#1d2b36eb,#18242ef2)}:root[data-theme-resolved=dark] .external-link-card:hover{border-color:color-mix(in srgb,var(--brand)54%,#000);box-shadow:0 7px 16px #02090d80}:root[data-theme-resolved=dark] .external-link-card-muted{background:#263843;border-color:#435761}:root[data-theme-resolved=dark] .external-link-card-muted .external-link-status{color:#adc1cb}:root[data-theme-resolved=dark] .auth-form{background:linear-gradient(#1d2b36eb,#18242ef2)}:root[data-theme-resolved=dark] .milestone-total{background:linear-gradient(#1d2b36f0,#22323ef2);border-color:#7fbcce47}:root[data-theme-resolved=dark] .milestone-total-count{color:#d7ebf3}:root[data-theme-resolved=dark] .milestone-badge{background:#1d2b36db;border-color:#445864}:root[data-theme-resolved=dark] .milestone-badge-bronze{--milestone-metal-border:#ce8a58;--milestone-metal-bg-soft:#47301f;--milestone-metal-bg-strong:#6a452c;--milestone-metal-ink:#f2d7c6}:root[data-theme-resolved=dark] .milestone-badge-silver{--milestone-metal-border:#a7b4c1;--milestone-metal-bg-soft:#2f3944;--milestone-metal-bg-strong:#44515d;--milestone-metal-ink:#e2eaf1}:root[data-theme-resolved=dark] .milestone-badge-gold{--milestone-metal-border:#dfbc57;--milestone-metal-bg-soft:#473a17;--milestone-metal-bg-strong:#665322;--milestone-metal-ink:#f8e9b8}:root[data-theme-resolved=dark] .milestone-badge-platinum{--milestone-metal-border:#87aeb8;--milestone-metal-bg-soft:#273a40;--milestone-metal-bg-strong:#35515a;--milestone-metal-ink:#d6eef2}:root[data-theme-resolved=dark] .milestone-badge-achieved{border-color:color-mix(in srgb,var(--milestone-metal-border)72%,#435761);background:linear-gradient(180deg,color-mix(in srgb,var(--milestone-metal-bg-soft)90%,#1d2b36eb),color-mix(in srgb,var(--milestone-metal-bg-strong)70%,#1d2b36eb))}:root[data-theme-resolved=dark] .milestone-badge-current{border-color:color-mix(in srgb,var(--milestone-metal-border)84%,#4d6270);background:linear-gradient(180deg,color-mix(in srgb,var(--milestone-metal-bg-soft)96%,#1d2b36f0),color-mix(in srgb,var(--milestone-metal-bg-strong)82%,#1d2b36f0));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--milestone-metal-border)20%,transparent)}:root[data-theme-resolved=dark] .milestone-progress-track{background:#233440;border-color:#465a66}:root[data-theme-resolved=dark] .invite-table{background:#1d2b36db}:root[data-theme-resolved=dark] .pagination-button{color:#d7e6ec;background:#27363ff5;border-color:#556b76}:root[data-theme-resolved=dark] .pagination-button:hover{background:#30434df5;border-color:#70848f}:root[data-theme-resolved=dark] .pagination-page-label{color:#d7e6ec;background:#212f38e6;border-color:#435761}:root[data-theme-resolved=dark] .invite-table th,:root[data-theme-resolved=dark] .invite-table td{border-bottom-color:#435761}:root[data-theme-resolved=dark] .invite-action-secondary{color:#d7e6ec!important;background:linear-gradient(#2b3b44f5,#23313af5)!important;border-color:#556b76!important}:root[data-theme-resolved=dark] .invite-action-secondary:hover{background:#30434df5!important;border-color:#70848f!important}:root[data-theme-resolved=dark] .audit-details{color:#b5c7d0}:root[data-theme-resolved=dark] .feedback-error{color:#f4aca2}:root[data-theme-resolved=dark] .feedback-success{color:#9fdfbd}@media (max-width:900px){:root{--app-shell-scroll-offset:9.2rem}.catalog-controls{grid-template-columns:minmax(0,1fr)}.app-nav{flex-wrap:wrap;gap:.5rem}.app-brand-inline{flex:auto;order:1;align-self:auto;min-width:0}.app-nav-theme{order:2;justify-self:auto}.app-nav .app-nav-menu-trigger{order:3;justify-content:center;align-items:center;display:inline-flex}.app-nav-right{order:4;width:100%;margin-left:0;display:none}.app-nav-right.app-nav-right-open{border:1px solid var(--line);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface)95%,#fff);width:100%;box-shadow:var(--shadow-soft);grid-template-columns:minmax(0,1fr);gap:.36rem;margin-top:.14rem;padding:.62rem;display:grid}.app-nav-links,.app-nav-auth{grid-template-columns:minmax(0,1fr);gap:.34rem;display:grid}.app-nav-right .app-nav-links a,.app-nav-right .app-nav-auth a,.app-nav-right .app-nav-auth button{text-align:left;border:1px solid var(--line);background:color-mix(in srgb,var(--surface-strong)92%,#fff);width:100%;color:var(--ink-strong);white-space:normal;background-image:none;background-size:0 0;border-radius:10px;padding:.62rem .72rem;line-height:1.25;display:block}.app-nav-right .app-nav-links a:hover,.app-nav-right .app-nav-auth a:hover,.app-nav-right .app-nav-auth button:hover,.app-nav-right .app-nav-links a[aria-current=page],.app-nav-right .app-nav-auth a[aria-current=page]{background:var(--surface);border-color:var(--line-strong);color:var(--ink-strong);background-image:none;background-size:0 0}.app-nav-user{overflow-wrap:anywhere;max-width:none}.milestone-badge-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.container{padding-top:2.2rem;padding-left:.95rem;padding-right:.95rem}.app-nav.container{padding-top:.62rem;padding-bottom:.62rem}.app-nav-user{max-width:min(52vw,16ch)}.catalog-card{grid-template-columns:70px minmax(0,1fr);gap:.72rem}.catalog-cover{width:70px;height:96px}.book-hero{grid-template-columns:96px minmax(0,1fr)}.book-detail-cover{width:96px;height:136px}.external-links{grid-template-columns:minmax(0,1fr)}.auth-links{gap:.45rem;display:grid}.invite-table-wrap{overflow-x:visible}.invite-table{box-shadow:none;background:0 0;border:0;border-radius:0;margin-top:.72rem;display:block}.invite-table thead{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.invite-table tbody{gap:.7rem;display:grid}.invite-table tr{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:14px;display:block;overflow:hidden}.invite-table td{border-bottom:1px solid var(--line);grid-template-columns:minmax(6.2rem,40%) minmax(0,1fr);align-items:start;gap:.55rem;padding:.58rem .7rem;display:grid}.invite-table td:last-child{border-bottom:0}.invite-table tr:last-child td{border-bottom:1px solid var(--line)}.invite-table tr:last-child td:last-child{border-bottom:0}.invite-table td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-size:.76rem;font-weight:700;line-height:1.25}.invite-table td[data-label=Action] button,.invite-table td[data-label=Actions] button{width:100%}.invite-table td[data-label=Action] .invite-icon-button,.invite-table td[data-label=Actions] .invite-icon-button{width:2.2rem!important;min-width:2.2rem!important}.pagination-controls{justify-content:center;align-items:center}.pagination-actions{flex-wrap:wrap;justify-content:center}.pagination-page-label{order:0}.audit-details{max-width:none}.milestone-card-header{align-items:stretch}.milestone-total{justify-items:start;width:100%;min-width:0}.milestone-badge{min-height:0}}
