:root{--ink:#0b2340;--muted:#53606c;--line:#d8dee6;--soft-line:#e9edf2;--panel:#ffffff;--bg:#fbfcfd;--blue:#1f6fbd;--green:#4e9c45;--orange:#eb7b18;--purple:#6352b4;--cyan:#2aadb5;--shadow:0 6px 18px rgba(12,35,64,0.11);--soft-shadow:0 3px 11px rgba(12,35,64,0.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(90deg,rgba(10,35,60,.028) 0,transparent 16%,transparent 84%,rgba(10,35,60,.025) 100%),var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,YuGothic,Noto Sans JP,Segoe UI,sans-serif;letter-spacing:0}a{color:inherit;text-decoration:none}button,input{font:inherit}.page-shell{width:min(1220px,calc(100vw - 72px));margin:0 auto;padding:44px 0 34px}.site-header{gap:28px;margin-bottom:34px}.brand,.site-header{display:flex;align-items:center}.brand{min-width:0}.brand img{width:78px;height:78px;object-fit:contain;filter:saturate(.55) brightness(.72) contrast(1.45);mix-blend-mode:multiply}.brand h1{margin:0 0 7px;font-family:Georgia,Hiragino Mincho ProN,Yu Mincho,serif;font-size:38px;line-height:1.08;font-weight:800;color:#0c2746}.brand p{margin:0;color:#586675;font-size:17px;font-weight:600}.nav{display:flex;align-items:center;gap:38px;margin-left:auto;color:#22344b;font-size:16px;font-weight:700}.nav a{position:relative;padding:13px 0}.nav .active:after{position:absolute;right:0;bottom:0;left:0;height:3px;content:"";background:#0c2746;border-radius:999px}.menu-button{display:none;margin-left:auto;padding:8px;color:#0c2746;background:transparent;border:0}.control-row{display:grid;grid-template-columns:minmax(0,1fr) 260px;grid-gap:22px;gap:22px;align-items:stretch}.search-box{display:flex;align-items:center;height:64px;padding:0 20px;color:#6a7480;background:var(--panel);border:1px solid var(--line);border-radius:11px;box-shadow:0 1px 0 rgba(12,35,64,.03)}.search-box input{width:100%;min-width:0;margin-left:14px;color:var(--ink);font-size:18px;background:transparent;border:0;outline:0}.search-box input::placeholder{color:#68737f}.stats-card{display:grid;grid-template-columns:1fr 1fr;height:64px;min-height:64px;overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.stats-card div{display:flex;align-items:center;justify-content:center;gap:8px;padding:4px 10px;text-align:center;border-left:1px solid var(--line)}.stats-card div:first-child{border-left:0}.stats-card svg{width:20px;height:20px;color:var(--blue)}.stats-card div:nth-child(2) svg{color:var(--purple);fill:currentColor}.stats-card div:nth-child(3) svg{color:#f0a000}.stats-card strong{font-size:24px;line-height:1}.stats-card b{font-size:14px;line-height:1.35}.filter-row{display:flex;flex-wrap:wrap;gap:13px;margin:25px 0 48px;scrollbar-width:none}.filter-row::-webkit-scrollbar{display:none}.filter-pill{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 15px;font-weight:800;background:#fff;border:1px solid;border-radius:999px;box-shadow:0 1px 2px rgba(12,35,64,.04);cursor:pointer}.badge.green,.detail-category.green,.filter-pill.green{color:var(--green);background:#f4fbf2}.badge.blue,.detail-category.blue,.filter-pill.blue{color:var(--blue);background:#eef6ff}.badge.orange,.detail-category.orange,.filter-pill.orange{color:var(--orange);background:#fff7ee}.badge.purple,.detail-category.purple,.filter-pill.purple{color:var(--purple);background:#f5f2ff}.badge.cyan,.detail-category.cyan,.filter-pill.cyan{color:var(--cyan);background:#effdfe}.filter-pill.selected{box-shadow:inset 0 0 0 2px currentColor}.section-title{display:flex;align-items:center;gap:13px;margin:0 0 13px}.section-title h2{margin:0;font-size:29px;line-height:1;font-weight:900}.hero-card{display:grid;grid-template-columns:1.08fr .92fr;min-height:312px;overflow:hidden;background:var(--panel);border:1px solid #cfd6de;border-radius:10px;box-shadow:var(--soft-shadow)}.detail-image,.hero-image,.paper-thumb{position:relative;overflow:hidden;background:#f2f4f6}.detail-image img,.hero-image img,.paper-thumb img{object-fit:cover}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:42px 28px}.hero-copy h2{margin:0 0 28px;font-size:31px;line-height:1.35;font-weight:900}.hero-copy p{margin:23px 0 0;color:#24364a;font-size:17px;line-height:1.7;font-weight:600}.paper-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:26px 18px;gap:26px 18px;margin-top:30px}.paper-card{display:flex;min-width:0;min-height:405px;overflow:hidden;flex-direction:column;background:var(--panel);border:1px solid #d4dae1;border-radius:9px;box-shadow:var(--soft-shadow)}.paper-thumb{aspect-ratio:1.55/1;flex:0 0 auto}.paper-body{display:flex;flex:1 1;flex-direction:column;padding:20px 18px 18px}.paper-body h3{min-height:58px;margin:0 0 12px;color:#132a45;font-size:21px;line-height:1.35;font-weight:900;-webkit-line-clamp:2}.paper-body h3,.paper-body p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.paper-body p{margin:15px 0 0;color:#263545;font-size:16px;line-height:1.65;font-weight:600;-webkit-line-clamp:3}.meta-row{display:flex;flex-wrap:wrap;gap:8px}.badge,.meta-row{align-items:center}.badge{display:inline-flex;min-height:30px;max-width:100%;padding:0 13px;overflow:hidden;font-size:14px;line-height:1;font-weight:800;white-space:nowrap;text-overflow:ellipsis;border:1px solid rgba(50,75,100,.1);border-radius:999px}.badge.journal{max-width:142px;color:#0c65b7;background:#eaf4ff}.detail-heading .badge.journal,.hero-copy .badge.journal{max-width:220px}.badge.year{color:#364354;background:#f4f6f8}.footer-note{display:flex;align-items:center;justify-content:center;gap:13px;margin:38px 0 0;color:#7c858e;font-size:17px;font-weight:600}.detail-shell{padding-bottom:56px}.back-link{display:inline-flex;align-items:center;gap:8px;margin:0 0 20px;color:#34506e;font-weight:800}.detail-hero{display:grid;grid-template-columns:.95fr 1.05fr;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.detail-image{align-self:start;width:100%;min-height:0;aspect-ratio:16/9}.detail-heading{padding:26px 38px}.detail-category{display:inline-flex;align-items:center;height:34px;padding:0 15px;font-weight:900;border:1px solid;border-radius:999px}.detail-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.detail-heading h1{margin:13px 0;font-size:34px;line-height:1.35}.detail-heading p{margin:0 0 16px;color:#34465a;font-size:18px;line-height:1.8;font-weight:600}.paper-link{display:inline-flex;align-items:center;gap:8px;height:42px;margin-top:28px;padding:0 18px;color:white;font-weight:900;background:#0c2746;border-radius:7px}.paper-link.compact{height:34px;margin-top:0;padding:0 13px;font-size:14px}.paper-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin:28px 0 0}.paper-facts div{min-width:0;padding:13px 14px;background:#f7f9fb;border:1px solid var(--soft-line);border-radius:8px}.paper-facts dt{margin:0 0 5px;color:#738091;font-size:12px;font-weight:900;text-transform:uppercase}.paper-facts dd{margin:0;overflow-wrap:anywhere;color:#18324f;font-size:14px;line-height:1.35;font-weight:800}.detail-grid{display:grid;grid-template-columns:1fr 290px;grid-gap:24px;gap:24px;margin-top:26px}.review-panel,.side-panel{background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:var(--soft-shadow)}.review-panel{padding:34px 38px}.related-section h2,.review-panel h2,.side-panel h2{margin:0 0 12px;color:#112a47;font-size:20px}.review-panel h2:not(:first-child){margin-top:30px}.review-panel p{margin:0;color:#25384d;font-size:17px;line-height:1.9}.review-panel .citation{color:#586574;font-family:Georgia,serif}.side-panel{align-self:start;padding:26px}.tag-list{display:flex;flex-wrap:wrap;gap:9px}.tag-list span{padding:8px 11px;color:#28445f;font-size:14px;font-weight:800;background:#f2f6f9;border:1px solid #dce4eb;border-radius:999px}.tag-list .primary-tag{border-color:currentColor}.related-section{margin-top:34px}.related-grid{margin-top:16px}@media (max-width:900px){.page-shell{width:min(100% - 34px,680px);padding-top:50px}.site-header{gap:8px;margin-bottom:22px}.brand img{width:74px;height:74px}.brand h1{font-size:31px;line-height:1.12}.brand p{font-size:15px;line-height:1.35}.nav{display:none}.menu-button{display:inline-flex}.control-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;grid-gap:10px;gap:10px;align-items:stretch}.search-box{height:52px;padding:0 16px;border-radius:9px}.search-box input{font-size:16px}.filter-row{display:grid;grid-template-columns:repeat(6,max-content);grid-gap:10px;gap:10px;margin:20px 0 24px;overflow-x:auto;padding-bottom:2px}.filter-pill{height:37px;padding:0 13px;font-size:15px}.stats-card{height:52px;min-height:52px;border-radius:10px}.stats-card div{padding:3px 5px;gap:5px}.stats-card strong{font-size:22px}.stats-card b{font-size:13px}.section-title{margin-top:8px}.section-title h2{font-size:24px}.hero-card{display:flex;min-height:0;flex-direction:column;border-radius:9px}.hero-image{aspect-ratio:1.92/1}.hero-copy{padding:15px 18px 17px}.hero-copy h2{margin-bottom:11px;font-size:24px;line-height:1.32}.hero-copy p{margin-top:10px;font-size:15px;line-height:1.55}.paper-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;margin-top:16px}.paper-card{min-height:246px;border-radius:8px}.paper-thumb{aspect-ratio:1.73/1}.paper-body{padding:10px 12px 11px}.paper-body h3{min-height:40px;margin-bottom:7px;font-size:16px;line-height:1.28}.paper-body p{margin-top:7px;font-size:13px;line-height:1.45;-webkit-line-clamp:2}.meta-row{gap:5px}.badge{min-height:24px;padding:0 9px;font-size:11px}.badge.journal{max-width:106px}.footer-note{margin-top:22px;font-size:14px}.detail-grid,.detail-hero{display:flex;flex-direction:column}.detail-image{min-height:0;aspect-ratio:16/9}.detail-heading{padding:24px 20px}.detail-heading h1{font-size:25px}.detail-heading p,.review-panel p{font-size:15px}.paper-facts{grid-template-columns:1fr}.review-panel,.side-panel{padding:22px}}@media (max-width:430px){.page-shell{width:calc(100% - 30px);padding-top:34px}.brand img{width:64px;height:64px}.brand h1{font-size:25px}.brand p{font-size:13px}.menu-button{padding-right:0}.stats-card svg{width:17px;height:17px}.stats-card strong{font-size:20px}.paper-body h3{font-size:15px}}