/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.block{display:block}.grid{display:grid}.hidden{display:none}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#18342d;--green:#1d6b54;--mint:#dff2e8;--cream:#f7f5ed;--line:#d9ddd4;--muted:#66736e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,sans-serif}button,input,select,textarea{font:inherit}header{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f5edf2;border-bottom:1px solid #18342d1e;justify-content:space-between;align-items:center;height:78px;padding:0 max(28px,50vw - 560px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;font-weight:800;display:flex}.brand>b{background:var(--ink);color:#fff;border-radius:10px;place-items:center;width:38px;height:38px;font:700 21px serif;display:grid}.brand em{letter-spacing:.12em;color:var(--green);font-size:10px;font-style:normal;display:block}nav{align-items:center;gap:28px;display:flex}nav a{color:#40544e;font-size:14px}nav button{background:var(--green);color:#fff;border:0;border-radius:99px;padding:11px 18px;font-weight:700}.hero{grid-template-columns:1fr 340px;align-items:end;gap:72px;max-width:1120px;margin:auto;padding:76px 0 58px;display:grid}.eyebrow{color:var(--green);letter-spacing:.16em;margin:0 0 14px;font-size:13px;font-weight:800}.hero h1{letter-spacing:-.04em;margin:0 0 22px;font:700 54px/1.14 serif}.hero>div>p:last-child{color:#52625d;max-width:670px;font-size:17px;line-height:1.9}.hero aside{background:var(--mint);border-radius:16px 16px 16px 3px;padding:24px 26px}.hero aside p{color:#53665f;font-size:14px;line-height:1.7}.hero aside>b{color:var(--green);font-size:12px}.notice{background:var(--mint);border:1px solid #91c6ae;border-radius:12px;gap:16px;max-width:960px;margin:0 auto 22px;padding:18px 22px;display:flex}.notice span{flex:1;font-size:13px}.notice button{background:0 0;border:0}form{max-width:960px;margin:0 auto 96px}.card{border:1px solid var(--line);background:#fff;border-radius:18px;margin-bottom:18px;padding:38px 42px 42px;box-shadow:0 8px 30px #233a3209}.sectionhead{border-bottom:1px solid #e7e9e4;gap:17px;margin-bottom:28px;padding-bottom:28px;display:flex}.sectionhead>b{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:35px;height:35px;font-size:12px;display:grid}.sectionhead h2{margin:0 0 5px;font:700 25px serif}.sectionhead p{color:var(--muted);margin:0;font-size:13px}.grid{grid-template-columns:1fr 1fr;gap:25px 24px;display:grid}.field.wide{grid-column:1/-1}.field>label{align-items:center;gap:9px;margin-bottom:10px;font-size:14px;font-weight:800;display:flex}.field label i{color:var(--green);background:var(--mint);border-radius:5px;padding:3px 7px;font-size:10px;font-style:normal}.field small{color:#7b8681;margin-top:8px;font-size:12px;display:block}input,select,textarea{width:100%;color:var(--ink);background:#fbfbf8;border:1px solid #cfd5cf;border-radius:9px;outline:none;padding:13px 14px}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #1d6b541f}.person{grid-template-columns:150px 1fr auto;gap:9px;display:grid}.person button{border:1px solid var(--green);color:var(--green);background:#fff;border-radius:9px;padding:0 17px}.price{grid-template-columns:92px 1fr;gap:8px;display:grid}.stack{gap:27px;display:grid}.chips{flex-wrap:wrap;gap:9px;display:flex}.chips button{color:#43534d;background:#fff;border:1px solid #c7cec8;border-radius:99px;padding:9px 15px}.chips button.active{color:#fff;border-color:var(--green);background:var(--green)}.picture{background:#f0f8f4;border:1px solid #c4dfd1;border-radius:13px;gap:24px;margin-top:30px;padding:28px;display:grid}.pictureTitle{align-items:center;gap:13px;display:flex}.pictureTitle>b{color:#fff;background:#e87852;border-radius:50%;place-items:center;width:42px;height:42px;font-family:serif;display:grid}.pictureTitle span{display:grid}.pictureTitle small{color:var(--muted)}.collapse{padding:0;overflow:hidden}.collapse>button{width:100%;color:var(--ink);text-align:left;background:#fff;border:0;justify-content:space-between;padding:26px 35px;display:flex}.collapse>button span{gap:5px;display:grid}.collapse>button small{color:var(--muted)}.collapse>button i{color:var(--green);font-size:26px;font-style:normal}.inside{border-top:1px solid #e7e9e4;padding:28px 35px 35px}.submitbar{background:var(--ink);color:#fff;border-radius:16px;justify-content:space-between;align-items:center;padding:28px 32px;display:flex}.submitbar>span{gap:6px;display:grid}.submitbar small{color:#b8c6c0}.submitbar>div{gap:10px;display:flex}.submitbar button{border-radius:9px;padding:13px 19px;font-weight:800}.draft{color:#fff;background:0 0;border:1px solid #698078}.send{color:var(--ink);background:#f3c55d;border:0}.rules{background:#e4eee8;padding:80px max(28px,50vw - 480px)}.rules>h2{max-width:580px;margin:0 0 42px;font:700 36px/1.35 serif}.rules>div{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.rules article{background:#fff9;border-radius:12px;padding:27px}.rules article>b{color:#e16d48;font-size:11px}.rules article h3{font:700 19px serif}.rules article p{color:#5b6a65;font-size:13px;line-height:1.7}footer{background:var(--ink);color:#dce6e1;justify-content:space-between;padding:25px max(28px,50vw - 560px);font-size:12px;display:flex}@media (width<=900px){header{padding:0 20px}nav a{display:none}.hero{grid-template-columns:1fr;gap:28px;margin:0 24px;padding-top:52px}.hero h1{font-size:42px}form,.notice{margin-left:18px;margin-right:18px}.card{padding:30px 24px}.person{grid-template-columns:1fr}.person button{padding:12px}.submitbar{flex-direction:column;align-items:flex-start;gap:22px}.rules>div{grid-template-columns:1fr}}@media (width<=600px){.brand span{font-size:13px}nav button{font-size:12px}.grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.card{padding:27px 18px}.hero{margin:0 18px}.hero h1{font-size:37px}.submitbar>div{flex-direction:column;width:100%}.submitbar button{width:100%}footer{flex-direction:column;gap:14px}}.person{grid-template-columns:150px 1fr}.submitbar>.send{border-radius:9px;padding:13px 19px;font-weight:800}.send:disabled{opacity:.58;cursor:wait}.wall{background:#fff;padding:82px max(28px,50vw - 480px)}.wallHead{justify-content:space-between;align-items:end;gap:36px;margin-bottom:34px;display:flex}.wallHead h2{margin:0 0 10px;font:700 36px/1.3 serif}.wallHead>div>p:last-child{color:var(--muted);margin:0;font-size:14px}.wallHead>b{text-align:right;color:#e16d48;min-width:110px;font:700 38px serif}.wallHead>b small{color:var(--muted);font:500 13px sans-serif;display:block}.bookList{border-top:2px solid var(--ink)}.bookRow{border-bottom:1px solid #dde2dd;grid-template-columns:62px 1fr 180px;align-items:center;gap:22px;padding:24px 10px;display:grid}.number{color:#a3ada8;font:700 13px monospace}.bookMain h3{margin:9px 0 6px;font:700 21px serif}.bookMain p{color:#53635d;margin:0 0 7px;font-size:15px}.bookMain small{color:#65736e;font-size:14px}.pending,.tag{border-radius:4px;margin-right:6px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-block}.pending{color:#9b492e;background:#f9ded4}.tag{color:var(--green);background:var(--mint)}.signature{text-align:right;gap:5px;display:grid}.signature strong{font:700 16px serif}.signature span{color:#74817c;font-size:12px}.empty{color:#66736e;border:1px dashed #cbd3ce;border-radius:13px;place-items:center;gap:8px;min-height:180px;font-size:14px;display:grid}.empty strong{color:var(--ink);font:700 20px serif}@media (width<=700px){.wall{padding:60px 18px}.wallHead{align-items:flex-start}.wallHead h2{font-size:30px}.bookRow{grid-template-columns:38px 1fr}.signature{text-align:left;grid-column:2}.person{grid-template-columns:1fr}}.tag.tag-print{color:#1d6b54;background:#dff2e8}.tag.tag-ebook{color:#245f9b;background:#dcecff}.tag.tag-audio{color:#7a5a00;background:#fff0b8}.tag.tag-readalong{color:#fff;background:#7a4b2f}.primary-language-tag{color:#65418a;vertical-align:middle;background:#f1e8fa;border:1px solid #c8b2df;border-radius:4px;align-items:center;margin-left:2px;padding:4px 9px;font-size:12px;line-height:1.2;display:inline-flex}.primary-language-tag span{border-right:1px solid #c8b2df;margin-right:6px;padding-right:6px;font-weight:500}.primary-language-tag strong{color:#4f2878;font-weight:800}.version-hint{color:#52625d;margin:12px 0 0;font-size:14px;line-height:1.75}.book-meta{color:#53635d;flex-wrap:wrap;gap:8px 18px;margin-top:11px;font-size:14px;display:flex}.book-awards{flex-wrap:wrap;gap:8px;margin:10px 0 12px;display:flex}.award-badge{color:#674b13;background:#fff9e7;border:1px solid #d6ae51;border-radius:7px;align-items:stretch;font-size:.78rem;line-height:1.4;text-decoration:none;display:inline-flex;overflow:hidden}.award-badge:hover,.award-badge:focus-visible{border-color:#a77b1d;box-shadow:0 0 0 3px #d6ae5138}.award-badge b{color:#553b08;white-space:nowrap;background:#f4df9b;align-items:center;padding:5px 8px;display:inline-flex}.award-badge span{padding:5px 9px}.book-meta span{align-items:baseline;gap:7px;display:inline-flex}.book-meta b{color:#18342d;font-size:13px}.book-notes{color:#465851;background:#f2f5f2;border-left:3px solid #a9bdb4;border-radius:0 7px 7px 0;margin-top:16px;padding:12px 14px}.book-notes b{color:#28483e;letter-spacing:.05em;margin-bottom:5px;font-size:12px;display:block}.book-notes p{color:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.7}@media (width<=700px){.award-badge{width:100%}.book-notes{margin-top:14px;padding:11px 12px}}.nav-active{color:var(--green);font-weight:800}.admin-link{border:1px solid #9cb0a7;border-radius:8px;padding:9px 13px}.catalog-hero{max-width:960px;margin:auto;padding:72px 0 46px}.catalog-hero h1{margin:0 0 15px;font:700 48px/1.2 serif}.catalog-hero>p:last-child{color:var(--muted);font-size:16px}.catalog{max-width:960px;margin:0 auto 90px}.search-panel{border:1px solid var(--line);background:#fff;border-radius:15px;padding:23px}.search-panel>input{font-size:17px}.search-panel>div{grid-template-columns:repeat(5,1fr) auto;gap:10px;margin-top:11px;display:grid}.search-panel button{color:var(--ink);background:#f7f5ed;border:1px solid #b7c1bb;border-radius:9px;padding:0 14px}.result-head{justify-content:space-between;align-items:center;margin:30px 0 16px;display:flex}.result-head a{color:var(--green);font-size:13px;font-weight:800;text-decoration:none}.review-state{border-radius:4px;margin-right:6px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-block}.state-approved{color:#1d6b54;background:#dff2e8}.state-pending{color:#9b492e;background:#f9ded4}.state-needs_info{color:#795b06;background:#fff1bd}.bookMain h3 small{font:inherit}.about-grid{grid-template-columns:1fr 1fr;gap:18px;max-width:960px;margin:0 auto 90px;display:grid}.about-grid article{border:1px solid var(--line);background:#fff;border-radius:14px;padding:30px}.about-grid article>b{color:#e16d48;font-size:11px}.about-grid h2{font:700 23px serif}.about-grid p{color:var(--muted);line-height:1.8}.admin-shell{max-width:1060px;margin:0 auto 90px;padding-top:60px}.admin-head{justify-content:space-between;align-items:end;display:flex}.admin-head h1{margin:0;font:700 43px serif}.admin-head p{color:var(--muted)}.admin-head a{color:var(--green)}.admin-tabs{gap:8px;margin:32px 0 18px;display:flex}.admin-tabs button{color:var(--ink);background:#fff;border:1px solid #cbd2cd;border-radius:9px;padding:11px 15px}.admin-tabs button.active{background:var(--ink);color:#fff}.admin-tabs b{margin-left:8px}.review-list{gap:12px;display:grid}.review-list article{border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:1fr auto;gap:25px;padding:25px;display:grid}.review-copy>span{color:#8a948f;font-size:11px}.review-copy h2{margin:7px 0;font:700 21px serif}.review-copy p,.review-copy small{color:var(--muted)}.review-copy blockquote{color:#53635d;background:#f5f6f2;border-left:3px solid #b9c8c0;margin:14px 0 0;padding:11px 14px;font-size:13px}.review-actions{flex-direction:column;gap:7px;display:flex}.review-actions button{background:#fff;border:1px solid #bdc7c1;border-radius:7px;min-width:92px;padding:9px}.review-actions .approve{color:#fff;background:var(--green);border-color:var(--green)}.review-actions .hide{color:#a54e35}@media (width<=900px){.catalog-hero,.catalog,.admin-shell{margin-left:18px;margin-right:18px}.search-panel>div{grid-template-columns:1fr 1fr}.about-grid{margin:0 18px 70px}.admin-shell{padding-top:45px}}@media (width<=650px){.catalog-hero h1{font-size:38px}.search-panel>div,.about-grid{grid-template-columns:1fr}.result-head{flex-direction:column;align-items:flex-start;gap:8px}.review-list article{grid-template-columns:1fr}.review-actions{flex-flow:wrap}.admin-head{flex-direction:column;align-items:flex-start;gap:12px}.admin-tabs{overflow-x:auto}.admin-tabs button{white-space:nowrap}}.review-actions .edit{color:#285e75;background:#eef7fa;border-color:#8dafbe}.editor-backdrop{z-index:50;background:#19231fa8;justify-content:center;align-items:flex-start;padding:35px 20px;display:flex;position:fixed;inset:0;overflow-y:auto}.record-editor{background:#fbfaf5;border-radius:16px;width:min(920px,100%);padding:30px;box-shadow:0 24px 70px #00000040}.record-editor>header{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding-bottom:18px;display:flex}.record-editor h2{margin:2px 0 8px;font:700 30px serif}.record-editor header p:last-child{color:var(--muted);margin:0;font-size:13px}.close-editor{background:#fff;border:1px solid #c7cfca;border-radius:50%;flex:none;width:38px;height:38px;font-size:25px;line-height:1}.editor-grid{grid-template-columns:1fr 1fr;gap:15px 18px;padding:24px 0;display:grid}.editor-grid label{gap:7px;display:grid}.editor-grid label.wide{grid-column:1/-1}.editor-grid label span{color:#53635d;font-size:12px;font-weight:800}.editor-grid input,.editor-grid textarea{box-sizing:border-box;width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #bfc9c3;border-radius:8px;padding:11px 12px}.editor-grid textarea{resize:vertical}.review-history{color:var(--muted);font-size:12px}.editor-error{color:#963f28;background:#fce6df;border-radius:7px;padding:10px 12px}.record-editor>footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding-top:18px;display:flex}.record-editor footer>div{flex-wrap:wrap;gap:8px;display:flex}.record-editor footer button{background:#fff;border:1px solid #b9c4be;border-radius:8px;padding:10px 14px}.record-editor footer .approve{color:#fff;background:var(--green);border-color:var(--green)}.record-editor footer .delete-record{color:#a63d31;background:#fff6f3;border-color:#d8a49a}.record-editor footer button:disabled{opacity:.55}@media (width<=650px){.editor-grid{grid-template-columns:1fr}.editor-grid label.wide{grid-column:auto}.editor-backdrop{padding:12px}.record-editor{padding:20px}.record-editor>footer{flex-direction:column;align-items:stretch}.record-editor footer .delete-record{order:2}}.popular-keywords{border-top:1px solid #e2e6e1;grid-template-columns:170px 1fr;align-items:start;gap:24px;margin-top:20px;padding-top:18px;display:grid}.popular-keywords h2{margin:0 0 5px;font:700 18px/1.35 serif}.popular-keywords p{color:var(--muted);margin:0;font-size:11px;line-height:1.55}.popular-keyword-list{flex-wrap:wrap;gap:8px;display:flex}.search-panel .popular-keyword-list button{color:#285b4b;cursor:pointer;background:#f2faf6;border:1px solid #b9d3c5;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:6px 11px;font-size:13px;font-weight:800;display:inline-flex}.popular-keyword-list button>span{color:#39705f;background:#d9eee3;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;display:grid}.popular-keyword-list button small{color:#6a7a74;text-align:center;border-left:1px solid #b9d3c5;min-width:20px;padding-left:7px;font-size:10px}.search-panel .popular-keyword-list button:hover,.search-panel .popular-keyword-list button:focus-visible{border-color:var(--green);background:#e7f5ed}.search-panel .popular-keyword-list button.active{border-color:var(--green);background:var(--green);color:#fff}.popular-keyword-list button.active>span{color:#fff;background:#ffffff26}.popular-keyword-list button.active small{color:#fff;border-left-color:#ffffff52}@media (width<=650px){.popular-keywords{grid-template-columns:1fr;gap:12px}.popular-keyword-list{gap:7px}.search-panel .popular-keyword-list button{padding:7px 10px}}.wall-layout{grid-template-columns:minmax(0,1fr) 250px;align-items:start;gap:34px;display:grid}.wall-books .bookRow{grid-template-columns:50px minmax(0,1fr) 155px}.contributor-board{background:#f4f8f5;border:1px solid #cfd9d3;border-radius:14px;padding:24px 20px;position:sticky;top:102px}.contributor-board .eyebrow{margin-bottom:7px}.contributor-board h3{margin:0 0 5px;font:700 23px serif}.contributor-board>p:not(.eyebrow){color:var(--muted);margin:0 0 18px;font-size:13px}.contributor-board ol{margin:0;padding:0;list-style:none}.contributor-board li{border-top:1px solid #dce4df;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:8px;padding:11px 0;display:grid}.contributor-board li>b{width:23px;height:23px;color:var(--green);background:#e1ece6;border-radius:50%;place-items:center;font-size:11px;display:grid}.contributor-board li:first-child>b{color:var(--ink);background:#f3c55d}.contributor-board li strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.contributor-board li>span{color:#d45f3f;font:700 18px serif}.contributor-board li small{color:var(--muted);margin-left:2px;font:500 11px sans-serif}.contributor-empty{color:var(--muted);text-align:center;padding:20px 0;font-size:13px}@media (width<=900px){.wall-layout{grid-template-columns:1fr}.contributor-board{grid-row:1;position:static}.contributor-board ol{grid-template-columns:1fr 1fr;column-gap:20px;display:grid}}@media (width<=560px){.contributor-board ol{grid-template-columns:1fr}.wall-books .bookRow{grid-template-columns:38px 1fr}}.backup-panel{background:#f3f8f4;border:1px solid #bfd0c7;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:22px;margin:28px 0 18px;padding:22px 24px;display:grid}.backup-panel h2{margin:3px 0 6px;font:700 22px serif}.backup-panel p{color:var(--muted);margin:0}.backup-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.backup-actions a,.backup-actions label{color:var(--green);cursor:pointer;background:#fff;border:1px solid #9eb8aa;border-radius:8px;align-items:center;padding:10px 13px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.backup-actions label{color:#fff;background:var(--green)}.backup-actions input{display:none}.backup-actions .disabled{opacity:.55;cursor:wait}.backup-message{background:#fff;border-radius:7px;padding:10px 12px;color:var(--ink)!important;grid-column:1/-1!important}.year-stats{background:#eef5f1;border:1px solid #c9d9d0;border-radius:11px;align-items:center;gap:14px;margin:16px 0 0;padding:15px 18px;display:flex}.year-stats span{display:grid}.year-stats span b{font-size:19px}.year-stats span small,.year-stats>small{color:var(--muted)}.year-stats>strong{color:var(--green);margin-left:auto;font-size:28px}.backup-actions button{color:var(--green);cursor:pointer;background:#fff;border:1px solid #9eb8aa;border-radius:8px;align-items:center;padding:10px 13px;font-size:13px;font-weight:800;display:inline-flex}.snapshot-list{border-top:1px solid #cbdad2;grid-column:1/-1;padding-top:16px}.snapshot-list h3{margin:0 0 10px;font-size:16px}.snapshot-table{gap:7px;max-height:310px;display:grid;overflow:auto}.snapshot-table article{background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;display:flex}.snapshot-table article>div:first-child{gap:2px;display:grid}.snapshot-table span{color:var(--muted);font-size:12px}.snapshot-table article>div:last-child{gap:7px;display:flex}.snapshot-table a,.snapshot-table button{color:var(--green);cursor:pointer;background:#fff;border:1px solid #b8c9c0;border-radius:6px;padding:6px 9px;font-size:12px;font-weight:800;text-decoration:none}@media (width<=650px){.backup-panel{grid-template-columns:1fr}.backup-actions{justify-content:flex-start}.backup-actions a,.backup-actions label,.backup-actions button{flex:1;justify-content:center}.snapshot-table article{flex-direction:column;align-items:flex-start}.year-stats{flex-wrap:wrap;align-items:flex-start}.year-stats>strong{margin-left:0}}.processed-status{color:#1d6b54;box-sizing:border-box;background:#dff2e8;border-radius:7px;justify-content:center;align-items:center;min-width:92px;padding:9px;font-size:13px;font-weight:800;display:inline-flex}.admin-tools{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:minmax(280px,1fr) auto auto;align-items:end;gap:12px;margin:0 0 18px;padding:16px 18px;display:grid}.admin-tools label{gap:6px;display:grid}.admin-tools label span{color:#53635d;font-size:12px;font-weight:800}.admin-tools input,.admin-tools select{box-sizing:border-box;width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #bfc9c3;border-radius:8px;padding:10px 12px}.admin-tools>strong{color:var(--green);white-space:nowrap;padding:11px 0}.admin-pagination{justify-content:center;align-items:center;gap:14px;margin:22px 0;display:flex}.admin-pagination button{color:var(--ink);background:#fff;border:1px solid #b9c4be;border-radius:8px;padding:9px 13px}.admin-pagination button:disabled{opacity:.4}.admin-pagination span{color:var(--muted);font-size:13px;font-weight:800}@media (width<=700px){.admin-tools{grid-template-columns:1fr 1fr}.admin-search{grid-column:1/-1}.admin-tools>strong{padding:5px 0}.admin-pagination{justify-content:space-between}}.year-stats{background:linear-gradient(135deg,#f7faf8 0%,#eef5f1 100%);border:1px solid #d7e1dc;border-radius:18px;margin:0 0 28px;padding:24px}.year-stats-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex}.year-stats-heading .eyebrow{margin:0 0 5px}.year-stats-heading h2{margin:0;font-size:22px}.year-stats-heading>span{color:#66756f;font-size:13px;font-weight:700}.year-stat-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.year-stat-cards article{background:#fff;border-radius:13px;justify-content:space-between;align-items:baseline;gap:12px;padding:18px 20px;display:flex;box-shadow:0 3px 14px #1b45330f}.year-stat-cards strong{color:#1f6649;font-size:34px;line-height:1}.year-stat-cards span{color:#40534b;font-weight:800}.older-year-stats{margin-top:14px}.older-year-stats summary{color:#315f4c;cursor:pointer;font-size:14px;font-weight:800}.older-year-stats>div{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.older-year-stats span{color:#52635c;background:#ffffffbf;border:1px solid #d6e1dc;border-radius:8px;gap:8px;padding:8px 11px;font-size:13px;display:flex}.older-year-stats b{color:#263e34}.year-stats-empty{color:#66756f;font-size:14px}.activity-tools{justify-content:flex-end;margin:0 0 18px;display:flex}@media (width<=680px){.year-stats{padding:18px}.year-stats-heading{flex-direction:column;align-items:flex-start;gap:5px}.year-stat-cards{grid-template-columns:1fr}.year-stat-cards article{padding:15px 17px}.year-stat-cards strong{font-size:30px}}.activity-tools label{align-items:center;gap:9px;display:flex}.activity-tools label span{color:#53635d;font-size:13px;font-weight:800}.activity-tools select{background:#fff;width:auto;min-width:100px;padding:9px 34px 9px 12px}.site-footer{align-items:center;gap:28px}.site-footer>div{gap:5px;display:grid}.site-footer strong{color:#fff;font-size:13px}.site-footer>div span{color:#b8c8c1}.site-footer p{text-align:right;margin:0;line-height:1.8}.site-footer i{color:#799087;margin:0 7px;font-style:normal}.site-footer a{color:#f3c55d;text-underline-offset:3px}@media (width<=700px){.site-footer{align-items:flex-start}.site-footer p{text-align:left}.site-footer i{height:2px;display:block;overflow:hidden}}.mobile-menu{display:none;position:relative}.mobile-menu summary{cursor:pointer;color:var(--ink);-webkit-user-select:none;user-select:none;border:1px solid #9cb0a7;border-radius:8px;padding:9px 12px;font-size:13px;font-weight:800;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{margin-right:4px}.mobile-menu[open] summary{color:#fff;border-color:var(--green);background:var(--green)}.mobile-menu nav{border:1px solid var(--line);background:#fff;border-radius:12px;gap:4px;width:min(260px,100vw - 36px);padding:10px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 16px 40px #18342d2e}.mobile-menu nav a{color:#40544e;border-radius:7px;padding:11px 13px;font-size:15px;text-decoration:none;display:block}.mobile-menu nav a:hover,.mobile-menu nav a:focus-visible,.mobile-menu nav a.nav-active{color:var(--green);background:var(--mint)}.mobile-menu nav .admin-link{text-align:center;border-color:#c6d1cb;margin-top:4px}@media (width<=900px){.desktop-nav{display:none}.mobile-menu{display:block}}@media (width<=390px){.mobile-menu summary{padding:9px 10px}.mobile-menu summary span{margin:0}}.field-error{background:#fff7f4;border:1px solid #d96a55;border-radius:10px;padding:14px;box-shadow:0 0 0 3px #d96a551a}.field-error>label{color:#9d3f2d}.field-error input,.field-error select{border-color:#d96a55}.field-error .chips{border-radius:9px;outline:2px solid #d96a5547;padding:4px}.field-error-message{color:#a53e2a;margin:9px 0 0;font-size:13px;font-weight:700}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.export-toolbar{background:#fff;border:1px solid #cbd5cf;border-radius:11px;grid-template-columns:1fr auto auto;align-items:center;gap:14px;margin:0 0 16px;padding:14px 16px;display:grid}.export-toolbar>div{gap:8px;display:flex}.export-toolbar button{color:var(--ink);background:#f8f8f4;border:1px solid #b9c5be;border-radius:8px;padding:9px 12px;font-size:13px;font-weight:700}.export-toolbar button:disabled{cursor:not-allowed;opacity:.45}.export-toolbar>span{color:var(--muted);white-space:nowrap;font-size:13px}.export-toolbar .export-button{border-color:var(--green);background:var(--green);color:#fff}.bookRow.no-contributor{grid-template-columns:62px 1fr}.bookRow.selectable{grid-template-columns:54px 48px 1fr;transition:background-color .16s}.bookRow.selectable.selected{background:#edf7f2}.book-select{cursor:pointer;color:var(--muted);justify-items:center;gap:4px;font-size:11px;display:grid}.book-select input{width:20px;height:20px;accent-color:var(--green);margin:0;padding:0}@media (width<=700px){.export-toolbar{grid-template-columns:1fr auto}.export-toolbar>div,.export-toolbar .export-button{grid-column:1/-1}.bookRow.selectable{grid-template-columns:42px 32px 1fr;gap:10px}.book-select span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.awards-hero{padding-bottom:34px}.awards-section{max-width:960px;margin:0 auto 90px}.awards-heading{justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:16px;display:flex}.awards-heading h2{margin:0;font:700 25px serif}.awards-heading span{color:var(--muted);font-size:13px}.awards-table-wrap{border:1px solid var(--line);background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 8px 30px #233a320a}.awards-table{border-collapse:collapse;text-align:left;width:100%}.awards-table th{color:#50615b;background:var(--mint);white-space:nowrap;border-bottom:1px solid #c8dfd3;padding:15px 18px;font-size:13px}.awards-table td{color:#44564f;vertical-align:top;border-bottom:1px solid #e6e9e4;padding:20px 18px;font-size:14px;line-height:1.65}.awards-table tr:last-child td{border-bottom:0}.awards-table td:first-child{color:var(--green);white-space:nowrap;font-weight:800}.awards-table td strong{color:var(--ink);font:700 17px/1.5 serif}.awards-table td strong a{color:inherit;text-underline-offset:3px;text-decoration-color:#b99743}.awards-table tr:target td{background:#fff8df}@media (width<=900px){.awards-section{margin-left:18px;margin-right:18px}}@media (width<=650px){.awards-table-wrap{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.awards-table,.awards-table tbody,.awards-table tr,.awards-table td{width:100%;display:block}.awards-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}.awards-table tr{border:1px solid var(--line);background:#fff;border-radius:13px;margin-bottom:13px;padding:18px}.awards-table td{border:0;grid-template-columns:72px minmax(0,1fr);gap:12px;padding:8px 0;display:grid}.awards-table td:before{content:attr(data-label);color:var(--muted);font-size:12px;font-weight:800}}
