@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/224e262ef877bfa4-s.0mo8vqgr8yagc.woff2?dpl=dpl_AraD6UBspetewSnQQmFvdVes8U48)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/7f11d98043fdedc9-s.0r4w1y.tjq0ay.woff2?dpl=dpl_AraD6UBspetewSnQQmFvdVes8U48)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.0lcb62h0-.jh3.woff2?dpl=dpl_AraD6UBspetewSnQQmFvdVes8U48)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.0ri_id_kcagyz.woff2?dpl=dpl_AraD6UBspetewSnQQmFvdVes8U48)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.0tqkxa-w3pk~c.woff2?dpl=dpl_AraD6UBspetewSnQQmFvdVes8U48)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.nunito_1108b859-module__PeczNG__className{font-family:Nunito,Nunito Fallback;font-style:normal}.nunito_1108b859-module__PeczNG__variable{--font-nunito:"Nunito", "Nunito Fallback"}
@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b529365fa126a3f2-s.17~hndooavd5u.woff2?dpl=dpl_AraD6UBspetewSnQQmFvdVes8U48)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8e451580e5e95631-s.p.0put2--9ix-3p.woff2?dpl=dpl_AraD6UBspetewSnQQmFvdVes8U48)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d74bdd14d6019bc6-s.02x781ca3~dwt.woff2?dpl=dpl_AraD6UBspetewSnQQmFvdVes8U48)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(../media/345c85a432359eed-s.p.0az0.9544w3d6.woff2?dpl=dpl_AraD6UBspetewSnQQmFvdVes8U48)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato Fallback;src:local(Arial);ascent-override:101.03%;descent-override:21.8%;line-gap-override:0.0%;size-adjust:97.69%}.lato_1a86c0ae-module__mfF6kG__className{font-family:Lato,Lato Fallback;font-style:normal}.lato_1a86c0ae-module__mfF6kG__variable{--font-lato:"Lato", "Lato Fallback"}
:root{--vatt-navy:#283582;--vatt-navy-dark:#1f2a68;--vatt-navy-hover:#232d70;--vatt-orange:#f49d00;--vatt-orange-hover:#e08f00;--vatt-cream:#faf8f3;--vatt-sky:#6ec1e4;--vatt-grey:#4f4f4f;--color-background:var(--vatt-cream);--color-foreground:var(--vatt-navy-dark);--color-heading:var(--vatt-navy);--color-surface:#fff;--color-surface-foreground:var(--vatt-navy-dark);--color-primary:var(--vatt-orange);--color-primary-hover:var(--vatt-orange-hover);--color-primary-foreground:var(--vatt-navy-dark);--color-secondary:#edf5fc;--color-secondary-hover:#dcebf8;--color-secondary-foreground:var(--vatt-navy);--color-muted:#f0ede6;--color-muted-foreground:var(--vatt-grey);--color-accent:#edf5fc;--color-accent-foreground:var(--vatt-navy);--color-destructive:#cc1719;--color-destructive-hover:#b01315;--color-destructive-foreground:#fff;--color-destructive-soft:#fdecec;--color-success:#10b981;--color-warning:#f59e0b;--color-border:#e7e7e7;--color-border-strong:#d4d4d4;--color-input:#d4d4d4;--color-ring:var(--vatt-sky);--color-brand-bar:var(--vatt-navy);--color-brand-bar-border:var(--vatt-navy-dark);--color-brand-bar-foreground:#fff;--font-body:var(--font-nunito), system-ui, -apple-system, "Segoe UI", sans-serif;--font-heading:var(--font-lato), var(--font-nunito), system-ui, sans-serif;--text-2xs:.625rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-display:clamp(2rem, 4vw, 3.2rem);--leading-tight:1.2;--leading-normal:1.5;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius:.75rem;--radius-sm:calc(var(--radius) - 4px);--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + 4px);--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-focus:0 0 0 3px #6ec1e480;--container-max:1400px;--header-height:4rem;--gutter:var(--space-6);--duration-fast:.15s;--duration-normal:.2s;--duration-slow:.3s}@media (max-width:640px){:root{--gutter:var(--space-4)}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-background);min-height:100vh;color:var(--color-foreground);font-family:var(--font-body);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;margin:0;display:flex}body>main,body>div{flex:1}h1,h2,h3,h4{font-family:var(--font-heading);line-height:var(--leading-tight)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}::selection{background:var(--color-primary);color:var(--color-primary-foreground)}.container{width:100%;max-width:var(--container-max);padding:var(--space-8) var(--gutter) var(--space-16);margin:0 auto}.toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin:var(--space-5) 0;flex-wrap:wrap;display:flex}.toolbar h2,.toolbar h1{margin:0}.full{grid-column:1/-1}.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}.page-intro{margin-bottom:var(--space-6)}.page-intro h1{margin:0 0 var(--space-3);color:var(--color-heading);letter-spacing:-.01em;text-wrap:balance;font-size:clamp(1.875rem,3vw,2.25rem)}.page-intro p{max-width:42rem;color:var(--color-muted-foreground);font-size:var(--text-lg);margin:0;line-height:1.625}.muted{color:var(--color-muted-foreground)}.site-header{z-index:50;background:var(--color-brand-bar);border-bottom:1px solid var(--color-brand-bar-border);width:100%;color:var(--color-brand-bar-foreground);box-shadow:var(--shadow-md);position:sticky;top:0}.site-header-inner{max-width:var(--container-max);min-height:var(--header-height);padding:var(--space-2) var(--gutter);align-items:center;gap:var(--space-4);margin:auto;display:flex}.brand{align-items:center;gap:var(--space-3);border-radius:var(--radius-sm);min-width:0;font-family:var(--font-heading);font-weight:var(--weight-bold);transition:opacity var(--duration-fast);flex-shrink:0;display:inline-flex}.brand:hover{opacity:.9}.brand img{object-fit:contain;width:auto;height:44px}.brand span{font-size:var(--text-lg);white-space:nowrap}.header-links{gap:var(--space-1);align-items:center;margin-left:auto;display:flex}.header-link{border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);color:#ffffffe6;transition:background-color var(--duration-fast), color var(--duration-fast)}.header-link:hover{color:#fff;background:#ffffff1a}.header-link[aria-current=page]{color:#fff;background:#ffffff26}.header-action{justify-content:center;align-items:center;gap:var(--space-2);height:2.25rem;padding:0 var(--space-4);border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-primary-foreground);font-size:var(--text-sm);font-weight:var(--weight-semibold);transition:background-color var(--duration-fast);border:1px solid #ffffff40;display:inline-flex}.header-action:hover{background:var(--color-primary-hover)}.lang-switch{border-radius:var(--radius-full);background:var(--vatt-navy-dark);height:2.25rem;font-size:var(--text-xs);font-weight:var(--weight-semibold);border:1px solid #ffffff40;align-items:center;padding:3px;display:inline-flex}.lang-switch a{padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);color:#fffc}.lang-switch a:hover{color:#fff}.lang-switch .active{color:#fff;background:#ffffff26}.footer{margin-top:var(--space-12);background:var(--color-brand-bar);color:#fffc}.footer-inner{max-width:var(--container-max);padding:var(--space-10) var(--gutter);justify-content:space-between;align-items:center;gap:var(--space-4);font-size:var(--text-sm);flex-wrap:wrap;margin:auto;display:flex}.footer-inner p{margin:0}.footer-brand{color:#fff;font-weight:var(--weight-medium)}.footer-subtle{color:#fff9}.footer a{color:#ffffffe6;text-underline-offset:4px}.footer a:hover{color:#fff;text-decoration:underline}.card{background:var(--color-surface);color:var(--color-surface-foreground);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs)}.card-interactive{transition:border-color var(--duration-normal), box-shadow var(--duration-normal)}.card-interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md)}.panel{padding:var(--space-6);margin:var(--space-4) 0}.panel h2{margin-top:0}label{font-weight:var(--weight-medium);font-size:var(--text-sm);margin-bottom:var(--space-2);display:block}.field{align-content:start;gap:var(--space-2);display:grid}.field label{margin:0}.field-hint{font-size:var(--text-xs);color:var(--color-muted-foreground);margin:0}.field-error{font-size:var(--text-xs);color:var(--color-destructive);margin:0}input,select,textarea{width:100%;min-height:2.5rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-input);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-foreground);box-shadow:var(--shadow-xs);transition:border-color var(--duration-fast), box-shadow var(--duration-fast)}input[type=checkbox],input[type=radio]{width:auto;min-height:0;box-shadow:none;accent-color:var(--vatt-navy)}input::placeholder,textarea::placeholder{color:var(--color-muted-foreground)}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--color-ring);box-shadow:var(--shadow-focus);outline:none}input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}[aria-invalid=true]{border-color:var(--color-destructive)}textarea{resize:vertical;min-height:110px}.catalogue-filters{gap:var(--space-3);margin-bottom:var(--space-4);display:grid}.search-row{gap:var(--space-3);display:flex}.search-row .button{min-height:2.75rem;padding-inline:var(--space-6)}.search-input{background:var(--color-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%234f4f4f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat .85rem center;flex:1;min-height:2.75rem;padding-left:2.5rem}.filter-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.filter-row select{flex:0 auto;width:auto;min-width:10rem;max-width:16rem}.results-bar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border);display:flex}.results-bar p{font-size:var(--text-sm);margin:0}.results-bar select{width:auto;min-width:11rem}.form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.choice-list{gap:var(--space-2);margin:var(--space-3) 0 0;border:0;padding:0;display:grid}.choice-option{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-weight:var(--weight-regular);cursor:pointer;display:flex}.choice-option input{margin-top:.3rem}.choice-option:has(input:checked){border-color:var(--color-ring);box-shadow:var(--shadow-focus)}.choice-option small{display:block}.settings-add{align-items:flex-end;gap:var(--space-3);margin:var(--space-4) 0;flex-wrap:wrap;display:flex}.settings-add label{gap:var(--space-1);flex:12rem;display:grid}.settings-add .settings-check{align-items:center;gap:var(--space-2);flex:none;min-height:2.5rem;display:flex}.settings-group{border-top:1px solid var(--color-border);padding:var(--space-3) 0}.settings-group summary{cursor:pointer;font-weight:var(--weight-semibold)}.settings-group table input:not([type=checkbox]){min-width:10rem}.settings-row-actions{gap:var(--space-2);display:flex}.term-picker{gap:var(--space-2);display:grid}.term-chips{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.term-chip{align-items:center;gap:var(--space-1);border-radius:var(--radius-full);padding:2px var(--space-1) 2px var(--space-3);background:var(--color-secondary);color:var(--color-secondary-foreground);font-size:var(--text-sm);font-weight:var(--weight-medium);display:inline-flex}.term-chip button{border-radius:var(--radius-full);width:1.5rem;height:1.5rem;color:inherit;font-size:var(--text-base);cursor:pointer;background:0 0;border:0;place-items:center;line-height:1;display:inline-grid}.term-chip button:hover{background:var(--color-secondary-hover)}.term-chip button:focus-visible{box-shadow:var(--shadow-focus);outline:none}.form-actions{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:2.5rem;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-primary-foreground);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;transition:background-color var(--duration-fast), border-color var(--duration-fast), color var(--duration-fast);border:1px solid #0000;display:inline-flex}.button:hover{background:var(--color-primary-hover)}.button.secondary{background:var(--color-secondary);color:var(--color-secondary-foreground)}.button.secondary:hover{background:var(--color-secondary-hover)}.button.outline{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-foreground);box-shadow:var(--shadow-xs)}.button.outline:hover{background:var(--color-accent);color:var(--color-accent-foreground)}.button.ghost{color:var(--color-foreground);background:0 0}.button.ghost:hover{background:var(--color-accent);color:var(--color-accent-foreground)}.button.danger{background:var(--color-destructive);color:var(--color-destructive-foreground)}.button.danger:hover{background:var(--color-destructive-hover)}.button.link{min-height:0;color:var(--color-heading);text-underline-offset:4px;background:0 0;padding:0}.button.link:hover{text-decoration:underline}.button.sm{min-height:2rem;padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.button.lg{min-height:2.75rem;padding:var(--space-2) var(--space-6);font-size:var(--text-base)}.button.pill{border-radius:var(--radius-full)}.button:disabled,.button[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-full);padding:2px var(--space-2);background:var(--color-muted);color:var(--color-muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.5;display:inline-flex}.badge.brand{background:var(--color-secondary);color:var(--color-secondary-foreground)}.badge.primary{background:var(--color-primary);color:var(--color-primary-foreground)}.badge.outline{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-foreground)}.badge.danger{background:var(--color-destructive-soft);color:var(--color-destructive)}.badges{gap:var(--space-2);margin:var(--space-3) 0 0;flex-wrap:wrap;display:flex}.status-dot{border-radius:var(--radius-full);background:var(--color-success);flex-shrink:0;width:.5rem;height:.5rem;display:inline-block}.status-dot.warning{background:var(--color-warning)}.status-dot.danger{background:var(--color-destructive)}.notice{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-secondary);color:var(--color-secondary-foreground);font-size:var(--text-sm);margin:var(--space-4) 0;border:1px solid #2835821f}.notice.error{background:var(--color-destructive-soft);color:var(--color-destructive);border-color:#cc17194d}.notice.warning{color:#7a4f00;background:#fff6e5;border-color:#f49d0059}.book-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));display:grid}.book-card{box-shadow:none;transition:border-color var(--duration-normal), box-shadow var(--duration-normal);border-color:#e7e7e799;flex-direction:column;display:flex;overflow:hidden}.book-card:hover{border-color:var(--color-border);box-shadow:var(--shadow-md)}.book-card .book-cover img{transition:transform var(--duration-slow)}.book-card:hover .book-cover img{transform:scale(1.05)}.book-cover{aspect-ratio:2/3;background:var(--color-muted);place-items:center;display:grid;position:relative;overflow:hidden}.book-cover img{object-fit:cover;width:100%;height:100%}.cover-placeholder{color:var(--color-heading);text-align:center;padding:var(--space-5);font-family:var(--font-heading);font-weight:var(--weight-bold)}.cover-placeholder small{margin-top:var(--space-3);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-muted-foreground);display:block}.book-card-body{padding:var(--space-3);flex-direction:column;flex:1;display:flex}.book-card h3{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);margin:0 0 2px;line-height:1.3}.book-card p{color:var(--color-muted-foreground);font-size:var(--text-xs);margin:0}.book-card .badges{padding-top:var(--space-3);margin-top:auto}.book-cover.book-cover-whole.has-image,.book-grid[data-cover-layout=natural] .book-cover.has-image{aspect-ratio:auto;display:block}.book-cover.book-cover-whole.has-image img,.book-grid[data-cover-layout=natural] .book-cover.has-image img{display:block;height:auto!important;position:static!important}.book-grid[data-cover-layout=natural]{align-items:start}.book-grid[data-cover-layout=contain] .book-cover img,.book-grid[data-cover-layout=square] .book-cover img{object-fit:contain}.book-grid[data-cover-layout=square] .book-cover,.book-grid[data-cover-layout=square-top] .book-cover{aspect-ratio:1}.book-grid[data-cover-layout=square-top] .book-cover.has-image{place-items:start}.book-grid[data-cover-layout=square-top] .book-cover.has-image img{transform-origin:top;height:auto!important}.cover-layout-switch{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-2) var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.cover-layout-switch-label{color:var(--color-muted-foreground);font-weight:var(--weight-semibold);margin-right:var(--space-2)}.cover-layout-switch button{font:inherit;padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-background);color:var(--color-foreground);cursor:pointer}.cover-layout-switch button.active{background:var(--color-heading);border-color:var(--color-heading);color:var(--color-background)}.detail-grid{gap:var(--space-8);grid-template-columns:minmax(230px,300px) minmax(0,1fr);display:grid}.detail-cover{border-radius:var(--radius-xl);box-shadow:var(--shadow-md);align-self:start;overflow:hidden}.detail-main h1{margin:0 0 var(--space-1);font-size:var(--text-display);color:var(--color-heading);line-height:1.12}.detail-main h2{font-size:var(--text-lg);margin:var(--space-6) 0 var(--space-2)}.detail-main p{margin:var(--space-2) 0}.back-link{margin-bottom:var(--space-5);color:var(--color-heading);font-size:var(--text-sm);font-weight:var(--weight-semibold);display:inline-block}.back-link:hover{text-underline-offset:4px;text-decoration:underline}.meta-grid{gap:var(--space-4) var(--space-6);margin-top:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.meta-grid div{border-top:1px solid var(--color-border);padding-top:var(--space-2)}.meta-grid dt{color:var(--color-muted-foreground);font-size:var(--text-xs)}.meta-grid dd{font-weight:var(--weight-semibold);margin:2px 0 0}.staff-layout{min-height:calc(100vh - var(--header-height));grid-template-columns:250px minmax(0,1fr);display:grid}.staff-nav{background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-6) var(--space-4)}.staff-nav h2{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted-foreground);margin:0 var(--space-3) var(--space-3)}.staff-nav a{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-medium);display:block}.staff-nav a:hover{background:var(--color-accent);color:var(--color-accent-foreground)}.staff-nav-user{padding:var(--space-5) var(--space-3);margin-top:var(--space-2);border-top:1px solid var(--color-border)}.staff-nav-role{font-size:var(--text-xs);margin:var(--space-1) 0 var(--space-3)}.staff-main{padding:var(--space-8) var(--space-8) var(--space-16);width:100%;max-width:1200px}.staff-main h1{color:var(--color-heading);margin-top:0}.staff-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.staff-card{padding:var(--space-5)}.staff-card h2{margin:0 0 var(--space-2);font-size:var(--text-lg)}.staff-card p{margin:0 0 var(--space-4);color:var(--color-muted-foreground);font-size:var(--text-sm)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;background:var(--color-surface);width:100%}th,td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--text-sm)}th{color:var(--color-muted-foreground);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}tbody tr:hover{background:var(--vatt-cream)}.auth-wrap{max-width:460px;margin:var(--space-16) auto;padding:var(--space-8)}.auth-wrap h1{color:var(--color-heading);margin-top:0}.intake-url-row{gap:var(--space-3);display:flex}.intake-url-row .button{flex:none}.intake-preview{gap:var(--space-6);margin-top:var(--space-4);grid-template-columns:240px minmax(0,1fr);align-items:start;display:grid}.intake-cover .book-cover{border-radius:var(--radius-lg);border:1px solid var(--color-border)}.cover-options{margin:var(--space-4) 0 0;gap:var(--space-2);border:0;padding:0;display:grid}.cover-options legend{font-weight:var(--weight-medium);font-size:var(--text-sm);margin-bottom:var(--space-2)}.cover-option{align-items:center;gap:var(--space-3);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);font-weight:var(--weight-regular);cursor:pointer;margin:0;display:flex}.cover-option:has(input:checked){border-color:var(--color-heading);background:var(--color-accent)}.cover-option small{display:block}.cover-option-thumb{aspect-ratio:2/3;border-radius:var(--radius-sm);background:var(--color-muted);flex:none;width:40px;position:relative;overflow:hidden}.cover-option-thumb img{object-fit:cover}.intake-source{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.intake-evidence{padding:var(--space-4) var(--space-5);margin-top:var(--space-6);font-size:var(--text-sm)}.intake-evidence h3{font-size:var(--text-base);margin:0 0 var(--space-2)}.intake-evidence ul{margin:0 0 var(--space-3);padding-left:var(--space-5);overflow-wrap:anywhere}.intake-steps{gap:var(--space-2) var(--space-5);margin:0 0 var(--space-4);font-size:var(--text-sm);flex-wrap:wrap;padding:0;list-style:none;display:flex}.intake-steps li{align-items:center;gap:var(--space-2);color:var(--color-muted-foreground);display:inline-flex}.intake-steps li:before{content:"";border-radius:var(--radius-full);border:2px solid var(--color-border-strong);width:.75rem;height:.75rem}.intake-steps li[data-state=active]{color:var(--color-foreground);font-weight:var(--weight-medium)}.intake-steps li[data-state=active]:before{border-color:var(--color-heading);border-right-color:#0000;animation:.9s linear infinite spin}.intake-steps li[data-state=done]{color:var(--color-foreground)}.intake-steps li[data-state=done]:before{border-color:var(--color-success);background:var(--color-success)}.intake-locked input[readonly],.intake-locked textarea[readonly]{background:var(--color-muted);color:var(--color-muted-foreground);cursor:not-allowed}.skeleton{background:linear-gradient(90deg, var(--color-muted) 25%, var(--color-surface) 50%, var(--color-muted) 75%);background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}.intake-locked input.skeleton,.intake-locked textarea.skeleton{background:linear-gradient(90deg, var(--color-muted) 25%, var(--color-surface) 50%, var(--color-muted) 75%);background-size:200% 100%}.cover-placeholder.skeleton{width:100%;height:100%}.staff-loading-title{border-radius:var(--radius-sm);width:40%;height:2.25rem;margin-bottom:var(--space-3)}.staff-loading-line{border-radius:var(--radius-sm);width:75%;height:1rem;margin-bottom:var(--space-3)}.staff-loading-line.short{width:45%}.staff-loading-panel{margin-top:var(--space-5)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes spin{to{transform:rotate(360deg)}}.dropzone{border:2px dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-background);min-height:12rem;color:var(--color-muted-foreground);transition:border-color var(--duration-fast), background var(--duration-fast);display:grid;position:relative}.dropzone:hover:not(.disabled),.dropzone.dragging{border-color:var(--color-heading);background:var(--color-accent)}.dropzone.dragging{border-style:solid}.dropzone:has(input:focus-visible){border-color:var(--color-heading);box-shadow:var(--shadow-focus)}.dropzone.has-file{border-style:solid;border-color:var(--color-border);background:var(--color-surface)}.dropzone.invalid{border-color:var(--color-destructive)}.dropzone.disabled{opacity:.6}.dropzone-target{place-content:center;justify-items:center;gap:var(--space-1);padding:var(--space-6);text-align:center;font-weight:var(--weight-regular);cursor:pointer;margin:0;display:grid}.dropzone.disabled .dropzone-target{cursor:not-allowed}.dropzone-icon{width:2.5rem;height:2.5rem;margin-bottom:var(--space-2);color:var(--color-heading)}.dropzone-title{color:var(--color-foreground);font-weight:var(--weight-semibold)}.dropzone-or{font-size:var(--text-sm)}.dropzone-link{color:var(--color-heading);font-weight:var(--weight-semibold);text-underline-offset:2px;text-decoration:underline}.dropzone-preview{align-items:center;gap:var(--space-4);padding:var(--space-4);display:flex}.dropzone-thumb{border-radius:var(--radius-md);border:1px solid var(--color-border);flex:none;width:120px}.dropzone-file{justify-items:start;gap:var(--space-1);min-width:0;display:grid}.dropzone-file strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--color-foreground);overflow:hidden}.dropzone-file small{font-size:var(--text-xs)}.dropzone-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.cover-upload{gap:var(--space-6);grid-template-columns:180px minmax(0,1fr);align-items:start;display:grid}.cover-upload-current{margin:0}.cover-upload-current .book-cover{border-radius:var(--radius-lg);border:1px solid var(--color-border)}.cover-upload-current figcaption{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-muted-foreground);text-align:center}.cover-upload-new{gap:var(--space-3);display:grid}.cover-upload-new .form-actions{margin-top:0}@media (prefers-reduced-motion:reduce){.skeleton,.intake-steps li[data-state=active]:before{animation:none}}@media (max-width:950px){.staff-layout{grid-template-columns:1fr}.staff-nav{border-right:0;border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:3px;display:flex}.staff-nav h2,.staff-nav-user{width:100%}}@media (max-width:650px){.cover-upload{grid-template-columns:1fr}.cover-upload-current{width:140px}.site-header-inner{gap:var(--space-2);flex-wrap:wrap}.header-links{gap:0}.header-link{padding:var(--space-2) var(--space-3)}.brand img{height:40px}.brand span{display:none}.filter-row{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.filter-row select{min-width:0;max-width:none}.detail-grid{grid-template-columns:1fr}.detail-cover{max-width:260px}.meta-grid,.form-grid,.intake-preview{grid-template-columns:1fr}.intake-url-row{flex-direction:column}.intake-cover{max-width:260px}.staff-main{padding:var(--space-6) var(--gutter)}}
