*{box-sizing:border-box}body{margin:0;background:#f5f3ed;color:#263a33;font-family:Arial,'Noto Sans KR',sans-serif;font-size:14px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b58a3d;outline-offset:3px}header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:#243d36;color:#fff}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;color:inherit;font-size:26px;font-weight:bold;letter-spacing:2px}.brand small{display:block;font-size:10px;letter-spacing:3px;color:#c6cdbf;margin-top:5px}.seal{border:1px solid #b8a570;width:43px;height:43px;display:grid;place-items:center;color:#d7c18b;font-family:serif}.topnote{font-size:11px;letter-spacing:3px;color:#bbc5b9}.topnote span{display:block;text-align:center;letter-spacing:1px;margin-top:6px}.ghost{background:none;color:#dce1d7;border:1px solid #697b70;border-radius:20px;padding:9px 15px}.app{display:grid;grid-template-columns:265px minmax(0,1fr) 300px;height:calc(100dvh - 86px)}.nav{padding:28px 22px 12px;border-right:1px solid #dcded3;display:flex;flex-direction:column;min-height:0;background:#eeeee5}.eyebrow{font-size:9px;font-weight:bold;letter-spacing:2px;color:#7a887b}h1{font-family:Georgia,serif;font-size:32px;line-height:1.35;font-weight:500;letter-spacing:-1px;margin:17px 0 9px}.nav p{font-size:12px;color:#7b8379;line-height:1.8;margin:0 0 23px}.search{display:flex;gap:9px;align-items:center;border-bottom:1px solid #b8bfb2;padding:10px 0}.search input{border:0;min-width:0;background:none;outline:none;width:100%;font-size:12px}.filters{display:flex;gap:3px;margin:18px 0 12px}.filters button,.tabs button{border:0;background:none;padding:9px 10px;color:#7c8377;font-size:12px;border-radius:6px}.filters button.active,.tabs button.active{background:#243d36;color:#fff}select{padding:9px;background:#f8f8f2;border:1px solid #d3d8cb;border-radius:5px;color:#516052;font-size:12px}#kinglist{overflow:auto;flex:1;margin-top:14px;min-height:70px}.kingrow{width:100%;text-align:left;border:0;border-bottom:1px solid #daddd1;padding:11px 3px;background:none;display:flex;align-items:center;gap:10px}.kingrow:hover,.kingrow.chosen{background:#e1e6d8}.kingrow img{width:35px;height:35px;border-radius:50%;object-fit:cover}.kingrow b{display:block;font-size:12px}.kingrow small{font-size:10px;color:#7d8479;display:block;margin-top:4px}.navfoot{font-size:9px;line-height:1.7;color:#899080;padding-top:13px}main{min-width:0;display:flex;flex-direction:column;padding:28px 25px 0}.workspace-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.workspace-head h2{font-family:Georgia,serif;font-size:25px;font-weight:500;letter-spacing:-1px;margin:10px 0 23px}.tabs{display:flex;background:#e9eadf;padding:3px;border-radius:8px}.compare{padding:19px;display:flex;align-items:center;gap:25px;background:#e9ebde;border:1px solid #d9decd;border-radius:9px}.year small,.contemporary small{font-size:9px;color:#7b8573;display:block;margin-bottom:7px}.year strong{font-size:24px;font-family:Georgia,serif;white-space:nowrap}.yearcontrol{flex:1;min-width:60px}.yearcontrol input{width:100%;direction:rtl;accent-color:#51654a}.yearcontrol>div{display:flex;justify-content:space-between;font-size:9px;color:#829078}.contemporary{min-width:155px;font-size:11px;line-height:1.65}#contemporaries button{border:0;color:#335c54;background:none;padding:0 4px 0 0;font-size:11px}.toolbar{padding:18px 0;display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#788174;align-items:center}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px}.north{background:#296b78}.south{background:#8a4b43;margin-left:13px}.muted{color:#92998c;display:block;margin-top:7px}.zoom{display:flex;align-items:center;gap:4px;white-space:nowrap}.zoom button{border:1px solid #d6dccc;background:#fffef8;border-radius:5px;padding:6px 9px}.zoom span{font-size:10px;min-width:36px;text-align:center}#viewport{flex:1;overflow:auto;background:#faf8f0;border:1px solid #dcded1;border-radius:9px 9px 0 0;position:relative;min-height:200px;scroll-behavior:smooth}#canvas{position:relative;width:1120px;height:4580px;transform-origin:0 0}.gridline{position:absolute;left:65px;width:1030px;border-top:1px solid #e4e3d6}.gridline span{position:absolute;left:-53px;top:-7px;font-size:10px;color:#8e9586}.lane-title{position:absolute;top:20px;font-size:15px;letter-spacing:2px;font-weight:bold}.bar{position:absolute;border-radius:3px;cursor:pointer}.kingcard{position:absolute;width:345px;min-height:130px;border-radius:8px;padding:13px 14px;border:1px solid var(--edge);background:var(--bg);text-align:left;color:#293b34;box-shadow:0 3px 8px #30483008;cursor:pointer}.kingcard:hover,.kingcard.selected{box-shadow:0 0 0 2px var(--edge),0 6px 14px #243d3618;z-index:5}.kingcard .head{display:flex;align-items:center;gap:12px}.kingcard img{border-radius:50%;object-fit:cover;border:3px solid #fff9;flex-shrink:0}.kingcard h3{font-size:15px;margin:0 0 6px}.kingcard small{font-size:10px;color:#627063;display:block;line-height:1.5}.kingcard p{font-size:10px;margin:9px 0 0;line-height:1.5;color:#596959}.ordinal{font-size:9px;opacity:.5;margin-right:6px}.tag{font-size:9px;border:1px solid #82947850;display:inline-block;padding:3px 5px;border-radius:3px;margin-top:5px}.year-cursor{position:absolute;left:65px;width:1030px;border-top:2px dashed #b18c42;z-index:3;pointer-events:none}.year-cursor b{background:#b18c42;color:white;padding:3px 6px;position:absolute;left:-59px;top:-9px;font-size:10px}.detail{overflow:auto;border-left:1px solid #dcded3;background:#fbfaf5;padding:26px 23px}.detail-portrait{border-radius:50%;width:155px;height:155px;object-fit:cover;border:7px solid #e7e8db;display:block;margin:17px auto 25px}.detail h2{font-family:Georgia,serif;font-size:29px;font-weight:500;letter-spacing:-1px;margin:10px 0}.detail .meta{font-size:11px;color:#8a917f;line-height:1.7}.facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.fact{padding:12px;background:#efefe5;border-radius:6px}.fact small{font-size:10px;color:#87917d;display:block}.fact b{display:block;font-size:17px;margin-top:7px}.detail h4{font-size:11px;letter-spacing:1px;margin:23px 0 9px;color:#6a7d62}.detail p{font-size:12px;line-height:1.85;color:#586953;margin:0}.detail .ref{font-size:11px;border-top:1px solid #dedfce;padding-top:20px;margin-top:25px;color:#8d9483}.detail .close{display:none}.action{border:1px solid #c5cdb9;background:transparent;color:#46623c;padding:10px;width:100%;border-radius:6px;margin-top:18px;font-size:12px}footer{padding:10px 0;font-size:9px;color:#9a9f90;line-height:1.6}footer a{color:inherit}#gallery{overflow:auto;flex:1;padding:8px 2px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}#gallery:not([hidden]){display:grid}#gallery .kingcard{position:static;width:auto;min-height:170px}#original{overflow:auto;flex:1}#original img{width:100%}#original p{font-size:12px;color:#7d8976}dialog{border:1px solid #d9decb;background:#faf9f1;color:#304231;border-radius:14px;max-width:540px;padding:36px;line-height:1.9}dialog::backdrop{background:#172d2690}.close{float:right;border:0;background:none;font-size:24px;color:#62725c}.empty{padding:20px;color:#88917f;font-size:12px}.endnote{position:absolute;color:#8b6350;font-size:12px}body[data-mode='original'] .toolbar,body[data-mode='cards'] .toolbar{display:none}@media(min-width:1550px){.app{grid-template-columns:285px minmax(0,1fr) 340px}}@media(max-width:1150px){.app{grid-template-columns:230px minmax(0,1fr)}.detail{display:none}.detail.open{display:block;position:fixed;right:0;top:86px;bottom:0;width:340px;z-index:15;box-shadow:-20px 0 80px #243d3630}.detail .close{display:block}.compare{gap:13px}.topnote{display:none}}@media(max-width:700px){header{height:66px;padding:0 18px}.brand{font-size:21px}.seal{width:35px;height:35px}.brand small{font-size:8px}.app{height:calc(100dvh - 66px);grid-template-columns:1fr}.nav{display:none}.workspace-head h2{font-size:21px;margin-bottom:14px}.workspace-head .eyebrow{font-size:8px}main{padding:19px 12px 0}.compare{padding:13px;gap:12px;flex-wrap:wrap}.year strong{font-size:22px}.yearcontrol{min-width:130px}.contemporary{flex-basis:100%;display:flex;align-items:center;gap:10px;min-height:21px}.contemporary small{margin:0}.tabs button{padding:8px;font-size:11px}.toolbar{font-size:9px;padding:11px 0}.muted{display:none}.zoom{gap:1px}.zoom button{padding:5px 7px}.detail.open{top:66px;width:100%;max-width:420px;border-radius:15px 0 0 0}.detail-portrait{width:130px;height:130px}.workspace-head{align-items:center}.navfoot{display:none}#gallery{grid-template-columns:1fr 1fr;gap:9px}#gallery .kingcard{padding:12px;min-height:185px}#gallery .head{flex-direction:column;align-items:flex-start;gap:8px}#gallery .kingcard img{width:50px!important;height:50px!important}footer{font-size:8px}}
.app{overflow:hidden}main{min-height:0;overflow:hidden}#viewport[hidden]{display:none}.mobile-search{display:none}@media(max-width:700px){.mobile-search{display:flex;gap:6px;margin:0 0 10px}.mobile-search input,.mobile-search select{min-width:0;width:50%;border:1px solid #d3d8cb;background:#fafaf3;border-radius:5px;padding:8px;font-size:12px}}
#scores{flex:1;overflow:auto;background:#fcfaf4;border:1px solid #dcded1;border-radius:9px;padding:20px}#scores h2{font-family:Georgia,serif;font-size:24px;font-weight:500}#scores p{font-size:12px;color:#70806a;line-height:1.8}#scores table{border-collapse:collapse;width:100%;font-size:11px}#scores th{text-align:left;border-bottom:2px solid #bbc5ad;padding:12px 9px;white-space:nowrap}#scores td{padding:14px 9px;border-bottom:1px solid #dde1d4;line-height:1.7}#scores td small{display:block;color:#8b957e;margin-top:6px;font-size:10px}.scoreking{display:flex;align-items:center;gap:8px;border:0;background:none;text-align:left;color:#34472d;min-width:100px;font-size:12px;cursor:pointer}.scoreking img{width:34px;height:34px;border-radius:50%}.assessment{display:flex;align-items:center;gap:12px;padding:15px;background:#e7eadd;border-radius:8px;margin-bottom:12px}.assessment strong{font-size:28px;font-family:Georgia,serif}.assessment b{font-size:13px}body[data-mode='scores'] .toolbar{display:none}@media(max-width:700px){#scores{padding:12px}#scores td,#scores th{padding:10px 5px}#scores td:last-child{min-width:180px}.tabs button{padding:8px 6px}}
.status-circle{display:inline-block;width:9px;height:9px;border-radius:50%;vertical-align:middle;margin-left:3px}.positive{--status:#3e8b59}.negative{--status:#bb4d49}.unknown{--status:#91978b}.status-circle{background:var(--status);box-shadow:0 0 0 3px #fff6}.verdict{display:inline-flex;align-items:center;gap:6px;color:var(--status);font-size:12px;white-space:nowrap}.verdict i{width:10px;height:10px;border-radius:50%;display:inline-block;background:var(--status)}.assessment strong{font-family:inherit}.assessment .verdict{font-size:18px}.assessment .verdict i{width:18px;height:18px}
.evalemoji{font-size:14px;margin-left:3px}.verdict>span{font-size:16px}.assessment .verdict>span{font-size:24px}
@media(max-width:700px){.workspace-head{flex-wrap:wrap;margin-bottom:12px}.workspace-head h2{margin-bottom:0}.tabs{margin-left:auto}.scoreintro .verdict{margin-bottom:6px}}
/* Larger evaluation and succession markers. */
.kingcard .evalemoji{font-size:23px;line-height:1;vertical-align:-2px;margin-left:5px}.sword-badge{font-size:25px;line-height:1;vertical-align:-3px;margin-left:5px;color:#a33731;display:inline-block}.kingcard h3{line-height:1.45}.verdict>span{font-size:22px}.assessment .verdict>span{font-size:29px}
/* Phone experience only; desktop layout retains the existing atlas. */
.mobilebottom,.sheetback,#era{display:none}
@media(max-width:700px){
body{overflow:hidden}header{padding-top:env(safe-area-inset-top);height:calc(66px + env(safe-area-inset-top))}.app{height:calc(100dvh - 132px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}main{padding:16px 12px 0}.workspace-head{margin-bottom:14px}.workspace-head .tabs{display:none}.workspace-head h2{font-size:22px}.workspace-head .eyebrow{font-size:8px}.compare{flex-wrap:nowrap;gap:20px;padding:13px 16px}.compare .contemporary{display:none}.yearcontrol{min-width:0}.yearcontrol input{min-height:30px}.mobile-search{margin-top:0}.mobilebottom{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);padding:7px 8px calc(7px + env(safe-area-inset-bottom));height:calc(66px + env(safe-area-inset-bottom));background:#fafbf6;border-top:1px solid #d8dfce;z-index:25;box-shadow:0 -4px 20px #2f452908}.mobilebottom button{border:0;background:transparent;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:4px;flex-direction:column;color:#8b9583;font-size:10px;min-height:48px}.mobilebottom button span{font-size:20px;line-height:1.1}.mobilebottom button.active{background:#e5ebdd;color:#294733;font-weight:bold}#era:not([hidden]){display:block;flex:1;overflow:auto;min-height:0;padding:0 0 18px;overscroll-behavior:contain}body[data-mode='era'] .mobile-search,body[data-mode='era'] .toolbar{display:none}body[data-mode='era'] footer{display:none}.era-nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0 11px;position:sticky;top:0;background:#f5f3ed;z-index:2}.era-nav button{border:1px solid #cfd8c5;background:#fcfcf5;color:#476043;border-radius:20px;padding:10px 14px;font-size:12px;min-height:40px}.era-nav button:disabled{opacity:.35;cursor:default}.era-nav>span{font:20px Georgia,serif;font-weight:bold;color:#344b33}.era-intro{font-size:12px;line-height:1.8;margin:0 3px 15px;color:#4b6045}.era-intro span{font-size:10px;color:#8a9580}.era-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:11px;align-items:start}.kingdom-label{font-size:12px;letter-spacing:1px;font-weight:bold;text-align:center;margin:0 0 12px}.kingdom-label i{display:inline-block;width:6px;height:6px;background:#296b78;border-radius:50%;margin:0 6px 2px 0}.era-kingdom.s .kingdom-label i{background:#8a4b43}.era-king{display:flex;flex-direction:column;align-items:center;width:100%;border:1px solid var(--edge);background:var(--bg);border-radius:15px;padding:13px 8px 12px;color:#2c4131;position:relative;min-height:300px;box-shadow:0 4px 12px #22351c08;text-align:center}.era-king:active{transform:scale(.985)}.era-role{font-size:9px;letter-spacing:.1px;color:#71816b;min-height:14px}.portrait-area{height:110px;display:flex;align-items:center;justify-content:center;width:100%}.portrait-area img{border-radius:50%;object-fit:cover;border:4px solid #fff9;box-shadow:0 4px 10px #3e442d15}.era-king h3{font-size:17px;line-height:1.4;letter-spacing:-.7px;margin:0 0 5px;word-break:keep-all}.era-dates{font-size:10px;color:#697b61}.era-family{font-size:9px;border:1px solid #60734d30;padding:3px 7px;margin:9px 0 5px;border-radius:20px}.era-metrics{display:flex;align-items:center;justify-content:center;gap:13px;min-height:37px}.era-metrics>b{font-size:14px;font-weight:500}.era-verdict{font-size:24px}.era-coup{font-size:10px;color:#a33731;line-height:1.6;margin:3px 0}.era-rel{font-size:10px;color:#66765d;line-height:1.7;word-break:keep-all;margin:4px 0 10px}.era-open{font-size:10px;margin-top:auto;padding-top:6px;border-top:1px solid #77896a20;width:90%;color:#59794c}.era-event{padding:12px 5px 18px}.era-event small{font-size:8px;color:#859479;letter-spacing:.2px}.era-event p{font-size:11px;line-height:1.8;color:#536b48;margin:5px 0 0;word-break:keep-all}.era-ended{border:1px dashed #c9d0c0;border-radius:15px;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:17px;color:#8b9580;background:#edeedf80}.era-ended>span{font:42px Georgia,serif}.era-ended h3{font-size:14px;font-weight:500;line-height:1.6}.era-ended p{font-size:11px;line-height:1.8}.era-note{font-size:10px;line-height:1.8;background:#e9ecdf;padding:12px;border-radius:8px;color:#78866c;margin:0 0 10px}.era-wide{border:1px solid #cbd6bf;background:transparent;width:100%;padding:13px;border-radius:8px;color:#607a4d;font-size:12px}.detail.open{position:fixed;top:auto;bottom:0;left:0;right:0;max-width:none;width:100%;height:86dvh;border-radius:24px 24px 0 0;z-index:40;padding:24px 25px calc(30px + env(safe-area-inset-bottom));border:0;box-shadow:0 -20px 80px #14281730;animation:sheet-in .2s ease-out}.detail.open:before{content:'';display:block;position:absolute;top:9px;left:calc(50% - 20px);width:40px;height:4px;background:#c5cebb;border-radius:8px}.detail .close{position:sticky;top:0;min-width:40px;min-height:40px;background:#efefe5;border-radius:50%;z-index:1}.detail-portrait{width:140px;height:140px}.detail p{font-size:14px;line-height:1.9}.detail h4{font-size:12px}.detail .meta{font-size:12px}.detail .ref{font-size:11px}body:has(.detail.open) .sheetback{display:block;position:fixed;inset:0;z-index:35;border:0;background:#1d332c70;backdrop-filter:blur(2px)}.mobilebottom button:focus-visible{outline:3px solid #b58a3d}#scores{margin-top:12px}#gallery{margin-top:8px}
@keyframes sheet-in{from{transform:translateY(30px);opacity:.5}to{transform:translateY(0);opacity:1}}
}
@media(prefers-reduced-motion:reduce){.detail.open{animation:none!important}#viewport{scroll-behavior:auto}}
/* 랜딩페이지 (첫 시작 화면): 어두운 녹색 바탕에 금빛 글씨 — 앱 머리띠와 같은 색. 그길 앱의 랜딩 구성을 따른다 */
.intro{--gold:#d4b36c;--gold2:#ecd49a;--ink:#e9ecdf;--muted:#b4c0b1;--line:rgba(212,179,108,.22);--serif:'Gowun Batang',Georgia,serif;position:fixed;inset:0;z-index:60;overflow-y:auto;overscroll-behavior:contain;background:radial-gradient(ellipse at 50% 22%,#2f4d44,#172b25 62%,#12221d);color:var(--ink);font-family:'Noto Sans KR',Arial,sans-serif;transition:opacity .45s,visibility .45s;-webkit-font-smoothing:antialiased}
.intro[hidden]{display:none}.intro.out{opacity:0;visibility:hidden}body.intro-open{overflow:hidden}
.intro section{max-width:640px;margin:0 auto;padding:0 20px;text-align:center;position:relative}
.land-hero{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:calc(32px + env(safe-area-inset-top))!important;padding-bottom:24px!important;max-width:none!important;overflow:hidden;animation:introIn .9s ease-out both}
.land-hero>*:not(.land-faces){position:relative;z-index:1}
/* 뒤에서 천천히 흐르는 왕들의 초상 — 위는 북이스라엘, 아래는 남유다 */
.land-faces{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:6vh 0;opacity:.2;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 50%,transparent 40%,#000 75%);mask-image:radial-gradient(ellipse 70% 60% at 50% 50%,transparent 40%,#000 75%)}
.faces{display:flex;gap:18px;width:max-content;animation:faces 90s linear infinite}.faces.s{animation-direction:reverse}
.faces img{width:84px;height:84px;border-radius:50%;object-fit:cover;border:3px solid #4a8a97;flex:none}.faces.s img{border-color:#a6625a}
@keyframes faces{to{transform:translateX(-50%)}}
.intro-logo{width:96px;height:96px;border-radius:22px;filter:drop-shadow(0 0 28px rgba(233,201,127,.3))}
.intro h1{margin:18px 0 4px;font-family:var(--serif);font-size:46px;font-weight:700;letter-spacing:.24em;text-indent:.24em;color:var(--gold2)}
.intro-tag{margin:0 0 22px;font-family:var(--serif);font-size:17px;color:var(--gold);letter-spacing:.04em;word-break:keep-all}
.intro-lead{margin:0 auto 30px;max-width:440px;text-wrap:balance;font-size:15.5px;line-height:1.9;color:var(--ink);word-break:keep-all;animation:introIn 1.4s .3s ease-out both}
.intro-btn{min-width:260px;max-width:100%;padding:15px 28px;border:0;border-radius:999px;background:linear-gradient(180deg,#e9c97f,#b88a3e);color:#24180a;font-family:var(--serif);font-size:18px;font-weight:700;letter-spacing:.06em;box-shadow:0 8px 26px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.4)}
.intro-btn:hover{filter:brightness(1.06)}
.land-share{display:inline-flex;align-items:center;gap:9px;margin-top:14px;border:0;background:none;color:var(--gold2);font-family:var(--serif);font-size:16.5px;padding:7px 12px;border-radius:999px}
.land-share[hidden]{display:none}.land-share+.land-share{margin-top:2px}
.land-share svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.land-share:hover{background:rgba(217,180,106,.1);color:#fff3d6}
.land-down{margin-top:30px;display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--muted);font-size:13px;text-decoration:none}
.land-down svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;animation:landBob 1.8s ease-in-out infinite}
.land-sec{padding-top:44px!important;padding-bottom:20px!important}
.intro h2{margin:0 0 18px;font-family:var(--serif);font-size:22px;font-weight:700;color:var(--gold2);letter-spacing:.06em}
.intro-feat{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:left}
.intro-feat li{display:grid;grid-template-columns:30px 1fr;column-gap:10px;align-items:start;padding:14px 14px 13px;border:1px solid var(--line);border-radius:14px;background:rgba(18,34,29,.55)}
.intro-feat svg{grid-row:span 2;width:26px;height:26px;fill:none;stroke:var(--gold2);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}
.intro-feat b,.land-steps b{font-family:var(--serif);font-size:15px;color:var(--gold2)}
.intro-feat span,.land-steps span{font-size:13px;line-height:1.65;color:var(--muted);word-break:keep-all}
.land-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;text-align:left}
.land-steps li{display:grid;grid-template-columns:34px 1fr;column-gap:12px;padding:13px 14px;border-left:2px solid rgba(217,180,106,.5);background:linear-gradient(90deg,rgba(18,34,29,.7),rgba(18,34,29,.15));border-radius:0 12px 12px 0}
.land-steps i{grid-row:span 2;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-family:var(--serif);font-weight:700;color:#24180a;background:linear-gradient(180deg,#e9c97f,#b88a3e)}
.land-end{padding-top:48px!important;padding-bottom:calc(28px + env(safe-area-inset-bottom))!important;display:flex;flex-direction:column;align-items:center}
.land-foot{margin-top:44px;font-size:11.5px;letter-spacing:.06em;padding:0}
.land-foot a{color:#7f8f80;text-decoration:none}.land-foot a:hover{color:var(--muted);text-decoration:underline}
@keyframes introIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes landBob{50%{transform:translateY(4px)}}
@media(max-width:560px){.intro-logo{width:80px;height:80px;border-radius:18px}.intro h1{font-size:38px}.intro-tag{font-size:15px}.intro-lead{font-size:14.5px}.intro-feat{grid-template-columns:1fr}.faces img{width:64px;height:64px}}
/* 설치 안내 창과 알림 */
.install-dlg{width:min(420px,92vw);text-align:center;word-break:keep-all;padding:30px 26px}
.install-icon{display:block;margin:4px auto 10px;border-radius:16px;box-shadow:0 6px 20px #243d3640}
.install-dlg h2{font-family:'Gowun Batang',Georgia,serif;font-size:22px;margin:0 0 8px;color:#243d36}
.install-lead{margin:0 0 20px;color:#6f7d6b;font-size:14px;line-height:1.7}
.install-steps{list-style:none;margin:0;padding:0;text-align:left;counter-reset:st}
.install-steps li{counter-increment:st;display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #dfe2d5;font-size:15px;line-height:1.55}
.install-steps li::before{content:counter(st);flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#243d36;color:#ecd49a;font-weight:bold;font-size:13px}
.install-steps li span{flex:1}
.install-steps svg{flex:none;width:28px;height:28px;padding:4px;border-radius:7px;background:#e9ecdf;fill:none;stroke:#2b6fd6;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.install-note{margin:14px 0 0;padding:10px 12px;border-radius:10px;background:#eef0e5;font-size:12.5px;line-height:1.6;color:#6f7d6b;text-align:left}
.goldbtn{display:block;width:100%;border:0;border-radius:999px;padding:14px;background:linear-gradient(180deg,#e9c97f,#b88a3e);color:#24180a;font-family:'Gowun Batang',Georgia,serif;font-size:17px;font-weight:700;text-decoration:none;text-align:center}
.install-dlg .fine{margin:10px 0 0;font-size:12.5px;color:#8b957e}
.toast{position:fixed;left:50%;bottom:calc(90px + env(safe-area-inset-bottom));transform:translate(-50%,10px);z-index:80;background:#243d36;color:#fff;padding:11px 18px;border-radius:999px;font-size:13px;box-shadow:0 8px 24px #0004;opacity:0;pointer-events:none;transition:.25s;max-width:90vw;text-align:center}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media(prefers-reduced-motion:reduce){.faces,.land-down svg,.land-hero,.intro-lead{animation:none!important}.intro{transition:none}}
