@keyframes react-loading-skeleton{to{transform:translate(100%)}}.react-loading-skeleton{--base-color:#ebebeb;--highlight-color:#f5f5f5;--animation-duration:1.5s;--animation-direction:normal;--pseudo-element-display:block;background-color:var(--base-color);-webkit-user-select:none;user-select:none;border-radius:.25rem;width:100%;line-height:1;display:inline-flex;position:relative;overflow:hidden}.react-loading-skeleton:after{content:" ";display:var(--pseudo-element-display);background-repeat:no-repeat;background-image:var(--custom-highlight-background,linear-gradient(90deg, var(--base-color) 0%, var(--highlight-color) 50%, var(--base-color) 100%));height:100%;animation-name:react-loading-skeleton;animation-direction:var(--animation-direction);animation-duration:var(--animation-duration);animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;top:0;left:0;right:0;transform:translate(-100%)}@media (prefers-reduced-motion){.react-loading-skeleton{--pseudo-element-display:none}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.border{border-style:var(--tw-border-style);border-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#17231f;--muted:#65716c;--line:#dbe3df;--line-strong:#c5d0ca;--paper:#fff;--canvas:#f4f7f5;--green-950:#143c2e;--green-900:#18513c;--green-800:#1f654b;--green-700:#27805e;--green-100:#dff1e8;--green-50:#eef8f3;--amber:#c87516;--amber-soft:#fff1d8;--red:#b84942;--shadow:0 12px 35px #183b2e1f;--focus:#2d82e5}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--canvas)}body{color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Pretendard,Noto Sans KR,Apple SD Gothic Neo,Malgun Gothic,system-ui,sans-serif;font-size:15px}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.58}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus)}@supports (color:color-mix(in lab, red, red)){button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid color-mix(in srgb, var(--focus) 65%, transparent)}}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-offset:2px}button{color:inherit}a{color:var(--green-800)}img{max-width:100%;display:block}.home-page{color:#17342a;word-break:keep-all;overflow-wrap:anywhere;background:#f7faf8;min-height:100dvh;font-size:1rem;line-height:1.6;overflow-x:clip}.home-page :is(a,input):focus-visible{outline-offset:4px;outline:3px solid #237bd0}.home-page section[id]{scroll-margin-top:100px}.home-header{z-index:60;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;border-bottom:1px solid #dbe6df;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;min-height:80px;padding:14px max(28px,50vw - 620px);display:grid;position:sticky;top:0}.home-brand{color:#173c2e;align-items:center;gap:12px;text-decoration:none;display:flex}.home-brand-mark{background:#176448;border-radius:13px;flex-shrink:0;justify-content:center;align-items:flex-end;gap:3px;width:43px;height:43px;padding:11px 10px;display:flex}.home-brand-mark i{background:#fff;border-radius:4px 4px 1px 1px;width:5px;transform:skew(-12deg)}.home-brand-mark i:first-child{height:9px}.home-brand-mark i:nth-child(2){height:14px}.home-brand-mark i:nth-child(3){height:20px}.home-brand>span:last-child{display:grid}.home-brand strong{letter-spacing:-.025em;font-size:1rem}.home-brand small{color:#60736a;font-size:.75rem}.home-nav{justify-content:center;gap:clamp(12px,1.6vw,25px);display:flex}.home-nav a{color:#445a51;padding:10px 0;font-size:.875rem;font-weight:700;text-decoration:none}.home-nav a:hover{color:#176f4f;text-underline-offset:6px;text-decoration:underline}.home-manage-link{color:#fff;background:#163e2f;border-radius:11px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:10px 16px;font-size:.875rem;font-weight:750;text-decoration:none;display:inline-flex}.home-manage-link:hover{background:#1f654b}.home-hero{background:radial-gradient(circle at 90% 12%,#d5efdf,#0000 38%),linear-gradient(145deg,#fcfefd,#edf7f1);grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(32px,5vw,72px);min-height:620px;padding:76px max(28px,50vw - 620px);display:grid;position:relative}.home-hero-copy{min-width:0}.home-kicker{color:#276b50;letter-spacing:.02em;margin-bottom:22px;font-size:.875rem;font-weight:750;display:block}.home-hero h1{color:#12382b;letter-spacing:-.05em;margin:0;font-size:clamp(2.5rem,4vw,3.8rem);font-weight:800;line-height:1.2}.home-hero h1 em{color:#23805e;font-style:normal}.home-hero-copy>p{color:#52665d;margin:26px 0 0;font-size:1.0625rem;line-height:1.8}.home-hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.home-primary-link,.home-secondary-link{border-radius:12px;justify-content:center;align-items:center;gap:12px;min-height:52px;padding:12px 20px;font-size:.875rem;font-weight:750;text-decoration:none;display:inline-flex}.home-primary-link{color:#fff;background:#176f4f;box-shadow:0 10px 22px #1f805e2e}.home-primary-link:hover{background:#135b40}.home-secondary-link{color:#225f48;background:#fff;border:1px solid #b9cec2}.home-secondary-link:hover{background:#f4faf6}.home-history-link{color:#345e4b;text-underline-offset:5px;align-items:center;gap:12px;min-height:44px;margin-top:18px;font-size:.875rem;display:inline-flex}.home-hero-visual{background:#fff;border:1px solid #bfd5c8;border-radius:24px;min-width:0;margin:0;padding:12px;position:relative;box-shadow:0 26px 60px #1b4c3929}.home-visual-bar{align-items:center;gap:5px;height:32px;padding:0 4px 8px;display:flex}.home-visual-bar>span{background:#bbcfc2;border-radius:50%;width:7px;height:7px}.home-visual-bar b{color:#61776b;letter-spacing:.06em;margin-left:auto;font-size:.75rem}.home-hero-sequence{aspect-ratio:3/2;isolation:isolate;background:#e6eee9;border-radius:15px;position:relative;overflow:hidden}.home-hero-case{opacity:0;pointer-events:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px;animation:30s linear infinite both homePhotoCycle;display:grid;position:absolute;inset:0}.home-hero-panel{min-width:0;animation-duration:30s;animation-timing-function:ease;animation-iteration-count:infinite;animation-fill-mode:both;animation-delay:inherit;position:relative;overflow:hidden}.home-hero-before{animation-name:homeHeroBeforeCycle}.home-hero-after{animation-name:homeHeroAfterCycle}.home-hero-panel img{object-fit:contain;width:100%;height:100%}.home-hero-panel>span{color:#fff;background:#203f32;border:1px solid #fff6;border-radius:8px;padding:5px 11px;font-size:.875rem;font-weight:750;position:absolute;bottom:12px;left:12px}.home-hero-after>span{background:#146b49}.home-hero-case-number{color:#173c2e;background:#fff;border-radius:7px;padding:5px 9px;font-size:.75rem;position:absolute;top:12px;right:12px}.home-visual-caption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 14px;padding:16px 5px 4px;display:flex}.home-visual-caption strong{font-size:1rem}.home-visual-caption>span{color:#61766a;font-size:.875rem}.home-motion-toggle{color:#486151;cursor:pointer;align-items:center;gap:9px;width:fit-content;min-height:44px;padding:7px 5px;font-size:.875rem;display:flex}.home-motion-input{accent-color:#176f4f;cursor:pointer;width:18px;height:18px;margin:0}.home-page:has(.home-motion-input:checked,.home-hero-visual:hover,.home-case-stage:hover) :is(.home-hero-case,.home-hero-panel,.home-case-pair,.home-case-progress span){animation-play-state:paused}@keyframes homePhotoCycle{0%{opacity:0}2%,16.6667%{opacity:1}18.6667%,to{opacity:0}}@keyframes homeHeroBeforeCycle{0%{transform:translate(-6%)scale(.98)}2%,16.6667%{transform:none}18.6667%,to{transform:translate(-4%)scale(.98)}}@keyframes homeHeroAfterCycle{0%{transform:translate(6%)scale(.98)}2%,16.6667%{transform:none}18.6667%,to{transform:translate(4%)scale(.98)}}.home-history{background:#fff;border-block:1px solid #dce8e1;grid-template-columns:240px minmax(0,1fr);gap:48px;padding:56px max(28px,50vw - 580px);display:grid}.home-history-heading>span{color:#287453;letter-spacing:.12em;font-size:.75rem;font-weight:800}.home-history-heading h2{letter-spacing:-.035em;margin:10px 0;font-size:1.625rem;line-height:1.4}.home-history-heading p{color:#62746b;margin:0;font-size:.875rem}.home-history-years{gap:26px;min-width:0;display:grid}.home-history-year{grid-template-columns:170px minmax(0,1fr);align-items:start;gap:22px;display:grid}.home-history-year+.home-history-year{border-top:1px solid #e3ece6;padding-top:26px}.home-history-date h3{color:#175239;letter-spacing:-.02em;margin:0 0 4px;font-size:1.75rem;font-weight:800;line-height:1.2}.home-history-date h3 span{margin-left:4px;font-size:1rem}.home-history-date p{color:#65766d;margin:0;font-size:.875rem}.home-history-year ul{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.home-history-year li{color:#315b49;background:#f4faf6;border:1px solid #dce8e1;border-radius:8px;justify-content:center;align-items:center;min-height:40px;padding:7px 10px;font-size:1rem;font-weight:600;display:flex}.home-section{padding:88px max(28px,50vw - 580px)}.home-section-heading{max-width:670px}.home-section-heading>span,.home-contact-copy>span{color:#237758;letter-spacing:.12em;margin-bottom:20px;font-size:.75rem;font-weight:800;display:block}.home-section-heading h2,.home-contact h2{color:#163e2f;letter-spacing:-.04em;margin:0;font-size:clamp(2rem,3.3vw,2.8rem);line-height:1.3}.home-section-heading>p,.home-contact p{color:#607369;margin:20px 0 0;font-size:1rem;line-height:1.8}.home-about{background:#f4f8f5}.home-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px;display:grid}.home-feature-grid article{background:#fff;border:1px solid #d9e6df;border-radius:18px;min-width:0;padding:28px;box-shadow:0 10px 28px #183b2e0a}.home-feature-grid article>span{color:#23805e;font-size:.875rem;font-weight:800}.home-feature-grid h3{margin:30px 0 12px;font-size:1.25rem;line-height:1.4}.home-feature-grid p{color:#607369;margin:0;font-size:1rem;line-height:1.75}.home-process{background:#163f30}.home-process .home-section-heading>span{color:#94d8b7}.home-process .home-section-heading h2{color:#fff}.home-process .home-section-heading p{color:#c0d7cc}.home-process-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:40px 0 0;padding:0;list-style:none;display:grid}.home-process-list li{background:#ffffff0d;border:1px solid #fff3;border-radius:16px;min-width:0;padding:25px}.home-process-list b{color:#a1e3c3;margin-bottom:28px;font-size:.875rem;display:block}.home-process-list h3{color:#fff;margin:0 0 12px;font-size:1.2rem;line-height:1.4}.home-process-list p{color:#c4d9ce;margin:0;font-size:1rem;line-height:1.75}.home-cases{background:#f8fbf9}.home-case-stage{isolation:isolate;grid-template-columns:minmax(0,1fr);max-width:1000px;margin:40px auto 0;padding-bottom:48px;display:grid;position:relative;overflow:hidden}.home-case-pair{opacity:0;pointer-events:none;grid-area:1/1;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;min-width:0;animation:30s linear infinite both homePhotoCycle;display:grid}.home-case-card{background:#fff;border:1px solid #d5e2db;border-radius:18px;min-width:0;margin:0;overflow:hidden}.home-case-photo{aspect-ratio:3/4;background:#e8f0ec;position:relative;overflow:hidden}.home-case-photo img{object-fit:contain;width:100%;height:100%}.home-case-photo>span{color:#fff;letter-spacing:.05em;background:#234835;border-radius:8px;padding:6px 10px;font-size:.75rem;font-weight:750;position:absolute;top:14px;left:14px}.home-case-after .home-case-photo>span{background:#146b49}.home-case-card figcaption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 10px;padding:16px 20px;display:flex}.home-case-card strong{color:#193e30;font-size:1.0625rem}.home-case-card figcaption span{color:#62766a;font-size:.875rem}.home-case-progress{justify-content:center;gap:8px;display:flex;position:absolute;inset:auto 0 8px}.home-case-progress span{background:#c5d7ce;border-radius:999px;width:24px;height:5px;animation:30s linear infinite both homeCaseProgressCycle}@keyframes homeCaseProgressCycle{0%,16.666%{background:#23805e;width:40px}16.667%,to{background:#c5d7ce;width:24px}}.home-contact{background:#e7f2eb;grid-template-columns:minmax(0,1fr) minmax(240px,300px);align-items:center;gap:24px 64px;padding:76px max(28px,50vw - 580px);display:grid}.home-contact-copy{grid-row:1/3}.home-contact h2{font-size:clamp(1.875rem,3vw,2.625rem)}.home-contact-card{background:#fff;border:1px solid #c5dbcf;border-radius:16px;gap:8px;min-width:0;padding:24px;font-style:normal;display:grid}.home-contact-card>span{color:#61736a;font-size:.875rem}.home-contact-card strong{color:#173c2e;font-size:1.125rem}.home-contact-card a{color:#205f45;width:fit-content;font-size:1rem;font-weight:650;text-decoration:none}.home-contact-card a[href^=tel\:]{letter-spacing:-.02em;font-size:1.4rem}.home-contact-card a:hover{text-decoration:underline}.home-contact>a{color:#fff;background:#176f4f;border-radius:12px;justify-content:center;align-items:center;gap:12px;min-height:52px;padding:12px 16px;font-size:.875rem;font-weight:750;text-decoration:none;display:flex}.home-footer{color:#c1d5ca;background:#102d23;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:28px max(28px,50vw - 580px);font-size:.875rem;display:flex}.home-footer>div{gap:3px;display:grid}.home-footer strong{color:#fff;font-size:1rem}.home-footer small{color:#b4c9bd;font-size:.75rem}@media (width<=1100px){.home-header{grid-template-columns:1fr auto}.home-nav{display:none}.home-hero{gap:30px}.home-hero h1{font-size:2.65rem}.home-history{grid-template-columns:1fr;gap:30px}.home-history-year{grid-template-columns:190px minmax(0,1fr)}.home-history-year ul{flex-wrap:wrap;display:flex}.home-process-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){.home-hero{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:52px}.home-hero-copy{max-width:640px}.home-hero-visual{width:min(640px,100%)}.home-feature-grid{grid-template-columns:1fr}.home-feature-grid h3{margin-top:18px}.home-contact{grid-template-columns:1fr;gap:26px}.home-contact-copy{grid-row:auto}}@media (width<=540px){.home-header{gap:12px;min-height:70px;padding:12px 16px}.home-brand{gap:9px}.home-brand-mark{border-radius:10px;width:36px;height:36px;padding:8px}.home-brand strong{font-size:.875rem}.home-brand small{font-size:.75rem}.home-manage-link{gap:0;min-height:44px;padding:8px 13px;font-size:0}.home-manage-link:before{content:"로그인";font-size:.875rem}.home-manage-link>span{display:none}.home-hero{padding:40px 20px}.home-kicker{margin-bottom:18px;font-size:.875rem}.home-hero h1{font-size:clamp(2rem,8.5vw,2.65rem)}.home-hero-copy>p{margin-top:22px;font-size:1rem}.home-hero-actions{grid-template-columns:minmax(0,1fr);margin-top:24px;display:grid}.home-hero-visual{border-radius:18px;padding:8px}.home-hero-sequence{border-radius:12px}.home-visual-bar b{font-size:.75rem}.home-hero-panel>span{padding:4px 8px;font-size:.875rem;bottom:8px;left:8px}.home-hero-case-number{top:8px;right:8px}.home-visual-caption{flex-direction:column;align-items:start;padding:12px 6px 2px}.home-history{gap:26px;padding:36px 20px}.home-history-heading h2{font-size:1.5rem}.home-history-year{grid-template-columns:1fr;gap:16px}.home-history-date{flex-wrap:wrap;align-items:baseline;gap:4px 16px;display:flex}.home-history-year li{padding:7px 12px;font-size:.9375rem}.home-section{padding:56px 20px}.home-section-heading h2{font-size:1.875rem}.home-section-heading>span{margin-bottom:16px}.home-feature-grid{gap:14px;margin-top:30px}.home-feature-grid article{padding:24px}.home-process-list{grid-template-columns:1fr;gap:12px;margin-top:30px}.home-process-list li{padding:24px}.home-process-list b{margin-bottom:14px}.home-case-stage{margin-top:28px;padding-bottom:36px}.home-case-pair{gap:9px}.home-case-card{border-radius:12px}.home-case-photo>span{padding:4px 7px;font-size:.75rem;top:8px;left:8px}.home-case-card figcaption{padding:10px}.home-case-card strong{font-size:.9375rem}.home-case-card figcaption span{font-size:.75rem}.home-contact{padding:52px 20px}.home-contact h2{font-size:1.875rem}.home-contact-card{padding:24px}.home-footer{flex-direction:column;align-items:start;gap:18px;padding:28px 20px}}.home-client-guide{background:#fff;border-block:1px solid #dbe6df;padding:44px max(28px,50vw - 580px)}.home-client-guide-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.home-client-guide-heading h2{color:#163e2f;letter-spacing:-.035em;margin:0;font-size:1.75rem}.home-client-guide-heading p{color:#52665d;margin:8px 0 0}.home-client-guide-heading>a{flex-shrink:0}.home-client-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0 0;padding:0;list-style:none;display:grid}.home-client-steps li{align-items:flex-start;gap:12px;min-width:0;display:flex}.home-client-steps li>span{color:#237758;flex-shrink:0;font-size:.875rem;font-weight:800;line-height:1.9}.home-client-steps h3,.home-inquiry-types h3{color:#173c2e;margin:0 0 6px;font-size:1rem}.home-client-steps p{color:#52665d;margin:0;line-height:1.7}.home-client-help{color:#52665d;border-top:1px solid #dbe6df;margin:26px 0 0;padding-top:18px;font-size:.875rem}.home-client-help a{text-underline-offset:3px;font-weight:750}.home-inquiry-types{gap:22px;margin-top:26px;display:grid}.home-inquiry-types article{border-left:3px solid #a8c9b6;padding-left:18px;scroll-margin-top:110px}.home-inquiry-types p{margin:0;line-height:1.7}.home-inquiry-types .home-inquiry-note{margin-top:8px;font-size:.875rem}@media (width<=760px){.home-client-guide{padding:32px 20px}.home-client-guide-heading{flex-direction:column;align-items:flex-start;gap:18px}.home-client-steps{grid-template-columns:1fr;gap:20px}}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.app-shell{background:var(--canvas);flex-direction:column;height:100dvh;min-height:680px;display:flex;overflow:hidden}.access-state{background:var(--canvas);place-items:center;min-height:100dvh;padding:24px;display:grid}.access-state section{border:1px solid var(--line);text-align:center;background:#fff;border-radius:18px;width:min(520px,100%);padding:40px 32px;box-shadow:0 18px 50px #1f2d261a}.access-state-icon{color:#913c37;background:#fff0ef;border-radius:50%;place-items:center;width:48px;height:48px;margin:0 auto 18px;font-size:24px;font-weight:800;display:grid}.access-state h1{color:var(--ink);margin:0;font-size:24px}.access-state p{color:var(--muted);margin:14px auto 24px;line-height:1.7}.access-state .primary-button{text-decoration:none;display:inline-flex}.login-page{background:radial-gradient(circle at top, #e9f5ef, var(--canvas) 46%);place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:22px;width:min(440px,100%);padding:42px 38px;box-shadow:0 22px 60px #183b2e24}.login-mark{color:#fff;background:var(--green-800);border-radius:15px;place-items:center;width:52px;height:52px;margin-bottom:22px;font-size:29px;font-weight:900;display:grid}.login-card>span{color:var(--green-700);letter-spacing:.04em;font-size:12px;font-weight:800}.login-card h1{letter-spacing:-.045em;margin:8px 0 10px;font-size:25px}.login-card>p{color:var(--muted);margin:0 0 28px;line-height:1.6}.login-card form,.password-form{gap:16px;display:grid}.login-card label,.password-form label{gap:7px;display:grid}.login-card label>span,.password-form label>span{color:var(--ink);font-size:13px;font-weight:750}.login-card input,.password-form input{border:1px solid var(--line-strong);background:#fff;border-radius:10px;width:100%;height:46px;padding:0 13px}.login-card .primary-button{color:#fff;border-color:var(--green-800);background:var(--green-800);width:100%;margin-top:4px}.login-home-link{color:#60736a;text-align:center;width:fit-content;margin:22px auto 0;font-size:11px;font-weight:750;text-decoration:none;display:block}.login-home-link:hover{color:var(--green-800);text-decoration:underline}.bootstrap-card{width:min(480px,100%)}.bootstrap-target{border:1px solid var(--line);background:var(--green-50);border-radius:12px;gap:4px;margin:0 0 20px;padding:14px 16px;display:grid}.bootstrap-target span{color:var(--muted);font-size:12px;font-weight:700}.bootstrap-target strong{font-size:16px}.login-card label.password-visibility{align-items:center;gap:9px;display:flex}.login-card label.password-visibility input{width:18px;height:18px;margin:0}.login-card label.password-visibility span{font-weight:650}.password-backdrop{z-index:150;background:#eaf2ed;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.password-backdrop .password-dialog{border:1px solid var(--line);width:min(500px,100%);max-height:calc(100dvh - 32px);box-shadow:var(--shadow);background:#fff;border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.password-dialog .wizard-header{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:24px;display:flex}.password-dialog .wizard-header span{color:var(--green-800);font-size:.875rem;font-weight:750}.password-dialog .wizard-header h2{margin:6px 0 0;font-size:1.5rem}.password-dialog .password-form{min-height:0;padding:24px;overflow-y:auto}.password-dialog .password-form p{margin:0;line-height:1.6}.password-dialog .password-form label>span{font-size:.875rem}.password-dialog .password-form input{font-size:1rem}.password-dialog .wizard-footer{border-top:1px solid var(--line);flex-shrink:0;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.password-dialog .wizard-footer button{min-height:48px}@media (width<=480px){.password-dialog .wizard-header,.password-dialog .password-form{padding:20px}.password-dialog .wizard-footer{padding:16px 20px}.password-dialog .wizard-footer button{flex:1}}.modal-backdrop-front{z-index:120}.password-form small{color:var(--muted)}.app-header{color:#fff;z-index:30;background:linear-gradient(118deg,#143f30 0%,#1b5c43 68%,#216b4f 100%);flex:0 0 64px;grid-template-columns:minmax(250px,1fr) minmax(280px,560px) max-content;align-items:center;gap:18px;height:64px;padding:0 24px;display:grid;box-shadow:0 3px 12px #143c2e38}.brand{align-items:center;gap:11px;min-width:0;display:flex}.brand-mark{width:38px;height:38px;color:var(--green-950);background:#d8f0e3;border-radius:11px;place-items:center;font-size:24px;font-weight:900;display:grid;box-shadow:inset 0 0 0 1px #ffffffa6}.brand div{gap:1px;display:grid}.brand strong{letter-spacing:-.035em;font-size:17px}.brand small{color:#c2dacf;letter-spacing:.03em;font-size:11px}.global-search{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border:1px solid #ffffff3d;border-radius:12px;align-items:center;gap:9px;height:43px;padding:0 15px;display:flex}.global-search:focus-within{background:#ffffff2b;border-color:#ffffffb8}.global-search>span:first-child{color:#d5e8df;font-size:22px;transform:rotate(-15deg)}.global-search input{color:#fff;background:0 0;border:0;outline:0;width:100%;min-width:0}.global-search input::placeholder{color:#c4d7cf}.header-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:9px;min-width:0;display:flex}.primary-button,.secondary-button{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 16px;font-weight:750;transition:transform .14s,box-shadow .14s,background .14s;display:inline-flex}.primary-button{color:var(--green-950);background:#e7f6ee;border:1px solid #d9f0e4;box-shadow:0 4px 12px #07291d33}.primary-button:hover{background:#fff;transform:translateY(-1px)}.secondary-button{border:1px solid var(--line-strong);color:var(--ink);background:#fff}.secondary-button:hover{background:#f6faf8}.app-header .secondary-button{color:#fff;background:#ffffff14;border-color:#ffffff4d}.app-header .secondary-button:hover{background:#ffffff29}.header-more{position:relative}.header-more summary{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff4d;border-radius:10px;align-items:center;gap:5px;min-height:42px;padding:0 13px;font-weight:750;list-style:none;display:inline-flex}.header-more summary::-webkit-details-marker{display:none}.header-more summary:hover,.header-more[open] summary{background:#ffffff29}.header-more-menu{z-index:80;border:1px solid var(--line);min-width:174px;box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:7px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.header-more-menu button{min-height:38px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:8px;padding:0 11px;font-size:12px;font-weight:700}.header-more-menu button:hover{background:var(--green-50)}.sample-banner{color:#6b4512;background:#fff4df;border-bottom:1px solid #f0d7ac;flex:none;justify-content:center;align-items:center;gap:9px;min-height:38px;padding:8px 24px;font-size:12px;display:flex}.sample-banner span{font-size:16px}.sample-banner p{margin:0}.sample-banner strong{color:#4e330f;margin-right:5px}.version-banner{color:#5f3d0d;background:#fff0cf;border-bottom:1px solid #e9c987;flex:none;justify-content:center;align-items:center;gap:18px;min-height:48px;padding:7px 18px;font-size:12px;display:flex}.version-banner>div{align-items:baseline;gap:8px;display:flex}.version-banner strong{color:#4e330f}.version-banner .secondary-button{background:#fff9ed;border-color:#c99c43;min-height:34px;padding-inline:12px;font-size:11px}.kpi-strip{border-bottom:1px solid var(--line);background:#fff;flex:none;grid-template-columns:repeat(7,minmax(130px,1fr));min-height:66px;padding:8px 14px;display:grid}.kpi-strip article{border-right:1px solid var(--line);grid-template-rows:auto 1fr;grid-template-columns:1fr auto;align-items:end;column-gap:8px;min-width:0;padding:2px 18px;display:grid}.kpi-strip article:last-child{border-right:0}.kpi-strip article>span{color:var(--muted);grid-column:1;font-size:12px;font-weight:700}.kpi-strip article>strong{letter-spacing:-.04em;grid-column:1;align-self:center;font-size:23px;line-height:1.1}.kpi-strip article>strong i{color:var(--muted);margin-left:2px;font-size:13px;font-style:normal;font-weight:500}.kpi-strip article>small{color:#8a9590;text-align:right;grid-area:1/2/span 2;align-self:center;font-size:11px}.kpi-strip article.needs-attention>strong{color:var(--amber)}.workspace{flex:auto;grid-template-columns:320px 390px minmax(520px,1fr);min-height:0;transition:grid-template-columns .2s;display:grid;overflow:hidden}.workspace[data-detail-open=false]{grid-template-columns:320px 0 minmax(520px,1fr)}.workspace[data-detail-open=false] .detail-wrap{visibility:hidden;pointer-events:none;border-left:0;border-right:0}.list-panel,.detail-panel{background:#fff;min-height:0}.list-panel{border-right:1px solid var(--line);flex-direction:column;grid-area:1/1;display:flex}.panel-head,.map-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:70px;padding:13px 18px;display:flex}.eyebrow{color:var(--green-700);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:850;display:block}.panel-head h1,.map-toolbar h2,.detail-head h2{letter-spacing:-.035em;margin:0;font-size:20px;line-height:1.2}.panel-head>b{min-width:34px;height:30px;color:var(--green-800);background:var(--green-50);border-radius:18px;place-items:center;padding:0 9px;font-size:13px;display:grid}.filters{grid-template-columns:1fr 1fr;gap:7px;padding:10px 12px 7px;display:grid}.filters.is-admin{grid-template-columns:repeat(2,minmax(0,1fr))}.filters>label:last-child:nth-child(3){grid-column:1/-1}.filters label{min-width:0}.filters select,.detail-section select,.form-step select,.form-step input,.form-step textarea{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:#fff;border-radius:9px}.filters select{height:39px;padding:0 25px 0 9px;font-size:12px}.filters.is-admin select{font-size:11px}.result-summary{height:35px;color:var(--muted);justify-content:space-between;align-items:center;padding:0 16px;font-size:11px;display:flex}.text-button{color:var(--green-700);text-underline-offset:3px;background:0 0;border:0;padding:3px 0;font-size:11px;font-weight:750;text-decoration:underline}.result-summary .text-button:disabled{color:#a8b1ad;cursor:default;opacity:1;text-decoration:none}.facility-list{scrollbar-width:thin;scrollbar-color:#b7c5be transparent;flex:1;min-height:0;padding:0 9px 22px;overflow:auto}.facility-card{width:100%;color:inherit;text-align:left;background:#fff;border:1px solid #0000;border-radius:10px;margin:0 0 5px;padding:10px 12px;transition:border .14s,background .14s,transform .14s;display:block}.facility-card:hover{border-color:var(--line);background:#f9fbfa;transform:translateY(-1px)}.facility-card.is-selected{border:2px solid var(--green-700);background:#eaf8f1;box-shadow:0 0 0 3px #25805e21,0 6px 16px #164e391f}.facility-card-top{justify-content:space-between;align-items:center;gap:7px;margin-bottom:6px;display:flex}.facility-card-top>span:last-child{color:#84908a;font-size:11px}.facility-card-status{align-items:center;gap:5px;min-width:0;display:flex}.facility-card-flags{color:#84908a;justify-content:flex-end;align-items:center;gap:6px;min-width:0;font-size:11px;display:flex}.selected-indicator{color:#fff;background:var(--green-700);white-space:nowrap;border-radius:50%;place-items:center;width:18px;height:18px;font-size:9px;font-weight:850;display:grid}.facility-code{min-width:0;color:var(--green-900);overflow-wrap:anywhere;font-size:.9375rem;font-weight:800}.facility-card>strong{letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px;font-size:15px;display:block;overflow:hidden}.facility-card>p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0 0 6px;font-size:11px;overflow:hidden}.card-meta{color:#738079;align-items:center;gap:6px;font-size:10px;display:flex}.card-meta span{border-right:1px solid var(--line);padding-right:7px}.card-meta .due-date{color:#9d5c12;margin-left:auto;font-weight:750}.stage-badge{white-space:nowrap;border:1px solid #0000;border-radius:15px;align-items:center;gap:4px;width:fit-content;padding:4px 7px;font-size:11px;font-weight:850;display:inline-flex}.stage-badge>span{font-size:10px}.stage-survey{color:#245f90;background:#e8f3fd;border-color:#c9e2f7}.stage-consent{color:#7a5714;background:#fff3d7;border-color:#efdba9}.stage-scheduled{color:#75488d;background:#f3eafb;border-color:#ddc9eb}.stage-installed{color:#176345;background:#e0f3e9;border-color:#b8dfcb}.skeleton-card{border-bottom:1px solid var(--line);gap:8px;padding:14px;display:grid}.empty-list{color:var(--muted);text-align:center;place-items:center;gap:8px;padding:70px 20px;display:grid}.empty-list>span{font-size:36px}.empty-list strong{color:var(--ink)}.empty-list p{margin:0;font-size:12px}.map-panel{background:#e9efeb;flex-direction:column;grid-area:1/3;min-width:0;min-height:0;display:flex;position:relative}.map-toolbar{z-index:5;background:#fffffff5;flex:0 0 70px}.map-notices{align-items:center;gap:8px;display:flex}.key-notice,.visible-count{border-radius:8px;align-items:center;gap:5px;padding:6px 9px;font-size:10px;display:inline-flex}.key-notice{color:#6f4b14;background:var(--amber-soft);border:1px solid #efd9b5}.key-notice i{color:#fff;background:var(--amber);border-radius:50%;place-items:center;width:15px;height:15px;font-size:9px;font-style:normal;font-weight:900;display:grid}.visible-count{color:var(--green-800);background:var(--green-50);font-weight:750}.detail-toggle{border:1px solid var(--line-strong);min-height:31px;color:var(--green-800);background:#fff;border-radius:8px;padding:0 10px;font-size:11px;font-weight:800}.detail-toggle:hover{background:var(--green-50)}.map-surface,.map-skeleton{flex:1;min-height:0;position:relative;overflow:hidden}.map-skeleton>span{height:100%;display:block}.fallback-map{z-index:0;background-color:#e8eee9;background-image:linear-gradient(32deg,#0000 48%,#ffffffb8 49% 51%,#0000 52%),linear-gradient(121deg,#0000 49%,#ffffff7a 50%,#0000 51%),radial-gradient(circle at 25% 22%,#d9e7dc 0 8%,#0000 8.3%),radial-gradient(circle at 78% 18%,#d8e5d9 0 9%,#0000 9.3%);background-size:180px 180px,230px 230px,auto,auto;position:absolute;inset:0;overflow:hidden}.fallback-map:after{content:"서울시 개략도";color:#30463d73;letter-spacing:.08em;font-size:10px;position:absolute;bottom:18px;right:16px}.han-river{opacity:.95;background:#cfe8ef;border:15px solid #b4d9e4;border-width:15px 0;border-radius:48% 52% 40% 60%;width:116%;height:11%;position:absolute;top:55%;left:-8%;transform:rotate(-4deg)}.map-road{transform-origin:0;background:#ffffffeb;border:1px solid #ced5d1;border-radius:12px;height:7px;position:absolute;box-shadow:0 0 0 2px #ffffff59}.road-one{width:92%;top:30%;left:8%;transform:rotate(16deg)}.road-two{width:80%;top:83%;left:15%;transform:rotate(-36deg)}.road-three{width:75%;top:8%;left:48%;transform:rotate(84deg)}.district{color:#253d3380;letter-spacing:.02em;pointer-events:none;font-size:11px;font-weight:800;position:absolute}.district-nw{top:28%;left:14%}.district-n{top:14%;left:60%}.district-center{top:43%;left:43%}.district-east{top:45%;left:68%}.district-south{top:76%;left:31%}.map-marker{z-index:3;color:#fff;background:#66746d;border:3px solid #fff;border-radius:50% 50% 50% 10%;place-items:center;width:30px;height:30px;display:grid;position:absolute;transform:translate(-50%,-50%)rotate(-45deg);box-shadow:0 4px 10px #1a32284d}.map-marker>span{font-size:11px;font-weight:900;transform:rotate(45deg)}.map-marker:hover,.map-marker.is-selected{z-index:5;transform:translate(-50%,-50%)rotate(-45deg)scale(1.18)}.map-marker.is-selected{box-shadow:0 0 0 6px #25805e47,0 7px 16px #143c2e6b}.fallback-marker-label{z-index:7;border:2px solid var(--green-700);max-width:180px;color:var(--green-900);opacity:0;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;background:#fff;border-radius:9px;align-items:center;gap:5px;padding:6px 9px;font-size:11px;font-weight:900;line-height:1.2;transition:opacity .12s;display:flex;position:absolute;overflow:hidden;transform:translate(-50%,-52px);box-shadow:0 6px 18px #143c2e3d}.fallback-marker-label b{color:#fff;background:var(--green-700);border-radius:6px;padding:2px 4px;font-size:8px}.map-marker:hover+.fallback-marker-label,.fallback-marker-label.is-selected{opacity:1}.kakao-hover-label{color:#123c2d;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #176f4f;border-radius:9px;max-width:200px;padding:7px 10px;font-size:12px;font-weight:850;line-height:1.2;position:relative;overflow:hidden;box-shadow:0 6px 17px #0a2e2142}.kakao-hover-label:after{content:"";background:#fff;border-bottom:1px solid #176f4f;border-right:1px solid #176f4f;width:9px;height:9px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.kakao-selected-label{color:#123c2d;pointer-events:none;white-space:nowrap;background:#fff;border:2px solid #176f4f;border-radius:10px;align-items:center;gap:6px;max-width:220px;padding:7px 10px;display:flex;position:relative;box-shadow:0 7px 20px #0a2e2152}.kakao-selected-label:after{content:"";background:#fff;border-bottom:2px solid #176f4f;border-right:2px solid #176f4f;width:11px;height:11px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.kakao-selected-label span{color:#fff;background:#176f4f;border-radius:8px;padding:3px 5px;font-size:9px;font-weight:850}.kakao-selected-label strong{text-overflow:ellipsis;max-width:150px;font-size:12px;overflow:hidden}.kakao-selected-halo{pointer-events:none;background:#3aae7f33;border:4px solid #176f4f94;border-radius:50%;width:40px;height:40px;animation:1.5s ease-in-out infinite selected-map-pulse;transform:translateY(-18px);box-shadow:0 0 0 6px #3aae7f24}@keyframes selected-map-pulse{0%,to{opacity:.72;transform:translateY(-18px)scale(.88)}50%{opacity:1;transform:translateY(-18px)scale(1.08)}}.marker-survey{background:#347db3!important}.marker-consent{background:#d99a27!important}.marker-scheduled{background:#8e5da7!important}.marker-installed{background:#24835f!important}.kakao-map{z-index:6;opacity:0;transition:opacity .2s;position:absolute;inset:0}.kakao-map.is-ready{opacity:1}.map-loading{z-index:8;color:var(--muted);box-shadow:var(--shadow);background:#ffffffeb;border-radius:12px;place-items:center;gap:7px;padding:16px 20px;font-size:11px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-loading.map-error{color:#8a3d2b;top:16px;transform:translate(-50%)}.map-legend{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;border:1px solid #beccc4bf;border-radius:10px;flex-wrap:wrap;gap:9px;max-width:calc(100% - 32px);padding:8px 11px;display:flex;position:absolute;bottom:16px;left:16px;box-shadow:0 6px 16px #223e331f}.map-legend span{color:#56645e;align-items:center;gap:4px;font-size:9px;font-weight:700;display:flex}.legend-dot{border-radius:50%;width:8px;height:8px}.map-legend .cluster-help{color:var(--green-800);border-left:1px solid #d5dfda;padding-left:8px}.cluster-count{color:#fff;background:#176f4f;border:2px solid #fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:8px;font-style:normal;font-weight:900;display:grid;box-shadow:0 2px 6px #0a2e2140}.map-compass{width:34px;height:34px;color:var(--green-900);background:#ffffffe6;border:1px solid #c4d0ca;border-radius:50%;place-items:center;font-size:10px;font-weight:900;display:grid;position:absolute;top:18px;right:17px;box-shadow:0 3px 10px #223e3321}.map-compass:before{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-bottom:7px solid var(--green-700);width:0;height:0;position:absolute;top:4px}.detail-wrap{border-left:1px solid var(--line);background:#fff;grid-area:1/2;min-width:0;min-height:0;overflow:hidden}.detail-panel{scrollbar-width:thin;scrollbar-color:#b7c5be transparent;height:100%;overflow-y:auto}.mobile-back{display:none}.detail-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;min-height:91px;padding:17px 18px;display:flex}.detail-head h2{text-overflow:ellipsis;white-space:nowrap;max-width:245px;overflow:hidden}.detail-head p{color:var(--muted);margin:6px 0 0;font-size:12px}.detail-section-nav{z-index:5;border-bottom:1px solid var(--line);scrollbar-width:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;gap:6px;padding:8px 12px;display:flex;position:sticky;top:0;overflow-x:auto;box-shadow:0 4px 12px #19392c0d}.detail-section-nav::-webkit-scrollbar{display:none}.detail-section-nav a{border:1px solid var(--line);min-width:52px;color:var(--green-800);text-align:center;background:#f8fbf9;border-radius:8px;flex:1 0 auto;padding:7px 9px;font-size:10px;font-weight:800;text-decoration:none}.detail-section-nav a:hover,.detail-section-nav a:focus-visible{background:var(--green-50);border-color:#8fbaa5;outline:none}.detail-section{border-bottom:1px solid var(--line);padding:14px 18px;scroll-margin-top:54px}.section-title{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.section-title h3{letter-spacing:-.02em;margin:0;font-size:14px}.section-title>span{color:var(--muted);font-size:11px}.stage-track{grid-template-columns:repeat(4,1fr);margin:3px 0 13px;display:grid}.stage-track>span{color:#9da8a3;justify-items:center;gap:4px;font-size:10px;display:grid;position:relative}.stage-track>span:before{content:"";background:#dfe6e2;height:2px;position:absolute;top:10px;left:0;right:50%;transform:translate(-50%)}.stage-track>span:first-child:before{display:none}.stage-track i{z-index:1;background:#fff;border:2px solid #d5ded9;border-radius:50%;place-items:center;width:21px;height:21px;font-size:8px;font-style:normal;display:grid;position:relative}.stage-track .is-done,.stage-track .is-current{color:var(--green-800);font-weight:750}.stage-track .is-done:before,.stage-track .is-current:before{background:#76b89a}.stage-track .is-done i{color:#fff;border-color:var(--green-700);background:var(--green-700)}.stage-track .is-current i{border-color:var(--green-700);box-shadow:0 0 0 3px var(--green-100)}.stage-guidance{color:#754d11;background:#fff9ec;border:1px solid #ead3a0;border-radius:9px;gap:3px;margin:10px 0;padding:10px 11px;display:grid}.stage-guidance.is-ready{color:var(--green-800);background:#f0faf5;border-color:#9acdb5}.stage-guidance strong{font-size:10px}.stage-guidance span{font-size:11px;line-height:1.45}.stage-workflow-fields{margin:10px 0}.stage-change-control{gap:5px;margin-top:10px;display:grid}.stage-change-control .field-label{margin:0}.field-label{color:var(--muted);margin-bottom:5px;font-size:11px;font-weight:750;display:block}.detail-section select{height:40px;padding:0 11px;font-size:13px}.workflow-section{background:#fffaf0;border:1px solid #e6c67a;border-radius:12px;margin:12px}.workflow-section.is-ready{background:#f1faf6;border-color:#89c8aa}.workflow-help{color:var(--muted);margin:-3px 0 12px;font-size:11px;line-height:1.55}.workflow-fields{grid-template-columns:1fr 1fr;gap:9px;display:grid}.workflow-fields label{color:var(--muted);gap:5px;font-size:11px;font-weight:700;display:grid}.workflow-fields input{border:1px solid var(--line-strong);width:100%;height:40px;color:var(--ink);background:#fff;border-radius:9px;padding:0 10px}.workflow-status{color:#9c6514;margin-top:9px;font-size:11px;line-height:1.45;display:block}.workflow-section.is-ready .workflow-status{color:var(--green-800)}.edit-info-button{margin-left:auto;font-weight:800}.next-action-card{background:var(--green-50);border:1px solid #b8ddca;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:13px 14px 0;padding:13px 14px;display:flex}.next-action-card div{gap:3px;display:grid}.next-action-card span{color:var(--green-700);font-size:9px;font-weight:800}.next-action-card strong{font-size:12px}.next-action-card time{color:#895415;background:var(--amber-soft);border-radius:7px;padding:5px 7px;font-size:10px;font-weight:750}.memo-empty{color:var(--muted);align-items:center;gap:7px;margin:9px 18px 0;display:flex}.memo-empty span{color:var(--green-700);font-size:9px;font-weight:800}.memo-empty small{font-size:10px}.info-list{gap:10px;margin:0;display:grid}.info-list>div{grid-template-columns:64px 1fr;gap:8px;display:grid}.info-list dt{color:var(--muted);font-size:10px}.info-list dd{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:11px;line-height:1.45;display:flex}.info-list dd a{margin-left:5px;font-size:10px}.info-list .text-button{margin-left:auto}.metric-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.metric{border:1px solid var(--line);background:#fafcfb;border-radius:9px;grid-template-rows:auto auto;grid-template-columns:1fr auto;padding:10px;display:grid}.metric span{color:var(--muted);font-size:9px}.metric strong{grid-area:1/2/span 2;align-self:center;font-size:18px}.metric small{color:#9aa49f;margin-top:3px;font-size:8px}.unit-note{background:#edf2ef;border-radius:5px;padding:3px 6px}.feasibility-line{background:#f3f6f4;border-radius:8px;align-items:center;gap:7px;margin-top:9px;padding:9px 10px;font-size:10px;display:flex}.feasibility-line>span:first-child{color:var(--muted)}.feasibility-line>span:last-child{color:var(--green-700);margin-left:auto}.photo-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.photo-tile{aspect-ratio:1/1.08;background:#f5f8f6;border:1px dashed #b9c7c0;border-radius:9px;min-width:0;position:relative;overflow:hidden}.photo-tile img{object-fit:cover;width:100%;height:100%}.photo-preview-button{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;overflow:hidden}.photo-preview-button span{color:#fff;opacity:0;background:#0b231bb8;border-radius:6px;padding:4px 6px;font-size:8px;font-weight:800;transition:opacity .15s;position:absolute;top:6px;right:6px}.photo-preview-button:hover span,.photo-preview-button:focus-visible span{opacity:1}.photo-placeholder{color:#728079;text-align:center;align-content:center;place-items:center;gap:3px;height:100%;padding:6px;display:grid}.photo-placeholder>span{font-size:19px}.photo-placeholder b{font-size:9px}.photo-placeholder small{display:none}.photo-action{color:#fff;cursor:pointer;background:#143c2edb;border-radius:6px;place-items:center;min-height:24px;font-size:8px;font-weight:750;display:grid;position:absolute;inset:auto 4px 4px}.timeline{gap:0;margin:0;padding:0;list-style:none;display:grid}.timeline li{grid-template-columns:14px 1fr;gap:8px;padding-bottom:14px;display:grid;position:relative}.timeline li:last-child{padding-bottom:0}.timeline li:before{content:"";background:var(--line);width:1px;position:absolute;top:11px;bottom:-1px;left:5px}.timeline li:last-child:before{display:none}.timeline li>i{background:var(--green-700);border:3px solid #b9ddca;border-radius:50%;width:11px;height:11px;margin-top:2px}.timeline strong{font-size:11px}.timeline p{color:var(--muted);margin:3px 0;font-size:10px}.timeline small{color:#96a19b;font-size:9px}.empty-detail{color:var(--muted);text-align:center;align-content:center;place-items:center;gap:8px;padding:30px;display:grid}.empty-detail h2{color:var(--ink);margin:0;font-size:16px}.empty-detail p{max-width:250px;margin:0;font-size:11px;line-height:1.6}.empty-illustration{width:60px;height:60px;color:var(--green-700);background:var(--green-50);border-radius:50%;place-items:center;font-size:30px;display:grid}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0c1d1794;place-items:center;padding:24px;animation:.15s fade-in;display:grid;position:fixed;inset:0}.wizard{background:#fff;border:1px solid #ffffff8c;border-radius:18px;flex-direction:column;width:min(720px,100%);max-height:min(860px,100dvh - 48px);display:flex;overflow:hidden;box-shadow:0 30px 80px #071c1459}.wizard-head{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;min-height:76px;padding:16px 22px;display:flex}.wizard-head h2{letter-spacing:-.035em;margin:0;font-size:20px}.icon-button{width:42px;height:42px;color:var(--muted);background:#f0f4f2;border:0;border-radius:10px;font-size:25px}.wizard-steps{border-bottom:1px solid var(--line);background:#fafcfb;flex:none;grid-template-columns:repeat(4,1fr);margin:0;padding:13px 26px;list-style:none;display:grid}.wizard-steps li{color:#9ba59f;justify-content:center;align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex;position:relative}.wizard-steps li:before{content:"";background:#d7dfdb;height:1px;position:absolute;left:-38%;right:62%}.wizard-steps li:first-child:before{display:none}.wizard-steps i{z-index:1;background:#fff;border:1px solid #d1dad5;border-radius:50%;place-items:center;width:25px;height:25px;font-size:10px;font-style:normal;display:grid;position:relative}.wizard-steps .is-done,.wizard-steps .is-current{color:var(--green-800)}.wizard-steps .is-done:before,.wizard-steps .is-current:before{background:#65ab8b}.wizard-steps .is-done i{color:#fff;border-color:var(--green-700);background:var(--green-700)}.wizard-steps .is-current i{border:2px solid var(--green-700);box-shadow:0 0 0 3px var(--green-100)}.wizard-body{flex:1;min-height:0;padding:20px 26px 25px;overflow-y:auto}.form-step{gap:15px;display:grid}.step-intro{align-items:center;gap:12px;margin-bottom:2px;display:flex}.step-intro>span{color:#fff;background:var(--green-800);border-radius:12px;flex:none;place-items:center;width:39px;height:39px;font-size:17px;font-weight:850;display:grid}.step-intro h3{letter-spacing:-.03em;margin:0 0 3px;font-size:17px}.step-intro p{color:var(--muted);margin:0;font-size:11px}.form-step label{color:#4d5a54;gap:6px;font-size:11px;font-weight:750;display:grid}.form-step label>span em,.draft-photo em{color:var(--red);margin-left:4px;font-size:9px;font-style:normal}.form-step input,.form-step select{outline:0;height:45px;padding:0 12px}.form-step textarea{resize:vertical;min-height:80px;padding:11px 12px}.form-step input:focus,.form-step select:focus,.form-step textarea:focus{box-shadow:0 0 0 3px var(--green-100);border-color:#64a98a}.field-grid{gap:12px;display:grid}.field-grid.two{grid-template-columns:1fr 1fr}.address-row{grid-template-columns:1fr auto;gap:8px;display:grid}.address-row .secondary-button{min-height:45px}.success-note{color:var(--green-800);background:var(--green-50);border-radius:8px;margin:-4px 0 0;padding:9px 11px;font-size:11px;font-weight:700}.address-search-button{min-width:92px}.address-search-results{background:#f4faf7;border:1px solid #a7cdb9;border-radius:10px;gap:7px;padding:9px;display:grid}.address-search-results button{border:1px solid var(--line);color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:8px;gap:4px;padding:10px 11px;display:grid}.address-search-results button:hover,.address-search-results button:focus-visible{border-color:var(--green-700);box-shadow:0 0 0 2px #25805e1f}.address-search-results strong{font-size:12px}.address-search-results small{color:var(--muted);font-size:10px}.address-confirmed{color:var(--green-800);background:var(--green-50);border:1px solid #acd8bf;border-radius:9px;gap:4px;margin:0;padding:9px 11px;font-size:11px;font-weight:800;display:grid}.address-confirmed small{color:#5d776b;font-size:10px;font-weight:600}.field-help{color:var(--muted);font-size:10px;font-weight:500;line-height:1.5}.address-entry-block{background:#f7fbf9;border:1px solid #bdd8ca;border-radius:12px;gap:10px;padding:14px;display:grid}.address-entry-heading{color:#4d5a54;gap:4px;font-size:11px;font-weight:750;display:grid}.address-entry-heading em{color:var(--red);margin-left:4px;font-size:9px;font-style:normal}.address-entry-heading small{color:var(--muted);font-size:10px;font-weight:500;line-height:1.5}.form-step input[readonly]{color:#405249;cursor:default;background:#f5f8f6;border-color:#d5dfda}.form-step input[readonly]:focus{box-shadow:none;border-color:#d5dfda}.address-derived-fields label>span:after{content:" · 검색 결과";color:#8a9790;font-size:9px;font-weight:500}.registration-address-search{gap:10px;display:grid}.registration-address-search>.address-search-button{color:#fff;border-color:var(--green-800);background:var(--green-800);justify-self:start;min-width:132px;min-height:44px}.registration-address-search>.address-search-button:hover,.registration-address-search>.address-search-button:focus-visible{background:#164c39}.address-search-panel{background:#f6fbf8;border:1px solid #9ecab3;border-radius:12px;gap:12px;padding:14px;display:grid;box-shadow:0 12px 30px #1444311a}.address-search-panel>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.address-search-panel h4{color:var(--ink);margin:2px 0 0;font-size:14px}.address-search-controls{grid-template-columns:1fr auto;gap:8px;display:grid}.address-search-controls input{outline:0;min-width:0;height:45px;padding:0 12px}.address-search-controls input:focus{box-shadow:0 0 0 3px var(--green-100);border-color:#64a98a}.address-search-controls button{min-height:45px}.address-search-status,.address-search-message{margin:0}.registration-address-group{gap:14px;display:grid}.facility-category-field{align-content:start;gap:10px;min-width:0;display:grid}.registration-address-group .address-confirmed-compact{color:var(--green-800);margin:0;font-size:.875rem;font-weight:700}.registration-address-district{color:var(--muted);flex-wrap:wrap;gap:6px 12px;margin:0;font-size:.875rem;display:flex}.registration-address-district strong{color:var(--ink);font-weight:500}.registration-address-search .address-search-results{max-height:260px;overflow-y:auto}.registration-address-search .address-search-results article{border:1px solid var(--line);background:#fff;border-radius:9px;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:11px;display:grid}.registration-address-search .address-search-results article>div{gap:4px;min-width:0;display:grid}.registration-address-search .address-search-results article button{min-height:38px}.address-selection-complete{color:var(--green-800);background:var(--green-50);border:1px solid #9dcfb4;border-radius:12px;grid-template-columns:minmax(0,1fr) 190px;gap:12px;padding:12px;display:grid}.address-selection-complete>div:first-child{align-content:center;gap:5px;min-width:0;display:grid}.address-selection-complete span,.address-selection-complete small{overflow-wrap:anywhere;color:#526d60;font-size:10px}.address-location-preview{background:linear-gradient(145deg,#e5f1e9,#f8fbf9);border:1px solid #a9cdbb;border-radius:9px;min-height:96px;position:relative;overflow:hidden}.address-preview-river{background:#b9dce7;height:15px;position:absolute;top:53%;left:-10%;right:-10%;transform:rotate(-7deg)}.address-preview-label{color:#587367;font-size:9px;font-weight:700;position:absolute;top:7px;left:8px}.address-preview-marker{color:#d6453d;text-shadow:0 2px 5px #5a141040;font-size:19px;line-height:1;position:absolute;transform:translate(-50%,-50%)}.measurement-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.unit-input{position:relative}.unit-input input{padding-right:45px;font-size:18px;font-weight:750}.unit-input b{color:var(--muted);font-size:11px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.draft-photo-list{gap:10px;display:grid}.draft-photo{cursor:pointer;background:#f7faf8;border:1px dashed #aebdb5;border-radius:12px;grid-template-columns:90px 1fr;align-items:center;min-height:98px;padding:7px;position:relative;overflow:hidden;gap:14px!important;display:grid!important}.draft-photo:hover{border-color:var(--green-700);background:var(--green-50)}.draft-photo img,.draft-photo-icon{object-fit:cover;border-radius:8px;width:90px;height:82px}.draft-photo-icon{color:var(--green-700);background:#e5f1ea;place-items:center;font-size:31px;display:grid}.draft-photo>span:nth-child(2){gap:7px;min-width:0;padding-right:12px;display:grid}.draft-photo b{color:var(--ink);font-size:13px}.draft-photo small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.draft-photo input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.draft-photo.has-file{background:var(--green-50);border-style:solid;border-color:#79b99b}.review-card{border:1px solid var(--line);background:var(--line);border-radius:12px;grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.review-card>div{background:#fafcfb;gap:4px;min-width:0;padding:13px;display:grid}.review-card span{color:var(--green-700);font-size:9px;font-weight:800}.review-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.review-card small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.form-error{color:#913c37;background:#fff0ef;border:1px solid #edc0bd;border-radius:9px;margin:14px 0 0;padding:10px 12px;font-size:11px}.wizard-foot{border-top:1px solid var(--line);background:#fafcfb;flex:none;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;min-height:68px;padding:11px 22px;display:grid}.wizard-foot>button:first-child{justify-self:start}.wizard-foot>button:last-child{justify-self:end}.wizard-foot>span{color:var(--muted);font-size:10px}.wizard-foot .primary-button{color:#fff;border-color:var(--green-800);background:var(--green-800)}.toast{z-index:150;color:#fff;max-width:min(520px,100% - 32px);box-shadow:var(--shadow);opacity:0;pointer-events:none;background:#173c2f;border-radius:10px;padding:11px 16px;font-size:12px;font-weight:700;transition:opacity .2s,transform .2s;position:fixed;bottom:22px;left:50%;transform:translate(-50%,16px)}.toast.is-visible{opacity:1;transform:translate(-50%)}.mobile-nav{display:none}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (width<=1580px){.app-header{grid-template-columns:minmax(220px,1fr) minmax(240px,440px) max-content;gap:10px;padding-inline:18px}.header-actions{gap:6px}.app-header .primary-button,.app-header .secondary-button{padding-inline:11px}.role-chip{min-width:46px;padding-inline:7px}}@media (width<=1240px){.app-header{grid-template-columns:250px minmax(250px,1fr) auto;gap:16px;padding:0 18px}.workspace{grid-template-columns:310px 350px minmax(420px,1fr)}.workspace[data-detail-open=false]{grid-template-columns:310px 0 minmax(420px,1fr)}.kpi-strip article{padding-inline:14px}.kpi-strip article>small{display:none}.detail-head h2{max-width:210px}}@media (width<=1180px){.app-shell{min-height:560px;padding-bottom:68px}.app-header{flex-basis:64px;grid-template-columns:auto 1fr auto;gap:10px;height:64px;padding:0 13px}.brand-mark{width:36px;height:36px}.brand div{display:none}.global-search{min-width:0;height:42px}.header-actions .primary-button,.export-button span{display:none}.header-actions .export-button{width:42px;min-width:42px;padding:0}.header-more summary{justify-content:center;width:42px;padding:0}.header-more-label{display:none}.sample-banner{justify-content:flex-start;padding:8px 13px}.sample-banner p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sample-banner p strong{display:none}.kpi-strip{scrollbar-width:none;gap:0;min-height:76px;padding:9px 4px;display:flex;overflow-x:auto}.kpi-strip::-webkit-scrollbar{display:none}.kpi-strip article{min-width:125px;padding:2px 14px}.kpi-strip article>strong{font-size:23px}.workspace{min-height:0;display:block;position:relative;overflow:hidden}.workspace[data-detail-open=false] .detail-wrap{visibility:visible;pointer-events:auto}.list-panel,.map-panel,.detail-wrap{border:0;display:none;position:absolute;inset:0}.workspace[data-mobile-view=list] .list-panel{grid-area:1/1;display:flex}.workspace[data-mobile-view=map] .map-panel{display:flex}.workspace[data-mobile-view=detail] .detail-wrap{display:block}.panel-head,.map-toolbar{min-height:62px;padding:10px 14px}.panel-head h1,.map-toolbar h2{font-size:18px}.map-notices .visible-count{display:none}.key-notice{text-overflow:ellipsis;white-space:nowrap;max-width:190px;overflow:hidden}.detail-toggle{display:none}.filters.is-admin{grid-template-columns:1fr 1fr;gap:7px}.facility-list{padding:0 10px 18px}.facility-card{min-height:0;padding:11px 12px}.facility-card>strong{font-size:15px}.detail-wrap{background:#fff;overflow:auto}.detail-panel{height:auto;padding-top:42px;overflow:visible}.mobile-back{z-index:4;border:0;border-bottom:1px solid var(--line);height:42px;color:var(--green-800);text-align:left;background:#fff;padding:0 14px;font-size:11px;font-weight:800;display:block;position:absolute;top:0;left:0;right:0}.detail-head h2{max-width:calc(100vw - 150px)}.detail-section-nav{top:42px}.detail-section{padding:14px 16px;scroll-margin-top:96px}.next-action-card{margin-inline:12px}.memo-empty{margin-inline:16px}.photo-placeholder small{font-size:8px;display:block}.mobile-nav{z-index:50;height:calc(68px + env(safe-area-inset-bottom));padding:7px 10px env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff7;grid-template-columns:1fr 1fr 1.25fr;align-items:start;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #19392c1a}.mobile-nav button{color:#748079;background:0 0;border:0;border-radius:10px;align-content:center;place-items:center;gap:2px;min-height:52px;font-size:10px;font-weight:750;display:grid}.mobile-nav button>span{font-size:21px}.mobile-nav button.is-active{color:var(--green-800);background:var(--green-50)}.mobile-nav .register-nav{color:#fff;background:var(--green-800);flex-direction:row;gap:5px;font-size:11px;display:flex}.mobile-nav .register-nav>span{font-size:19px}.toast{bottom:82px}}@media (width<=640px){.modal-backdrop{place-items:end stretch;padding:0}.wizard{border:0;border-radius:0;width:100%;height:100dvh;max-height:none}.wizard-head{min-height:66px;padding:12px 15px}.wizard-head h2{font-size:18px}.wizard-steps{padding:10px 12px}.wizard-steps li{gap:4px;font-size:9px}.wizard-steps li:before{left:-30%;right:70%}.wizard-body{padding:17px 16px 22px}.step-intro h3{font-size:16px}.field-grid.two,.measurement-grid,.address-row{grid-template-columns:1fr}.address-row .secondary-button{min-height:44px}.address-search-controls,.address-selection-complete{grid-template-columns:1fr}.registration-address-search>.address-search-button,.address-search-controls button{width:100%}.registration-address-search .address-search-results article{grid-template-columns:1fr}.registration-address-search .address-search-results article button{width:100%}.address-location-preview{min-height:110px}.draft-photo{grid-template-columns:78px 1fr;min-height:92px}.draft-photo img,.draft-photo-icon{width:78px;height:76px}.review-card{grid-template-columns:1fr}.wizard-foot{min-height:66px;padding:9px 14px}.wizard-foot button{min-height:46px}.map-legend{gap:7px;bottom:12px}.district{font-size:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.home-hero-case{opacity:1;display:none;animation:none!important}.home-hero-case:first-child{display:grid}.home-hero-panel{transform:none;animation:none!important}.home-case-pair{opacity:1;display:none;transform:none;animation:none!important}.home-case-pair:first-child{display:grid}.home-case-progress span{animation:none!important}.home-motion-toggle{display:none}}.basic-edit-dialog{width:min(780px,100%)}.edit-form{gap:14px}.edit-section-title{border-bottom:1px solid var(--line);color:var(--green-800);margin:4px 0 -2px;padding-bottom:9px;font-size:14px}.edit-foot>span{text-align:center}@media (width<=720px){.workflow-fields{grid-template-columns:1fr}.edit-foot>span{display:none}}.memo-card{align-items:flex-start}.memo-card div{width:100%}.memo-card strong{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.photo-lightbox{z-index:500;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#05120dd1;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.photo-lightbox-dialog{background:#111814;border-radius:16px;grid-template-rows:minmax(0,1fr) auto;width:min(1000px,92vw);max-height:92dvh;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 90px #0000008c}.photo-lightbox-dialog>img{object-fit:contain;background:#07100c;width:100%;max-height:calc(92dvh - 62px)}.photo-lightbox-close{z-index:2;color:#fff;cursor:pointer;background:#0009;border:1px solid #ffffff61;border-radius:50%;place-items:center;width:42px;height:42px;font-size:27px;display:grid;position:absolute;top:12px;right:12px}.photo-lightbox-caption{color:#fff;background:#122019;align-items:center;gap:12px;min-width:0;padding:14px 18px;display:flex}.photo-lightbox-caption strong{font-size:14px}.photo-lightbox-nav{z-index:2;color:#fff;cursor:pointer;background:#000000b8;border:1px solid #b7c8bf;border-radius:12px;width:48px;height:56px;font-size:38px;line-height:1;position:absolute;top:calc(50% - 30px)}.photo-lightbox-prev{left:12px}.photo-lightbox-next{right:12px}.photo-lightbox-nav:hover{background:#315e47}.photo-lightbox button:focus-visible{outline-offset:3px;outline:3px solid #fff}.photo-lightbox-caption strong{flex-shrink:0}.photo-lightbox-caption span{color:#b7c8bf;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;overflow:hidden}@media (width<=720px){.photo-preview-button span{opacity:1}.photo-lightbox{padding:12px}.photo-lightbox-dialog{border-radius:12px;width:100%;max-height:94dvh}.photo-lightbox-dialog>img{max-height:calc(94dvh - 58px)}.photo-lightbox-close{width:38px;height:38px;top:8px;right:8px}}.bulk-import-dialog{width:min(1040px,100vw - 30px)}.bulk-import-body{gap:12px;min-height:0;padding:18px 22px;display:grid;overflow:auto}.bulk-guide{border:1px solid var(--line);background:#f8fbf9;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;display:flex}.bulk-guide>div{align-items:center;gap:10px;min-width:0;display:flex}.bulk-guide b{color:#fff;background:var(--green-700);border-radius:8px;flex:none;place-items:center;width:28px;height:28px;display:grid}.bulk-guide span{gap:3px;min-width:0;display:grid}.bulk-guide strong{font-size:12px}.bulk-guide small{color:var(--muted);font-size:10px}.bulk-file{color:var(--green-900);background:var(--green-50);border:1px solid #acd8bf;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.bulk-file strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.bulk-file span{color:#567365;font-size:10px}.bulk-table-wrap{border:1px solid var(--line);border-radius:11px;max-height:390px;overflow:auto}.bulk-table{border-collapse:collapse;background:#fff;width:100%;min-width:960px;font-size:.875rem}.bulk-table th{z-index:1;color:#53635c;text-align:left;background:#f2f6f4;padding:9px 10px;position:sticky;top:0}.bulk-table td{vertical-align:top;border-top:1px solid #e6ece8;padding:9px 10px}.bulk-table td:first-child{width:42px}.bulk-table td:nth-child(2){white-space:nowrap;font-variant-numeric:tabular-nums;min-width:120px}.bulk-table td:nth-child(3){min-width:100px}.bulk-table td:nth-child(4),.bulk-table td:nth-child(5){min-width:170px}.bulk-table td:nth-child(6){min-width:80px}.bulk-table td:last-child{min-width:180px}.bulk-table td small{font-size:inherit;margin-top:4px;display:block}.client-card-dates{border-top:1px solid var(--line);gap:8px;margin-top:10px;padding:12px 0;font-size:.875rem;display:grid}.client-card-dates>span{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.client-card-dates>span>:first-child{color:var(--muted)}.client-card-dates b{color:var(--green-700);font-size:1rem}.client-card-dates>span>:last-child{font-variant-numeric:tabular-nums}.client-schedule-detail{gap:14px;margin:20px 0 12px;display:grid}.client-schedule-detail>div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.client-schedule-detail dt{color:var(--muted);font-size:.875rem}.client-schedule-detail dd{font-variant-numeric:tabular-nums;margin:0;font-size:1rem;font-weight:700}.client-report-tools{gap:8px;padding:4px 16px 14px;display:grid}.client-report-tools .secondary-button{width:100%;min-height:44px;font-size:.875rem}.client-report-tools small{color:var(--muted);font-size:.875rem;line-height:1.5}.bulk-table tr.bulk-ready td:last-child span{color:var(--green-700)}.bulk-table tr.bulk-saved{background:#eef9f3}.bulk-table tr.bulk-duplicate{background:#fff8e8}.bulk-table tr.bulk-error{background:#fff2f1}.bulk-table tr.bulk-saving{background:#eef6ff}@media (width<=720px){.bulk-import-body{padding:14px}.bulk-guide,.bulk-file{flex-direction:column;align-items:stretch}.bulk-guide button{width:100%}.bulk-file span{line-height:1.5}}.role-chip{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-width:52px;padding:6px 9px;font-size:10px;font-weight:850;display:inline-flex}.role-admin{color:#fff;background:#176f4f}.role-investigator{color:#17577f;background:#dceffc}.role-client{color:#785112;background:#fff0ca}.review-badge{white-space:nowrap;border-radius:999px;align-items:center;width:fit-content;padding:4px 8px;font-size:9px;font-weight:850;display:inline-flex}.review-draft{color:#4f5d57;background:#edf1ef}.review-submitted{color:#17577f;background:#dceffc}.review-revision{color:#8a4b13;background:#fff0d7}.review-approved{color:#176345;background:#dff3e9}.review-section{background:#f7fbf9;border-color:#c7ded2}.review-comment{color:#5b4027;background:#fff8ee;border-left:3px solid #d47b28;border-radius:6px;gap:4px;margin:0 0 10px;padding:10px;font-size:11px;line-height:1.5;display:grid}.review-preview-note{color:#52655c;background:#f1f5f3;border-radius:8px;margin:0 0 10px;padding:9px 10px;font-size:10px;line-height:1.55}.review-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.role-dialog{width:min(980px,100vw - 30px)}.facility-deletion-dialog{font-size:16px}.facility-deletion-body{overflow-wrap:anywhere}.facility-deletion-body p{margin:0;line-height:1.6}.deletion-facility-list{gap:12px;display:grid}.deletion-facility-list article{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:14px;padding:16px;display:flex}.deletion-facility-list article>div{flex:240px;min-width:0}.deletion-facility-list article p{color:var(--muted);margin-top:6px;font-size:14px}.deletion-target{background:#fff5f3;border:1px solid #e5a19a;border-radius:12px;padding:16px}.deletion-confirmation{gap:12px;display:grid}.deletion-confirmation input{width:100%;min-height:48px;font:inherit;padding:12px}.deletion-result{color:#185d43;background:#eef7f1;border-radius:12px;padding:14px}.facility-deletion-dialog .wizard-foot{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.facility-deletion-dialog .wizard-foot>button:first-child{margin-right:auto}.facility-deletion-dialog .wizard-foot .danger-text-button{color:#fff;background:brown;border-color:brown}.operations-dialog{width:min(920px,100vw - 32px)}.operations-body{gap:16px;display:grid}.operations-error{justify-items:start;gap:10px;display:grid}.operations-error .form-error{margin:0}.operations-summary{color:#185d43;background:#eef7f1;border-radius:16px;justify-content:space-between;gap:16px;padding:16px 18px;display:flex}.operations-summary.needs-attention{color:#825b0b;background:#fff8e8}.operations-summary span{font-size:13px}.operations-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.operations-grid article{background:#fff;border:1px solid #dfe8e2;border-radius:14px;gap:5px;padding:15px;display:grid}.operations-grid article>span,.operations-grid small{color:#708078;font-size:12px}.operations-grid strong{font-size:24px}.operations-section{background:#fff;border:1px solid #dfe8e2;border-radius:14px;padding:16px}.operations-section>p{color:#66756e;margin:8px 0 0}.storage-usage.watch{background:#fffaf0;border-color:#e6c76f}.storage-usage.warning{background:#fff5f3;border-color:#e5a19a}.storage-usage-row{justify-content:space-between;align-items:baseline;gap:12px;margin-top:12px;display:flex}.storage-usage-row strong{font-size:22px}.storage-usage-row span{color:#66756e;font-size:12px}.storage-meter{background:#e7eeea;border-radius:999px;height:8px;margin-top:8px;overflow:hidden}.storage-meter span{border-radius:inherit;background:#2e8966;height:100%;display:block}.storage-usage.watch .storage-meter span{background:#c48a12}.storage-usage.warning .storage-meter span{background:#c74d43}.storage-watch-message{color:#825b0b!important}.operations-list{gap:8px;max-height:210px;margin-top:10px;display:grid;overflow:auto}.operations-list>div,.cleanup-task{background:#f6f9f7;border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;padding:10px 12px;display:grid}.operations-list span,.operations-list small{color:#708078;grid-column:1;font-size:12px}.cleanup-task>div{gap:3px;display:grid}.cleanup-task small{color:#708078}.operations-section.compact{justify-content:space-between;gap:18px;display:flex}@media (width<=760px){.operations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-summary,.operations-section.compact{display:grid}}.role-body{gap:13px;min-height:0;padding:18px 22px;display:grid;overflow:auto}.role-add{border:1px solid var(--line);background:#f8fbf9;border-radius:12px;align-items:end;gap:10px;padding:14px;display:flex}.role-add>div{flex:1;grid-template-columns:.8fr 1.35fr .75fr .75fr .9fr;gap:9px;min-width:0;display:grid}.role-section-title{grid-column:1/-1;margin:0;font-size:12px}.role-add label{color:var(--muted);gap:5px;font-size:10px;font-weight:750;display:grid}.legacy-accounts{background:#f3faf6;border:1px solid #bcd7c9;border-radius:12px;gap:10px;padding:14px;display:grid}.legacy-accounts h3{margin:0 0 3px;font-size:13px}.legacy-accounts p{color:var(--muted);margin:0;font-size:10px}.legacy-list{gap:7px;display:grid}.legacy-list article{background:#fff;border-radius:9px;grid-template-columns:minmax(170px,1.2fr) 70px minmax(110px,.8fr) 100px 100px;align-items:center;gap:8px;padding:9px;display:grid}.legacy-list article>div{gap:2px;min-width:0;display:grid}.legacy-list strong,.legacy-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.legacy-list small,.legacy-list span{color:var(--muted);font-size:9px}.legacy-list article.is-inactive{opacity:.58}.claim-summary{background:#f2f6f4;border-radius:9px;gap:3px;padding:10px;display:grid}.claim-summary small{color:var(--muted)}.role-help{flex-wrap:wrap;gap:8px;display:flex}.role-help span{color:#5b6862;background:#f2f6f4;border-radius:8px;padding:7px 9px;font-size:9px}.role-help b{color:var(--ink)}.role-list{gap:7px;display:grid}.role-list article{border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(150px,1fr) 112px 90px 130px 88px 62px;align-items:center;gap:8px;padding:10px 11px;display:grid}.role-list article>div{gap:3px;min-width:0;display:grid}.role-list strong,.role-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.role-list strong{font-size:11px}.role-list small{color:var(--muted);font-size:9px}.role-list article.is-inactive{opacity:.55;background:#f4f4f4}@media (width<=720px){.role-body{padding:14px}.role-add{flex-direction:column;align-items:stretch}.role-add>div{grid-template-columns:1fr}.legacy-list article{grid-template-columns:1fr 1fr}.legacy-list article>div{grid-column:1/-1}.role-list article{grid-template-columns:1fr 1fr}.role-list article>div{grid-column:1/-1}.role-list article>.role-chip{display:none}}.role-preview{color:#ffffffd1;border:1px solid #ffffff47;border-radius:9px;align-items:center;gap:6px;padding:4px 5px 4px 9px;font-size:9px;font-weight:750;display:inline-flex}.role-preview select{color:#173e30;background:#fff;border:0;border-radius:6px;min-width:104px;height:31px;padding:0 25px 0 8px;font-size:10px;font-weight:800}@media (width<=980px){.role-preview span{display:none}.role-preview{padding-left:5px}}.section-actions{align-items:center;gap:12px;display:inline-flex}.danger-text-button{color:var(--red)}.danger-text-button:hover{color:#8f2f2a}.danger-zone{background:#fff8f7;border-color:#efd0cd;justify-content:space-between;align-items:center;gap:16px;display:flex}.danger-zone>div{min-width:0}.danger-zone strong{color:#8f2f2a;font-size:12px}.danger-zone p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.45}.danger-button{color:#8f2f2a;background:#fff;border-color:#dba6a1;flex:none}@media (width<=720px){.version-banner{flex-direction:column;align-items:stretch;gap:7px}.version-banner>div{gap:2px;display:grid}}.field-request-panel{border:1px solid var(--line);background:var(--paper);border-radius:14px;margin:8px 18px 10px;padding:14px 16px;box-shadow:0 4px 14px #183b2e14}.field-request-head,.field-request-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.field-request-head h2{margin:3px 0;font-size:20px}.field-request-head p,.field-request-list p{color:var(--muted);margin:0}.field-request-actions strong{white-space:nowrap;color:var(--green-800)}.field-request-form{background:var(--canvas);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;padding:16px;display:grid}.field-request-form label{gap:6px;font-size:13px;font-weight:700;display:grid}.field-request-form input,.field-request-form textarea{width:100%}.field-request-details{grid-column:1/-1}.field-request-form>button{grid-column:1/-1;justify-self:end}.field-request-list{gap:10px;margin-top:14px;display:grid}.field-request-list article{border:1px solid var(--line);border-radius:13px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) auto;align-items:center;gap:16px;padding:13px 14px;display:grid}.field-request-list article strong{margin:4px 0 2px;display:block}.field-request-list small{color:var(--muted)}.field-request-row-actions{justify-items:end;gap:7px;display:grid}.field-request-row-actions .danger-text-button{font-size:11px}.request-status{border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800;display:inline-flex}.request-status.pending{color:#915d00;background:#fff3d6}.request-status.converted{color:#176b3a;background:#e5f6eb}.field-request-panel.is-empty:not(.is-form-open){margin-block:6px;padding:8px 14px}.field-request-panel.is-empty:not(.is-form-open) .field-request-head>div:first-child{align-items:center;gap:9px;display:flex}.field-request-panel.is-empty:not(.is-form-open) .eyebrow,.field-request-panel.is-empty:not(.is-form-open) .field-request-head p{display:none}.field-request-panel.is-empty:not(.is-form-open) .field-request-head h2{margin:0;font-size:13px}.field-request-panel.is-empty:not(.is-form-open) .field-request-actions strong{font-size:12px}.field-request-panel.is-empty:not(.is-form-open) .field-request-actions .primary-button{min-height:34px;padding-inline:12px;font-size:12px}.client-kpi-strip{grid-template-columns:repeat(9,minmax(112px,1fr));overflow-x:auto}.client-kpi-strip article{padding-inline:13px}.client-progress-survey{color:#355f78;background:#e7f2f8}.client-progress-review{color:#7c5610;background:#fff1d1}.client-progress-approved{color:#176345;background:#dff3e9}.client-progress-consent{color:#5b4c96;background:#eeeafd}.client-progress-scheduled{color:#3d5fa8;background:#e7edfb}.client-progress-installed{color:#174f3b;background:#d8eee5}@media (width<=760px){.field-request-panel{margin:0 12px 12px;padding:15px}.field-request-panel.is-empty:not(.is-form-open){margin:6px 12px}.field-request-head,.field-request-actions{align-items:flex-start}.field-request-form{grid-template-columns:1fr}.field-request-details,.field-request-form>button{grid-column:auto}.field-request-list article{grid-template-columns:1fr}.field-request-row-actions{justify-items:stretch}}.app-shell .eyebrow{letter-spacing:.03em;font-size:.75rem}.app-shell .primary-button,.app-shell .secondary-button{min-height:44px;font-size:.875rem}.global-search input{font-size:1rem}.header-more-menu button{min-height:44px;font-size:.875rem}.role-preview select{height:36px;font-size:.875rem}.role-preview-banner{color:var(--green-950);background:#eef8f3;border-bottom:1px solid #c5ddd1;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;display:flex}.role-preview-banner p{gap:3px;margin:0;font-size:.875rem;display:grid}.role-preview-banner p span{color:#405b4e;font-size:.8125rem}.role-preview-banner .secondary-button{flex-shrink:0}.kpi-strip{overflow-x:auto}.kpi-strip article>span{font-size:.8125rem}.kpi-strip article>small{color:var(--muted);font-size:.75rem}.filters select,.filters.is-admin select{height:44px;font-size:.875rem}.result-summary{height:auto;min-height:44px;font-size:.8125rem}.result-summary .text-button{min-height:44px;font-size:.8125rem}.facility-card{margin-bottom:9px;padding:14px}.facility-card-flags{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:7px}.selected-indicator{width:auto;height:auto;color:var(--green-900);background:#d6eddf;border-radius:6px;flex-shrink:0;padding:3px 7px;font-size:.75rem}.facility-card>strong{white-space:normal;overflow-wrap:anywhere;margin-bottom:5px;font-size:1.125rem;line-height:1.4}.facility-card>p{white-space:normal;overflow-wrap:anywhere;font-size:.875rem;line-height:1.5}.facility-card-top{margin:10px 0}.facility-card-status{flex-wrap:wrap;gap:8px 12px}.card-state{align-items:center;gap:5px;display:inline-flex}.card-state-label{color:var(--muted);font-size:.75rem}.card-meta{flex-wrap:wrap;font-size:.8125rem}.app-shell .status-badge,.app-shell .stage-badge,.review-badge,.client-progress-badge{font-size:.8125rem}.detail-facility-code{color:var(--green-900);overflow-wrap:anywhere;margin-bottom:6px;font-size:1rem;font-weight:800;display:block}.detail-head{flex-wrap:wrap}.detail-head>div{flex:210px;min-width:0}.detail-head h2{white-space:normal;overflow-wrap:anywhere;max-width:none;font-size:1.375rem;line-height:1.4}.detail-head p,.section-title>span,.info-list dt,.metric span{font-size:.875rem}.section-title{flex-wrap:wrap}.section-title h3{font-size:1.0625rem}.detail-section-nav{gap:6px}.detail-section-nav a{min-width:0;min-height:44px;padding:8px 4px;font-size:.875rem}.detail-section .text-button{min-height:36px;font-size:.875rem}.info-list>div{grid-template-columns:72px minmax(0,1fr)}.info-list dd,.info-list dd a{overflow-wrap:anywhere;font-size:.9375rem;line-height:1.6}.metric{grid-template-columns:minmax(0,1fr) auto;gap:6px}.metric strong{font-size:1.375rem}.metric small{color:var(--muted);font-size:.75rem}.stage-track small,.feasibility-line,.workflow-help,.stage-guidance span,.timeline p,.timeline small,.memo-empty small{color:var(--muted);font-size:.8125rem}.timeline strong,.stage-guidance strong,.review-comment,.review-preview-note,.detail-panel .field-label,.workflow-fields label>span{font-size:.875rem}.detail-section select,.workflow-fields input{min-height:44px;font-size:1rem}.photo-action{min-height:44px;font-size:.8125rem}.photo-placeholder small{font-size:.75rem}.empty-list{padding:28px 18px}.empty-list strong{font-size:1rem}.empty-list p{font-size:.875rem;line-height:1.65}.empty-list .secondary-button{white-space:normal;margin-top:10px}.form-step label{font-size:.875rem}.form-step input,.form-step select,.form-step textarea,.field-request-form input,.field-request-form textarea{font-size:1rem}.form-step input,.form-step select{height:48px}.form-step label>span em,.draft-photo em,.address-search small,.address-search-launch small{font-size:.75rem}.form-step small,.step-intro p,.wizard-foot>span{font-size:.8125rem}.wizard-steps li{color:var(--muted);font-size:.8125rem}.wizard-steps .is-current,.wizard-steps .is-done{color:var(--green-800)}.wizard-steps i{font-size:.8125rem}.wizard-body{line-height:1.5}.wizard-foot .primary-button,.wizard-foot .secondary-button{font-size:1rem}@media (width>=1181px){.workspace{grid-template-columns:340px 400px minmax(360px,1fr)}.workspace[data-detail-open=false]{grid-template-columns:340px 0 minmax(360px,1fr)}.app-header{grid-template-columns:minmax(190px,1fr) minmax(200px,1.2fr) auto;gap:14px;padding-inline:18px}}@media (width<=1180px){.app-header{flex-basis:auto;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;height:auto;padding:10px 14px}.brand{grid-area:1/1}.header-actions{grid-area:1/2;gap:8px}.global-search{grid-area:2/1/auto/-1;width:100%;height:46px}.global-search input{flex:1 1 0}.role-preview{min-width:0;padding:3px}.role-preview select{width:100%;min-width:0;max-width:220px}.header-actions:has(.role-preview) .role-chip{display:none}.kpi-strip{scrollbar-width:thin}.kpi-strip::-webkit-scrollbar{height:5px;display:block}.kpi-strip::-webkit-scrollbar-thumb{background:#acbdb3;border-radius:5px}.kpi-strip article{min-width:142px}.mobile-nav[data-can-edit=false]{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-nav button,.mobile-nav .register-nav{font-size:.8125rem}.mobile-back{font-size:.875rem}.detail-head h2{max-width:none}}@media (width<=640px){.role-preview-banner{align-items:stretch;gap:8px;padding:8px 14px}.role-preview-banner p{font-size:.8125rem}.role-preview-banner p span{font-size:.75rem}.role-preview-banner .secondary-button{white-space:normal;max-width:90px;padding:6px 9px;font-size:.75rem}.wizard-steps li{gap:4px;font-size:.75rem}.wizard-steps i{width:24px;height:24px}.detail-section-nav a{font-size:.8125rem}}.program-showcase{background:#fff;padding:90px max(24px,50vw - 580px)}.program-heading{max-width:740px;margin-bottom:65px}.program-heading>span{color:#276b50;font-size:.9375rem;font-weight:700}.program-heading h2{color:#163e2f;letter-spacing:-.045em;margin:18px 0;font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.3}.program-heading p,.program-copy p{color:#52665d;font-size:1.0625rem;line-height:1.85}.program-row{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:center;gap:60px;padding:45px 0 65px;display:grid}.program-row+.program-row{border-top:1px solid #e0e8e3}.program-row-reverse{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}.program-row-reverse .program-copy{order:2}.program-number{color:#287355;letter-spacing:.04em;font-size:.875rem;font-weight:750;display:block}.program-copy h3{letter-spacing:-.04em;margin:16px 0;font-size:clamp(1.75rem,2.7vw,2.45rem);line-height:1.25}.program-copy ul{color:#426051;margin:22px 0 0;padding:0;font-size:.9375rem;list-style:none}.program-copy li{border-left:2px solid #b7d6c4;margin-bottom:8px;padding:6px 0 6px 16px}.program-window{background:#f5f8f6;border:1px solid #cdded3;border-radius:18px;min-width:0;margin:0;overflow:hidden;box-shadow:0 18px 50px #193f2b12}.program-window>figcaption{color:#fff;background:#163e2f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:18px 22px;display:flex}.program-window>figcaption strong{font-size:1rem}.program-window>figcaption>span{color:#dbf0e3;border:1px solid #668675;border-radius:5px;padding:3px 8px;font-size:.8125rem}.program-window-body{padding:22px}.program-toolbar{color:#4b6457;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:18px;font-size:.875rem;display:flex}.program-table{border-collapse:collapse;table-layout:fixed;background:#fff;width:100%}.program-table th{text-align:left;color:#607569;background:#eaf1ed;font-size:.875rem;font-weight:600}.program-table th,.program-table td{border-bottom:1px solid #e3ebe6;padding:15px 12px;font-size:.9375rem}.program-table td:first-child{width:38%}.program-table td strong{display:block}.program-table small{color:#607569;margin-top:4px;font-size:.8125rem;display:block}.program-tag{color:#40566b;white-space:nowrap;background:#e8eef2;border-radius:6px;padding:4px 8px;font-size:.875rem;display:inline-block}.program-tag.planned{color:#795616;background:#f9ebd4}.program-tag.complete{color:#216344;background:#dfefe5}.program-example-note{color:#5c7064;margin:16px 0 0;font-size:.8125rem;line-height:1.6}.program-facility{justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.program-facility small{color:#5c7064;font-size:.875rem}.program-facility h4{margin:4px 0 0;font-size:1.25rem}.program-stages{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 18px;padding:0;list-style:none;display:grid}.program-stages li{text-align:center;background:#fff;border-top:3px solid #d5dfd9;gap:7px;padding:14px 8px;display:grid}.program-stages li.done{border-color:#8db9a1}.program-stages li.current{background:#dfeee5;border-color:#287355}.program-stages li>span{color:#587162;font-size:.8125rem}.program-stages strong{font-size:.875rem}.program-stages small{color:#587162;font-size:.8125rem}.program-record{margin:8px 0 0}.program-record>div{border-bottom:1px solid #dfe8e2;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 0;font-size:.9375rem;display:flex}.program-record dt{color:#546e5f}.program-record dd{color:#214c36;margin:0}.program-photo-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.program-photo-pair>figure{background:#fff;border-radius:10px;margin:0;overflow:hidden}.program-photo-pair img{object-fit:contain;background:#eaf0ec;width:100%;height:210px}.program-photo-pair figcaption{text-align:center;padding:10px;font-size:.9375rem;font-weight:700}@media (width<=850px){.program-row,.program-row-reverse{grid-template-columns:minmax(0,1fr);gap:28px}.program-row-reverse .program-copy{order:0}.program-copy h3 br{display:none}.program-heading{margin-bottom:24px}.program-showcase{padding-block:60px}}@media (width<=480px){.program-showcase{padding:48px 20px}.program-row{padding-block:30px 40px}.program-window-body{padding:12px}.program-window>figcaption{padding:14px}.program-table th,.program-table td{padding:12px 6px;font-size:.875rem}.program-tag{padding:4px 6px;font-size:.8125rem}.program-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.program-photo-pair{gap:8px}.program-photo-pair img{height:160px}}.work-shortcuts{border-bottom:1px solid var(--line);background:#fff;flex-shrink:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px 18px;display:grid}.work-shortcuts button{border:1px solid var(--line);background:var(--paper);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;min-height:48px;padding:8px 14px;font-size:.875rem;display:flex}.work-shortcuts button[aria-pressed=true]{border-color:var(--green-700);background:var(--green-50);box-shadow:inset 0 0 0 1px var(--green-700)}.work-shortcuts strong{color:var(--green-900);font-size:1.25rem}.work-shortcuts small{margin-left:3px;font-size:.75rem;font-weight:500}.survey-readiness{border:1px solid var(--line);background:#fff;border-radius:10px;margin:14px 0;padding:12px;font-size:.875rem}.survey-readiness>div{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.survey-readiness a{border:1px solid var(--line);border-radius:8px;align-items:center;min-height:44px;padding:6px 9px;text-decoration:underline;display:inline-flex}.survey-readiness p{color:var(--muted);margin:10px 0 0;font-size:.8125rem;line-height:1.6}.review-comment{white-space:pre-wrap;overflow-wrap:anywhere}.field-request-panel{flex:none;max-height:38dvh;overflow-y:auto}.field-request-panel:not(.is-form-open) .field-request-head .eyebrow,.field-request-panel:not(.is-form-open) .field-request-head p{display:none}.field-request-head{gap:10px}.field-request-head h2,.field-request-panel.is-empty:not(.is-form-open) .field-request-head h2{font-size:1rem}.field-request-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.request-list-tools,.request-pagination{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;font-size:.875rem;display:flex}.request-list-tools select{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:44px;padding:6px;font-size:1rem}.field-request-list p{white-space:pre-wrap;overflow-wrap:anywhere}.revision-dialog{width:min(560px,100%)}.revision-dialog>form{flex-direction:column;min-height:0;display:flex;overflow:auto}.revision-body{padding:22px;font-size:1rem;overflow-y:auto}.revision-body>strong{overflow-wrap:anywhere}.revision-body p{line-height:1.6}.revision-body label{margin-bottom:8px;font-weight:700;display:block}.revision-body textarea{border:1px solid var(--line-strong);width:100%;min-height:160px;font:inherit;resize:vertical;border-radius:8px;padding:12px;display:block}@media (width<=640px){.work-shortcuts{gap:6px;padding:6px 12px}.work-shortcuts button{gap:4px;padding:8px}.work-shortcuts strong{font-size:1.0625rem}.field-request-panel{margin:6px 12px;padding:8px 12px}.field-request-head{flex-wrap:wrap}.field-request-head h2{margin:0}.field-request-head .secondary-button{padding:6px 10px}.field-request-actions{flex:1}.request-list-tools{flex-wrap:wrap}.revision-body{padding:16px}}.sequence-picker{border:1px solid var(--line);border-radius:12px;gap:12px;padding:16px;display:grid}.sequence-picker small{color:var(--muted);font-size:14px;line-height:1.5}.sequence-preview{overflow-wrap:anywhere;margin:0;font-size:16px}.list-panel>.panel-head{flex-shrink:0;min-height:48px;padding:10px 16px}.list-panel .compact-facility-card{border:2px solid #0000;border-radius:8px;margin-bottom:4px;padding:9px 10px}.list-panel .compact-facility-card:hover{border-color:var(--line-strong);transform:none}.list-panel .compact-facility-card.is-selected{border-color:var(--green-700);box-shadow:none}.compact-card-heading{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:3px 8px;min-width:0;display:grid}.compact-card-heading .facility-code{grid-area:1/1;font-size:.9375rem}.compact-card-heading>strong{white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-area:2/1/auto/-1;min-width:0;font-size:1.125rem;line-height:1.4;display:-webkit-box;overflow:hidden}.compact-selection{color:var(--green-800);grid-area:1/2;font-size:.9375rem;font-weight:800}.list-panel .compact-facility-card>p{white-space:nowrap;text-overflow:ellipsis;margin:3px 0 5px;font-size:.875rem;line-height:1.4;overflow:hidden}.compact-facility-card .facility-card-top{margin:0}.compact-facility-card .facility-card-status{gap:6px}.compact-facility-card .stage-badge,.compact-facility-card .review-badge,.compact-facility-card .client-progress-badge{padding:3px 7px}.closure-panel{background:#f5f7f6}.detail-section.closure-panel{padding:14px 18px}.closure-panel .section-title{margin-bottom:8px}.closure-panel .section-title h3{margin:0;font-size:1rem}.closure-panel>.closure-actions button{border-radius:8px;min-height:40px;padding:8px 12px;font-size:.875rem}.closure-panel-compact{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.closure-panel-compact .section-title{margin:0}.closure-panel-compact>.closure-actions{margin-top:0}.closure-badge{color:#34434d;background:#e4e8eb;border-radius:8px;align-items:center;padding:4px 8px;font-size:.875rem;font-weight:700;display:inline-flex}.closure-panel p{overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.6}.closure-summary small{color:var(--muted);display:block}.closure-panel label{gap:6px;margin:12px 0;display:grid}.closure-panel textarea,.closure-panel select{width:100%;min-width:0;font:inherit;border:1px solid #b8c7bf;border-radius:8px;padding:10px}.closure-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.closure-filter{align-items:center;gap:8px;padding:8px 16px;display:flex}.closure-filter select{min-width:0;font:inherit;flex:1;padding:6px}.closure-counts{color:var(--muted);margin:0;padding:0 16px 8px;font-size:.875rem}.detail-head>.detail-head-actions{flex:none;align-items:center;gap:5px;display:flex}.detail-close{border:1px solid var(--line);width:36px;height:36px;color:var(--green-800);cursor:pointer;background:#f8fbf9;border-radius:8px;place-items:center;font-size:1.5rem;display:grid}.app-shell .detail-head.detail-contact-head[id]{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:8px 18px;scroll-margin-top:96px;display:grid}.app-shell .detail-contact-head>.detail-identity,.app-shell .detail-contact-head>.detail-head-actions{display:contents}.app-shell .detail-contact-head .detail-name-row{grid-area:2/1/auto/-1;justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.app-shell .detail-contact-head .detail-name-row h2{white-space:normal;overflow-wrap:anywhere;flex:1;min-width:0;max-width:none;margin:0}.app-shell .detail-contact-head .detail-category{background:var(--green-50);max-width:40%;color:var(--green-800);overflow-wrap:anywhere;text-align:right;border-radius:6px;flex:0 auto;padding:3px 8px;font-size:.8125rem;line-height:1.5}.app-shell .detail-contact-head .detail-contact-list{grid-area:3/1/auto/-1;gap:2px;margin:0}.app-shell .detail-contact-list>div{grid-template-columns:64px minmax(0,1fr);gap:10px;padding:1px 0}.app-shell .detail-contact-head .detail-contact-list dt,.app-shell .detail-contact-head .detail-contact-list dd,.app-shell .detail-contact-head .detail-contact-list dd a{line-height:1.4}.app-shell .detail-contact-list dd{flex-wrap:wrap;gap:0 10px;display:flex}.app-shell .detail-contact-list dd a{margin-left:0}.app-shell .detail-contact-head .edit-info-button{grid-area:4/1;justify-self:start;min-height:36px;font-size:.875rem}.app-shell .detail-head.detail-contact-head .detail-head-actions>span[class]{white-space:normal;grid-area:4/2;justify-self:end;max-width:100%}@media (width>=1181px){.detail-wrap{border-left:0;border-right:1px solid var(--line)}}.test-district-banner{color:#694308;background:#fff3d6;border-bottom:1px solid #d8b76c;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px 14px;padding:8px 20px;font-size:14px;display:flex}.test-registration-notice{color:#694308;background:#fff3d6;border:1px solid #d8b76c;border-radius:8px;padding:10px 14px;font-size:14px}.consent-ramp-type{background:#f3f8f5;border-radius:12px;margin:12px 0;padding:14px}.consent-ramp-type p{margin:0 0 10px}.consent-ramp-type label{gap:8px;font-weight:700;display:grid}.consent-ramp-type select{width:100%;min-height:44px}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
