*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Apple SD Gothic Neo,sans-serif;font-weight:450;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.55;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.foot-note,.lr-d,.rc-d,.sp-d,.step-d,li,p{text-wrap:pretty}button{font-family:inherit;cursor:pointer;border:none;background:none}a,button{color:inherit}a{text-decoration:none}img{display:block;max-width:100%}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}:root{--ui-scale:1;--mono:ui-monospace,"SFMono-Regular",Menlo,monospace;--motion:1;--ease:cubic-bezier(0.2,0,0,1);--r-card:18px;--r-btn:14px;--r-input:13px;--r-chip:11px;--shadow-dock:0 -1px 0 var(--line),0 -6px 16px rgba(30,26,21,.05);--shadow-pop:0 1px 3px rgba(30,26,21,.08),0 16px 40px rgba(30,26,21,.14);--text-3xs:10px;--text-2xs:11.5px;--text-xs:12px;--text-2sm:13px;--text-sm:14px;--text-body:15px;--text-base:16px;--text-meal:15px;--text-card:16.5px;--text-md:19px;--text-display:22px;--text-lg:24px;--text-lg2:28px;--text-xl:32px;--fw-black:700;--fw-strong:700;--fw-bold:700;--fw-semibold:600;--fw-medium:500;--fw-regular:450;--space-1:4px;--space-1h:6px;--space-2:8px;--space-2h:10px;--space-3:12px;--space-3h:14px;--space-4:16px;--space-4h:18px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--r-sm:10px;--r-md:13px;--r-lg:18px;--r-xl:22px;--shadow-1:none;--shadow-2:var(--shadow-pop);--shadow-3:var(--shadow-pop);--shadow-4:var(--shadow-pop);--shadow-card:none;--shadow-primary:none;--skeleton:linear-gradient(90deg,var(--surface-2) 0%,var(--surface) 50%,var(--surface-2) 100%)}:root,[data-theme=krds],[data-theme=warm]{--bg:#F4F2ED;--surface:#FFFFFF;--surface-2:#F6F4F0;--sunk:#EFECE6;--ink:#1E1A15;--ink-soft:#6B655C;--ink-faint:#736E65;--line:#ECE8E1;--line-strong:#E2DCD2;--tab-off:#767066;--primary:#BE4F26;--primary-deep:#9F3F1B;--primary-tint:#FBEEE6;--on-primary:#FFFFFF;--ok:#187D4E;--ok-weak:#E5F4EC;--sage:#187D4E;--sage-tint:#E5F4EC;--gold:#8F6514;--gold-tint:#F6EEDC;--river:#2A6FDB;--st-approved:#187D4E;--st-approved-bg:#E5F4EC;--st-pending:#8F6514;--st-pending-bg:#F6EEDC;--st-rejected:#C03B2B;--st-rejected-bg:#FBEAE7;--st-handover:#5B5BD6;--st-handover-bg:#ECECFB;--focus:#BE4F26;--shell-bg:#E8E5DF}@media (prefers-reduced-motion:reduce){:root{--motion:0}}.serif{font-family:inherit}.serif,h1,h2,h3,h4{font-weight:700;letter-spacing:-.02em}h1,h2,h3,h4{margin:0;line-height:1.25}.display{font-size:calc(32px * var(--ui-scale));line-height:1.2;letter-spacing:-.02em}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint)}.mono{font-family:var(--mono);font-feature-settings:none;font-variant-ligatures:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.screen{max-width:460px;margin:0 auto;min-height:100vh;min-height:-webkit-fill-available;min-height:100dvh;background:var(--bg);color:var(--ink);display:flex;flex-direction:column;position:relative}@media (min-width:768px){.screen{margin:26px auto;min-height:calc(100vh - 52px);border-radius:24px;border:1px solid var(--line-strong);overflow:hidden;box-shadow:var(--shadow-pop)}body:has(.screen){background:var(--shell-bg)}}.appbar{position:sticky;top:0;z-index:30;min-height:56px;display:flex;align-items:center;gap:12px;padding:10px 20px;background:var(--surface);border-bottom:1px solid var(--line)}.appbar .brand{display:flex;flex-direction:column;font-weight:700;font-size:17px;letter-spacing:-.02em;line-height:1.15}.appbar .brand small{font-weight:450;font-size:11.5px;color:var(--ink-soft);letter-spacing:0;margin-top:1px}.appbar .spacer{margin-left:auto}.scrollarea{flex:1 1;overflow-y:auto;overflow-x:hidden}.c-head{padding:26px 20px 12px}.c-greet{font-size:calc(13px * var(--ui-scale));color:var(--ink-soft);font-weight:600}.c-title{font-size:calc(21px * var(--ui-scale));margin-top:3px;letter-spacing:-.02em}.c-title,.c-title.serif{font-weight:700}.demo-banner{margin:12px 20px 0;font-size:12px;font-weight:600;line-height:1.5;color:var(--primary-deep);background:var(--primary-tint);padding:8px 12px;border-radius:var(--r-input);display:flex;gap:8px;align-items:flex-start}.mark-disclaimer{margin:0;font-size:12px;line-height:1.6;color:var(--ink-soft)}.mark-disclaimer b{color:var(--ink);font-weight:600}.banner-x{flex:none;margin-left:auto;margin-top:-6px;margin-right:-4px;width:40px;height:40px;display:grid;place-items:center;border-radius:10px;color:inherit;opacity:.6;transition:opacity calc(.14s*var(--motion)) var(--ease)}.banner-x:hover{opacity:1}.banner-x:active{transform:scale(.92)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:13px 18px;border-radius:var(--r-btn);font-weight:600;font-size:15px;background:var(--surface-2);color:var(--ink);border:1px solid var(--line);transition:transform calc(.1s * var(--motion)),background calc(.15s*var(--motion)),filter calc(.15s*var(--motion))}.btn:hover{background:var(--sunk)}.btn:active{transform:scale(.99)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--primary);color:var(--on-primary);border-color:transparent}.btn-primary:hover{background:var(--primary-deep)}.btn-block{width:100%}.btn-lg{padding:16px 20px;font-size:16px;border-radius:var(--r-btn)}.btn-ghost{background:transparent;border-color:transparent;color:var(--ink-soft);font-weight:600}.btn-ghost:hover{background:var(--surface-2)}.btn-kakao{background:#FEE500;color:#191600;border-color:transparent;font-weight:700}.tap44{min-height:44px;min-width:44px}.chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:999px;font-size:12.5px;font-weight:600;background:var(--surface-2);color:var(--ink-soft);border:1px solid var(--line)}.chip-sage{background:var(--ok-weak);color:var(--ok)}.chip-gold,.chip-sage{border-color:transparent}.chip-gold{background:var(--gold-tint);color:var(--gold)}.chip-on{background:var(--primary);color:var(--on-primary);border-color:transparent}.chip-sm{padding:3px 9px;font-size:11.5px}.seal{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;overflow:hidden;background:#fff;border:1px solid #efe3d4;box-shadow:0 5px 14px rgba(31,26,21,.1)}.seal img{width:100%;height:100%;object-fit:cover}.ph{background:var(--sunk);display:flex;align-items:center;justify-content:center;color:var(--ink-faint);font-size:12px;font-weight:500;letter-spacing:.01em;text-align:center}.ph.ph-art{flex-direction:column;gap:6px;background:linear-gradient(135deg,#FBF7EF 0,var(--surface-2) 58%,#EFE8DC 100%)}.ph.ph-art svg{color:var(--ink-soft)}.ph.ph-art .ph-cap{font-size:11px;font-weight:500;color:var(--ink-faint)}.toast{position:fixed;left:50%;bottom:calc(26px + env(safe-area-inset-bottom));transform:translateX(-50%);background:#1E1A15;color:#fff;padding:13px 18px;border-radius:13px;font-size:14px;font-weight:600;box-shadow:var(--shadow-pop);z-index:60;display:flex;align-items:center;gap:9px;max-width:min(86%,420px);animation:toastin calc(.24s * var(--motion)) ease}@keyframes toastin{0%{opacity:0;transform:translate(-50%,8px)}}.skel{background:var(--skeleton);background-size:200% 100%;animation:shimmer calc(1.3s * var(--motion) + .1ms) ease infinite;border-radius:var(--r-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skel-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;margin:0 20px 14px}.skel-card .skel-photo{height:124px;border-radius:0}.skel-card .skel-body{padding:14px 16px;display:flex;flex-direction:column;gap:8px}.skel-line{height:13px}.state-panel{padding:40px 28px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.state-panel .sp-art{width:88px;height:88px;border-radius:var(--r-card);background:var(--surface-2);border:1px solid var(--line);display:grid;place-items:center;color:var(--ink-faint)}.state-panel .sp-art.sage{background:var(--ok-weak);border-color:transparent;color:var(--ok)}.state-panel .sp-t{font-size:16px;font-weight:700;letter-spacing:-.01em}.state-panel .sp-d{font-size:14px;color:var(--ink-soft);max-width:280px;line-height:1.55;font-weight:450}.loading{padding:18px}.empty,.loading{text-align:center;color:var(--ink-faint)}.empty{padding:28px 20px;font-size:14px}.panel-inset{margin:12px 20px 0;padding:14px;border-radius:var(--r-input)}.gutter-x{padding-left:20px;padding-right:20px}.benefit-row{display:flex;align-items:center;gap:10px;font-weight:500;font-size:14px;color:var(--ink);padding:10px 0}.benefit-row+.benefit-row{border-top:1px solid var(--line)}.benefit-row .ic,.benefit-row svg{flex:none}.windmill-site{--wm-ink:#090a09;--wm-ink-2:#10130f;--wm-bone:#f5f1e7;--wm-bone-soft:#d7d1c3;--wm-muted:#9d998f;--wm-line:rgba(245,241,231,0.14);--wm-line-strong:rgba(245,241,231,0.24);--wm-lime:#d8ff3f;--wm-cyan:#51f0ff;--wm-panel:rgba(245,241,231,0.055);--wm-panel-strong:rgba(245,241,231,0.09);width:min(100%,1600px);min-height:100vh;margin:0 auto;overflow:hidden;color:var(--wm-bone);background:linear-gradient(90deg,rgba(245,241,231,.035) 1px,transparent 0),linear-gradient(180deg,rgba(245,241,231,.026) 1px,transparent 0),linear-gradient(135deg,#090a09,#12150f 42%,#060706);background-size:72px 72px,72px 72px,100% 100%}.windmill-site:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(115deg,transparent,rgba(216,255,63,.1) 42%,transparent 56%),linear-gradient(155deg,transparent,rgba(81,240,255,.06) 48%,transparent 68%);opacity:.72}.windmill-site .site-nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px;padding:20px 48px;border-bottom:1px solid var(--wm-line);background:rgba(9,10,9,.84);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.windmill-site .site-brand{display:inline-flex;align-items:center;gap:10px;min-width:0;font-weight:900;text-decoration:none}.windmill-site .site-brand span{font-size:1.08rem}.windmill-site .card-head span,.windmill-site .case-back,.windmill-site .case-meta span,.windmill-site .case-stack-tags span,.windmill-site .eyebrow,.windmill-site .nav-links,.windmill-site .section-kicker,.windmill-site .site-brand small,.windmill-site .site-footer,.windmill-site .tags span{font-family:var(--mono)}.windmill-site .site-brand small{color:var(--wm-muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.windmill-site .nav-links{display:flex;align-items:center;gap:28px;color:var(--wm-bone-soft);font-size:.78rem}.windmill-site .nav-links a{color:var(--wm-bone-soft);transition:color .18s ease,transform .18s ease}.windmill-site .nav-links a:hover{color:var(--wm-lime);transform:translateY(-1px)}.windmill-site .nav-cta{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:38px;padding:9px 16px;border:1px solid rgba(216,255,63,.42);border-radius:8px;color:var(--wm-lime);font-weight:800}.windmill-site .hero{display:grid;grid-template-columns:1fr;align-items:center;min-height:760px;padding:96px 48px 82px}.windmill-site .eyebrow,.windmill-site .section-kicker{margin:0;color:var(--wm-lime);font-size:.82rem;font-weight:700;text-transform:uppercase}.windmill-site .hero h1{max-width:1280px;margin:24px 0 0;font-size:clamp(5.6rem,12.4vw,12.8rem);font-weight:900;line-height:.87;letter-spacing:0}.windmill-site .hero h1 span{display:block;width:max-content;max-width:100%;color:transparent;-webkit-text-stroke:1.5px var(--wm-lime);font-size:.74em;white-space:nowrap;text-shadow:0 0 42px rgba(216,255,63,.2)}.windmill-site .hero-lead{max-width:1120px;margin:38px 0 0;color:var(--wm-bone-soft);font-size:1.24rem;line-height:1.82}.windmill-site .hero-lead p{margin:0}.windmill-site .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.windmill-site .button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 22px;border-radius:8px;font-weight:900;line-height:1.2;transition:transform .18s ease,border-color .18s ease,background .18s ease}.windmill-site .button:hover{transform:translateY(-2px)}.windmill-site .button.primary{background:var(--wm-lime);color:var(--wm-ink)}.windmill-site .button.secondary{border:1px solid var(--wm-line-strong);color:var(--wm-bone);background:rgba(245,241,231,.04)}.windmill-site .button.secondary:hover{border-color:rgba(216,255,63,.58)}.windmill-site .kinetic-strip{border-top:1px solid var(--wm-line);border-bottom:1px solid var(--wm-line);overflow:hidden;background:rgba(245,241,231,.035)}.windmill-site .marquee{display:flex;width:max-content;align-items:center;gap:38px;padding:26px 0;font-size:4.7rem;font-weight:900;line-height:1;white-space:nowrap;will-change:transform;animation:wm-marquee 34s linear infinite}.windmill-site .marquee strong{color:transparent;-webkit-text-stroke:1.1px rgba(216,255,63,.9)}.windmill-site .section{padding:100px 48px}.windmill-site .about-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(320px,1.12fr);gap:72px;align-items:start}.windmill-site .contact-section h2,.windmill-site .section h2{margin:16px 0 0;max-width:780px;color:var(--wm-bone);font-size:3rem;font-weight:900;line-height:1.12}.windmill-site .about-copy{display:grid;gap:22px;padding-top:8px}.windmill-site .about-copy p,.windmill-site .building-grid p,.windmill-site .contact-section p,.windmill-site .principle-grid p,.windmill-site .project-list p,.windmill-site .project-list small,.windmill-site .section-heading p{margin:0;color:var(--wm-bone-soft);line-height:1.78}.windmill-site .building-grid,.windmill-site .principle-grid,.windmill-site .proof-grid{display:grid;gap:18px}.windmill-site .principle-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding-top:0}.windmill-site .building-grid,.windmill-site .proof-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.windmill-site .building-grid article,.windmill-site .principle-grid article,.windmill-site .proof-grid article{border:1px solid var(--wm-line);border-radius:8px;background:var(--wm-panel)}.windmill-site .principle-grid article{min-height:228px;padding:26px}.windmill-site .card-head span,.windmill-site .principle-grid span,.windmill-site .tags span{color:var(--wm-lime)}.windmill-site .building-grid h3,.windmill-site .principle-grid h3,.windmill-site .project-list h3{margin:18px 0 0;color:var(--wm-bone);font-size:1.45rem;line-height:1.28}.windmill-site .section-heading{display:grid;gap:16px;margin-bottom:42px}.windmill-site .section-heading.split{grid-template-columns:minmax(0,1fr) minmax(280px,430px);align-items:end;gap:48px}.windmill-site .building-grid article{min-height:250px;padding:22px;transition:transform .18s ease,border-color .18s ease,background .18s ease}.windmill-site .building-grid article:hover{transform:translateY(-4px);border-color:rgba(216,255,63,.42);background:var(--wm-panel-strong)}.windmill-site .card-head{display:grid;gap:14px}.windmill-site .card-head h3{margin:0}.windmill-site .card-head span,.windmill-site .tags span{width:fit-content;border:1px solid rgba(216,255,63,.25);border-radius:999px;font-size:.72rem;font-weight:700;padding:6px 10px}.windmill-site .building-grid p{margin-top:32px}.windmill-site .project-list{border-top:1px solid var(--wm-line)}.windmill-site .project-card{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(240px,auto);align-items:center;gap:28px;padding:30px 0;border-bottom:1px solid var(--wm-line);transition:border-color .18s ease,background .18s ease,transform .18s ease}.windmill-site .project-card:hover{border-color:rgba(216,255,63,.42);background:rgba(216,255,63,.035);transform:translateX(6px)}.windmill-site .project-card:hover h3{color:var(--wm-lime)}.windmill-site .project-index{color:rgba(245,241,231,.24);font-size:2rem;font-weight:900}.windmill-site .project-list h3{margin:0;font-size:1.7rem}.windmill-site .project-list p{margin-top:8px}.windmill-site .project-list small{display:block;margin-top:6px;font-size:.95rem}.windmill-site .tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.windmill-site.case-shell{overflow:visible}.windmill-site .case-hero{padding:56px 48px 88px;border-bottom:1px solid var(--wm-line)}.windmill-site .case-back{display:inline-flex;margin-bottom:56px;color:var(--wm-bone-soft);font-size:.78rem;font-weight:700}.windmill-site .case-back:hover{color:var(--wm-lime)}.windmill-site .case-hero-grid,.windmill-site .case-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,430px);gap:72px}.windmill-site .case-hero-grid{align-items:end}.windmill-site .case-hero h1{max-width:980px;margin:0;color:var(--wm-bone);font-size:clamp(5rem,14vw,13rem);font-weight:900;line-height:.88;letter-spacing:0}.windmill-site .case-lead{max-width:820px;margin:34px 0 0;color:var(--wm-bone-soft);font-size:clamp(1.12rem,2vw,1.55rem);font-weight:700;line-height:1.62}.windmill-site .case-meta{display:grid;border-top:1px solid var(--wm-line)}.windmill-site .case-meta div{display:grid;gap:8px;padding:18px 0;border-bottom:1px solid var(--wm-line)}.windmill-site .case-meta span{color:var(--wm-lime);font-size:.72rem;font-weight:800;text-transform:uppercase}.windmill-site .case-meta strong{color:var(--wm-bone);font-size:1.05rem;line-height:1.35}.windmill-site .case-section{grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);padding:96px 48px;border-bottom:1px solid var(--wm-line)}.windmill-site .case-section h2{margin:0;color:var(--wm-bone);font-size:clamp(2.25rem,5vw,5.2rem);font-weight:900;line-height:1.02;letter-spacing:0}.windmill-site .case-copy{display:grid;align-content:start;gap:22px}.windmill-site .case-copy p{margin:0;color:var(--wm-bone-soft);font-size:1.15rem;font-weight:600;line-height:1.84}.windmill-site .case-visual-band{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:1px 48px 0;background:var(--wm-line)}.windmill-site .case-screen{display:grid;margin:0;background:var(--wm-ink)}.windmill-site .case-screen img{width:100%;aspect-ratio:16/11;object-fit:cover;object-position:top center}.windmill-site .airang-panel{position:relative;display:grid;min-height:0;aspect-ratio:16/11;overflow:hidden;padding:26px;border-bottom:1px solid var(--wm-line);background:linear-gradient(90deg,rgba(245,241,231,.06) 1px,transparent 0),linear-gradient(180deg,rgba(245,241,231,.05) 1px,transparent 0),#11140f;background-size:40px 40px,40px 40px,100% 100%}.windmill-site .airang-meter,.windmill-site .airang-mode,.windmill-site .airang-phone,.windmill-site .airang-place-card,.windmill-site .airang-route-modes b{border:1px solid rgba(245,241,231,.16);border-radius:8px;background:rgba(245,241,231,.07)}.windmill-site .airang-phone{justify-self:center;width:min(86%,360px);overflow:hidden}.windmill-site .airang-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;color:var(--wm-bone);font-weight:900}.windmill-site .airang-chip,.windmill-site .airang-meter strong,.windmill-site .airang-mode strong,.windmill-site .airang-route-modes b,.windmill-site .airang-topbar b{color:var(--wm-lime)}.windmill-site .airang-map-surface{position:relative;min-height:210px;margin:0 12px;border:1px solid rgba(81,240,255,.22);border-radius:8px;background:radial-gradient(circle at 28% 34%,rgba(81,240,255,.26),transparent 0 8px,transparent 9px),radial-gradient(circle at 62% 58%,rgba(216,255,63,.3),transparent 0 8px,transparent 9px),rgba(81,240,255,.055)}.windmill-site .airang-me,.windmill-site .airang-pin{position:absolute;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-style:normal;font-family:var(--mono);font-size:.8rem;font-weight:900}.windmill-site .airang-pin{background:var(--wm-lime);color:var(--wm-ink)}.windmill-site .airang-pin.p1{left:18%;top:24%}.windmill-site .airang-pin.p2{right:20%;top:42%}.windmill-site .airang-pin.p3{left:48%;bottom:22%}.windmill-site .airang-me{left:44%;top:34%;border:2px solid var(--wm-cyan);background:rgba(81,240,255,.18)}.windmill-site .airang-mini-card{display:grid;gap:4px;margin:12px;padding:14px;color:var(--wm-bone)}.windmill-site .airang-meter span,.windmill-site .airang-mini-card span,.windmill-site .airang-mode span,.windmill-site .airang-place-card p{color:var(--wm-muted)}.windmill-site .airang-card-panel,.windmill-site .airang-route-panel,.windmill-site .airang-signal-panel{align-content:center;gap:14px}.windmill-site .airang-signal-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.windmill-site .airang-meter,.windmill-site .airang-mode{display:grid;gap:10px;padding:24px}.windmill-site .airang-meter strong,.windmill-site .airang-mode strong{font-size:clamp(1.8rem,5vw,4rem);line-height:1}.windmill-site .airang-mode{grid-column:1/-1;border-color:rgba(216,255,63,.34)}.windmill-site .airang-card-panel{grid-template-columns:minmax(0,1fr)}.windmill-site .airang-place-card{display:grid;gap:12px;padding:22px}.windmill-site .airang-place-card h3{margin:0;color:var(--wm-bone);font-size:clamp(1.4rem,3vw,2.4rem)}.windmill-site .airang-place-card div{display:flex;flex-wrap:wrap;gap:8px}.windmill-site .airang-chip,.windmill-site .airang-place-card b{width:fit-content;border:1px solid rgba(216,255,63,.24);border-radius:999px;padding:6px 10px;font-family:var(--mono);font-size:.72rem}.windmill-site .airang-place-card.ghost{opacity:.58}.windmill-site .airang-route-line{display:grid;grid-template-columns:auto minmax(100px,1fr) auto;align-items:center;gap:16px;color:var(--wm-bone);font-weight:900}.windmill-site .airang-route-line i{height:2px;background:linear-gradient(90deg,var(--wm-cyan),var(--wm-lime))}.windmill-site .airang-route-modes{display:grid;gap:10px}.windmill-site .airang-route-modes b{padding:18px;font-size:1.05rem}.windmill-site .case-screen figcaption{display:grid;gap:8px;min-height:132px;padding:22px;background:rgba(245,241,231,.055)}.windmill-site .case-screen strong{color:var(--wm-bone);font-size:1.25rem}.windmill-site .case-screen span{color:var(--wm-muted);line-height:1.62}.windmill-site .case-feature-list{display:grid;margin:0;padding:0;list-style:none;border-top:1px solid var(--wm-line)}.windmill-site .case-feature-list li{padding:20px 0;border-bottom:1px solid var(--wm-line);color:var(--wm-bone-soft);font-size:1.14rem;font-weight:800;line-height:1.48}.windmill-site .case-feature-list li:before{content:"/";margin-right:12px;color:var(--wm-lime);font-family:var(--mono)}.windmill-site .case-stack-tags{display:flex;flex-wrap:wrap;align-content:start;gap:12px}.windmill-site .case-stack-tags span{border:1px solid var(--wm-line-strong);border-radius:8px;padding:14px 16px;color:var(--wm-bone);font-size:.9rem;font-weight:800;background:rgba(245,241,231,.04)}.windmill-site .proof-section{padding-top:36px}.windmill-site .proof-grid article{display:grid;align-content:space-between;min-height:190px;padding:22px}.windmill-site .proof-grid article span{width:34px;height:34px;background:linear-gradient(90deg,var(--wm-lime) 0 42%,transparent 42%),linear-gradient(180deg,var(--wm-lime) 0 42%,transparent 42%);opacity:.9}.windmill-site .proof-grid p{margin:0;color:var(--wm-bone);font-size:1.35rem;font-weight:900;line-height:1.3}.windmill-site .contact-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,430px);gap:48px;margin:0 48px 48px;padding:42px;border:1px solid rgba(216,255,63,.32);border-radius:8px;background:linear-gradient(135deg,rgba(216,255,63,.12),transparent 42%),rgba(245,241,231,.055)}.windmill-site .contact-section p{max-width:620px;margin-top:18px}.windmill-site .contact-actions{display:grid;align-content:center;gap:12px}.windmill-site .contact-actions .button{width:100%}.windmill-site .mail-link{display:block;padding:14px 16px;border:1px solid var(--wm-line);border-radius:8px;color:var(--wm-bone-soft);font-weight:700;overflow-wrap:anywhere}.windmill-site .mail-link:hover{border-color:rgba(216,255,63,.42);color:var(--wm-lime)}.windmill-site .site-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:28px 48px 44px;border-top:1px solid var(--wm-line);color:var(--wm-muted);font-size:.82rem}@keyframes wm-marquee{to{transform:translateX(-50%)}}@media (max-width:1180px){.windmill-site .case-hero,.windmill-site .case-section,.windmill-site .hero,.windmill-site .section,.windmill-site .site-footer,.windmill-site .site-nav{padding-inline:32px}.windmill-site .hero{min-height:auto;padding-block:78px 62px}.windmill-site .hero h1{font-size:clamp(4.7rem,12vw,7rem)}.windmill-site .about-layout,.windmill-site .case-hero-grid,.windmill-site .case-section,.windmill-site .contact-section,.windmill-site .section-heading.split{grid-template-columns:1fr}.windmill-site .case-visual-band{padding-inline:32px}.windmill-site .building-grid,.windmill-site .proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.windmill-site .contact-section{margin-inline:32px}}@media (max-width:760px){.windmill-site .site-nav{min-height:68px;padding:16px 20px}.windmill-site .nav-links,.windmill-site .site-brand small{display:none}.windmill-site .hero{padding:62px 20px 44px}.windmill-site .hero h1{font-size:4rem;line-height:1}.windmill-site .hero h1 span{font-size:.68em;-webkit-text-stroke:1px var(--wm-lime)}.windmill-site .hero-lead{font-size:1rem}.windmill-site .button,.windmill-site .hero-actions{width:100%}.windmill-site .marquee{gap:26px;padding:18px 0;font-size:2.4rem}.windmill-site .case-hero,.windmill-site .case-section,.windmill-site .section{padding:70px 20px}.windmill-site .contact-section h2,.windmill-site .section h2{font-size:2.1rem}.windmill-site .building-grid,.windmill-site .case-visual-band,.windmill-site .principle-grid,.windmill-site .proof-grid{grid-template-columns:1fr}.windmill-site .project-card{grid-template-columns:1fr;gap:18px;padding:26px 0}.windmill-site .tags{justify-content:flex-start}.windmill-site .case-hero h1{font-size:5rem}.windmill-site .case-visual-band{padding-inline:20px}.windmill-site .contact-section{margin:0 20px 32px;padding:28px;grid-template-columns:1fr}}.c-pad{padding:18px 20px 28px}.land-hero{padding:30px 20px 8px}.land-hero .hero-art,.land-hero .hero-bg,.land-hero .hero-grain,.land-hero .hero-vignette{display:none}.land-kicker{font-size:13px;font-weight:600;color:var(--primary-deep);display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:0}.land-h1{font-size:calc(28px * var(--ui-scale));line-height:1.32;letter-spacing:-.02em;margin-top:10px;font-weight:700;color:var(--ink);text-shadow:none}.land-h1 .accent{color:var(--primary);font-family:inherit}.land-sub{margin-top:10px;font-size:calc(15px * var(--ui-scale));color:var(--ink-soft);line-height:1.6;font-weight:450;max-width:none}.land-cta{margin-top:20px}.card-group{margin:0 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.list-row{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:16px;transition:background calc(.12s * var(--motion)),transform calc(.1s * var(--motion))}.list-row+.list-row{border-top:1px solid var(--line)}.list-row:active{background:var(--surface-2);transform:scale(.995)}.list-row .lr-ic{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:20px;background:var(--primary-tint);color:var(--primary)}.list-row .lr-t{font-weight:600;font-size:15px;letter-spacing:-.01em}.list-row .lr-d{font-size:13px;color:var(--ink-soft);margin-top:2px;font-weight:450}.list-row .lr-arrow{margin-left:auto;color:var(--ink-faint);font-size:16px}.sec-label{padding:26px 20px 10px;font-size:13px;font-weight:600;color:var(--ink-soft)}.axis3{display:grid;grid-template-columns:repeat(3,1fr);padding:0;gap:0}.axis3 .ax{padding:16px 12px 18px;text-align:center;background:none;border:none;border-radius:0;display:block}.axis3 .ax+.ax{border-left:1px solid var(--line)}.axis3 .ax .axn{font-weight:600;font-size:13.5px;margin-top:8px}.axis3 .ax .axd{font-size:12px;color:var(--ink-soft);margin-top:3px;line-height:1.5;font-weight:450}.foot-note{padding:18px 20px 30px;font-size:12.5px;color:var(--ink-faint);line-height:1.6;font-weight:450}.foot-note b{font-weight:600;color:var(--ink-soft)}.mission-body{padding:2px 20px 8px;display:flex;flex-direction:column;gap:12px}.mission-body p{margin:0;font-size:14px;color:var(--ink-soft);line-height:1.62;font-weight:450}.mission-body b{color:var(--ink);font-weight:600}.about-hero{padding:30px 20px 16px;text-align:left;background:none}.about-hero h1{font-size:calc(24px * var(--ui-scale));margin-top:12px;line-height:1.3;letter-spacing:-.02em}.about-hero p{margin:10px 0 0;font-size:14px;color:var(--ink-soft);line-height:1.62;max-width:none;font-weight:450}.about-hero b{color:var(--ink);font-weight:600}.about-sec{padding:18px 20px 8px}.about-sec .c-greet{padding:0}.about-sec h2{font-size:17px;margin:3px 0 12px;letter-spacing:-.01em}.about-list{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.about-list li{position:relative;padding:13px 16px 13px 36px;font-size:14px;color:var(--ink-soft);line-height:1.55;font-weight:450}.about-list li+li{border-top:1px solid var(--line)}.about-list li:before{content:"";position:absolute;left:16px;top:20px;width:7px;height:7px;border-radius:50%;background:var(--primary)}.about-list b{color:var(--ink);font-weight:600}.sec-lead{margin:0 0 12px;font-size:14px;color:var(--ink-soft);line-height:1.62;font-weight:450}.sec-lead b{color:var(--ink);font-weight:600}.about-roles{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.about-role{display:flex;gap:13px;align-items:flex-start;padding:16px;background:none;border:none}.about-role+.about-role{border-top:1px solid var(--line)}.about-role .rc-ic{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center}.about-role .rc-t{font-weight:600;font-size:15px}.about-role .rc-d{font-size:13px;color:var(--ink-soft);margin-top:3px;line-height:1.55;font-weight:450}.screen-list .scrollarea{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.map-screen{height:100vh;height:-webkit-fill-available;height:100dvh;overflow:hidden}.map-screen .kakao-map{flex:none;touch-action:none}.map-screen .areabar,.map-screen .demo-banner,.map-screen .filterbar,.map-screen .loc-nudge,.map-screen .map-key-missing,.map-screen .map-stage,.map-screen .mapsearch,.map-screen .regionbar{flex:none}.map-screen .scrollarea{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}@media (max-width:767px){.map-screen .kakao-map{height:280px;min-height:200px}}@media (min-width:768px){.map-screen .kakao-map{height:clamp(280px,42vh,480px)}}.kakao-map{margin:0;height:280px;border-bottom:1px solid var(--line-strong);background:#EDECE6}.map-key-missing{background:var(--gold-tint);border-radius:var(--r-input);padding:10px 12px;margin:12px 20px;font-size:13px;color:var(--gold);font-weight:500}.map-screen .map-key-missing{display:flex;align-items:center;gap:8px;line-height:1.4}.map-screen .map-key-missing>span{display:inline}.map-stage{margin:8px 20px 10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.map-stage-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--line);font-size:12.5px;color:var(--ink-soft);font-weight:600}.map-stage-head span{display:inline-flex;align-items:center;gap:5px;min-width:0}.map-stage-head b{color:var(--ink);font-weight:700;white-space:nowrap}.map-frame{position:relative}.map-stage .map-key-missing{margin:0;border-radius:0;border:none;background:var(--gold-tint);padding:12px;flex-wrap:wrap}.map-stage .map-key-missing .btn{width:100%;min-width:0}.map-screen .map-stage .kakao-map{height:220px;min-height:180px;border-bottom:none}@media (min-width:768px){.map-screen .map-stage .kakao-map{height:260px}}@media (max-width:767px){.map-screen{height:auto;min-height:100vh;min-height:100dvh;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.map-screen .kakao-map{touch-action:pan-y}.map-screen .scrollarea{flex:none;min-height:0;overflow:visible;-webkit-overflow-scrolling:auto;overscroll-behavior:auto;padding-bottom:calc(92px + env(safe-area-inset-bottom))}.map-screen .map-stage .kakao-map{height:190px;min-height:170px}}@media (max-width:430px){.regionbar{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.regionbar .areabar-lab{grid-column:1/-1}.region-sel-wrap{width:100%}.map-stage-head{align-items:flex-start}.map-stage-head b{font-size:12px}.list-meta .lm-sort{display:none}}.map-canvas{position:relative;height:280px;flex:none;background:#EDECE6;overflow:hidden;border-bottom:1px solid var(--line-strong)}.map-canvas:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 46px,rgba(30,26,21,.045) 0,rgba(30,26,21,.045) 47px),repeating-linear-gradient(90deg,transparent,transparent 46px,rgba(30,26,21,.045) 0,rgba(30,26,21,.045) 47px)}.map-pin{position:absolute;transform:translate(-50%,-100%);flex-direction:column;cursor:pointer;z-index:2}.map-pin,.map-pin .pin-body{display:flex;align-items:center}.map-pin .pin-body{background:var(--surface);border:1.5px solid var(--line-strong);color:var(--ink);border-radius:999px;padding:5px 10px;font-size:11.5px;font-weight:600;white-space:nowrap;gap:4px;transition:transform calc(.1s * var(--motion))}.map-pin:active .pin-body{transform:scale(.97)}.map-pin.active .pin-body{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.map-pin .pin-tip{width:1.5px;height:8px;background:var(--line-strong)}.map-pin.active .pin-tip{background:var(--primary)}.map-me{position:absolute;transform:translate(-50%,-50%);width:16px;height:16px;border-radius:50%;background:var(--river);box-shadow:0 0 0 4px rgba(42,111,219,.18),0 0 0 2px #fff}.map-loc-btn{position:absolute;right:12px;bottom:12px;z-index:3;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:10px 16px;border-radius:999px;background:var(--primary);color:var(--on-primary);border:none;font-size:13.5px;font-weight:700;letter-spacing:-.01em;box-shadow:0 2px 10px rgba(30,26,21,.28)}.map-loc-btn:hover{background:var(--primary-deep)}.map-loc-btn:active{transform:scale(.96)}.map-frame.has-preview .map-loc-btn{bottom:96px}.map-pin-preview{position:absolute;left:10px;right:10px;bottom:10px;z-index:4;display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:16px;background:rgba(255,255,255,.96);border:1px solid rgba(222,216,207,.9);box-shadow:0 8px 28px rgba(30,26,21,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.map-pin-preview .mpp-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.map-pin-preview .mpp-main b{font-size:14px;font-weight:750;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-pin-preview .mpp-main span{font-size:12px;color:var(--ink-soft);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-pin-preview .mpp-main em{font-style:normal;font-size:12.5px;color:var(--primary);font-weight:750}.map-pin-preview .mpp-cta{min-height:38px;padding:0 12px;border-radius:12px;font-size:12.5px;white-space:nowrap}.map-pin-preview .mpp-close{flex:none;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--surface-2);color:var(--ink-soft)}@media (max-width:374px){.map-pin-preview{gap:8px;padding:10px}.map-pin-preview .mpp-close{display:none}}.loc-nudge{margin:4px 20px 12px;display:flex;gap:8px;align-items:center;font-size:13px;color:var(--ink-soft);font-weight:500}.loc-nudge button{color:var(--primary-deep);font-weight:600;margin-left:auto;white-space:nowrap;flex:none;text-decoration:none}.filterbar{display:flex;flex-wrap:wrap;gap:7px;padding:12px 20px 4px;flex:none;background:var(--bg)}.filterbar::-webkit-scrollbar{display:none}.fbtn{flex:none;padding:8px 13px;border-radius:999px;font-size:13px;font-weight:600;background:var(--surface);color:var(--ink-soft);border:1px solid var(--line-strong);display:flex;align-items:center;gap:5px;white-space:nowrap;transition:background calc(.12s*var(--motion)),transform calc(.1s*var(--motion))}.fbtn:active{transform:scale(.97)}.fbtn[aria-pressed=true]{border-color:transparent}.fbtn.key[aria-pressed=true],.fbtn[aria-pressed=true]{background:var(--primary);color:var(--on-primary)}.fbtn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.areabar{display:flex;gap:7px;padding:4px 20px 8px;overflow-x:auto;flex:none;align-items:center}.areabar::-webkit-scrollbar{display:none}.areabar-lab{flex:none;display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--ink-soft)}.catbar{flex:none;flex-wrap:nowrap;overflow-x:auto;padding-bottom:10px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.regionbar{display:flex;gap:8px;padding:10px 20px 2px;align-items:center;flex:none}.region-sel-wrap{position:relative;flex:1 1;min-width:0}.region-sel-wrap>.ic{position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--ink-faint)}.region-sel{width:100%;appearance:none;-webkit-appearance:none;padding:10px 30px 10px 13px;border-radius:var(--r-input);background:var(--surface);border:1px solid var(--line-strong);font-family:inherit;font-size:13.5px;font-weight:600;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;transition:border-color calc(.12s*var(--motion))}.region-sel:focus{border-color:var(--primary);outline:none}.region-sel:disabled{opacity:.55;cursor:not-allowed;color:var(--ink-faint)}.list-cap{display:flex;align-items:flex-start;gap:8px;margin:0 20px 16px;padding:10px 14px;border-radius:var(--r-input);background:var(--surface-2);font-size:11.5px;line-height:1.5;color:var(--ink-soft)}.list-cap svg{flex:none;margin-top:1px}.cheer-strip{display:flex;gap:10px;align-items:flex-start;margin:8px 20px 0;padding:10px 14px;border-radius:var(--r-input);background:var(--ok-weak);color:var(--ink-soft);font-size:11.5px;font-weight:500;line-height:1.5}.cheer-strip svg{flex:none;margin-top:1px;color:var(--ok)}.cheer-strip b{color:var(--ink);font-weight:600}.list-meta{padding:4px 20px 10px;display:flex;align-items:baseline;justify-content:space-between}.list-meta .lm-count{font-weight:700;font-size:15px;letter-spacing:-.01em}.list-meta .lm-sort{font-size:12.5px;color:var(--ink-soft);gap:4px;font-weight:500}.list-meta .lm-sort,.mapsearch{display:flex;align-items:center}.mapsearch{gap:8px;margin:12px 20px 0;padding:11px 13px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-input);color:var(--ink-faint);transition:border-color calc(.12s*var(--motion))}.mapsearch input{border:none;background:none;flex:1 1;font-size:14px;color:var(--ink);font-family:inherit;font-weight:500}.mapsearch input:focus{outline:none}.mapsearch button{color:var(--ink-faint);display:grid;place-items:center}.rcard{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;margin:0 20px 14px;text-align:left;display:block;transition:background calc(.12s*var(--motion)),transform calc(.1s*var(--motion))}.rcard:active{background:var(--surface-2);transform:scale(.99)}.rcard-link{position:absolute;inset:0;z-index:1;border-radius:var(--r-card)}.rcard-link:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.rcard-photo{height:106px;position:relative;font-size:12px}.rcard-photo .dist{position:absolute;left:12px;bottom:10px;background:rgba(30,26,21,.72);color:#fff;font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:8px;display:flex;align-items:center;gap:4px}.rcard-photo .badge-seal{position:absolute;top:10px;right:10px}.rcard-body{padding:14px 16px 16px}.rcard-name{font-weight:700;font-size:calc(16.5px * var(--ui-scale));display:flex;align-items:center;gap:7px;letter-spacing:-.01em}.rcard-name .grade{font-size:11.5px;color:var(--primary-deep);font-weight:600}.rcard-cat{font-size:13px;color:var(--ink-soft);margin-top:2px;font-weight:450}.rcard-hours{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--ink-faint);margin-top:4px;font-weight:500}.rcard-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.card-selected .rcard{outline:2px solid var(--primary);outline-offset:1px}.badge-st{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:7px;font-size:11.5px;font-weight:600}.badge-st.open{background:var(--ok-weak);color:var(--ok)}.badge-st.grade{background:var(--primary-tint);color:var(--primary-deep)}.badge-st.off{background:var(--surface-2);color:var(--ink-soft)}.meal{margin-top:13px;padding-top:13px;border-top:1px solid var(--line);display:flex;align-items:center;gap:12px}.meal-photo{flex:none;width:52px;height:52px;border-radius:12px;font-size:10px;overflow:hidden}.meal-photo img{width:100%;height:100%;object-fit:cover}.meal-info{flex:1 1;min-width:0}.meal-label{font-size:12px;font-weight:500;color:var(--ink-soft)}.meal-name{font-weight:600;font-size:15px;margin-top:1px;letter-spacing:-.01em}.meal-price{display:flex;align-items:center;gap:7px;margin-top:3px}.meal-price b{font-size:15px;font-weight:700}.meal-within{color:var(--ok);background:var(--ok-weak)}.meal-over,.meal-within,.meal-within.over{font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;display:inline-flex;align-items:center;gap:3px}.meal-over,.meal-within.over{color:var(--gold);background:var(--gold-tint)}.meal-del{flex:none;width:44px;height:44px;display:grid;place-items:center;border-radius:10px;color:var(--ink-faint);background:transparent;transition:background calc(.14s*var(--motion)) var(--ease),color calc(.14s*var(--motion))}.meal-del:hover{background:var(--st-rejected-bg);color:var(--st-rejected)}.meal-del:active{transform:scale(.94)}.sheet-backdrop{position:fixed;inset:0;background:rgba(30,26,21,.36);z-index:60;display:flex;align-items:flex-end;justify-content:center;animation:sheet-fade calc(.18s*var(--motion)) var(--ease)}.sheet{width:100%;max-width:460px;background:var(--surface);border-radius:var(--r-card) var(--r-card) 0 0;padding:12px 20px calc(24px + env(safe-area-inset-bottom));box-shadow:var(--shadow-pop);animation:sheet-up calc(.22s*var(--motion)) var(--ease)}.sheet-grip{width:40px;height:4px;border-radius:999px;background:var(--line-strong);margin:2px auto 14px}.sheet-note{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.55;color:var(--ink-soft);background:var(--surface-2);border-radius:var(--r-input);padding:12px;font-weight:450}.sheet-note b{color:var(--ink);font-weight:600}@keyframes sheet-fade{0%{opacity:0}to{opacity:1}}@keyframes sheet-up{0%{transform:translateY(14px);opacity:.6}to{transform:translateY(0);opacity:1}}.tabbar{flex:none;display:flex;border-top:1px solid var(--line);background:var(--surface);padding:6px 8px calc(8px + env(safe-area-inset-bottom));box-shadow:var(--shadow-dock);position:sticky;bottom:0;z-index:30}.tabbar a,.tabbar button{flex:1 1;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:7px 0;font-size:11px;font-weight:500;color:var(--tab-off);transition:transform calc(.08s * var(--motion))}.tabbar a:active,.tabbar button:active{transform:translateY(1px)}.tabbar a[aria-current=page],.tabbar button[aria-current=true]{color:var(--primary);font-weight:700}.dt-photo{height:210px;position:relative;flex:none;font-size:13px}.dt-photo img{width:100%;height:100%;object-fit:cover}.dt-photo .dt-ph-inner{display:flex;flex-direction:column;align-items:center;gap:7px;color:var(--ink-faint)}.dt-head{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:8px;padding:12px 14px;z-index:5}.dt-hbtn{width:38px;height:38px;border-radius:12px;background:var(--surface);border:1px solid var(--line);display:grid;place-items:center;font-size:18px;color:var(--ink)}.dt-hbtn:active{transform:scale(.95)}.dt-hbtn.on{color:var(--primary)}.dt-body{padding:18px 20px 8px}.dt-name-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.dt-name{font-size:calc(22px * var(--ui-scale));font-weight:700;letter-spacing:-.02em}.dt-cat{font-size:13.5px;color:var(--ink-soft);margin-top:4px;font-weight:450}.dt-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.dt-acts{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:16px 20px 0}.dt-sec{margin:16px 20px 0}.dt-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.dt-card-h{padding:14px 16px 0;font-size:13px;font-weight:600;color:var(--ink-soft)}.dt-minimap{height:110px;position:relative;background:#EDECE6}.dt-minimap .map-pin{cursor:default}.dt-minimap .kakao-map{height:100%;margin:0;border-bottom:none}.dt-minimap .kakao-map,.map-screen .kakao-map{border-radius:0!important}.dt-addr{display:flex;align-items:center;gap:8px;padding:13px 16px;font-size:13.5px;border-top:1px solid var(--line);font-weight:450}.dt-addr .copy{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--primary-deep);flex:none}.pay-gate{padding:15px 16px 16px}.pay-gate-head{display:flex;align-items:center;gap:10px}.pay-gate-icon{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--ok-weak);color:var(--ok)}.pay-gate-head b{display:block;font-size:14px;font-weight:750;color:var(--ink)}.pay-gate-head span{display:block;margin-top:2px;font-size:12px;color:var(--ok);font-weight:700}.pay-route{display:flex;align-items:center;gap:8px;margin-top:13px;padding:10px 12px;border-radius:var(--r-input);background:var(--surface-2);color:var(--ink-soft);font-size:13px;font-weight:700}.pay-route b{color:var(--ok);font-weight:800}.pay-gate p{margin:11px 0 13px;font-size:13px;line-height:1.55}.hours-row,.pay-gate p{color:var(--ink-soft);font-weight:450}.hours-row{display:flex;justify-content:space-between;padding:13px 16px;font-size:14px}.hours-row+.hours-row{border-top:1px solid var(--line)}.hours-row.today{color:var(--ink);font-weight:700}.hours-row.today .hr-day{color:var(--primary)}.hours-row .hr-flag{font-size:11.5px;font-weight:600;color:var(--ok);background:var(--ok-weak);border-radius:6px;padding:2px 7px;margin-left:7px}.kv-row{display:flex;justify-content:space-between;gap:14px;padding:13px 16px;font-size:13.5px}.kv-row+.kv-row{border-top:1px solid var(--line)}.kv-row .k{color:var(--ink-soft);font-weight:450;flex:none}.kv-row .v{font-weight:500;text-align:right}.dock{flex:none;display:flex;gap:9px;align-items:center;padding:12px 20px calc(14px + env(safe-area-inset-bottom));background:var(--surface);box-shadow:var(--shadow-dock);position:sticky;bottom:0;z-index:30}.verify-wrap{padding:26px 20px;text-align:center}.verify-seal{margin:6px auto 18px;width:96px;display:flex;justify-content:center}.verify-ok{display:inline-flex;align-items:center;gap:7px;color:var(--ok);font-weight:600;background:var(--ok-weak);padding:7px 13px;border-radius:999px;font-size:13.5px}.verify-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:4px 18px;text-align:left;margin-top:18px}.verify-row{display:flex;justify-content:space-between;gap:14px;padding:13px 0;font-size:14px}.verify-row+.verify-row{border-top:1px solid var(--line)}.verify-row b{font-weight:600}.prog{flex:none;height:3px;background:var(--sunk)}.prog .prog-fill{height:100%;background:var(--primary);transition:width calc(.3s * var(--motion)) ease}.step-label{padding:18px 20px 0;font-size:12.5px;font-weight:600;color:var(--primary);letter-spacing:.04em}.step-h{padding:6px 20px 0;font-size:calc(22px * var(--ui-scale));font-weight:700;letter-spacing:-.02em;line-height:1.35}.step-d{padding:8px 20px 16px;font-size:14px;color:var(--ink-soft);line-height:1.6;font-weight:450}.field{padding:8px 20px}.field label{display:block;font-size:13px;font-weight:600;margin-bottom:7px}.field .req{color:var(--primary)}.input,.select,textarea.input{width:100%;padding:14px;border-radius:var(--r-input);font-size:15px;background:var(--surface);border:1px solid var(--line-strong);color:var(--ink);font-family:inherit;font-weight:500;transition:border-color calc(.12s * var(--motion))}.input::placeholder{color:var(--ink-faint);font-weight:450}.input:focus{border-color:var(--primary);outline:none}.hint{font-size:12px;color:var(--ink-faint);margin-top:6px;display:flex;align-items:center;gap:4px;font-weight:450}.hint.err{color:var(--st-rejected)}.check-lines{padding:6px 20px;display:flex;flex-direction:column;gap:0}.check-line{display:flex;gap:10px;align-items:flex-start;padding:11px 0}.check-line+.check-line{border-top:1px solid var(--line)}.check-line .cl-ic{flex:none;font-size:17px;color:var(--ok);margin-top:1px}.check-line .cl-ic.wait{color:var(--ink-faint)}.check-line .cl-t{font-weight:600;font-size:14px}.check-line .cl-d{font-size:12.5px;color:var(--ink-soft);margin-top:2px;font-weight:450}.verify-box{margin:8px 20px;padding:13px 16px;border-radius:var(--r-input);background:var(--surface);border:1px solid var(--line);display:flex;gap:12px;align-items:flex-start}.verify-box.loading{background:var(--surface-2)}.verify-box .vb-ic{flex:none;color:var(--ok)}.verify-box.loading .vb-ic{color:var(--ink-faint)}.verify-box .vb-t{font-weight:600;font-size:14px}.verify-box .vb-d{font-size:12.5px;color:var(--ink-soft);margin-top:3px;font-weight:450}.upload{margin:8px 20px;padding:26px 20px;border-radius:var(--r-card);border:1.5px dashed var(--line-strong);background:var(--surface);text-align:center;color:var(--ink-soft);width:calc(100% - 40px);transition:border-color calc(.12s*var(--motion))}.upload:active,.upload:hover{border-color:var(--primary);background:var(--surface)}.upload .lock{font-size:12px;color:var(--ink-faint);font-weight:500;margin-top:8px;display:inline-flex;gap:5px;align-items:center}.promise{margin:4px 20px;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.promise,.promise-row{background:var(--surface)}.promise-row{display:flex;gap:12px;padding:15px 16px;align-items:flex-start;cursor:pointer;transition:background calc(.1s*var(--motion));border:none;margin:0}.promise-row+.promise-row{border-top:1px solid var(--line)}.promise-row:active{background:var(--surface-2)}.promise-row.on{background:var(--surface);border-color:transparent}.promise-row .chk{flex:none;width:23px;height:23px;border-radius:7px;margin-top:1px;border:1.5px solid var(--line-strong);display:grid;place-items:center;color:transparent;font-size:14px;transition:background calc(.12s*var(--motion))}.promise-row.on .chk{background:var(--primary);border-color:var(--primary);color:#fff}.promise-row .pt{font-weight:600;font-size:14.5px}.promise-row .pd{font-size:12.5px;color:var(--ink-soft);margin-top:2px;font-weight:450;line-height:1.5}.meal-edit{margin:4px 20px;padding:16px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--line)}.meal-edit .me-top{display:flex;gap:12px}.tag-pick{display:flex;flex-wrap:wrap;gap:7px;margin-top:6px}.tag-pick button{padding:8px 13px;border-radius:999px;font-size:13px;font-weight:500;background:var(--surface);border:1px solid var(--line-strong);color:var(--ink-soft)}.tag-pick button:active{transform:scale(.97)}.tag-pick button.on{background:var(--primary-tint);color:var(--primary-deep);border-color:var(--primary);font-weight:600}.within-flag{margin-top:12px;padding-top:11px;border-top:1px solid var(--line);font-size:12.5px;font-weight:500;display:flex;align-items:center;gap:7px;color:var(--ink-soft)}.within-flag .wf-ic{color:var(--ok);font-size:16px}.within-flag.over .wf-ic{color:var(--gold)}.photo-nudge{margin:8px 0 0;padding:12px;border-radius:var(--r-input);background:var(--surface-2)}.photo-nudge .pn-pair{display:flex;align-items:center;justify-content:center;gap:10px}.photo-nudge .pn-shot{margin:0;display:flex;flex-direction:column;align-items:center;gap:6px}.photo-nudge .pn-frame{position:relative;width:76px;height:76px;border-radius:var(--r-input);overflow:hidden;background:var(--sunk)}.photo-nudge .pn-after{display:grid;place-items:center;border:1.5px dashed var(--line-strong);background:var(--surface);color:var(--ink-faint)}.photo-nudge .pn-after.pn-done{border-style:solid;border-color:transparent;background:var(--ok-weak);color:var(--ok)}.photo-nudge .pn-photoic{display:flex;flex-direction:column;align-items:center;gap:2px}.photo-nudge .pn-photoic-t{font-size:11.5px;font-weight:600}.photo-nudge .pn-doneic{color:var(--ok)}.photo-nudge .pn-arrow{color:var(--ink-faint);flex:none;display:grid;place-items:center}.photo-nudge .pn-cap{font-size:11.5px;font-weight:600;color:var(--ink-soft)}.photo-nudge .pn-msg{margin:10px 0 0;font-size:12px;color:var(--ink-soft);line-height:1.55;text-align:center;font-weight:450}.photo-nudge .pn-msg b{color:var(--ink);font-weight:600}.foot-cta{flex:none;padding:12px 20px calc(14px + env(safe-area-inset-bottom));box-shadow:var(--shadow-dock);display:flex;gap:9px;position:sticky;bottom:0;z-index:30}.foot-cta,.me-status{background:var(--surface)}.me-status{margin:0 20px;padding:18px 16px;border-radius:var(--r-card);border:1px solid var(--line);color:var(--ink)}.me-status .ms-state{font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:7px;background:var(--ok-weak);color:var(--ok);opacity:1}.me-status .ms-state.wait,.me-status.pending .ms-state{background:var(--gold-tint);color:var(--gold)}.me-status .ms-state.ok{background:var(--ok-weak);color:var(--ok)}.me-status .ms-state.bad{background:var(--st-rejected-bg);color:var(--st-rejected)}.me-status .ms-state.move{background:var(--st-handover-bg);color:var(--st-handover)}.me-status .ms-name{font-size:18px;font-weight:700;margin-top:9px;letter-spacing:-.01em}.me-status .ms-sub{font-size:13px;color:var(--ink-soft);margin-top:5px;font-weight:450}.timeline{margin:18px 20px}.tl-row{display:flex;gap:13px}.tl-dot{flex:none;display:flex;flex-direction:column;align-items:center;width:14px}.tl-dot .d{width:9px;height:9px;border-radius:50%;background:var(--line-strong);margin-top:5px}.tl-dot .d.done{background:var(--ok)}.tl-dot .d.cur{background:var(--primary);box-shadow:0 0 0 4px var(--primary-tint)}.tl-dot .ln{width:1.5px;flex:1 1;background:var(--line);margin:4px 0}.tl-row .tl-body{padding-bottom:20px}.tl-row .tl-t{font-weight:600;font-size:14px}.tl-row .tl-d{font-size:12.5px;color:var(--ink-soft);margin-top:2px;font-weight:450}.qr-box{margin:4px 20px 18px;padding:20px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--line);text-align:center}.qr-img{width:124px;height:124px;margin:12px auto 8px;border-radius:10px;background:#fff;border:1px solid var(--line);display:grid;place-items:center}.notif{margin:4px 20px;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.notif,.notif-row{background:var(--surface)}.notif-row{display:flex;gap:12px;padding:14px 16px;align-items:flex-start;border:none;margin:0;border-radius:0}.notif-row+.notif-row{border-top:1px solid var(--line)}.notif-row .nf-ic{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:16px}.nf-approved{background:var(--ok-weak);color:var(--ok)}.nf-rejected{background:var(--st-rejected-bg);color:var(--st-rejected)}.nf-info{background:var(--primary-tint);color:var(--primary-deep)}.nf-t{font-weight:500;font-size:13.5px;line-height:1.45}.nf-d{font-size:11.5px;color:var(--ink-faint);margin-top:3px}.desk{width:100%;max-width:1320px;margin:0 auto;background:var(--bg);min-height:100vh;min-height:100dvh;color:var(--ink);display:flex;flex-direction:column;position:relative}.adm-top{display:flex;align-items:center;gap:12px;padding:16px 24px;border-bottom:1px solid var(--line);background:var(--surface);flex:none;flex-wrap:wrap}.adm-top .at-t{font-weight:700;font-size:18px;letter-spacing:-.01em}.adm-scope{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;background:var(--primary-tint);color:var(--primary-deep);font-weight:600;font-size:12.5px}.adm-scope .lvl{background:var(--primary);color:#fff;padding:2px 7px;border-radius:999px;font-size:10.5px;font-weight:700}.adm-rolepick{margin-left:auto;display:flex;gap:2px;background:var(--sunk);padding:3px;border-radius:10px}.adm-rolepick button{padding:7px 13px;border-radius:8px;font-size:12.5px;font-weight:600;color:var(--ink-soft)}.adm-rolepick button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(30,26,21,.07)}.trust-strip{margin-left:auto;display:flex;gap:16px;align-items:center;font-size:12px;color:var(--ink-faint)}.trust-strip b{color:var(--ink-soft);font-weight:600}.adm-tabs{display:flex;gap:22px;padding:0 24px;background:var(--surface);border-bottom:1px solid var(--line);flex:none}.adm-tabs a,.adm-tabs button{display:flex;align-items:center;gap:7px;padding:13px 2px;font-size:14px;font-weight:600;color:var(--ink-soft);border-bottom:2px solid transparent;margin-bottom:-1px}.adm-tabs a:hover,.adm-tabs button:hover{color:var(--ink)}.adm-tabs a[aria-current=page],.adm-tabs button[aria-current=true]{color:var(--ink);border-bottom-color:var(--primary)}.adm-tabs a[aria-current=page] .ic,.adm-tabs button[aria-current=true] .ic{color:var(--primary)}.badge-n{background:var(--primary);color:#fff;font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px}.adm-main{flex:1 1;min-width:0;overflow-y:auto;padding:22px 24px 48px}.adm-h{font-size:19px;font-weight:700;letter-spacing:-.02em}.adm-sub{color:var(--ink-soft);font-size:13.5px;margin-top:4px;font-weight:450;line-height:1.6}.adm-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 20px}.adm-stat{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px}.adm-stat .sv{font-size:26px;font-weight:700;line-height:1;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.adm-stat .sv small{font-size:14px;font-weight:600;color:var(--ink-soft);margin-left:2px}.adm-stat .sl{font-size:12.5px;color:var(--ink-soft);margin-top:8px;font-weight:500}.adm-stat .sd{font-size:11.5px;margin-top:3px;font-weight:500;color:var(--ink-faint)}.adm-stat .sd.up{color:var(--ok)}.adm-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.adm-box{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px}.adm-toolbar{gap:9px;margin:0 0 14px;flex-wrap:wrap}.adm-search,.adm-toolbar{display:flex;align-items:center}.adm-search{flex:1 1;min-width:180px;gap:8px;padding:9px 13px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-input);color:var(--ink-faint);transition:border-color calc(.12s*var(--motion))}.adm-search:focus-within{border-color:var(--primary)}.adm-search input{border:none;background:none;flex:1 1;font-size:14px;color:var(--ink);font-family:inherit;font-weight:500}.adm-search input:focus{outline:none}.seg{display:flex;background:var(--sunk);border-radius:10px;padding:3px;border:none}.seg button{padding:7px 13px;font-size:12.5px;font-weight:600;border-radius:7px;color:var(--ink-soft)}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(30,26,21,.07)}.seg button:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.tbl{width:100%;border-collapse:collapse;border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:13.5px}.tbl,.tbl th{background:var(--surface)}.tbl th{text-align:left;font-size:11.5px;letter-spacing:.03em;color:var(--ink-faint);font-weight:600;padding:11px 14px;text-transform:none;position:sticky;top:0}.tbl td,.tbl th{border-bottom:1px solid var(--line)}.tbl td{padding:13px 14px;vertical-align:middle}.tbl tr:last-child td{border-bottom:none}.tbl tr.clk{transition:background calc(.1s*var(--motion))}.tbl tr.clk:hover{background:var(--surface-2);cursor:pointer}.tbl .nm{font-weight:600}.tbl .sgg{font-size:12px;color:var(--ink-soft);font-weight:450}.prio{display:inline-flex;align-items:center;gap:5px;font-weight:600;font-size:12px}.prio.high{color:var(--st-rejected)}.prio .dotp{width:7px;height:7px;border-radius:50%;background:currentColor}.stt{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:7px;font-size:12px;font-weight:600}.stt:before{content:none}.stt.pending{background:var(--st-pending-bg);color:var(--st-pending)}.stt.approved{background:var(--st-approved-bg);color:var(--st-approved)}.stt.rejected{background:var(--st-rejected-bg);color:var(--st-rejected)}.stt.handover{background:var(--st-handover-bg);color:var(--st-handover)}.adm-empty{padding:36px 18px;text-align:center;color:var(--ink-faint);background:var(--surface);border:1px solid var(--line);border-radius:14px;font-size:14px}.adm-empty .mono{display:block;margin-top:8px;font-size:12px}.autocheck{display:flex;gap:5px}.ac{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;font-size:11.5px;font-weight:600}.ac.ok{background:var(--st-approved-bg);color:var(--st-approved)}.ac.no{background:var(--st-rejected-bg);color:var(--st-rejected)}.ac.warn{background:var(--st-pending-bg);color:var(--st-pending)}.evidence{display:flex;gap:12px;align-items:center;padding:13px;border-radius:var(--r-input);border:1px solid var(--line);background:var(--surface)}.evidence .ev-th{width:44px;height:56px;border-radius:6px;font-size:9px}.drawer-backdrop{position:fixed;inset:0;background:rgba(30,26,21,.36);z-index:50;display:flex;justify-content:flex-end;animation:fade calc(.18s*var(--motion)) ease}@keyframes fade{0%{opacity:0}}.drawer{width:560px;max-width:92%;background:var(--bg);height:100%;overflow-y:auto;border-left:1px solid var(--line-strong);animation:slidein calc(.22s*var(--motion)) cubic-bezier(.2,.8,.2,1)}@keyframes slidein{0%{transform:translateX(28px);opacity:.5}}.drawer-head{position:sticky;top:0;background:var(--surface);border-bottom:1px solid var(--line);padding:18px 22px;display:flex;align-items:flex-start;gap:12px;z-index:2}.drawer-body{padding:18px 22px 30px}.dsec{margin-bottom:22px}.dsec-h{font-size:12px;font-weight:600;letter-spacing:.03em;color:var(--ink-faint);margin-bottom:9px;text-transform:none}.dsec-h.sp-top{margin-top:18px}.dsec-sub{text-transform:none;letter-spacing:0}.dsec-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.kv{display:grid;grid-template-columns:120px 1fr;gap:8px 14px;font-size:13.5px;margin:0}.kv dt{color:var(--ink-soft);font-weight:450}.kv dd{margin:0;font-weight:500}.kv dd .enc{font-family:var(--mono);font-size:11.5px;background:var(--sunk);padding:2px 7px;border-radius:5px;color:var(--ink-soft)}.decide-bar{position:sticky;bottom:0;background:var(--surface);border-top:1px solid var(--line);padding:14px 22px;display:flex;gap:9px}.heat-wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:4px}.heat-canvas{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px;position:relative}.heat-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:3px;height:100%}.hcell{border-radius:4px;transition:outline-color calc(.1s*var(--motion));outline:2px solid transparent;outline-offset:-1px}.hcell:hover{cursor:pointer;outline-color:var(--ink)}.heat-svg-wrap{display:flex;flex-direction:column;gap:8px}.heat-svg{width:100%;aspect-ratio:4/3;display:block;background:var(--sunk);border-radius:14px}.hsvg-frame{fill:var(--sunk);stroke:var(--line);stroke-width:1;rx:6}.hsvg-dot{stroke:rgba(255,255,255,.85);stroke-width:1;cursor:pointer;transition:r calc(.12s*var(--motion)) var(--ease),stroke-width calc(.12s*var(--motion))}.hsvg-dot.on,.hsvg-dot:hover{stroke:var(--ink);stroke-width:1.5}.hsvg-dot:focus-visible{outline:none;stroke:var(--focus);stroke-width:2}.heat-svg-read{font-size:12px;color:var(--ink-soft);min-height:18px;line-height:1.4}.heat-svg-read b{color:var(--ink);font-weight:600}.heat-svg-note{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:11.5px;color:var(--ink-faint);line-height:1.5}.heat-svg-note .hsvg-pending,.heat-svg-note .hsvg-real{display:inline-flex;align-items:center;gap:4px}.hsvg-swatch{width:10px;height:10px;border-radius:50%;flex:none;border:1px solid rgba(0,0,0,.12)}.hsvg-swatch-pending{background:var(--surface-2);border:1px dashed var(--line-strong)}.heat-svg-empty{align-items:center;justify-content:center;text-align:center;aspect-ratio:4/3;padding:20px;background:var(--sunk);border-radius:14px}.heat-svg-emptymark{width:48px;height:48px;color:var(--ink-faint)}.heat-svg-emptymark svg{width:100%;height:100%;display:block}.heat-svg-emptyt{margin:8px 0 0;font-size:12px;color:var(--ink-soft);line-height:1.55;max-width:280px}.heat-svg-emptyt b{color:var(--ink);font-weight:600}.heat-legend{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-soft);margin-top:10px;font-weight:500}.heat-legend .sw{width:18px;height:10px;border-radius:3px}.heat-legend .bar{height:10px;width:120px;border-radius:999px;background:linear-gradient(90deg,#E2E7DC,#BE4F26)}.heat-readout{font-family:var(--mono);font-size:11.5px;color:var(--ink-faint);margin-left:auto}.gu-dir-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.gu-dir-table{width:100%;border-collapse:collapse;font-size:12px}.gu-dir-table td,.gu-dir-table th{padding:8px 10px;text-align:left;white-space:nowrap}.gu-dir-table thead th{color:var(--ink-soft);font-weight:600;border-bottom:1px solid var(--line)}.gu-dir-table tbody tr{border-bottom:1px solid var(--line);cursor:pointer}.gu-dir-table tbody tr:last-child{border-bottom:0}.gu-dir-table tbody tr:focus-visible,.gu-dir-table tbody tr:hover{background:var(--surface-2);outline:none}.gu-dir-table tbody tr.on{background:var(--primary-tint);box-shadow:inset 3px 0 0 var(--primary)}.gu-dir-table tbody tr.nodata{cursor:default;color:var(--ink-faint)}.cand-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:10px}.cand-card .cc-rank{font-weight:700;color:var(--primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cand-row{display:flex;align-items:flex-start;gap:8px;padding:8px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);cursor:pointer;min-height:44px}.cand-row.on{background:var(--primary-tint)}.sent-row{display:flex;align-items:center;gap:8px;padding:8px;border-radius:var(--r-sm);background:var(--surface-2)}.method-note,.sent-row{border:1px solid var(--line)}.method-note{margin-top:14px;padding:13px 15px;border-radius:12px;background:var(--surface);font-size:12.5px;line-height:1.65;color:var(--ink-soft);font-weight:450}.method-note b{color:var(--ink);font-weight:600}.scope-note{display:flex;gap:8px;align-items:flex-start;margin-top:12px;padding:13px 15px;border-radius:12px;background:var(--surface);border:1px solid var(--line);color:var(--ink-soft);font-size:12px;line-height:1.55;font-weight:450}.scope-note b{color:var(--ink);font-weight:600}.adm-notif{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;max-width:760px}.adm-notif-row{display:flex;gap:13px;padding:15px 18px;align-items:flex-start}.adm-notif-row+.adm-notif-row{border-top:1px solid var(--line)}.adm-notif-row .nf-ic{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:16px}.adm-notif-row .nt{font-size:14px;font-weight:500;line-height:1.5}.adm-notif-row .nd{font-size:12px;color:var(--ink-faint);margin-top:3px}.letter{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;font-size:14px;line-height:1.7;font-weight:450;max-width:760px}.letter .ai-tag{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--primary-deep);background:var(--primary-tint);padding:4px 10px;border-radius:999px;margin-bottom:12px}.letter .letter-h{font-size:16px;font-weight:700;margin-bottom:8px;letter-spacing:-.01em}.letter .draft-note{margin-top:14px;padding-top:13px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:12.5px;font-weight:500;display:flex;gap:8px;align-items:flex-start}.export-note{font-size:12px;color:var(--ink-faint);margin-top:10px;display:flex;align-items:center;gap:6px;font-weight:450}.geo-nav{flex-direction:column;margin-bottom:14px}.geo-nav,.geo-row{display:flex;gap:12px}.geo-row{flex-wrap:wrap}.geo-lvl,.geo-row{align-items:center}.geo-lvl{display:inline-flex;background:var(--primary);color:#fff;padding:3px 8px;border-radius:999px;font-size:11.5px;font-weight:700}.geo-loc{padding:8px 12px;min-height:38px;font-size:13px}.geo-group{display:flex;flex-wrap:wrap;gap:7px}.geo-chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:7px 12px;border-radius:999px;font-size:13px;font-weight:600;background:var(--surface);color:var(--ink-soft);border:1px solid var(--line-strong);transition:background calc(.12s*var(--motion)) var(--ease),border-color calc(.12s*var(--motion)) var(--ease)}.geo-chip:hover:not(:disabled){background:var(--surface-2)}.geo-chip.on{background:var(--primary);color:var(--on-primary);border-color:transparent}.geo-chip[aria-current=true]{border-color:var(--primary)}.geo-chip:active:not(:disabled){transform:scale(.97)}.geo-chip.geo-nodata,.geo-chip:disabled{opacity:.55;cursor:not-allowed}.geo-chip.geo-dong.geo-nodata,.geo-chip.geo-dong:disabled{opacity:.7;cursor:pointer}.geo-all{font-weight:700}.geo-badge{pointer-events:none}.geo-dot{font-weight:700}.geo-msg{margin:2px 0 0;font-size:12px;line-height:1.5}@media (max-width:900px){.adm-stats{grid-template-columns:repeat(2,1fr)}.heat-wrap{grid-template-columns:1fr}.trust-strip{display:none}.adm-tabs{overflow-x:auto;gap:16px}}.t-2xs{font-size:11.5px}.t-xs{font-size:12px}.t-sm{font-size:14px}.t-meal{font-size:15px}.t-md{font-size:19px}.fw-bold,.fw-strong{font-weight:700}.fw-semibold{font-weight:600}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-3h{margin-top:14px}.mt-4{margin-top:16px}.mt-4h{margin-top:18px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.ml-auto{margin-left:auto}.flex-none{flex:none}.col-gap,.flex-col{display:flex;flex-direction:column}.col-gap{gap:4px}.desk-center{align-items:center;justify-content:center}.block-mt1{display:block;margin-top:4px}.row-center{display:flex;align-items:center;gap:8px}.m-lg{margin:40px}.countup-val{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.prio-grid{display:grid;grid-template-columns:1fr auto auto auto;gap:0 14px;align-items:center}.prio-head{font-size:12px;font-weight:600;color:var(--ink-soft);padding:0 8px 4px}.prio-row{width:100%;text-align:left;padding:8px;border:none;border-top:1px solid var(--line);background:transparent;font-size:14px;cursor:pointer;min-height:44px}.prio-row.on{background:var(--surface-2)}.cc-faint{font-size:12px}.cc-faint,.cc-faint-2xs{color:var(--ink-faint);line-height:1.55}.cc-faint-2xs{font-size:11.5px}.adm-rolepick button:focus-visible,.adm-tabs a:focus-visible,.adm-tabs button:focus-visible,.banner-x:focus-visible,.btn:focus-visible,.chip:focus-visible,.dt-hbtn:focus-visible,.fbtn:focus-visible,.list-row:focus-visible,.meal-del:focus-visible,.seg button:focus-visible,.tag-pick button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.input[aria-invalid=true],.select[aria-invalid=true],textarea.input[aria-invalid=true]{border-color:var(--st-rejected)}.input[aria-invalid=true]:focus{outline:none;border-color:var(--st-rejected)}.mapsearch:focus-within{border-color:var(--primary)}[data-a11y=on] .faint,[data-a11y=on] .muted{color:var(--ink)!important}[data-a11y=on]{--line:var(--line-strong)}[data-a11y=on] .chip{font-weight:700}[data-a11y=on] :focus-visible{outline-width:3px}