@layer tokens, reset, base, layout, components, utilities, responsive;
@layer tokens{
:root{
--font-scale:.25rem;
--font-family-sans:system-ui,-apple-system,"Segoe UI",sans-serif;
--font-size-body-base:15px;--font-size-reading-base:16px;--font-size-meta-base:12px;--font-size-card-title-base:17px;--font-size-section-title-base:18px;--font-size-summary-title-base:21px;--font-size-page-title-base:30px;
--font-size-body:calc(var(--font-size-body-base) + var(--font-scale));--font-size-reading:calc(var(--font-size-reading-base) + var(--font-scale));--font-size-meta:calc(var(--font-size-meta-base) + var(--font-scale));--font-size-card-title:calc(var(--font-size-card-title-base) + var(--font-scale));--font-size-section-title:calc(var(--font-size-section-title-base) + var(--font-scale));--font-size-summary-title:calc(var(--font-size-summary-title-base) + var(--font-scale));--font-size-page-title:calc(var(--font-size-page-title-base) + var(--font-scale));
--line-height-body:1.5;--line-height-reading:1.58;--line-height-title:1.28;
--color-bg:#f4f6f8;--color-surface:#fff;--color-text:#18202a;--color-muted:#667085;--color-link:#1457a6;--color-border:#e0e4e8;--color-border-control:#c5ccd5;--color-search-border:#9aa7b6;--color-search-focus:#1457a6;--color-hover:#f2f4f7;--color-active:#fff7d6;--color-active-border:#e8cb73;--color-active-text:#a56b00;--color-category-bg:#eef4fb;
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;
--radius-control:9px;--radius-card:12px;--radius-panel:14px;--content-max:1180px;--article-max:820px;--summary-mobile-collapsed-height:48svh;
}}
@layer reset{*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input{font:inherit}}
@layer base{body{background:var(--color-bg);color:var(--color-text);font:var(--font-size-body)/var(--line-height-body) var(--font-family-sans)}a{color:var(--color-link);cursor:pointer}button,summary{cursor:pointer}h1{font-size:var(--font-size-page-title);margin:var(--space-1) 0 5px}}
@layer layout{.wrap{max-width:var(--content-max);margin:auto;padding:26px 18px}.wrap.articleWrap{max-width:var(--article-max)}.cards{display:flex;flex-wrap:wrap;gap:var(--space-3)}.sectionTitle{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin:22px 0 10px}.sectionTitle h2{margin:0}}
@layer components{
.eyebrow{font-size:var(--font-size-meta);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.sub{color:var(--color-muted);max-width:820px}.meta{font-size:var(--font-size-meta);color:var(--color-muted)}
.topControls{display:flex;align-items:center;gap:7px;flex-wrap:nowrap;margin:18px 0 16px;min-width:0}.topControls .navButton{flex:0 0 auto;white-space:nowrap;border:1px solid var(--color-border-control);background:var(--color-surface);border-radius:var(--radius-control);padding:9px var(--space-3);color:var(--color-text);text-decoration:none}.topControls .navButton.active{background:var(--color-text);color:#fff;border-color:var(--color-text)}
.searchModule{position:relative;flex:0 1 250px;min-width:150px;max-width:250px;margin-left:2px}.searchModule svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:18px;height:18px;fill:none;stroke:var(--color-muted);stroke-width:2;pointer-events:none}.search{width:100%;border:2px solid var(--color-search-border);background:var(--color-surface);border-radius:10px;padding:9px 11px 9px 36px;color:var(--color-text);box-shadow:0 1px 2px #0000000d;outline:none}.search::placeholder{color:#788494;opacity:1}.search:focus{border-color:var(--color-search-focus);box-shadow:0 0 0 3px #1457a61f}
.indexEyebrow{margin:4px 0 7px}.pageIndex{margin:0 0 18px;padding:12px 18px 12px 34px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);columns:2;column-gap:34px}.pageIndex li{margin:4px 0;break-inside:avoid}.pageIndex a{color:var(--color-link);font-weight:650;text-decoration:none}.pageIndex a:hover{text-decoration:underline}
.summaryAnchor,.latestAnchor,.referenceAnchor{scroll-margin-top:14px}.summaryBox{width:100%;max-width:none;background:var(--color-surface);border:1px solid #dfe4e9;border-radius:var(--radius-panel);padding:18px var(--space-5);margin:var(--space-1) 0 22px;position:relative}.summaryBox h2{font-size:var(--font-size-summary-title);margin:2px 0}.summaryMeta{font-size:var(--font-size-meta);color:var(--color-muted);margin-bottom:10px}.summaryBody{font-size:var(--font-size-reading);line-height:var(--line-height-reading)}.summaryBody p{margin:var(--space-2) 0}.summaryBody a{font-weight:650;text-decoration:none}.summaryBody a:hover{text-decoration:underline}.summaryToggle{display:none}
.sectionAction,.categoryAllLink{display:inline-flex;align-items:center;border:1px solid var(--color-border-control);background:var(--color-surface);border-radius:999px;padding:6px 10px;color:var(--color-link);font-size:var(--font-size-meta);font-weight:750;text-decoration:none;white-space:nowrap}.sectionAction:hover,.categoryAllLink:hover{background:var(--color-hover)}
.searchResultsHeader{margin:24px 0 12px}.searchResultsHeader h2{margin:0}.searchResultsMeta{color:var(--color-muted);margin-top:3px}
.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:15px;flex:1 1 320px;min-width:0;display:flex;flex-direction:column}.card h3{font-size:var(--font-size-card-title);line-height:var(--line-height-title);margin:5px 0 7px}.card h3 a{color:inherit;text-decoration:none}.card h3 a:hover{text-decoration:underline}.card>div:not(.meta):not(.cardBottom){font-size:var(--font-size-body)}
.source{margin-top:11px}.source a{text-decoration:none;font-weight:650}.source a:hover{text-decoration:underline}.cardBottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:var(--space-3)}.actions{display:flex;gap:5px}.iconBtn{border:1px solid #d8dde3;background:var(--color-surface);border-radius:8px;width:34px;height:34px;display:grid;place-items:center;padding:0;color:#44505e}.iconBtn:hover{background:var(--color-hover)}.iconBtn.active{color:var(--color-active-text);background:var(--color-active);border-color:var(--color-active-border)}.iconBtn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.iconBtn.share svg{fill:currentColor;stroke:none}
.categoryTitle{align-items:center;margin-top:30px}.categoryChips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.categoryChip{display:inline-flex;align-items:center;border:1px solid #cbd8e6;background:var(--color-surface);border-radius:999px;padding:5px 9px;color:var(--color-link);font-size:var(--font-size-meta);font-weight:700;text-decoration:none}.categoryChip:hover{background:var(--color-category-bg)}
.categoryAccordion{margin:18px 0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);overflow:hidden}.categoryAccordion summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--color-category-bg)}.categoryAccordion summary::-webkit-details-marker{display:none}.categoryAccordion summary::after{content:"＋";font-weight:800;color:var(--color-link);font-size:20px}.categoryAccordion[open] summary::after{content:"−"}.categorySummaryTitle{display:flex;align-items:center;gap:10px;min-width:0}.categorySummaryTitle a{font-size:var(--font-size-section-title);font-weight:800;color:var(--color-text);text-decoration:none}.categorySummaryTitle a:hover{text-decoration:underline}.categoryAccordionBody{padding:16px}.categoryAccordionBody .cards{margin-bottom:14px}.categoryEmpty{color:var(--color-muted);margin:0 0 12px}
.archive{margin-top:10px}.week{background:var(--color-surface);border:1px solid var(--color-border);border-radius:11px;margin:10px 0;overflow:hidden}.week summary{padding:13px 15px;font-weight:750}.week .inside{padding:0 var(--space-3) var(--space-3)}.count{color:var(--color-muted);font-weight:500}.ref{border-left:4px solid #64748b}
.empty{padding:22px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-muted)}
.feedHeader{margin:18px 0 12px}.feedHeader h2{margin:0}.feedSub{margin-top:4px;color:var(--color-muted)}.pagination{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:14px 0}.pagination a,.pagination span{min-width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid var(--color-border-control);border-radius:8px;background:var(--color-surface);color:var(--color-link);text-decoration:none;font-weight:700;padding:0 8px}.pagination .current{background:var(--color-text);color:#fff;border-color:var(--color-text)}
.backToTop{position:fixed;right:18px;bottom:18px;z-index:30;width:48px;height:48px;border:1px solid #c9d0d8;border-radius:50%;background:var(--color-surface);color:var(--color-text);box-shadow:0 5px 18px #0002;display:grid;place-items:center;font-size:24px;font-weight:700;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .18s,transform .18s}.backToTop.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.backToTop:hover{background:var(--color-hover)}
.article{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:22px}.article h1{font-size:var(--font-size-page-title);line-height:1.2;margin:6px 0 10px}.article .summary{font-size:var(--font-size-reading);line-height:var(--line-height-reading);margin:18px 0}.back{display:inline-block;margin-bottom:18px;text-decoration:none}.article .source{border-top:1px solid #e6e9ed;padding-top:14px;margin-top:18px}.article .source a{font-weight:700}.article .actions{margin:var(--space-4) 0}.action{border:1px solid var(--color-border-control);background:var(--color-surface);border-radius:var(--radius-control);padding:9px var(--space-3)}.action.active{background:var(--color-active);border-color:var(--color-active-border)}.versions{margin-top:22px}.version{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:var(--space-3) 14px;margin:var(--space-2) 0}
.shareDialog{border:0;border-radius:var(--radius-panel);padding:0;box-shadow:0 18px 55px #0003;width:min(360px,calc(100% - 28px))}.shareDialog::backdrop{background:#0006}.shareBox{padding:18px}.shareBox h3{margin:0 0 var(--space-3)}.shareOptions{display:grid;gap:var(--space-2)}.shareOptions a,.shareOptions button{display:block;width:100%;text-align:left;padding:11px var(--space-3);border:1px solid #d9dee4;background:var(--color-surface);border-radius:var(--radius-control);color:var(--color-text);text-decoration:none}.shareOptions a:hover,.shareOptions button:hover{background:var(--color-hover)}.closeBtn{float:right;border:0;background:transparent;font-size:calc(20px + var(--font-scale));padding:0 2px}
}
@layer utilities{.hidden{display:none!important}}
@layer responsive{@media(max-width:700px){:root{--font-size-page-title-base:26px}.topControls{gap:5px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.topControls::-webkit-scrollbar{display:none}.topControls .navButton{padding:7px 8px}.searchModule{flex:0 0 105px;min-width:105px;max-width:105px}.searchModule svg{left:8px;width:16px;height:16px}.search{padding:7px 7px 7px 29px}.card{flex-basis:100%}.summaryBox{padding:15px}.pageIndex{columns:1;padding-left:30px}.categoryTitle{align-items:flex-start;flex-direction:column;gap:9px}.categoryChips{justify-content:flex-start}.backToTop{right:14px;bottom:14px;width:46px;height:46px}.categoryAccordion summary{padding:12px}.categorySummaryTitle a{font-size:var(--font-size-body)}.summaryBox.is-collapsible:not(.is-expanded){max-height:var(--summary-mobile-collapsed-height);overflow:hidden;cursor:pointer;padding-bottom:66px}.summaryBox.is-collapsible:not(.is-expanded)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:110px;background:linear-gradient(to bottom,#ffffff00,var(--color-surface) 68%);pointer-events:none}.summaryToggle{display:block;position:absolute;z-index:2;left:50%;bottom:12px;transform:translateX(-50%);border:1px solid var(--color-border-control);background:var(--color-surface);color:var(--color-link);border-radius:999px;padding:7px 14px;font-weight:750;cursor:pointer;white-space:nowrap}.summaryBox.is-expanded .summaryToggle{position:static;transform:none;margin:12px auto 0}}}
