@font-face{font-family:'Pretendard GOV';src:url('/vendor/krds-uiux/resources/fonts/PretendardGOV-Regular.subset.woff2');font-weight:400;font-display:swap}
.archive-notice{max-width:44rem;margin:var(--krds-gap-5) auto var(--krds-gap-7);padding:var(--krds-padding-4) var(--krds-padding-5);border:1px solid var(--line);border-radius:var(--krds-radius-medium1);background:var(--white);color:var(--muted);font-size:var(--krds-pc-font-size-body-small);line-height:1.65;overflow-wrap:anywhere}
.opportunity{content-visibility:auto;contain-intrinsic-size:auto 360px}
@font-face{font-family:'Pretendard GOV';src:url('/vendor/krds-uiux/resources/fonts/PretendardGOV-Bold.subset.woff2');font-weight:700;font-display:swap}
:root{--ink:var(--krds-light-color-text-basic);--muted:var(--krds-light-color-text-subtle);--blue:var(--krds-light-color-text-primary);--line:var(--krds-light-color-border-gray-light);--surface:var(--krds-light-color-surface-gray-subtler);--white:var(--krds-light-color-surface-white);--tint:var(--krds-light-color-surface-primary-subtler)}
*{box-sizing:border-box}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--krds-font-family-base),sans-serif;font-size:var(--krds-pc-font-size-body-medium);line-height:1.5}button,input,select,textarea{font-family:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--blue);outline-offset:4px}button:disabled{cursor:wait}a{color:var(--blue)}h1,h2,h3,strong{font-weight:700}h1{font-size:var(--krds-pc-font-size-heading-large);line-height:1.4}h2{font-size:var(--krds-pc-font-size-heading-medium)}h3{font-size:var(--krds-pc-font-size-heading-small)}p{word-break:keep-all}label{display:block;font-size:var(--krds-pc-font-size-label-small)}textarea{resize:vertical}small,.hint{font-size:var(--krds-pc-font-size-body-small);color:var(--muted)}.hint{margin-top:var(--krds-gap-3)}.skip-atlas{position:fixed;top:-100px;background:var(--white);padding:var(--krds-padding-5);z-index:20}.skip-atlas:focus{top:0}.demo-strip{background:var(--surface);padding:var(--krds-padding-2) max(var(--krds-padding-6),calc((100vw - 1200px)/2));font-size:var(--krds-pc-font-size-body-xsmall);color:var(--muted)}.site-header{max-width:1248px;margin:auto;display:flex;align-items:center;gap:var(--krds-gap-5);padding:var(--krds-padding-6);min-height:86px}.brand{font-size:var(--krds-pc-font-size-heading-medium);font-weight:700;color:var(--ink)}.service-name{color:var(--muted);font-size:var(--krds-pc-font-size-body-small)}#key-settings{margin-left:auto}.main-nav{border-bottom:1px solid var(--line);display:flex;gap:var(--krds-gap-7);padding:0 max(var(--krds-padding-6),calc((100vw - 1200px)/2));overflow:auto}.main-nav button{padding:var(--krds-padding-5) 0;border-bottom:3px solid transparent;white-space:nowrap;font-size:var(--krds-pc-font-size-body-medium);color:var(--muted)}.main-nav button[aria-current=page]{border-color:var(--blue);color:var(--blue);font-weight:700}main{max-width:1248px;padding:var(--krds-padding-8) var(--krds-padding-6);margin:auto;min-height:70vh}footer{padding:var(--krds-padding-7);text-align:center;border-top:1px solid var(--line);font-size:var(--krds-pc-font-size-body-small);color:var(--muted)}.page-heading{margin-bottom:var(--krds-gap-7)}.page-heading p{color:var(--muted);margin-top:var(--krds-gap-3)}.explore-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:var(--krds-gap-8);align-items:start}.coach-panel{background:var(--surface);padding:var(--krds-padding-6);border-radius:var(--krds-radius-large1)}.coach-panel h2{font-size:var(--krds-pc-font-size-heading-small)}.coach-panel label{margin-top:var(--krds-gap-5);margin-bottom:var(--krds-gap-2)}.coach-panel .krds-form-select{width:100%}.profile-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--krds-gap-3)}.chat-log{display:flex;flex-direction:column;gap:var(--krds-gap-3);margin:var(--krds-gap-5) 0;max-height:280px;overflow:auto}.bubble{padding:var(--krds-padding-4);background:var(--white);border:1px solid var(--line);border-radius:var(--krds-radius-medium1);font-size:var(--krds-pc-font-size-body-small);white-space:pre-wrap;overflow-wrap:anywhere}.bubble.user{background:var(--tint);border-color:var(--krds-light-color-border-primary-light)}.chat-compose textarea{min-height:96px}.chat-compose button{width:100%;margin-top:var(--krds-gap-3)}.quick-prompts{display:flex;gap:var(--krds-gap-2);flex-wrap:wrap;margin-top:var(--krds-gap-3)}.quick-prompts button{font-size:var(--krds-pc-font-size-label-small);border:1px solid var(--line);background:var(--white);border-radius:var(--krds-radius-max);padding:var(--krds-padding-2) var(--krds-padding-3);min-height:36px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:var(--krds-gap-4);margin-bottom:var(--krds-gap-4)}.section-top h2{font-size:var(--krds-pc-font-size-heading-small)}.search-form{display:flex;gap:var(--krds-gap-3);margin-bottom:var(--krds-gap-5)}.search-form input{min-width:0;flex:1}.opportunity{padding:var(--krds-padding-6) 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:var(--krds-gap-5)}.opportunity h3{margin:var(--krds-gap-3) 0}.opportunity p{font-size:var(--krds-pc-font-size-body-small);color:var(--muted);margin-top:var(--krds-gap-3)}.opportunity .reason{color:var(--ink)}.opportunity .krds-btn{align-self:center}.meta{display:flex;gap:var(--krds-gap-3);align-items:center;flex-wrap:wrap;font-size:var(--krds-pc-font-size-body-small);color:var(--muted)}.badge{display:inline-flex;padding:var(--krds-padding-1) var(--krds-padding-3);font-size:var(--krds-pc-font-size-label-xsmall);background:var(--surface);color:var(--muted);border-radius:var(--krds-radius-small1)}.badge.primary{background:var(--tint);color:var(--blue)}.inline-check{display:flex;align-items:center;gap:var(--krds-gap-3);margin:var(--krds-gap-4) 0}.inline-check input,.consent input{width:20px;height:20px;accent-color:var(--blue)}.bridge{margin-top:var(--krds-gap-7);padding:var(--krds-padding-6);background:var(--tint);border-radius:var(--krds-radius-large1);display:flex;justify-content:space-between;align-items:center;gap:var(--krds-gap-5)}.bridge p{font-size:var(--krds-pc-font-size-body-small);margin-top:var(--krds-gap-2)}.empty{padding:var(--krds-padding-8) var(--krds-padding-6);border:1px dashed var(--line);border-radius:var(--krds-radius-large1);text-align:center;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--krds-gap-6)}.project-card{border:1px solid var(--line);border-radius:var(--krds-radius-large1);padding:var(--krds-padding-6);display:flex;flex-direction:column;gap:var(--krds-gap-4)}.project-card h2{font-size:var(--krds-pc-font-size-heading-medium)}.project-card p{font-size:var(--krds-pc-font-size-body-small);color:var(--muted)}.project-card .output{margin-top:auto;padding-top:var(--krds-padding-5);border-top:1px solid var(--line);color:var(--ink)}.project-card .krds-btn{width:100%}.filter-row{display:flex;align-items:center;gap:var(--krds-gap-5);margin-bottom:var(--krds-gap-6);flex-wrap:wrap}.filter-row select{width:auto;max-width:100%}.project-workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:var(--krds-gap-8);align-items:start}.brief{background:var(--surface);padding:var(--krds-padding-6);border-radius:var(--krds-radius-large1)}.brief p{margin-top:var(--krds-gap-4);font-size:var(--krds-pc-font-size-body-small)}.back{margin-bottom:var(--krds-gap-5)}.actions{display:flex;gap:var(--krds-gap-3);margin-top:var(--krds-gap-5);flex-wrap:wrap}.actions .krds-btn{white-space:normal;height:auto;min-height:48px;padding-top:var(--krds-padding-3);padding-bottom:var(--krds-padding-3)}.plan{margin-top:var(--krds-gap-7)}.plan-head{padding:var(--krds-padding-6);background:var(--tint);border-radius:var(--krds-radius-large1)}.plan-head p{margin-top:var(--krds-gap-3)}.task-path{margin:var(--krds-gap-6) 0;padding-left:var(--krds-padding-5);border-left:2px solid var(--krds-light-color-border-primary-light);display:flex;flex-direction:column;gap:var(--krds-gap-5)}.task-step{position:relative;padding:var(--krds-padding-5);border:1px solid var(--line);border-radius:var(--krds-radius-medium1)}.task-step:before{content:'';position:absolute;top:24px;left:-18px;width:16px;border-top:2px solid var(--krds-light-color-border-primary-light)}.task-step p{margin-top:var(--krds-gap-3);font-size:var(--krds-pc-font-size-body-small)}.roles{display:grid;grid-template-columns:1fr 1fr;gap:var(--krds-gap-5);margin:var(--krds-gap-5) 0}.roles section{padding:var(--krds-padding-5);background:var(--surface);border-radius:var(--krds-radius-medium1)}.roles p{font-size:var(--krds-pc-font-size-body-small);margin-top:var(--krds-gap-3)}.artifact{border-top:1px solid var(--line);padding-top:var(--krds-padding-6);margin-top:var(--krds-gap-7)}.form-stack label{margin:var(--krds-gap-4) 0 var(--krds-gap-2)}.form-stack textarea{min-height:140px}.skill-map{display:flex;flex-wrap:wrap;gap:var(--krds-gap-3);margin:var(--krds-gap-6) 0}.skill-map span{border:1px solid var(--krds-light-color-border-primary-light);padding:var(--krds-padding-4);color:var(--blue);background:var(--tint);border-radius:var(--krds-radius-small1)}.record{padding:var(--krds-padding-6);border:1px solid var(--line);margin-top:var(--krds-gap-5);border-radius:var(--krds-radius-large1)}.record pre{white-space:pre-wrap;font:inherit;overflow-wrap:anywhere;margin:var(--krds-gap-5) 0}.error{color:var(--krds-light-color-text-danger);font-size:var(--krds-pc-font-size-body-small);margin-top:var(--krds-gap-3)}.status{padding:var(--krds-padding-4);background:var(--surface);font-size:var(--krds-pc-font-size-body-small);margin-bottom:var(--krds-gap-4)}dialog{border:1px solid var(--line);border-radius:var(--krds-radius-large1);padding:var(--krds-padding-7);max-width:600px;width:calc(100% - 32px);max-height:90vh;overflow:auto;background:var(--white);color:var(--ink)}dialog::backdrop{background:var(--krds-color-light-alpha-black50)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:var(--krds-gap-4);margin-bottom:var(--krds-gap-5)}dialog label{margin:var(--krds-gap-5) 0 var(--krds-gap-3)}.consent{display:flex;align-items:flex-start;gap:var(--krds-gap-3)}details{margin-top:var(--krds-gap-4);font-size:var(--krds-pc-font-size-body-small)}summary{cursor:pointer;color:var(--blue);padding:var(--krds-padding-2) 0}.source-link{display:block;margin:var(--krds-gap-3) 0;text-decoration:underline;overflow-wrap:anywhere}.saved{color:var(--krds-light-color-text-success)}.narrow{max-width:760px}.check-grid{display:flex;gap:var(--krds-gap-5);flex-wrap:wrap}.check-grid label{display:flex;align-items:center;gap:var(--krds-gap-2)}.long-text{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:960px){.explore-layout{grid-template-columns:280px minmax(0,1fr);gap:var(--krds-gap-6)}.project-grid{grid-template-columns:1fr 1fr}.project-workspace{grid-template-columns:1fr}.opportunity{grid-template-columns:1fr}.opportunity .krds-btn{justify-self:start}}
@media(max-width:680px){main{padding:var(--krds-padding-6) var(--krds-padding-5)}.site-header{padding:var(--krds-padding-5);gap:var(--krds-gap-3);min-height:72px}.service-name{display:none}.main-nav{padding:0 var(--krds-padding-5);gap:var(--krds-gap-6)}.main-nav button{font-size:var(--krds-mobile-font-size-body-small)}h1{font-size:var(--krds-mobile-font-size-heading-large)}h2{font-size:var(--krds-mobile-font-size-heading-medium)}.explore-layout,.project-grid,.roles{grid-template-columns:1fr}.coach-panel{padding:var(--krds-padding-5)}.chat-log{max-height:160px}.bridge{align-items:stretch;flex-direction:column}.section-top{align-items:flex-start;flex-direction:column}.page-heading{margin-bottom:var(--krds-gap-6)}.demo-strip{padding:var(--krds-padding-2) var(--krds-padding-5)}.actions .krds-btn{flex:1;min-width:120px}.search-form .krds-btn{flex-shrink:0}.project-card{padding:var(--krds-padding-5)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* The reference-led home keeps KRDS controls and adds a light field around them. */
@property --aura-angle{syntax:'<angle>';inherits:true;initial-value:0deg}
@keyframes aura-flow{to{--aura-angle:360deg}}
@keyframes policy-drift{from{transform:translateY(-4px)}to{transform:translateY(4px)}}
@keyframes sky-drift{0%{transform:translate3d(-3%,-2%,0) scale(1.02)}50%{transform:translate3d(3%,4%,0) scale(1.08)}100%{transform:translate3d(-3%,-2%,0) scale(1.02)}}
.home-page{background:linear-gradient(180deg,var(--blue),color-mix(in srgb,var(--blue) 48%,var(--white)) 110px,var(--tint) 220px,var(--white) 550px) no-repeat;background-size:100% 600px;background-color:var(--white)}
.home-page .demo-strip,.home-page .brand,.home-page .brand:visited,.home-page .service-name{color:var(--white)}
.home-page footer{background:var(--white)}
.home-page .demo-strip{position:relative;z-index:3;background:transparent}
.home-page .site-header,.home-page .main-nav{position:relative;z-index:3}
.home-page .main-nav{border-bottom-color:transparent}
.home-page main{max-width:none;padding:0}
.home-hero{position:relative;isolation:isolate;min-height:790px;padding:var(--krds-padding-8) var(--krds-padding-6);overflow:clip}
.hero-atmosphere{position:absolute;z-index:-2;inset:0;pointer-events:none;background:radial-gradient(ellipse 60% 40% at 50% 0%,color-mix(in srgb,var(--blue) 13%,transparent),transparent),linear-gradient(180deg,transparent,var(--white) 52%)}
.hero-atmosphere:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),color-mix(in srgb,var(--blue) 5%,transparent) 25%);mask-image:linear-gradient(transparent,var(--ink),transparent)}
.hero-center{position:relative;z-index:2;width:min(740px,100%);margin:0 auto;text-align:center;padding-top:var(--krds-padding-7)}
.character-slot{width:64px;height:64px;display:grid;place-items:center;margin:0 auto var(--krds-gap-5);border-radius:var(--krds-radius-large2);background:var(--white);border:1px solid var(--krds-light-color-border-primary-light);box-shadow:0 10px 40px color-mix(in srgb,var(--blue) 12%,transparent);color:var(--blue);font-size:var(--krds-pc-font-size-heading-large)}
.hero-eyebrow{font-size:var(--krds-pc-font-size-body-small);color:var(--blue);margin-bottom:var(--krds-gap-4)}
.hero-center h1{font-size:var(--krds-pc-font-size-display-medium);letter-spacing:-.045em;line-height:1.25;word-break:keep-all}
.hero-description{color:var(--muted);font-size:var(--krds-pc-font-size-body-large);margin:var(--krds-gap-5) 0 var(--krds-gap-9)}
.mobile-break{display:none}
.hero-chat{text-align:left;position:relative;z-index:3}
.input-aura{--aura-angle:0deg;animation:aura-flow 7s linear infinite;position:relative;padding:2px;border-radius:var(--krds-radius-xlarge2);background:var(--white);isolation:isolate;box-shadow:0 18px 55px color-mix(in srgb,var(--blue) 14%,transparent)}
.input-aura:before{content:'';position:absolute;z-index:-1;inset:-10px;border-radius:inherit;background:linear-gradient(105deg,var(--blue),var(--krds-light-color-border-success),var(--krds-light-color-border-warning),var(--blue));filter:blur(18px);opacity:.38}
.input-aura:after{content:'';position:absolute;z-index:-1;inset:0;border-radius:inherit;background:conic-gradient(from var(--aura-angle),var(--blue),var(--krds-light-color-border-success),var(--krds-light-color-border-warning),var(--blue))}
.input-surface{position:relative;border-radius:inherit;background:var(--white);padding:var(--krds-padding-6)}
.hero-chat .krds-input{width:100%;height:86px;min-height:76px;resize:vertical;border-color:transparent;box-shadow:none;padding:var(--krds-padding-2);background:var(--white)}
.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--krds-gap-4);margin-top:var(--krds-gap-3)}
.composer-bottom>span{color:var(--muted);font-size:var(--krds-pc-font-size-body-small)}
.hero-chat:focus-within .input-aura{outline:2px solid var(--blue);outline-offset:4px}
.home-suggestions{display:flex;gap:var(--krds-gap-3);justify-content:center;flex-wrap:wrap;margin-top:var(--krds-gap-7)}
.home-suggestions button{background:var(--white);border:1px solid var(--line);border-radius:var(--krds-radius-max);padding:var(--krds-padding-3) var(--krds-padding-4);font-size:var(--krds-pc-font-size-body-small);min-height:44px}
.home-suggestions button:hover{background:var(--tint);border-color:var(--blue)}
.home-suggestions span{margin-left:var(--krds-gap-2);color:var(--blue)}
.hero-privacy{font-size:var(--krds-pc-font-size-body-xsmall);color:var(--muted);margin-top:var(--krds-gap-5)}
.policy-field{position:absolute;inset:0;z-index:1;pointer-events:none}
.floating-policy{position:absolute;width:238px;background:var(--white);border:1px solid var(--line);border-radius:var(--krds-radius-large2);padding:var(--krds-padding-5);box-shadow:0 12px 30px color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink);pointer-events:auto;text-align:left;transition:box-shadow .2s ease}
.floating-policy:hover,.floating-policy:focus-visible{box-shadow:0 12px 35px color-mix(in srgb,var(--blue) 18%,transparent)}
.policy-top{display:flex;align-items:center;gap:var(--krds-gap-2);font-size:var(--krds-pc-font-size-label-xsmall);color:var(--muted)}
.policy-top>span:last-child{margin-left:auto;color:var(--blue)}
.policy-symbol{width:28px;height:28px;display:grid;place-items:center;background:var(--tint);color:var(--blue);border-radius:var(--krds-radius-medium1)}
.floating-policy h2{font-size:var(--krds-pc-font-size-heading-xsmall);line-height:1.5;margin:var(--krds-gap-4) 0 var(--krds-gap-2);word-break:keep-all}
.floating-policy p,.policy-source{font-size:var(--krds-pc-font-size-body-xsmall);color:var(--muted)}
.policy-source{display:block;margin-top:var(--krds-gap-4);padding-top:var(--krds-padding-3);border-top:1px solid var(--line)}
.floating-policy{animation:policy-drift 10s ease-in-out infinite alternate}
.policy-0{left:3%;top:80px;rotate:-5deg}.policy-1{right:3%;top:110px;rotate:5deg;animation-delay:-3s}.policy-2{left:7%;top:460px;rotate:3deg;animation-delay:-5s}.policy-3{right:7%;top:490px;rotate:-4deg;animation-delay:-7s}
.home-hero.motion-paused *,.home-hero:has(.hero-chat:focus-within) .floating-policy,.hero-chat:focus-within .input-aura,.floating-policy:hover,.floating-policy:focus-visible{animation-play-state:paused!important}
.policy-loading{position:absolute;bottom:50px;width:100%;text-align:center;color:var(--muted);font-size:var(--krds-pc-font-size-body-small)}
.hero-tools{display:flex;align-items:center;justify-content:center;gap:var(--krds-gap-5);position:relative;z-index:2;margin:var(--krds-gap-9) auto 0;padding-top:var(--krds-padding-7)}
.home-conversation{max-height:370px;overflow-y:auto;text-align:left;padding:var(--krds-padding-5);margin-bottom:var(--krds-gap-7);background:color-mix(in srgb,var(--white) 90%,transparent);border-radius:var(--krds-radius-large1);border:1px solid var(--line)}
.home-message{margin-bottom:var(--krds-gap-5)}.home-message>span{font-size:var(--krds-pc-font-size-label-small);font-weight:700;color:var(--blue)}.home-message p{margin-top:var(--krds-gap-2);white-space:pre-wrap;overflow-wrap:anywhere}.home-message.user{padding:var(--krds-padding-4);background:var(--tint);border-radius:var(--krds-radius-medium1)}
.has-conversation .hero-center{padding-top:0}.has-conversation .character-slot,.has-conversation .hero-eyebrow{display:none}.has-conversation .hero-center h1{font-size:var(--krds-pc-font-size-heading-large)}.has-conversation .hero-description{margin-bottom:var(--krds-gap-6)}.has-conversation .policy-field{display:none}
@media(max-width:1380px){.policy-field{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--krds-gap-5);max-width:1050px;margin:var(--krds-gap-9) auto 0;min-height:185px}.floating-policy{position:relative;inset:auto;width:auto;rotate:0deg}.hero-tools{margin-top:var(--krds-gap-6)}.home-hero{min-height:760px}.hero-center{padding-top:var(--krds-padding-3)}}
@media(max-width:680px){.home-hero{padding:var(--krds-padding-6) var(--krds-padding-5);min-height:calc(100svh - 160px)}.hero-center h1{font-size:var(--krds-mobile-font-size-display-small)}.hero-center{padding-top:var(--krds-padding-3)}.hero-description{font-size:var(--krds-mobile-font-size-body-medium);margin:var(--krds-gap-4) 0 var(--krds-gap-7)}.mobile-break{display:block}.character-slot{width:52px;height:52px;margin-bottom:var(--krds-gap-4)}.hero-eyebrow{font-size:var(--krds-mobile-font-size-body-small)}.input-surface{padding:var(--krds-padding-4)}.hero-chat .krds-input{min-height:80px}.home-suggestions{gap:var(--krds-gap-2);margin-top:var(--krds-gap-6)}.home-suggestions button{font-size:var(--krds-mobile-font-size-body-small);padding:var(--krds-padding-2) var(--krds-padding-3)}.hero-privacy{font-size:var(--krds-mobile-font-size-body-xsmall)}.policy-field{display:flex;gap:var(--krds-gap-4);overflow-x:auto;scroll-snap-type:x proximity;pointer-events:auto;padding:var(--krds-padding-4) var(--krds-padding-2);margin-top:var(--krds-gap-6)}.floating-policy{flex:0 0 240px;scroll-snap-align:start}.hero-tools{flex-wrap:wrap;gap:var(--krds-gap-2);margin-top:var(--krds-gap-4);padding-top:0}.main-nav{position:fixed!important;inset:auto 0 0;z-index:10!important;background:var(--white);justify-content:space-around;gap:0;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.main-nav button{min-height:60px;padding:var(--krds-padding-4) var(--krds-padding-2)}body{padding-bottom:76px}.home-page .site-header{min-height:62px}.home-conversation{max-height:42svh;padding:var(--krds-padding-4)}.has-conversation .hero-center h1{font-size:var(--krds-mobile-font-size-heading-medium)}}
/* One continuous landing canvas, with a floating glass navigation layer. */
body.home-page{isolation:isolate;background:var(--white)}
body.home-page::before,body.home-page::after{content:'';position:fixed;inset:-12%;z-index:-1;pointer-events:none}
body.home-page::before{background:radial-gradient(ellipse 85% 48% at 28% 2%,var(--blue),transparent 75%),radial-gradient(ellipse 80% 50% at 100% 8%,color-mix(in srgb,var(--blue) 78%,var(--white)),transparent 80%),radial-gradient(ellipse 55% 60% at 0% 90%,color-mix(in srgb,var(--krds-light-color-border-success) 26%,var(--white)),transparent 75%),radial-gradient(ellipse 65% 60% at 100% 90%,color-mix(in srgb,var(--blue) 23%,var(--white)),transparent 75%);animation:sky-drift 18s ease-in-out infinite}
body.home-page::after{background:radial-gradient(ellipse 35% 40% at 75% 60%,color-mix(in srgb,var(--krds-light-color-border-success) 13%,transparent),transparent 80%);animation:sky-drift 23s ease-in-out infinite reverse}
body.ambient-paused::before,body.ambient-paused::after,body:has(.hero-chat:focus-within)::before,body:has(.hero-chat:focus-within)::after{animation-play-state:paused}
.home-hero{isolation:auto;overflow:clip;min-height:1000px;padding-top:150px}
.hero-atmosphere{background:none}
.hero-atmosphere:after{display:none}
.hero-center{padding-top:var(--krds-padding-7)}
.home-page .policy-0{top:210px}.home-page .policy-1{top:235px}.home-page .policy-2{top:650px}.home-page .policy-3{top:670px}
.hero-description{margin-bottom:var(--krds-gap-9)}
.hero-tools{margin-top:var(--krds-gap-9)}
.home-page .character-slot{background:color-mix(in srgb,var(--white) 80%,transparent);box-shadow:0 10px 45px color-mix(in srgb,var(--blue) 12%,transparent)}
.glass-header.site-header,.home-page .glass-header.site-header{position:fixed;z-index:20;top:20px;left:0;right:0;width:calc(100% - 64px);max-width:1240px;min-height:76px;margin:0 auto;padding:var(--krds-padding-4) var(--krds-padding-7);border:1px solid color-mix(in srgb,var(--white) 64%,transparent);border-radius:var(--krds-radius-xlarge2);background:color-mix(in srgb,var(--white) 57%,transparent);backdrop-filter:blur(24px) saturate(1.7);-webkit-backdrop-filter:blur(24px) saturate(1.7);box-shadow:inset 0 1px 0 var(--white),0 10px 36px color-mix(in srgb,var(--blue) 10%,transparent);transition:width .45s cubic-bezier(.22,1,.36,1),max-width .45s cubic-bezier(.22,1,.36,1),border-radius .45s ease,background .3s ease,min-height .45s ease}
.glass-header.site-header.is-scrolled{width:calc(100% - 144px);max-width:1000px;min-height:64px;border-radius:var(--krds-radius-max);background:color-mix(in srgb,var(--white) 80%,transparent)}
.glass-header .brand,.home-page .glass-header .brand,.home-page .glass-header .brand:visited{display:flex;align-items:center;gap:var(--krds-gap-3);color:var(--ink);white-space:nowrap;font-size:var(--krds-pc-font-size-heading-small)}
.brand-dot{color:var(--blue)}
.glass-header .primary-navigation{display:flex;position:static!important;margin-left:auto;padding:0;border:0;gap:var(--krds-gap-7);background:transparent;overflow:visible}
.glass-header .primary-navigation button{min-height:44px;padding:var(--krds-padding-2) 0;border-bottom:0}
.glass-header .primary-navigation button[aria-current=page]{color:var(--blue)}
.ambient-toggle{display:none;align-items:center;justify-content:center;width:36px;height:44px;border-radius:var(--krds-radius-max);color:var(--muted);font-size:var(--krds-pc-font-size-body-small)}
.home-page .ambient-toggle{display:inline-flex}
.mobile-nav{display:none}
body:not(.home-page) main{padding-top:140px}
@media(max-width:1380px){.home-page .floating-policy{top:auto}.policy-field{margin-top:var(--krds-gap-9)}.hero-center{padding-top:var(--krds-padding-7)}}
@media(max-width:680px){
  .glass-header.site-header,.home-page .glass-header.site-header{top:12px;min-height:60px;width:calc(100% - 24px);padding:var(--krds-padding-3) var(--krds-padding-5)}
  .glass-header.site-header.is-scrolled{width:calc(100% - 48px);min-height:54px}
  .glass-header .primary-navigation{display:flex}
  .ambient-toggle{margin-left:auto}
  .mobile-nav{display:flex;background:color-mix(in srgb,var(--white) 85%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
  .home-hero{padding-top:115px;min-height:100svh}
  .hero-center{padding-top:var(--krds-padding-3)}
  .hero-description{margin-bottom:var(--krds-gap-7)}
  .hero-tools{margin-top:var(--krds-gap-6)}
  .floating-policy{animation:none}
  .home-page .floating-policy{background:color-mix(in srgb,var(--white) 90%,transparent)}
  body.home-page::before{background:radial-gradient(ellipse 110% 50% at 30% 0%,color-mix(in srgb,var(--blue) 80%,var(--white)),transparent 85%),radial-gradient(ellipse 100% 70% at 95% 100%,color-mix(in srgb,var(--krds-light-color-border-success) 25%,var(--white)),transparent 90%)}
}
@supports not (backdrop-filter:blur(1px)){.glass-header.site-header{background:var(--white)}}
:root{--poc-banner-height:44px}
.poc-banner{position:fixed;inset:0 0 auto;z-index:30;min-height:44px;display:flex;align-items:center;justify-content:center;background:var(--krds-light-color-text-basic);color:var(--white);padding:var(--krds-padding-2) 52px;font-size:var(--krds-pc-font-size-body-small);text-align:center}
.poc-banner[hidden]{display:none}
.poc-banner button{position:absolute;right:var(--krds-gap-3);top:0;bottom:0;margin:auto;width:44px;min-height:44px;display:grid;place-items:center;color:var(--white);font-size:var(--krds-pc-font-size-heading-medium);border-radius:var(--krds-radius-small1)}
.poc-banner button:hover{background:color-mix(in srgb,var(--white) 15%,transparent)}
.poc-banner button:focus-visible{outline-color:var(--white);outline-offset:-4px}
.glass-header.site-header,.home-page .glass-header.site-header{top:calc(20px + var(--poc-banner-height))}
main,.home-page main{margin-top:var(--poc-banner-height)}
.skip-atlas:focus{z-index:40}
@media(max-width:680px){.poc-banner{font-size:var(--krds-mobile-font-size-body-small);padding-left:var(--krds-padding-4)}.glass-header.site-header,.home-page .glass-header.site-header{top:calc(12px + var(--poc-banner-height))}}
.glass-header.site-header,.home-page .glass-header.site-header{top:var(--poc-banner-height);width:100%;max-width:none;border-radius:0;border-top:0;transition:top .45s cubic-bezier(.22,1,.36,1),width .45s cubic-bezier(.22,1,.36,1),max-width .45s cubic-bezier(.22,1,.36,1),border-radius .45s ease,background .3s ease,min-height .45s ease}
.glass-header.site-header.is-scrolled,.home-page .glass-header.site-header.is-scrolled{top:calc(20px + var(--poc-banner-height));width:calc(100% - 144px);max-width:1000px;border-radius:var(--krds-radius-max);border-top:1px solid color-mix(in srgb,var(--white) 64%,transparent)}
@media(max-width:680px){.glass-header.site-header.is-scrolled,.home-page .glass-header.site-header.is-scrolled{top:calc(12px + var(--poc-banner-height));width:calc(100% - 48px)}}
/* Original KRDS desktop baseline; mobile is 1.3 times the original scale. */
html{font-size:62.5%}
.hero-chat{margin-top:var(--krds-gap-7)}
.hero-chat .input-surface{display:flex;align-items:center;gap:var(--krds-gap-3);padding:var(--krds-padding-3);min-height:72px}
.hero-chat .krds-input{flex:1;min-width:0;width:0;height:48px;min-height:0;padding:var(--krds-padding-3)}
.hero-chat .krds-btn{flex-shrink:0;width:48px;min-width:48px;height:48px;padding:0;border-radius:var(--krds-radius-max)}
.hero-chat .input-aura,.hero-chat .input-surface,.hero-chat .krds-input{border-radius:var(--krds-radius-max)}
.hero-chat .input-aura::before,.hero-chat .input-aura::after{border-radius:inherit}
.hero-chat .krds-btn span{font-size:var(--krds-pc-font-size-heading-medium);line-height:1}
.glass-header .primary-navigation{gap:var(--krds-gap-5)}
.floating-policy{overflow-wrap:anywhere}
@media(min-width:681px) and (max-width:1380px){.policy-field{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){html{font-size:81.25%}.home-hero{padding-left:var(--krds-padding-3);padding-right:var(--krds-padding-3)}.hero-chat .input-surface{padding:var(--krds-padding-2);gap:var(--krds-gap-2);min-height:60px}.hero-chat .krds-input{padding:var(--krds-padding-2)}.mobile-nav{padding-left:var(--krds-padding-2);padding-right:var(--krds-padding-2)}.mobile-nav button{font-size:var(--krds-mobile-font-size-body-small);padding-left:0;padding-right:0}.floating-policy{flex-basis:290px}.poc-banner{padding-right:48px}.glass-header.site-header,.home-page .glass-header.site-header{padding-left:var(--krds-padding-4);padding-right:var(--krds-padding-4)}}
/* Colors sampled directly from the user-supplied Seoul reference. */
:root{--seoul-green:rgb(0,215,120);--seoul-pink:rgb(255,10,115);--seoul-yellow:rgb(255,180,0);--seoul-blue:rgb(0,130,255);--seoul-black:rgb(0,0,0);--seoul-white:rgb(255,255,255);--blue:color-mix(in srgb,var(--seoul-blue) 78%,var(--seoul-black));--tint:color-mix(in srgb,var(--seoul-blue) 7%,var(--seoul-white));--ink:var(--seoul-black)}
body.home-page::before{background:radial-gradient(ellipse 65% 46% at 22% 0%,color-mix(in srgb,var(--seoul-blue) 66%,transparent),transparent 85%),radial-gradient(ellipse 52% 45% at 100% 12%,color-mix(in srgb,var(--seoul-pink) 32%,transparent),transparent 85%),radial-gradient(ellipse 55% 45% at 0% 95%,color-mix(in srgb,var(--seoul-green) 37%,transparent),transparent 85%),radial-gradient(ellipse 60% 48% at 90% 100%,color-mix(in srgb,var(--seoul-yellow) 35%,transparent),transparent 85%)}
body.home-page::after{background:radial-gradient(ellipse 40% 40% at 75% 60%,color-mix(in srgb,var(--seoul-green) 10%,transparent),transparent 80%)}
.input-aura:after{background:conic-gradient(from var(--aura-angle),var(--seoul-green),var(--seoul-pink),var(--seoul-yellow),var(--seoul-blue),var(--seoul-green))}
.input-aura:before{background:linear-gradient(110deg,var(--seoul-blue),var(--seoul-green),var(--seoul-yellow),var(--seoul-pink))}
.hero-chat .krds-btn{background:var(--seoul-blue);border-color:var(--seoul-blue)}
.hero-chat .krds-btn:hover{background:var(--blue);border-color:var(--blue)}
.floating-policy{border:1px solid var(--line)}
.floating-policy .policy-top>span:last-child{color:var(--muted)}
.empty .actions{justify-content:center}
/* Spacious landing and compact discovery controls. */
.home-hero:not(.has-conversation) .hero-eyebrow{margin-bottom:var(--krds-gap-7)}
.home-hero:not(.has-conversation) .hero-chat{margin-top:var(--krds-gap-9)}
.home-hero:not(.has-conversation) .home-suggestions{margin-top:var(--krds-gap-9)}
.opportunity{position:relative;display:block;padding-top:var(--krds-padding-7)}
.opportunity>div>.meta{padding-right:120px;min-height:40px}
.opportunity>.krds-btn{position:absolute;right:0;top:var(--krds-padding-6)}
.filter-chip{display:inline-flex;align-items:center;min-height:44px;padding:var(--krds-padding-3) var(--krds-padding-5);margin-bottom:var(--krds-gap-6);border:1px solid var(--line);border-radius:var(--krds-radius-max);background:var(--white);font-size:var(--krds-pc-font-size-body-small);color:var(--muted)}
.filter-chip[aria-pressed=true]{background:var(--tint);border-color:var(--blue);color:var(--blue)}
.filter-chip[aria-pressed=true]:before{content:'✓';margin-right:var(--krds-gap-2)}
.project-templates{margin-top:var(--krds-gap-10)}
.project-templates>.project-grid{margin-top:var(--krds-gap-6)}
@media(max-width:1380px){.home-hero:not(.has-conversation) .policy-field{margin-top:var(--krds-gap-10);row-gap:var(--krds-gap-7)}}
.hero-chat:focus-within .input-aura{outline:none}
body:not(.keyboard-navigation) :is(button,a,input,textarea,select):focus{outline:none!important}
/* Navigation moves focus to main for screen readers, without a page-sized ring. */
#content:focus{outline:none!important}
body:not(.keyboard-navigation) :focus{outline:none!important;box-shadow:none!important}
#content:focus{box-shadow:none!important}
*{-webkit-tap-highlight-color:transparent}
.home-page{-webkit-user-select:none;user-select:none}
.home-page :is(input,textarea,.home-conversation){-webkit-user-select:text;user-select:text}
@media(max-width:680px){
  body{padding-bottom:calc(160px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(160px + env(safe-area-inset-bottom))}
  .poc-banner{font-size:var(--krds-mobile-font-size-label-xsmall);white-space:nowrap;line-height:1.25;padding:var(--krds-padding-2) 44px var(--krds-padding-2) var(--krds-padding-3)}
  .poc-banner>span{font-size:clamp(10px,3.2vw,13px);white-space:nowrap}
  .poc-banner button{right:0}
  .home-hero:not(.has-conversation){padding-bottom:var(--krds-padding-10);overflow:visible}
  .home-page .hero-tools{padding-bottom:var(--krds-padding-7)}
  #content::after{content:'';display:block;height:calc(120px + env(safe-area-inset-bottom));flex-shrink:0}
  .home-page .policy-field{background:transparent;padding-top:var(--krds-padding-5);padding-bottom:var(--krds-padding-5)}
  .home-page .floating-policy{box-shadow:none}
  body.home-page::before,body.home-page::after{inset:-20%;min-height:140lvh}
}
.consent input[type=checkbox],.check-grid input[type=checkbox]{appearance:auto;position:static!important;opacity:1;clip:auto!important;clip-path:none;width:20px!important;height:20px!important;margin:0!important;flex-shrink:0;pointer-events:auto;z-index:1}
.keyboard-navigation .hero-chat:focus-within .input-aura{outline:2px solid var(--blue);outline-offset:4px}
.home-hero{min-height:850px}
.policy-field{max-width:1320px;margin-left:auto;margin-right:auto}
.home-page .policy-0{left:calc(50% - 650px);top:220px;rotate:-2deg}
.home-page .policy-1{right:calc(50% - 650px);top:240px;rotate:2deg}
.home-page .policy-2{left:calc(50% - 520px);top:510px;rotate:1deg}
.home-page .policy-3{right:calc(50% - 520px);top:530px;rotate:-1deg}
@media(max-width:1380px){.policy-field{max-width:1000px;margin-top:var(--krds-gap-7)}.home-page .floating-policy{inset:auto;rotate:0deg}}
/* Conversation is a message timeline, not a diagnostic result panel. */
.has-conversation{padding-top:125px;min-height:0;overflow:visible}
.has-conversation .hero-center{height:calc(100svh - var(--poc-banner-height) - 150px);min-height:420px;display:flex;flex-direction:column;text-align:left;padding-top:0}
.has-conversation .hero-eyebrow,.has-conversation .home-suggestions,.has-conversation .hero-tools{display:none}
.has-conversation #home-title{font-size:var(--krds-pc-font-size-heading-small);padding-bottom:var(--krds-padding-4);border-bottom:1px solid var(--line);flex-shrink:0}
.has-conversation .home-conversation{display:flex;flex-direction:column;gap:var(--krds-gap-6);flex:1;min-height:0;max-height:none;padding:var(--krds-padding-6) var(--krds-padding-2);margin:0;border:0;background:transparent;overscroll-behavior:contain;scroll-padding-bottom:var(--krds-gap-6)}
.home-message{display:flex;flex-direction:column;max-width:88%;margin:0;padding:0}
.home-message>span{font-size:var(--krds-pc-font-size-label-xsmall);margin-bottom:var(--krds-gap-2);color:var(--muted)}
.home-message.user{align-self:flex-end;align-items:flex-end;background:transparent;padding:0;border:0}
.home-message.assistant{align-self:flex-start}
.message-content{white-space:pre-wrap;overflow-wrap:anywhere;padding:var(--krds-padding-5);background:var(--white);border:1px solid var(--line);border-radius:var(--krds-radius-large2);font-size:var(--krds-pc-font-size-body-medium)}
.home-message.user .message-content{background:var(--tint);border-color:color-mix(in srgb,var(--seoul-blue) 20%,var(--white))}
.home-message.assistant .message-content{border-top-left-radius:var(--krds-radius-small1)}
.home-message.user .message-content{border-top-right-radius:var(--krds-radius-small1)}
.message-content details{white-space:normal}
.policy-facts{display:grid;gap:var(--krds-gap-3);margin-top:var(--krds-gap-5);font-size:var(--krds-pc-font-size-body-small)}
.policy-facts>div{display:grid;grid-template-columns:5em minmax(0,1fr);gap:var(--krds-gap-3)}
.policy-facts dt{color:var(--muted)}.policy-facts dd{margin:0;overflow-wrap:anywhere;color:var(--ink)}
.has-conversation .hero-chat{flex-shrink:0;margin-top:var(--krds-gap-3)}
.chat-failure{padding:var(--krds-padding-4);border:1px solid var(--krds-light-color-border-danger);border-radius:var(--krds-radius-medium1)}
@media(max-width:680px){.home-hero{min-height:calc(100svh - var(--poc-banner-height))}.policy-field{margin-top:var(--krds-gap-6)}.has-conversation{padding-top:85px;min-height:0}.has-conversation .hero-center{height:calc(100dvh - var(--poc-banner-height) - 170px);min-height:280px}.has-conversation #home-title{font-size:var(--krds-mobile-font-size-heading-xsmall)}.has-conversation .home-conversation{padding:var(--krds-padding-4) 0;gap:var(--krds-gap-4)}.message-content{font-size:var(--krds-mobile-font-size-body-small);padding:var(--krds-padding-4)}.home-message{max-width:92%}}
/* The document owns scrolling, including long AI conversations. */
.has-conversation .hero-center{height:auto;min-height:0}
.has-conversation .home-conversation{flex:none;height:auto;max-height:none;overflow:visible;overscroll-behavior:auto}
.home-conversation>article,.chat-failure{scroll-margin-top:calc(var(--poc-banner-height) + 110px)}
.source-cards{white-space:normal;margin-top:var(--krds-gap-6);min-width:0}
.source-cards-label{font-size:var(--krds-pc-font-size-body-small);color:var(--muted);margin-bottom:var(--krds-gap-4)}
.source-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--krds-gap-4)}
.source-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:var(--krds-padding-5);border:1px solid var(--line);border-radius:var(--krds-radius-large1);background:var(--white)}
.source-card h3{font-size:var(--krds-pc-font-size-heading-xsmall);margin-top:var(--krds-gap-4);overflow-wrap:anywhere}
.source-card .policy-facts{width:100%;margin-bottom:var(--krds-gap-5)}
.source-card>.krds-btn{margin-top:auto;align-self:flex-end}
.project-card>.badge{align-self:flex-start;width:fit-content}
.ai-loading{display:flex;align-items:center;gap:var(--krds-gap-4);padding:var(--krds-padding-4) 0;color:var(--muted);font-size:var(--krds-pc-font-size-body-small)}
.ai-loading img{width:112px;height:112px;object-fit:contain;flex-shrink:0}
.hero-mascot{display:block;width:144px;height:144px;object-fit:contain;margin:0 auto}
.mascot-button{position:relative;display:block;margin:0 auto var(--krds-gap-8);padding:0;border:0;background:transparent;overflow:visible;cursor:pointer;-webkit-tap-highlight-color:transparent}
.mascot-particle{position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;pointer-events:none}
.guestbook-page{max-width:840px;margin-inline:auto;min-width:0}
.guestbook-page .page-heading{margin-bottom:var(--krds-gap-7)}
.guest-form{border:1px solid var(--line);border-radius:var(--krds-radius-large2);padding:var(--krds-padding-8);display:grid;gap:var(--krds-gap-6);background:var(--white)}
.guest-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--krds-gap-5)}
.guest-form label,.guest-edit-form label{display:grid;min-width:0;gap:var(--krds-gap-3);font-weight:700}
.guestbook-page .krds-input{width:100%;min-width:0;max-width:100%;font-weight:400;font-size:var(--krds-pc-font-size-body-medium);border-color:var(--line);border-radius:var(--krds-radius-large1)}
.guestbook-page input.krds-input{height:48px;padding-inline:var(--krds-padding-5)}
.guestbook-page textarea.krds-input{height:144px;min-height:120px;padding:var(--krds-padding-5);line-height:1.6;resize:vertical}
.guestbook-page .error:empty{display:none}
.guest-submit{display:flex;align-items:center;justify-content:flex-end;gap:var(--krds-gap-5)}
.guest-submit .hint{margin:0}.guest-submit button{flex-shrink:0}
.guest-board{margin-top:var(--krds-gap-9)}
.guest-board>h2{font-size:var(--krds-pc-font-size-heading-small);margin-bottom:var(--krds-gap-5)}
#guest-list{display:grid;gap:var(--krds-gap-5)}
#my-applications:not(:empty){margin-bottom:var(--krds-gap-9)}
#my-applications>h2{margin-bottom:var(--krds-gap-5)}
.guest-entry{min-width:0;padding:var(--krds-padding-7);border:1px solid var(--line);border-radius:var(--krds-radius-large2);background:var(--white)}
.guest-entry-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--krds-gap-3);flex-wrap:wrap}
.guest-entry-head strong{min-width:0;overflow-wrap:anywhere}.guest-entry-head time{font-size:var(--krds-pc-font-size-body-small);color:var(--muted)}
.guest-comment{white-space:pre-wrap;overflow-wrap:anywhere;margin:var(--krds-gap-5) 0}
.guest-entry-actions{display:flex;gap:var(--krds-gap-3);justify-content:flex-end;border-top:1px solid var(--line);padding-top:var(--krds-padding-4)}
.guest-entry-actions .krds-btn{min-height:40px;height:auto;color:var(--muted);background:var(--white);border-color:var(--line)}
.guest-edit-form .actions{margin-top:0}
.guest-edit-form{display:grid;gap:var(--krds-gap-4);margin-top:var(--krds-gap-5);padding:var(--krds-padding-5);background:var(--surface);border-radius:var(--krds-radius-large1)}
.guest-sentinel{height:1px}
.conversation-tools{display:flex;gap:var(--krds-gap-3);margin:var(--krds-gap-4) 0}
.conversation-history{margin-bottom:var(--krds-gap-9)}
.conversation-history h2{margin-bottom:var(--krds-gap-5)}
.history-list{display:grid;gap:var(--krds-gap-4)}
.history-card{display:flex;align-items:center;gap:var(--krds-gap-4);padding:var(--krds-padding-5);border:1px solid var(--line);border-radius:var(--krds-radius-large2);background:var(--white)}
.history-open{display:grid;gap:var(--krds-gap-2);min-width:0;flex:1;text-align:left;background:transparent;color:var(--ink)}
.history-open strong{overflow-wrap:anywhere}.history-open span{font-size:var(--krds-pc-font-size-body-small);color:var(--muted)}.history-open .history-continue{color:var(--blue)}
.history-card>.krds-btn{flex-shrink:0}
@media(max-width:680px){.guest-form,.guest-entry{padding:var(--krds-padding-5)}.guest-form{gap:var(--krds-gap-5)}.guest-identity{gap:var(--krds-gap-3)}.guestbook-page input.krds-input{height:52px;padding-inline:var(--krds-padding-3)}.guestbook-page textarea.krds-input{height:156px}.guest-submit{align-items:stretch;flex-direction:column;gap:var(--krds-gap-4)}.guest-submit .krds-btn{width:100%}.guest-entry-head{flex-direction:column;gap:var(--krds-gap-2)}.guest-edit-form .actions .krds-btn{min-width:0}.mobile-nav button{white-space:nowrap;font-size:var(--krds-mobile-font-size-label-small)}}
@media(max-width:680px){.hero-mascot{width:112px;height:112px}}
@media(max-width:680px){.ai-loading img{width:88px;height:88px}}
.filter-row>#project-district,.filter-row>#new-project{height:var(--krds-size-height-6);min-height:var(--krds-size-height-6);font-size:var(--krds-pc-font-size-body-medium)}
.filter-row>label{display:flex;align-items:center;align-self:center;margin:0}
/* Override KRDS focus rings centrally; pointer input must never add a ring. */
:root{--krds-box-shadow-outline:none;--krds-box-shadow-outline-inset:none}
body :focus,body :focus-visible{outline:none!important;box-shadow:none!important}
body .hero-chat:focus-within .input-aura{outline:none!important}
body .krds-input:focus,body .krds-form-select:focus{border-color:var(--line)!important;border-width:1px}
body .filter-chip[aria-pressed=true]{border-color:var(--ink);color:var(--ink);background:var(--surface)}
body .hero-chat .krds-input:focus{border-color:transparent!important}
body.keyboard-navigation :is(a,button,input,textarea,select,summary):focus-visible{outline:2px solid var(--ink)!important;outline-offset:3px}
.hero-chat #message{padding-left:var(--krds-padding-8)}
@media(min-width:1381px){
  .home-hero:not(.has-conversation){min-height:1120px;overflow:visible}
  .home-page .policy-field{z-index:5}
  .home-page .policy-2,.home-page .policy-3{top:820px}
  .home-page .floating-policy{animation:none!important;rotate:0deg;cursor:grab;touch-action:none}
  .home-page .floating-policy.is-dragging{cursor:grabbing;box-shadow:0 16px 32px color-mix(in srgb,var(--ink) 14%,transparent)}
}
.update-notice{position:fixed;right:var(--krds-gap-5);bottom:100px;z-index:50;background:var(--white);padding:var(--krds-padding-5);border:1px solid var(--line);border-radius:var(--krds-radius-large1);max-width:calc(100vw - 32px)}
/* One top navigation at every size. The bottom edge belongs to chat only. */
.glass-header .main-nav{display:flex!important;visibility:visible!important;opacity:1;flex-shrink:0}
@media(max-width:680px){
  body{padding-bottom:calc(32px + env(safe-area-inset-bottom));scroll-padding-bottom:32px}
  .glass-header.site-header,.home-page .glass-header.site-header,
  .glass-header.site-header.is-scrolled,.home-page .glass-header.site-header.is-scrolled{
    top:var(--poc-banner-height);bottom:auto;width:100%;max-width:none;
    min-height:100px;padding:8px 12px 0;gap:0;flex-direction:column;
    align-items:stretch;border-radius:0;border:0;border-bottom:1px solid var(--line);
    background:color-mix(in srgb,var(--white) 94%,transparent);transition:none;
  }
  .glass-header .brand,.home-page .glass-header .brand{display:flex;min-height:44px;font-size:var(--krds-mobile-font-size-heading-xsmall);flex-shrink:0}
  .glass-header .primary-navigation{display:flex;position:static!important;inset:auto!important;
    width:100%;margin:0;padding:0;gap:0;justify-content:space-between;
    border:0;background:transparent;box-shadow:none;overflow:visible}
  .glass-header .primary-navigation button{min-height:48px;padding:8px 4px;font-size:var(--krds-mobile-font-size-label-xsmall);line-height:1.3;flex:0 1 auto}
  .glass-header.site-header.is-scrolled,.home-page .glass-header.site-header.is-scrolled{
    top:calc(var(--poc-banner-height) + 10px);width:calc(100% - 20px);
    min-height:56px;padding:3px 12px;border-radius:var(--krds-radius-max);
    border:1px solid color-mix(in srgb,var(--white) 70%,transparent);
    background:color-mix(in srgb,var(--white) 72%,transparent);
    backdrop-filter:blur(24px) saturate(1.7);-webkit-backdrop-filter:blur(24px) saturate(1.7);
    box-shadow:inset 0 1px 0 var(--white),0 8px 28px color-mix(in srgb,var(--blue) 12%,transparent);
  }
  .glass-header.is-scrolled .brand,.home-page .glass-header.is-scrolled .brand{display:none}
  @supports not (backdrop-filter:blur(1px)){
    .glass-header.site-header.is-scrolled{background:var(--white)}
  }
  body:not(.home-page) main{padding-top:124px}
  .home-hero,.home-hero.has-conversation{padding-top:124px}
  .home-hero #home-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
  .has-conversation .hero-center{padding-bottom:calc(120px + env(safe-area-inset-bottom))}
  .has-conversation .hero-chat{position:fixed;z-index:15;left:0;right:0;bottom:0;width:100%;max-width:none;margin:0;
    padding:12px 12px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--white) 24%)}
  .has-conversation .hero-chat .input-aura{width:100%}
  .home-conversation>article,.chat-failure{scroll-margin-top:calc(var(--poc-banner-height) + 120px);scroll-margin-bottom:120px}
  .home-hero:not(.has-conversation) .policy-field{
    display:grid;grid-template-columns:minmax(0,1fr);gap:var(--krds-gap-5);
    width:100%;height:auto;max-height:none;overflow:visible;scroll-snap-type:none;
    padding-inline:var(--krds-padding-2);
  }
  .home-page .floating-policy{position:relative;width:100%;min-width:0;flex:none;scroll-snap-align:none;transform:none}
}
