:root{--ink:#17232f;--muted:#5b6773;--line:#dde3e8;--bg:#fff;--soft:#f4f7f8;--accent:#1d4e89;--accent-soft:#e8eff8;--ok:#1f7a4d;--ok-soft:#e4f3ea;--wait:#8a5a00;--wait-soft:#fbf1dc;--none:#6b7580;--none-soft:#eef1f3;--sans:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--serif:"Songti SC", "Noto Serif SC", "Source Han Serif SC", "STSong", serif;--wrap:1200px;--ease-out:cubic-bezier(.22,1,.36,1);--accent-deep:#1b3455;--leader-text:#c1d2e8;--leader-accent:#e5c786}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:16px/1.8 var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}h1,h2,h3{font-family:var(--serif);letter-spacing:-.015em;text-wrap:balance;font-weight:700;line-height:1.35}h1{margin:.4em 0 .5em;font-size:clamp(26px,4.2vw,38px)}h2{margin:2em 0 .6em;padding-top:.2em;font-size:clamp(21px,2.8vw,26px)}h3{margin:1.6em 0 .4em;font-size:19px}p,li{max-width:46em}small{color:var(--muted)}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}main{padding-bottom:64px}.site-header{border-bottom:1px solid var(--line);background:var(--bg)}.header-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:68px;display:flex}.brand{min-width:0;color:var(--ink);flex:1 1 0;align-items:center;gap:10px;text-decoration:none;display:flex}.brand strong{font-family:var(--sans);font-size:16px;font-weight:650;line-height:1.3;display:block}.brand small{margin-top:3px;font-size:11px;line-height:1.6;display:block}.brand-mark{background:var(--accent);color:#fff;width:36px;height:36px;font-family:var(--serif);border-radius:9px;flex-shrink:0;place-items:center;font-weight:700;display:grid}.menu-btn{display:none}.nav ul{gap:4px;margin:0;padding:0;list-style:none;display:flex}.nav a{color:var(--ink);border-radius:4px;padding:8px 10px;font-size:15px;text-decoration:none;display:block}.nav a:hover{background:var(--soft)}.nav a[aria-current=page]{color:var(--accent);background:var(--accent-soft);font-weight:600}@media (width<=900px){.js .menu-btn{border:1px solid var(--line);background:var(--bg);min-height:44px;color:var(--ink);border-radius:4px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;display:flex}.nav{width:100%;padding-bottom:14px}.js .nav{display:none}.js .nav.is-open{display:block}.nav ul{flex-direction:column}.nav a{padding:10px 12px}}.crumbs ol{color:var(--muted);flex-wrap:wrap;gap:4px 0;margin:16px auto 0;padding:0;font-size:14px;list-style:none;display:flex}.crumbs li+li:before{content:"/";color:var(--line);margin:0 8px}.lead{max-width:44em;font-size:18px}.hero{padding:40px 0 8px}.hero .eyebrow{color:var(--accent);letter-spacing:.08em;margin:0;font-size:14px;font-weight:600}.conclusion{background:var(--accent-soft);border:0;border-radius:6px;margin:20px 0;padding:14px 18px}.conclusion p{margin:0}.conclusion p+p{margin-top:8px}.facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 8px;padding:0;list-style:none;display:grid}.facts li{border:1px solid var(--line);border-radius:6px;padding:14px 16px}.facts b{font-size:28px;font-family:var(--serif);color:var(--accent);line-height:1.2;display:block}.facts span{color:var(--muted);font-size:14px}@media (width<=640px){.facts{grid-template-columns:1fr}}.cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px;padding:0;list-style:none;display:grid}.card{border:1px solid var(--line);background:var(--bg);border-radius:8px;padding:18px 20px}.card h3{margin:0 0 6px;font-size:18px}.card p{color:var(--muted);margin:0;font-size:15px}.card .num{font-family:var(--serif);color:var(--accent);margin-right:6px;font-weight:700}.status{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:13px;display:inline-flex}.status-ok{color:var(--ok);background:var(--ok-soft)}.status-wait{color:var(--wait);background:var(--wait-soft)}.status-none{color:var(--none);background:var(--none-soft)}.table-wrap{border:1px solid var(--line);border-radius:8px;margin:16px 0 6px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:15px}caption{text-align:left;border-bottom:1px solid var(--line);padding:12px 14px;font-weight:600}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px 14px}thead th{background:var(--soft);white-space:nowrap;font-size:14px}tbody tr:last-child>*{border-bottom:0}tbody th{min-width:12em;font-weight:600}.note{color:var(--muted);font-size:14px}.prose{max-width:46em}.prose ol,.prose ul{padding-left:1.4em}.prose blockquote{color:var(--muted);margin:16px 0;padding:10px 16px}.meta{color:var(--muted);flex-wrap:wrap;gap:4px 16px;margin:-4px 0 8px;font-size:14px;display:flex}.check-list,.flag-list{padding:0;list-style:none}.check-list li,.flag-list li{margin:8px 0;padding-left:28px;position:relative}.check-list li:before{content:"✓";color:var(--ok);font-weight:700;position:absolute;left:4px}.flag-list li:before{content:"!";color:#b42318;font-weight:700;position:absolute;left:6px}.panel{background:var(--soft);border-radius:8px;margin:20px 0;padding:18px 20px}.panel h2,.panel h3{margin-top:0}.two-col{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=760px){.two-col{grid-template-columns:1fr}}.evidence{padding:0;list-style:none}.evidence li{border-top:1px solid var(--line);max-width:none;padding:10px 0}.evidence .ev-label{font-weight:600}.link-list{padding:0;list-style:none}.link-list li{border-bottom:1px solid var(--line);padding:12px 0}.link-list a{font-weight:600}.link-list p{color:var(--muted);margin:4px 0 0;font-size:15px}.site-footer{border-top:1px solid var(--line);background:var(--soft);margin-top:24px;padding:44px 0 28px;font-size:14px}.footer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}@media (width<=760px){.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.footer-grid{grid-template-columns:1fr}}.site-footer h2{font-size:15px;font-family:var(--sans);margin:0 0 8px}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer p{color:var(--muted);margin:0 0 6px}.copy{color:var(--muted);margin-top:20px}.card .card-title{margin:0 0 6px;padding:0;font-size:19px}.chips{flex-wrap:wrap;gap:8px;margin:8px 0 0;display:flex}.chips a{border:1px solid var(--line);border-radius:999px;align-items:baseline;gap:4px;padding:4px 12px;font-size:15px;text-decoration:none;display:inline-flex}.chips a:hover{border-color:var(--accent)}.rank{font-family:var(--serif);color:var(--accent);white-space:nowrap;font-size:18px;font-weight:700}.src-type{background:var(--none-soft);color:var(--none);white-space:nowrap;border-radius:4px;margin-left:6px;padding:0 6px;font-size:12px;display:inline-block}.src-official{background:var(--ok-soft);color:var(--ok)}.src-media{background:var(--accent-soft);color:var(--accent)}.src-company{background:var(--wait-soft);color:var(--wait)}.empty{border:1px dashed var(--line);color:var(--muted);border-radius:8px;margin:16px 0;padding:18px 20px}td.num{white-space:nowrap;font-variant-numeric:tabular-nums}.sub{color:var(--muted);margin-top:4px;font-size:13px;font-weight:400;display:block}.home-hero{border-bottom:1px solid var(--line);grid-template-columns:1.5fr 1fr;align-items:center;gap:80px;padding:76px 0 64px;display:grid}.home-hero h1{letter-spacing:-.025em;margin:0 0 20px;font-size:clamp(32px,4vw,48px);line-height:1.45}.home-hero .lead{max-width:34em}.hero-index{background:var(--soft);border-radius:8px;padding:24px 28px}.hero-index p{margin:0 0 14px;font-weight:600}.hero-index ol{counter-reset:entry;margin:0;padding:0;list-style:none}.hero-index li{counter-increment:entry;border-top:1px solid var(--line)}.hero-index a{color:var(--ink);align-items:center;gap:14px;padding:13px 0;text-decoration:none;display:flex}.hero-index a:before{content:"0" counter(entry);color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.hero-index a span{color:var(--accent);margin-left:auto}.button{background:var(--accent);color:#fff;border-radius:5px;padding:10px 20px;font-weight:600;text-decoration:none;display:inline-block}.section-heading{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.category-list{margin:16px 0 0;padding:0;list-style:none}.category-list li{border-top:1px solid var(--line);align-items:center;gap:24px;max-width:none;padding:24px 0;display:flex}.category-list h2,.category-list h3{margin:0 0 4px;padding:0;font-size:24px}.category-list a{text-decoration:none}.category-list p{color:var(--muted);margin:0}.category-no{font:28px var(--serif);color:var(--muted);width:42px}.category-count{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:14px}.firm-list{grid-template-columns:1fr 1fr;column-gap:40px;margin:16px 0 32px;padding:0;list-style:none;display:grid}.firm-list li{border-top:1px solid var(--line);min-width:0;padding:24px 0}.firm-list h2,.firm-list h3{margin:0 0 12px;padding:0;font-size:21px}.firm-list p{margin:8px 0}.firm-list h2 a,.firm-list h3 a{text-decoration:none}.firm-projects{color:var(--muted);font-size:14px}.project-table{min-width:850px}.project-table tbody th{min-width:7em}.project-table td:nth-child(2){min-width:19em}.project-scope{color:var(--muted);margin:7px 0 0;font-size:13px}.scale{font-variant-numeric:tabular-nums;white-space:nowrap}.table-wrap:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.brand-mark{flex-shrink:0}@media (width<=760px){.home-hero{grid-template-columns:1fr;gap:28px;padding:36px 0}.home-hero h1{font-size:34px}.hero-index{padding:18px 20px}.firm-list{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:flex-start;gap:0}.category-list li{flex-wrap:wrap;gap:14px;padding:20px 0}.category-no{width:28px;font-size:22px}.category-list h2,.category-list h3{font-size:21px}.category-list p{font-size:14px}.category-count{margin-left:42px}.hero{padding-top:28px}.actions{gap:18px}.project-table{font-size:14px}}@media (width<=640px){.project-table{min-width:0;display:block}.project-table caption{width:100%;display:block}.project-table thead{display:none}.project-table tbody,.project-table tbody tr,.project-table tbody th,.project-table td{width:100%;display:block;min-width:0!important}.project-table tbody tr{border-bottom:1px solid var(--line);padding:18px 16px}.project-table tbody tr:last-child{border-bottom:0}.project-table tbody th,.project-table td{border:0;padding:0}.project-table tbody th{margin-bottom:9px;font-size:14px}.project-table .project-name strong{font-size:17px;line-height:1.6}.project-table td[data-label]{margin-top:16px}.project-table td[data-label]:before{content:attr(data-label);color:var(--muted);margin-bottom:3px;font-size:12px;display:block}.project-table td[data-label] .sub{margin-top:0}.project-table td[data-label] .scale{font-size:18px}.project-table .project-scope{margin-top:8px}}.project-preview{margin:16px 0;padding:0;list-style:none}.project-preview li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:28px;max-width:none;padding:24px 0;display:flex}.project-preview h3{margin:0 0 8px;font-size:20px}.project-preview h3 a{text-decoration:none}.project-preview p{color:var(--muted);margin:0;font-size:14px}.preview-scale{text-align:right;flex-shrink:0}.preview-scale span{color:var(--muted);font-size:13px;display:block}.preview-scale strong{font-size:22px;font-family:var(--serif);font-variant-numeric:tabular-nums;color:var(--accent)}@media (width<=640px){.project-preview li{flex-direction:column;align-items:flex-start;gap:12px}.preview-scale{text-align:left}.preview-scale strong{font-size:21px}.project-preview h3{font-size:19px}}::selection{background:var(--accent);color:#fff}html{scroll-behavior:smooth;scrollbar-color:var(--muted) var(--soft)}body{accent-color:var(--accent)}button,input{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}[hidden]{display:none!important}:where(a,button,input,select,summary):focus-visible{outline:2px solid var(--accent);outline-offset:4px}section[id],main[id],h2[id],h3[id]{scroll-margin-top:100px}main.wrap{padding-bottom:72px}.site-header{z-index:30;position:sticky;top:0}.header-in{min-height:80px}.nav a{align-items:center;min-height:44px;display:flex}.skip-link{z-index:60;background:var(--accent);color:#fff;padding:10px 16px;position:fixed;top:10px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.actions{flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:26px;display:flex}.button{background:var(--accent);color:#fff;border-radius:4px;justify-content:center;align-items:center;min-height:46px;padding:10px 20px;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{background:var(--ink)}.section-heading{justify-content:space-between;align-items:baseline;gap:20px;margin:52px 0 24px;display:flex}.section-heading h2{margin:0;padding:0}.section-heading>a,.section-heading output{color:var(--muted);flex-shrink:0;font-size:14px}.photo{min-width:0;margin:0}.photo-button{aspect-ratio:16/10;background:var(--soft);color:#fff;cursor:zoom-in;border:0;border-radius:12px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.photo img{object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.16,1,.3,1);display:block}.photo figcaption{color:var(--muted);margin-top:8px;font-size:12px;line-height:1.6}.photo-expand{color:#fff;min-height:34px;font:11px/1.5 var(--sans);background:#17232fe6;border-radius:6px;align-items:center;gap:6px;padding:7px 10px;transition:background-color .14s;display:flex;position:absolute;bottom:12px;right:12px}.photo-expand svg{width:19px;height:19px}.topic-layout{grid-template-columns:1fr 1fr;gap:48px;margin:24px 0 48px;display:grid}.topic-feature h3{margin:20px 0 10px;font-size:25px}.topic-feature h3 a{color:var(--ink);text-decoration:none}.topic-feature p{color:var(--muted);margin:0 0 14px;font-size:15px}.text-link{align-items:center;min-height:44px;font-size:14px;display:inline-flex}.topic-layout .link-list{margin:0}.topic-layout .link-list li{padding:22px 0}.topic-layout .link-list li:first-child{padding-top:0}.topic-layout .link-list a{font-size:18px}.office-section{margin:40px 0}.office-gallery{grid-template-columns:1fr 1fr 1fr;gap:20px;display:grid}.mingkang-profile .hero h1{color:var(--accent);font-size:clamp(32px,4vw,48px)}.secondary-companies{border-top:1px solid var(--line);margin:56px 0 40px;padding-top:24px}.secondary-companies .section-heading{margin:0 0 16px}.secondary-companies h2{font:600 20px/1.5 var(--sans);margin:0 0 16px;padding:0}.company-index{grid-template-columns:1fr 1fr;gap:0 32px;margin:0;padding:0;list-style:none;display:grid}.company-index li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;max-width:none;min-height:44px;padding:10px 0;font-size:14px;display:flex}.company-index a{color:var(--ink);text-decoration:none}.company-index a:hover{color:var(--accent);text-decoration:underline}.company-index span{color:var(--muted);white-space:nowrap;font-size:13px}.company-search{background:var(--soft);border-radius:12px;margin:24px 0 12px;padding:22px 24px;display:none}.js .company-search{display:block}.company-search label{margin-bottom:8px;font-size:14px;font-weight:600;display:block}.search-fields{align-items:flex-end;gap:16px;display:flex}.search-query{flex:1}.company-search input,.company-search select{width:100%;min-width:0;height:46px;color:var(--ink);background:var(--bg);border:1px solid var(--line);font:inherit;caret-color:var(--accent);border-radius:7px;padding:8px 14px;transition:border-color .14s,background-color .14s}.company-search select{min-width:148px}.company-search input::placeholder{color:var(--muted);opacity:1}.company-search output{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:12px;font-size:14px;display:block}.search-reset,.board-pagination button{background:var(--bg);border:1px solid var(--line);min-height:44px;color:var(--ink);font:500 14px var(--sans);cursor:pointer;border-radius:4px;padding:8px 14px}.search-reset:hover,.board-pagination button:not(:disabled):hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.board-pagination{color:var(--muted);font:14px/1.5 var(--sans);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.board-pagination>div{align-items:center;gap:16px;display:flex}.board-pagination button:disabled{color:var(--muted);background:var(--soft);cursor:default}@media (width<=600px){.search-fields{flex-wrap:wrap;gap:12px}.search-query{flex-basis:100%}.search-fields>div:not(.search-query){flex:1}.board-pagination{flex-direction:column;align-items:flex-start}.board-pagination>div{justify-content:space-between;gap:8px;width:100%}}.search-empty{color:var(--muted);padding:16px 0}.article-head-visual{grid-template-columns:1.2fr 1fr;align-items:center;gap:48px;padding-bottom:24px;display:grid}.article-head-visual h1{font-size:clamp(28px,3vw,38px)}.article-head-visual .photo-button{aspect-ratio:3/2}.article-layout{grid-template-columns:minmax(0,1fr) 236px;gap:64px;margin:40px 0;display:grid}.article-sidebar{grid-area:1/2;min-width:0}.article-contents{border-top:1px solid var(--line);position:sticky;top:104px}.article-contents summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:54px;font-size:15px;font-weight:600;list-style:none;display:flex}.article-contents summary::-webkit-details-marker{display:none}.article-contents[open] summary svg{transform:rotate(180deg)}.article-contents ol{margin:0;padding:0 0 12px;list-style:none}.article-contents li{margin:0}.article-contents a{color:var(--muted);padding:7px 0;font-size:14px;line-height:1.6;text-decoration:none;display:block}.article-contents a:hover{color:var(--accent);text-decoration:underline}.article-layout>.prose{grid-area:1/1;min-width:0;max-width:70ch}.article-layout>.prose>h2:first-child{margin-top:0}.prose p{line-height:1.95}.prose h2{margin-top:2em}.faq{margin-top:48px}.faq details{border-bottom:1px solid var(--line);max-width:52em;padding:0}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:24px;min-height:62px;padding:18px 0;font-weight:600;line-height:1.6;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq-icon{color:var(--accent);transition:transform .18s var(--ease-out);flex-shrink:0}.faq details[open] .faq-icon{transform:rotate(45deg)}.faq details p{color:var(--muted);margin:0 36px 20px 0;line-height:1.95}.mingkang-projects{margin:52px 0}.mingkang-projects .section-heading{margin:0 0 24px}.mingkang-projects h2{font-size:32px}.project-filters{flex-wrap:wrap;gap:8px;margin:0 0 24px;display:none}.js .project-filters{display:flex}.project-filters button{border:1px solid var(--line);background:var(--bg);min-height:44px;color:var(--muted);border-radius:4px;padding:8px 16px;font-size:14px}.project-filters button:hover{border-color:var(--accent);color:var(--accent)}.project-filters button[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:#fff}.project-spotlight{margin:0;padding:0;list-style:none}.project-spotlight>li{border-top:1px solid var(--line);grid-template-columns:.9fr 1.1fr;align-items:center;gap:40px;max-width:none;padding:32px 0;display:grid}.project-spotlight h3{margin:0 0 12px;font-size:27px}.project-spotlight .project-copy>p{margin:0 0 16px}.project-spotlight .project-origin{color:var(--muted);font-size:13px}.project-origin a{text-decoration:none}.project-spotlight .spotlight-scale{color:var(--accent);flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.spotlight-scale span{font-size:14px}.spotlight-scale strong{font:700 32px/1.3 var(--serif);font-variant-numeric:tabular-nums}.project-source{align-items:center;min-height:44px;font-size:14px;display:inline-flex}.project-reference{margin:0;padding:0;list-style:none}.project-reference li{border-bottom:1px solid var(--line);grid-template-columns:100px minmax(0,1fr) auto;gap:24px;max-width:none;padding:12px 0;font-size:14px;display:grid}.project-reference a{color:var(--ink);text-decoration:none}.project-reference a:hover{text-decoration:underline}.guide-links{grid-template-columns:repeat(2,minmax(0,1fr))}.category-gallery{grid-template-columns:1fr 1fr;gap:40px 32px;margin:32px 0 56px;padding:0;list-style:none;display:grid}.category-gallery li{max-width:none}.category-gallery .photo-button{aspect-ratio:16/9}.category-gallery h2{margin:18px 0 6px;padding:0;font-size:27px}.category-gallery h2 a{color:var(--ink);text-decoration:none}.category-gallery h2 a:hover{color:var(--accent)}.category-gallery p{color:var(--muted);margin:0;font-size:14px}.site-footer .copy{margin:28px auto 0}.back-top{z-index:20;border:1px solid var(--line);background:var(--bg);width:44px;height:44px;color:var(--accent);border-radius:4px;place-items:center;display:grid;position:fixed;bottom:24px;right:24px}.back-top:hover{background:var(--accent);color:#fff}#image-viewer{color:#f7f9fb;opacity:0;width:min(1120px,100vw - 48px);max-width:none;max-height:calc(100dvh - 48px);transition:opacity .18s ease-out,transform .22s var(--ease-out),display .22s allow-discrete,overlay .22s allow-discrete;background:#15212c;border:0;border-radius:14px;margin:auto;padding:0;position:fixed;overflow:auto;transform:translateY(10px)scale(.98)}#image-viewer[open]{opacity:1;transform:none}#image-viewer::backdrop{opacity:0;transition:opacity .18s ease-out,display .22s allow-discrete,overlay .22s allow-discrete;background:#0c1626dc}#image-viewer[open]::backdrop{opacity:1}@starting-style{#image-viewer[open]{opacity:0;transform:translateY(10px)scale(.98)}#image-viewer[open]::backdrop{opacity:0}}.viewer-toolbar{border-bottom:1px solid #ffffff20;justify-content:space-between;align-items:center;padding:10px 14px 10px 24px;display:flex}.viewer-toolbar>span{color:#c8d5e2;align-items:center;gap:9px;font-size:13px;display:flex}#image-viewer button{width:44px;height:44px;color:inherit;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;display:grid}#image-viewer button:hover{background:#ffffff18}#image-viewer button:focus-visible{outline-color:#fff}#image-viewer button:disabled{color:#637586;cursor:default;background:0 0}#image-viewer figure{margin:0;padding:20px 24px 0}.viewer-stage{place-items:center;min-height:160px;display:grid}#image-viewer img{object-fit:contain;border-radius:4px;width:auto;max-width:100%;max-height:calc(100dvh - 242px);margin:auto;display:block}#image-viewer figcaption{color:#d0dbe6;margin-top:16px;font-size:14px;line-height:1.6}.viewer-controls{justify-content:space-between;align-items:center;gap:16px;padding:8px 16px 12px 24px;display:flex}.viewer-controls>span{color:#b8c9d8;font-variant-numeric:tabular-nums;font-size:12px}.viewer-controls>div{gap:4px;display:flex}html:has(#image-viewer[open]){overflow:hidden}@media (width<=600px){#image-viewer{border-radius:12px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}#image-viewer figure{padding:12px 12px 0}.viewer-toolbar{padding:6px 6px 6px 16px}.viewer-controls{padding:8px 8px 8px 16px}#image-viewer figcaption{padding:0 4px;font-size:12px}#image-viewer img{max-height:calc(100dvh - 212px)}}@media (width<=1000px){.article-layout{grid-template-columns:minmax(0,1fr) 210px;gap:32px}}@media (width<=760px){.company-index{grid-template-columns:1fr}.company-index li{align-items:flex-start}.topic-layout{grid-template-columns:1fr;gap:24px}.topic-layout .link-list li:first-child{border-top:1px solid var(--line);padding-top:22px}.topic-feature h3{font-size:23px}.article-head-visual{grid-template-columns:1fr;gap:20px}.article-head-visual .photo-button{aspect-ratio:2}.article-layout{grid-template-columns:1fr;gap:28px;margin:28px 0}.article-sidebar{grid-area:1/1}.article-contents{border-bottom:1px solid var(--line);position:static}.article-layout>.prose{grid-area:2/1}.article-contents a{padding:9px 0}.office-gallery{grid-template-columns:1fr 1fr;gap:20px 16px}.office-gallery .photo:first-child{grid-column:1/-1}.office-gallery .photo:first-child .photo-button{aspect-ratio:2}.section-heading{flex-wrap:wrap;align-items:flex-start;gap:8px 16px;margin-top:40px}.mingkang-projects h2{font-size:27px}.project-spotlight>li{grid-template-columns:1fr;gap:20px;padding:24px 0 32px}.project-spotlight h3{font-size:23px}.project-spotlight .photo-button{aspect-ratio:16/9}.project-reference li{grid-template-columns:80px minmax(0,1fr);gap:4px 16px}.project-reference li>a:last-child{color:var(--muted);grid-column:2;font-size:13px}.back-top{bottom:16px;right:14px}}@media (width<=480px){.guide-links{grid-template-columns:1fr}.category-gallery{grid-template-columns:1fr;gap:32px}.project-filters{gap:6px}.project-filters button{padding:8px 12px}}.rank-mast{justify-content:space-between;align-items:center;gap:32px;padding:44px 0 28px;display:flex}.rank-mast h1{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(32px,4.2vw,54px);line-height:1.25}.rank-mast .site-purpose{max-width:45em;color:var(--muted);margin:16px 0 0;font-size:16px;line-height:1.85}.edition{border-left:1px solid var(--line);text-align:right;flex:none;padding-left:24px}.edition strong{color:var(--accent);font:650 36px/1.2 var(--sans);font-variant-numeric:tabular-nums;letter-spacing:-.03em;display:block}.edition small{color:var(--muted);font:13px var(--sans);letter-spacing:0;margin-top:8px;display:block}.edition time{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:6px;margin-top:12px;font-size:12px;display:flex}.board-tabs{scrollbar-width:thin;background:var(--soft);border-radius:10px;gap:4px;margin:0;padding:6px;display:flex;overflow-x:auto}.board-tabs a{min-height:42px;color:var(--muted);border-radius:7px;flex:none;justify-content:center;align-items:center;padding:8px 14px;font-size:14px;text-decoration:none;transition:background-color .14s,color .14s;display:inline-flex}.board-tabs a[aria-current]{color:#fff;background:var(--accent);font-weight:600}.board-data{max-width:none;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;margin:0;padding:16px 0;font-size:12px;display:flex}.board-data-items{flex-wrap:wrap;gap:8px 20px;display:flex}.board-data-items>span,.board-data a{align-items:center;gap:6px;display:inline-flex}.board-data a{text-decoration:none}.board-bar{justify-content:space-between;align-items:baseline;gap:16px;margin:22px 0 16px;display:flex}.board-bar h2{font:650 21px/1.5 var(--sans);margin:0;padding:0}.board-bar a{color:var(--muted);font-size:13px;text-decoration:none}.board-method{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 16px;font-size:13px;display:flex}.board-method a{align-items:center;gap:3px;display:inline-flex}.board,.special-board,.special-index{margin:0;padding:0;list-style:none}.board-row{border-bottom:1px solid var(--line);grid-template-columns:52px minmax(0,1fr) 88px;align-items:center;gap:24px;max-width:none;padding:20px 24px;transition:background-color .14s;display:grid}.rank-number{color:var(--muted);text-align:center;line-height:1}.rank-number strong{font:500 24px/1 var(--sans);font-variant-numeric:tabular-nums}.rank-entry{min-width:0}.rank-entry h3{font:600 18px/1.55 var(--sans);margin:0}.rank-entry h3 a,.special-board h3 a{color:var(--ink);text-decoration:none}.rank-entry p{color:var(--muted);font:13px/1.7 var(--sans);margin:5px 0}.rank-foot{color:var(--muted);font:12px/1.65 var(--sans);flex-wrap:wrap;gap:5px 16px;margin-top:7px;display:flex}.rank-foot>span,.rank-foot>a,.rank-examples a{align-items:center;gap:4px;display:inline-flex}.rank-foot a{text-decoration:none}.rank-examples{flex-wrap:wrap;gap:5px 14px;margin:12px 0;font-size:12px;display:flex}.rank-score{text-align:right}.score-link{min-width:44px;padding:4px 0;text-decoration:none;display:inline-block}.rank-score strong{color:var(--accent);font:600 27px/1.15 var(--sans);letter-spacing:-.03em;font-variant-numeric:tabular-nums;display:block}.rank-score span{color:var(--muted);white-space:nowrap;font-size:12px}.score-link small{color:var(--muted);font:11px/1.5 var(--sans);white-space:nowrap;justify-content:flex-end;align-items:center;gap:3px;margin-top:5px;display:flex}.board-leader{background:var(--accent-deep);color:#fff;border:0;border-radius:14px;grid-template-columns:52px minmax(0,1fr) 76px 34%;gap:24px;margin-bottom:8px;padding:28px;position:relative}.board-leader .rank-number{color:var(--leader-accent);flex-direction:column;align-self:start;align-items:center;gap:7px;padding-top:7px;display:flex}.board-leader .rank-number small{color:inherit;font:650 11px/1 var(--sans);letter-spacing:.12em}.board-leader .rank-number strong{font:500 64px/1 var(--serif)}.board-leader .rank-entry h3{font:700 clamp(24px,2.4vw,31px)/1.45 var(--serif);letter-spacing:-.015em;text-wrap:balance}.board-leader .rank-entry h3 a{color:#fff}.board-leader .rank-entry p{color:var(--leader-text);margin:12px 0;font-size:13px;line-height:1.9}.board-leader .rank-foot,.board-leader .rank-foot a,.board-leader .rank-examples a{color:var(--leader-text)}.board-leader .rank-foot a:last-child{color:#fff}.board-leader .rank-score{text-align:center;align-self:center}.board-leader .rank-score strong{color:#fff;font-size:40px}.board-leader .rank-score span,.board-leader .score-link small{color:var(--leader-text)}.board-leader .score-link small{justify-content:center}.board-image .photo-button{aspect-ratio:3/2;border-radius:9px}.board-image figcaption{color:var(--leader-text);margin-top:8px;font-size:11px}.board-links{flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding:18px 0 12px;display:flex}.board-links a{align-items:center;gap:10px;min-height:44px;font-size:14px;text-decoration:none;display:inline-flex}.special-ranking{margin:48px 0}.board-scope{color:var(--muted);font-size:13px}.special-board li{border-bottom:1px solid var(--line);grid-template-columns:74px minmax(0,1fr) 60px;align-items:center;gap:16px;max-width:none;padding:20px;display:grid}.special-board li:first-child{background:var(--accent-soft);border-radius:12px 12px 0 0}.special-board h3{font:600 18px/1.55 var(--sans);margin:0}.special-board li:first-child h3{font-size:21px}.special-board .place{color:var(--accent);font-size:14px}.special-board p{color:var(--muted);margin:6px 0 0;font-size:13px}.special-board b{color:var(--accent);text-align:right;font:600 24px var(--sans);font-variant-numeric:tabular-nums}.special-board small{font:13px var(--sans)}.special-index li{max-width:none}.special-index a{border-top:1px solid var(--line);color:var(--ink);grid-template-columns:minmax(8em,.8fr) minmax(0,2fr) auto;align-items:center;gap:20px;padding:22px 16px;text-decoration:none;transition:background-color .14s;display:grid}.special-index span{color:var(--muted);font-size:14px}.special-index b{color:var(--accent);white-space:nowrap;align-items:center;gap:12px;font-size:14px;font-weight:500;display:flex}.case-illustration{max-width:640px;margin:24px 0}.project-copy:only-child{grid-column:1/-1}.case-more{margin-top:6px;font-size:13px;display:inline-block}.score-rules{margin:16px 0}.score-rules>div{border-top:1px solid var(--line);grid-template-columns:8em 1fr;gap:16px;padding:16px 0;display:grid}.score-rules dt{font-weight:650}.score-rules dd{margin:0}.score-panel{border:1px solid var(--line);border-radius:14px;margin:36px 0 52px;padding:30px 32px}.score-summary{justify-content:space-between;align-items:center;gap:24px;padding-bottom:24px;display:flex}.score-summary h2{font:650 26px/1.4 var(--sans);align-items:center;gap:10px;margin:0 0 12px;padding:0;display:flex}.score-summary h2 svg{color:var(--accent)}.score-summary .meta{margin:0;font-size:12px}.score-total{color:var(--accent);text-align:right;flex:none}.score-total strong{font:600 58px/1 var(--sans);letter-spacing:-.04em;font-variant-numeric:tabular-nums;display:block}.score-total span{color:var(--muted);margin-top:8px;font-size:13px;display:block}.score-detail{margin:0}.score-detail>div{border-top:1px solid var(--line);grid-template-columns:140px minmax(0,1fr) 90px;align-items:start;gap:28px;padding:20px 0;display:grid}.score-detail dt{font-size:15px;font-weight:600}.score-detail dd{margin:0}.score-track{background:var(--accent-soft);border-radius:4px;height:4px;margin-top:13px;display:block;overflow:hidden}.score-track>span{background:var(--accent);transform-origin:0;width:100%;height:100%;display:block}.score-evidence p{color:var(--muted);margin:0 0 7px;font-size:14px;line-height:1.8}.score-evidence a,.score-footer a{align-items:center;gap:5px;font-size:13px;text-decoration:none;display:inline-flex}.score-points{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.score-points strong{color:var(--accent);font-size:22px;font-weight:600}.score-points span{color:var(--muted);margin-left:6px;font-size:13px}.score-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 16px;padding-top:18px;font-size:13px;display:flex}.source-kind{color:var(--muted);margin-left:12px;font-size:12px;display:inline-block}.method-snapshot{border-block:1px solid var(--line);margin:28px 0;padding:20px 0}.method-snapshot p{margin:0 0 8px}.method-snapshot p span{padding:0 6px}.method-snapshot strong{color:var(--accent);font-variant-numeric:tabular-nums}.method-snapshot a{font-size:14px}.method-rules dt span{color:var(--accent);margin-top:5px;font-size:13px;font-weight:500;display:block}.mingkang-profile .hero h1{text-wrap:balance}@media (hover:hover) and (pointer:fine){.board-tabs a:not([aria-current]):hover{background:var(--accent-soft);color:var(--accent)}.board-row:not(.board-leader):hover,.special-index a:hover{background:var(--soft)}.rank-entry h3 a:hover,.special-board h3 a:hover{color:var(--accent)}.board-leader .rank-entry h3 a:hover{color:var(--leader-accent)}.rank-foot a:hover,.board-links a:hover,.board-data a:hover,.score-link:hover small,.score-evidence a:hover,.score-footer a:hover{text-decoration:underline}}@media (width<=1000px){.rank-mast h1{font-size:42px}.board-leader{grid-template-columns:44px minmax(0,1fr) 70px 30%;gap:16px;padding:24px}.board-leader .rank-entry h3{font-size:26px}.board-image .photo-button{aspect-ratio:4/5}}@media (width<=700px){.rank-mast{flex-direction:column;align-items:flex-start;gap:18px;padding:30px 0 24px}.rank-mast h1{font-size:clamp(30px,7.5vw,40px);line-height:1.35}.rank-mast .site-purpose{margin-top:12px;font-size:14px;line-height:1.85}.edition{border:0;align-items:center;gap:16px;padding:0;display:flex}.edition strong{font:650 15px var(--sans);letter-spacing:0;align-items:baseline;gap:6px;display:flex}.edition small{margin:0;font-size:12px;display:inline}.edition time{margin:0}.board-tabs{margin-inline:-2px}.board-tabs a{padding:8px 12px;font-size:13px}.board-data{gap:10px;padding:14px 0 4px}.board-data-items{column-gap:12px;font-size:11px}.board-data a{min-height:32px}.board-bar{align-items:flex-start;gap:12px;margin:20px 0 12px}.board-bar h2{flex:none;font-size:18px}.board-method{gap:2px 8px;font-size:11px}.board-method a{font-size:11px}.board-row{grid-template-columns:28px minmax(0,1fr) 58px;gap:12px;padding:18px 2px}.rank-number strong{font-size:20px}.rank-entry h3{font-size:16px}.rank-entry p,.rank-foot{font-size:12px}.rank-foot{gap:5px 12px}.rank-score strong{font-size:24px}.score-link small{font-size:10px}.score-link small svg{display:none}.board-leader{grid-template-columns:38px minmax(0,1fr) 58px;gap:16px 12px;padding:22px 18px 18px}.board-leader .rank-number{grid-area:1/1;gap:5px;padding-top:2px}.board-leader .rank-number strong{font-size:47px}.board-leader .rank-entry{grid-area:1/2}.board-leader .rank-entry h3{text-wrap:initial;font-size:23px;line-height:1.5}.board-leader .rank-entry p{margin:10px 0;font-size:12px;line-height:1.8}.board-leader .rank-score{grid-area:1/3;align-self:start;padding-top:5px}.board-leader .rank-score strong{font-size:30px}.board-leader .rank-examples{gap:6px;font-size:11px}.board-leader .rank-foot{font-size:11px}.board-leader .board-image{grid-area:2/1/auto/-1}.board-image .photo-button{aspect-ratio:16/9}.board-links{gap:0;padding:12px 0}.board-links a{font-size:13px}.special-board li{grid-template-columns:44px minmax(0,1fr) 36px;gap:10px;padding:16px 10px}.special-board h3,.special-board li:first-child h3{font-size:17px}.special-board .place,.special-board p{font-size:12px}.special-index a{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:18px 6px}.special-index a span{grid-column:1;font-size:13px}.special-index a b{grid-area:1/2/3}.score-rules>div{grid-template-columns:1fr;gap:4px}.score-panel{margin:28px 0 36px;padding:22px 18px}.score-summary{gap:16px;padding-bottom:20px}.score-summary h2{font-size:21px}.score-summary h2 svg{display:none}.score-summary .meta{font-size:11px;display:block}.score-summary .meta span{margin-top:5px;display:block}.score-total strong{font-size:44px}.score-detail>div{grid-template-columns:minmax(0,1fr) 90px;gap:12px 24px;padding:18px 0}.score-track{max-width:180px;margin-top:10px}.score-evidence{grid-area:2/1/auto/-1}.score-evidence p{font-size:13px}.score-points{grid-area:1/2}.source-kind{margin-left:0;margin-right:12px}}.lucide-icon{vertical-align:-.18em;stroke-width:1.7px;flex-shrink:0}.input-with-icon{position:relative}.input-with-icon>svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.company-search .input-with-icon input,.company-search .input-with-icon select{padding-left:42px}.company-search input:focus,.company-search select:focus{border-color:var(--accent);background:var(--bg)}.search-reset,.board-pagination button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.menu-close-icon,.menu-btn[aria-expanded=true] .menu-open-icon{display:none}.menu-btn[aria-expanded=true] .menu-close-icon{display:block}:where(.button,.menu-btn,.search-reset,.board-pagination button,.project-filters button,.back-top,#image-viewer button){transition:background-color .14s,color .14s,border-color .14s,transform .14s var(--ease-out)}:where(.button,.menu-btn,.search-reset,.board-pagination button,.project-filters button,#image-viewer button):active:not(:disabled){transform:scale(.97)}.section-heading>a,.text-link,.project-source{align-items:center;gap:7px;text-decoration:none;display:inline-flex}.article-contents summary svg{transition:transform .18s var(--ease-out)}@media (hover:hover) and (pointer:fine){.photo-button:hover img{transform:scale(1.035)}.photo-button:hover .photo-expand{background:var(--accent)}.board-links a svg,.text-link svg,.section-heading>a svg{transition:transform .18s var(--ease-out)}.board-links a:hover svg,.text-link:hover svg,.section-heading>a:hover svg{transform:translate(3px)}}@media (width<=900px){.js .nav.is-open{animation:menu-in .18s var(--ease-out)}}@keyframes menu-in{0%{opacity:.5;transform:translateY(-5px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img,.faq-icon,.article-contents summary svg{transition:none}.photo-button:hover img{transform:none}.js .nav.is-open{animation:none}#image-viewer{transition:opacity .1s ease-out,display .1s allow-discrete,overlay .1s allow-discrete;transform:none}#image-viewer[open]{transform:none}@starting-style{#image-viewer[open]{transform:none}}:where(.button,.menu-btn,.search-reset,.board-pagination button,.project-filters button,#image-viewer button):active:not(:disabled),.board-links a:hover svg,.text-link:hover svg,.section-heading>a:hover svg{transform:none}}@media (width<=700px){.wrap{padding-inline:20px}.header-in{min-height:72px}.brand strong{font-size:14px}.brand small{font-size:10px}.brand-mark{width:34px;height:34px}.company-search{padding:18px 16px}.company-search input{font-size:16px}.photo-expand span{display:none}.back-top{bottom:14px;right:12px}}.company-heading{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.company-heading h3{flex:0 auto}.company-like{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.like-button{border:1px solid var(--line);background:var(--bg);min-height:38px;color:var(--muted);font:500 12px/1.4 var(--sans);white-space:nowrap;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:7px 11px;transition:background-color .16s,color .16s,border-color .16s;display:inline-flex}.like-button .like-count{font:600 12px/1.4 var(--sans);color:inherit;font-variant-numeric:tabular-nums}.like-button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.like-button[aria-pressed=true] svg{fill:currentColor;fill-opacity:.15}.like-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.like-button:disabled{cursor:wait;opacity:.65}.board-leader .like-button{color:#fff;background:#ffffff14;border-color:#fff6}.board-leader .like-button[aria-pressed=true]{color:var(--accent-deep);background:#fff;border-color:#fff}.like-status{font:12px/1.5 var(--sans)}.like-status:empty{display:none}.project-table .company-like,table .company-like{margin-top:8px}.profile-like{margin:-8px 0 24px}.special-index .special-winner{margin:0;padding:0 24px 16px}.special-winner .company-like{margin-left:10px}@media (hover:hover){.like-button:not(:disabled):hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.board-leader .like-button:not(:disabled):hover{color:var(--accent-deep);background:#fff}}@media (width<=640px){.like-button{min-height:42px}.special-index .special-winner{padding:0 16px 16px}}@media (prefers-reduced-motion:reduce){.like-button{transition:none}}
