:root{color-scheme:dark;--bg:#101113;--panel:#191a1d;--ink:#f0ece5;--soft:#b7b4ad;--muted:#92918b;--gold:#d0af79;--line:#ffffff15;--font:'Malgun Gothic','Apple SD Gothic Neo',system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.8 var(--font)}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button,a,input,summary,select{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--gold)}[hidden]{display:none!important}img,video{max-width:100%;display:block}button{touch-action:manipulation}button:disabled{opacity:.3;cursor:default}.skip{position:absolute;left:260px;top:-60px;background:var(--panel);padding:8px 15px;z-index:40}.skip:focus{top:8px}
.sidebar{width:252px;position:fixed;inset:0 auto 0 0;border-right:1px solid var(--line);background:#121315;display:flex;flex-direction:column;padding:30px 22px;z-index:10;overflow-y:auto}.brand{display:flex;gap:12px;align-items:center}.mark{font-size:39px;line-height:1;color:var(--gold)}.brand strong{font:18px Georgia,serif;letter-spacing:.09em}.brand small{display:block;font-size:8px;letter-spacing:.13em;color:var(--muted);margin-top:7px}.home-link{font-size:12px;color:var(--gold);margin:32px 0 18px;display:flex;justify-content:space-between}.search{display:flex;align-items:center;gap:8px;background:#ffffff04;border:1px solid var(--line);padding:7px 12px;border-radius:7px;margin-bottom:14px}.search>span{color:var(--gold);font-size:22px}.search input{width:100%;min-width:0;border:0;background:none;font-size:12px;outline-offset:2px}.nav-group{font-size:9px;color:var(--muted);letter-spacing:.12em;margin:19px 8px 6px}.nav-link{display:flex;align-items:center;gap:9px;padding:9px 9px;border-radius:7px;font-size:12px;color:var(--soft);line-height:1.45;min-height:37px}.nav-link span{color:#81796a;font-size:10px;min-width:15px}.nav-link:hover{background:#ffffff06}.nav-link[aria-current=page]{background:#d0af7910;color:#e6c58c;border:1px solid #d0af791c}.nav-empty{font-size:12px;color:var(--muted)}.side-bottom{margin-top:auto;padding-top:32px;font-size:10px;color:var(--gold)}.side-bottom small{display:block;color:var(--muted);line-height:1.8;margin-top:6px;font-size:10px}
main{margin-left:252px;padding:0 42px;max-width:1720px;min-height:100vh}.topbar{height:84px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.13em;color:var(--muted);gap:12px}.topbar b{color:var(--gold);font-weight:400;margin-left:12px}.topbar a{font-size:11px;letter-spacing:0}.library-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:14px;min-height:338px;border:1px solid #d0af792a;display:flex;align-items:center;padding:46px 44px;background:#1c1c1c}.library-hero .bg{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;opacity:.55}.library-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101113ee,#10111344);z-index:-1}.kicker{font-size:10px;color:var(--gold);letter-spacing:.18em}.library-hero h1{font-size:35px;line-height:1.55;letter-spacing:-.045em;margin:12px 0 16px;font-weight:600}.library-hero p{max-width:530px;color:#d3cfc6;line-height:1.9;font-size:13px;margin:0}.hero-counts{display:flex;gap:24px;margin-top:26px;color:#bab3a6;font-size:11px}.hero-counts b{color:#e7c891;font-size:18px;margin-right:6px;font-weight:500}.section-label{display:flex;align-items:baseline;gap:12px;margin:34px 0 15px}.section-label h2{font-size:19px;margin:0;font-weight:500}.section-label span{font-size:10px;color:var(--muted);letter-spacing:.06em}.topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.topic-card{overflow:hidden;border-radius:11px;border:1px solid var(--line);background:var(--panel);transition:border-color .18s,transform .18s}.topic-card:hover{border-color:#d0af7955;transform:translateY(-3px)}.card-img{height:153px;width:100%;object-fit:cover;background:#1c1c1f;filter:saturate(.85)}.topic-body{padding:19px 20px 21px}.topic-body small{font-size:9px;letter-spacing:.13em;color:var(--gold)}.topic-body h3{font-size:16px;font-weight:500;margin:8px 0 9px;line-height:1.6}.topic-body p{font-size:12px;color:var(--soft);margin:0;min-height:44px;line-height:1.85}.topic-body .open{display:block;color:var(--gold);font-size:10px;margin-top:16px}.empty{padding:24px;color:var(--muted)}.guide{border:1px solid #d0af7920;background:#d0af7907;border-radius:10px;padding:22px 26px;margin-top:28px;color:var(--soft);font-size:12px}.guide strong{display:block;color:#dcc399;font-size:13px;font-weight:500;margin-bottom:6px}.guide p{margin:0}
.article-head{max-width:930px;padding:17px 0 30px}.article-head h1{font-size:32px;line-height:1.55;letter-spacing:-.045em;font-weight:600;margin:13px 0 16px}.lead{max-width:830px;font-size:15px;color:#c6c2bb;line-height:1.95;margin:0}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat{padding:19px 15px 17px 0}.stat+.stat{border-left:1px solid var(--line);padding-left:23px}.stat strong{display:block;color:#e3c594;font-size:21px;letter-spacing:-.03em;font-weight:500;line-height:1.6}.stat small{color:var(--muted);font-size:11px}.feature-image{margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#191a1d}.feature-image img{display:block;width:100%;height:auto;object-fit:contain;background:#17181a}.feature-image figcaption{padding:13px 20px;font-size:10px;color:var(--muted);line-height:1.8}.article-copy{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(220px,1fr);gap:32px;margin:34px 0}.explain h2,.section-title{font-size:19px;line-height:1.65;font-weight:500;margin:0 0 12px}.explain p{color:var(--soft);font-size:13px;line-height:2.05;margin:0}.explain section+section{margin-top:28px}.key-points{background:#d0af7907;border:1px solid #d0af7922;padding:24px;border-radius:10px;align-self:start;position:sticky;top:25px}.key-points small{color:var(--gold);font-size:9px;letter-spacing:.14em}.key-points h2{font-size:15px;font-weight:500;margin:9px 0 12px}.key-points ol{margin:0;padding-left:17px;color:#c8bda9;font-size:12px;line-height:1.95}.key-points li+li{margin-top:12px}.flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;margin:18px 0 32px;padding:0;counter-reset:stage}.flow li{counter-increment:stage;border:1px solid var(--line);background:var(--panel);border-radius:9px;padding:20px;position:relative}.flow li:before{content:counter(stage,decimal-leading-zero);color:var(--gold);font:22px Georgia,serif;display:block;margin-bottom:10px}.flow strong{font-size:13px;font-weight:500}.flow p{font-size:12px;line-height:1.9;color:var(--soft);margin:9px 0 0}.media-section{margin:35px 0}.video-shell{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#151619}.video-shell video{width:100%;max-height:600px;background:#0b0c0e}.media-caption{font-size:11px;color:var(--muted);line-height:1.8;margin:11px 0 0}.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 32px}.media-card{background:var(--panel);border:1px solid var(--line);border-radius:9px;overflow:hidden;margin:0}.media-card img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#121315}.media-card figcaption{padding:16px;font-size:11px;color:var(--soft)}.media-card strong{display:block;font-size:13px;font-weight:500;color:var(--ink);margin-bottom:4px}
.panel{border:1px solid var(--line);border-radius:12px;padding:26px;background:#141517;margin:35px 0}.panel-header{display:flex;align-items:start;justify-content:space-between;gap:20px}.panel-header h2{margin:0;font-weight:500;font-size:20px;line-height:1.65}.panel-header p{color:var(--muted);font-size:11px;margin:8px 0 0}.pills{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.pills button{border:1px solid var(--line);border-radius:6px;background:#ffffff03;padding:7px 12px;color:var(--soft);font-size:11px}.pills button[aria-pressed=true]{border-color:#d0af7955;background:#d0af7910;color:#e1c38f}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.map-card{border:1px solid var(--line);padding:0;background:var(--panel);border-radius:9px;text-align:left;overflow:hidden}.map-card:hover{border-color:#d0af7955}.map-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.map-info{display:block;padding:13px 14px}.map-info strong{font-size:12px;font-weight:500;display:flex;justify-content:space-between;gap:6px}.map-info strong span{color:var(--gold);font-size:10px}.map-info small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.gallery-count{font-size:10px;color:var(--muted)}.platform-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}.platform-buttons button{padding:10px;background:var(--panel);border:1px solid var(--line);border-radius:6px;text-align:left;color:var(--soft);font-size:11px}.platform-buttons button[aria-pressed=true]{border-color:#d0af7955;color:#e1c38f;background:#d0af790e}.platform-buttons small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.cave-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:20px 0;font-size:11px;color:var(--soft)}.cave-controls select{max-width:390px;border:1px solid var(--line);border-radius:6px;background:var(--panel);padding:8px 12px;min-width:0}.point-count{color:var(--gold)}.point-preview{position:relative;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#101114}.point-preview img{width:100%;height:auto}.point-preview canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.legend{display:flex;gap:18px;font-size:10px;color:var(--muted);margin-top:12px;align-items:center;flex-wrap:wrap}.legend i{display:inline-block;width:6px;height:6px;background:#e0bf85;border-radius:50%;margin-right:6px}.legend .reject i{background:#84949c}.platform-oblique{margin-top:18px;border-radius:8px;width:100%;max-height:430px;object-fit:contain;background:#101114}
.related{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0 30px}.related a{border:1px solid #d0af7925;background:#d0af7908;color:#d9bd8e;padding:9px 14px;border-radius:7px;font-size:11px}.related a:hover{border-color:#d0af7960}.source-notes{border:1px solid var(--line);border-radius:9px;margin:30px 0 0;padding:16px 21px;color:var(--muted);font-size:11px}.source-notes summary{cursor:pointer;color:#bab5ab}.source-notes p{font-size:11px;line-height:1.9}.source-list{list-style:none;padding:0;margin:15px 0}.source-list li+li{margin-top:13px}.source-list a{color:#d1bd9d}.source-list code{display:block;font-size:10px;overflow-wrap:anywhere;margin-top:3px;color:#827e75}.article-next{display:flex;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:25px;margin-top:32px}.article-next a{font-size:12px;color:var(--gold)}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin:44px 0 0;padding:24px 0;font:11px Georgia,serif;color:#a79a82;gap:12px}footer span,footer a{font:10px var(--font);color:var(--muted)}
dialog{background:#131416;color:var(--ink);border:1px solid #d0af793e;border-radius:13px;padding:24px;width:min(1220px,94vw);max-height:94vh}dialog::backdrop{background:#050607d9;backdrop-filter:blur(6px)}.photo-head{display:flex;justify-content:space-between;align-items:start;gap:18px}.photo-head small{color:var(--gold);font-size:10px}.photo-head h2{font-size:22px;font-weight:500;margin:5px 0 0}.photo-head button{border:1px solid var(--line);background:#ffffff04;border-radius:6px;font-size:23px;line-height:1;width:34px;height:34px}.photo-head+.pills{margin:14px 0}.photo-head~figure{margin:0}.photo-head~figure img{width:100%;max-height:66vh;object-fit:contain;background:#0c0d0e;border-radius:6px}.photo-head~figure figcaption{font-size:10px;color:var(--muted);padding:12px 0 0}.photo-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:18px;font-size:10px;color:var(--muted)}.photo-footer button{border:1px solid var(--line);background:var(--panel);padding:6px 10px;border-radius:6px;font-size:11px}
@media(min-width:1650px){.topic-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1150px){main{padding:0 28px}.sidebar{width:225px;padding:27px 18px}main{margin-left:225px}.topic-grid,.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.article-copy{gap:24px;grid-template-columns:minmax(0,1.7fr) minmax(195px,1fr)}.flow{grid-template-columns:repeat(2,minmax(0,1fr))}.library-hero h1{font-size:30px}.article-head h1{font-size:28px}.stat strong{font-size:18px}}@media(max-width:800px){.sidebar{position:relative;width:100%;padding:20px 22px;border-right:0;border-bottom:1px solid var(--line)}.brand{padding-bottom:8px}.home-link{position:absolute;right:22px;top:18px;margin:0;font-size:10px;gap:8px}.brand small{font-size:7px}.search{margin:14px 0 6px;max-width:100%}#nav{display:flex;overflow-x:auto;gap:5px;padding:8px 0 0;scrollbar-width:thin}.nav-group,.side-bottom{display:none}.nav-link{white-space:nowrap;padding:8px 10px;font-size:11px;flex-shrink:0}.nav-link span{display:none}main{margin-left:0;padding:0 22px}.topbar{height:60px}.library-hero{min-height:285px;padding:30px 26px}.library-hero h1{font-size:27px}.article-copy{display:block}.key-points{position:static;margin-top:25px}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-head{padding-top:10px}.article-head h1{font-size:26px}.panel{padding:20px}.platform-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:480px){main{padding:0 16px}.brand strong{font-size:16px}.mark{font-size:33px}.brand small{font-size:6px}.home-link{font-size:9px;top:23px}.sidebar{padding:18px 16px}.topbar{font-size:8px;letter-spacing:.07em}.topbar a{font-size:10px}.library-hero{padding:26px 22px;min-height:280px}.library-hero h1{font-size:25px}.library-hero p{font-size:12px}.hero-counts{gap:14px;font-size:9px}.hero-counts b{font-size:15px}.topic-grid,.gallery,.media-grid{grid-template-columns:1fr}.card-img{height:182px}.topic-body p{min-height:0}.stat strong{font-size:16px}.stat small{font-size:9px}.stat+.stat{padding-left:10px}.stat{padding-right:8px}.lead{font-size:13px}.article-head h1{font-size:24px}.flow{grid-template-columns:1fr}.article-copy{margin-top:25px}.panel{padding:16px}.panel-header h2{font-size:17px}.platform-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.cave-controls select{max-width:100%;width:100%;font-size:11px}.cave-controls{gap:12px}.photo-head h2{font-size:18px}.photo-footer button{font-size:10px}dialog{padding:17px}.article-next a{font-size:11px}footer{font-size:9px;flex-wrap:wrap}.source-notes{padding:16px}.section-label span{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.performance-comparison{border:1px solid #d0af7930;border-radius:12px;background:#d0af7906;padding:24px 26px;margin:0 0 28px;max-width:930px}.performance-comparison header{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.performance-comparison h2{font-size:19px;margin:0;font-weight:500}.performance-comparison header strong{color:#e8cc98;font-size:20px;font-weight:500;white-space:nowrap}.performance-comparison>p{font-size:11px;color:var(--muted);margin:8px 0 23px}.comparison-row{display:grid;grid-template-columns:62px minmax(0,1fr) 90px;gap:15px;align-items:center;font-size:12px}.comparison-row+.comparison-row{margin-top:16px}.comparison-row>div{height:14px;background:#ffffff05;border-radius:4px;overflow:hidden}.comparison-row i{display:block;height:100%;background:#6e716a;border-radius:4px}.comparison-row.after i{background:#d0af79}.comparison-row b{font-weight:500;text-align:right}.comparison-row.after b{color:#e8cc98}@media(max-width:480px){.performance-comparison{padding:19px 15px}.performance-comparison h2{font-size:15px}.performance-comparison header strong{font-size:16px}.comparison-row{grid-template-columns:48px minmax(0,1fr) 73px;gap:8px;font-size:11px}}

#article{max-width:1200px}

.source-list button{margin-left:12px;padding:5px 10px;min-height:32px;border:1px solid #d0af7945;border-radius:5px;background:#d0af7912;color:var(--gold);font-size:11px}.source-list button:hover{background:#d0af7925}.source-list code{color:#aaa69e;font-size:11px}.source-updated{display:block;color:#cfbd9d;margin-top:5px;font-size:11px}.source-copy-fallback{display:block;width:100%;margin-top:8px;padding:8px;background:var(--panel);color:var(--ink);border:1px solid var(--gold)}#source-status:empty{display:none}
