@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;font-family:Inter Variable,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,system-ui,sans-serif;color:#17233b;background:#f5f7fb;font-synthesis:none;line-height:1.58;--ink: #17233b;--muted: #53627a;--blue: #244fca;--blue-dark: #193da7;--blue-soft: #edf3ff;--line: #dfe6ef;--surface: #fff;--page: #f5f7fb;--focus: #3766e7;--danger: #a12635;--radius: 14px}*{box-sizing:border-box}body{margin:0;min-width:320px;font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default}input,select,textarea{min-width:0}svg{flex-shrink:0;vertical-align:middle}h1,h2,h3,h4,p,dl,dd,ol{margin:0}h1,h2,h3,h4{font-weight:720;line-height:1.28;overflow-wrap:anywhere}h1{font-size:clamp(1.82rem,2.7vw,2.5rem);letter-spacing:-.042em}h2{font-size:1.18rem;letter-spacing:-.025em}h3{font-size:1rem;letter-spacing:-.015em}h4{font-size:.9rem}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}[tabindex="-1"]:focus{outline:none}::selection{background:#dbe7ff;color:#163a9e}.muted{color:var(--muted)}.small{font-size:.82rem}.break-anywhere{overflow-wrap:anywhere}.danger-text{color:var(--danger)!important}.surface{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 2px 5px #192c4b06}.skip-link{position:fixed;z-index:20;top:8px;left:8px;padding:.6rem 1rem;border-radius:8px;clip-path:inset(50%);color:#fff;background:var(--blue-dark)}.skip-link:focus{clip-path:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:42px;padding:.55rem .9rem;border:1px solid transparent;border-radius:8px;font-size:.89rem;font-weight:650;white-space:nowrap;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.button:disabled{opacity:.59}.button--primary{background:var(--blue);color:#fff}.button--primary:hover:not(:disabled){background:var(--blue-dark)}.button--secondary{background:#fff;color:#24344f;border-color:#ced8e6}.button--secondary:hover:not(:disabled){background:#f4f7fc;border-color:#aabbd4}.button--quiet{background:transparent;color:var(--blue-dark)}.button--quiet:hover:not(:disabled){background:var(--blue-soft)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;color:#4e607b;background:transparent;border:1px solid transparent;border-radius:8px}.icon-button:hover:not(:disabled){background:#edf2fa;color:var(--blue-dark)}.icon-button:disabled{opacity:.43}.text-button,.text-link,.table-link,.back-link{color:var(--blue-dark);font-weight:650;text-decoration:underline;text-underline-offset:3px}.text-button:hover,.text-link:hover,.table-link:hover,.back-link:hover{color:#122c78}.text-button{padding:0;border:0;background:transparent;text-align:left}.table-link{text-decoration:none}.table-link:hover{text-decoration:underline}.back-link{width:fit-content;display:inline-flex;align-items:center;gap:.5rem;font-size:.88rem;text-decoration:none}.spinner{width:16px;height:16px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.form-stack{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fieldset-reset{min-width:0;margin:0;padding:0;border:0}.form-field{min-width:0;padding:0;margin:0;border:0}.form-field__label{display:block;margin:0 0 .4rem;padding:0;font-size:.89rem;font-weight:670;overflow-wrap:anywhere}.required-mark{color:var(--danger);font-weight:680}.control{width:100%;min-height:44px;padding:.61rem .72rem;border:1px solid #c9d4e5;border-radius:8px;background:#fff;color:var(--ink);line-height:1.35}.control:disabled,.control:read-only:not(select){background:#f6f8fc}.control:is([aria-invalid=true]){border-color:#b33846}.control::placeholder{color:#65748a;opacity:1}.control--area{min-height:106px;resize:vertical}.control--select{padding-right:2rem;appearance:none}.select-wrap{display:block;position:relative}.select-wrap>svg{position:absolute;right:.72rem;top:50%;transform:translateY(-50%);pointer-events:none;color:#526581}.field-error,.field-help{font-size:.81rem;line-height:1.4;margin-top:.4rem}.field-error{color:var(--danger)}.field-help{color:var(--muted)}.choices{display:grid;gap:.5rem}.choice{display:flex;align-items:flex-start;position:relative;gap:.68rem;padding:.57rem .7rem;min-height:42px;border:1px solid #dbe3ef;border-radius:8px;background:#fff;color:#283951;cursor:pointer;line-height:1.45;overflow-wrap:anywhere}.choice:has(input:checked){background:#eef4ff;border-color:#9bb5f4;color:#1b3d93}.choice:has(input:disabled){opacity:.64;cursor:default}.choice:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.choice:has(input[aria-invalid=true]){border-color:#bd6570}.choice>input{position:absolute;opacity:0;inline-size:1px;block-size:1px}.choice__mark{display:inline-flex;align-items:center;justify-content:center;flex:0 0 19px;width:19px;height:19px;margin-top:1px;border:1px solid #7a8da9;border-radius:5px;background:#fff;color:transparent}input:checked+.choice__mark{background:var(--blue);color:#fff;border-color:var(--blue)}.choice--radio .choice__mark{border-radius:50%}.choice--radio input:checked+.choice__mark{background:#fff;border-width:6px}.alert{display:flex;align-items:flex-start;gap:.6rem;padding:.72rem .82rem;background:#edf4ff;color:#234785;border:1px solid #c7d8f4;border-radius:8px;font-size:.88rem;overflow-wrap:anywhere}.alert svg{margin-top:.13rem}.alert--error{background:#fff2f3;color:#932a39;border-color:#f1c3c8}.alert--success{background:#e9f8f1;color:#126347;border-color:#b9e4d2}.alert .text-button{display:block;margin-top:.5rem}.form-alert{margin-bottom:1.15rem}.toast-container{position:fixed;right:20px;bottom:20px;z-index:12;max-width:calc(100vw - 40px)}.toast{display:flex;align-items:center;gap:.65rem;padding:.75rem .9rem;border-radius:9px;color:#fff;background:#193052;box-shadow:0 6px 20px #12254430}.toast button{background:transparent;color:#fff;border:0;padding:4px}.modal{width:min(540px,100vw - 28px);max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);border-radius:15px;box-shadow:0 28px 75px #0e1e4b4d;color:var(--ink);background:#fff}.modal--wide{width:min(880px,100vw - 28px)}.modal::backdrop{background:#18294475}.modal__header{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:12px 20px;background:#fff;border-bottom:1px solid var(--line)}.modal__body{padding:20px}.modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.55rem;margin-top:.25rem}.copy-control,.search-form{display:flex;align-items:center;gap:.5rem;min-width:0}.copy-control{flex-wrap:wrap}.copy-control>.control{flex:1 1 11rem;width:auto}.inline-actions,.section-heading{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.section-heading{justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;color:#172747;white-space:nowrap}.brand__mark{position:relative;flex:0 0 37px;width:37px;height:37px}.brand__mark>img{position:absolute;top:50%;left:50%;width:42px;height:auto;transform:translate(-50%,-50%);clip-path:polygon(0 0,25% 0,25% 27%,100% 27%,100% 100%,0 100%)}.brand__name{font-size:1.07rem;font-weight:800;letter-spacing:-.035em}.brand__name>span{margin-left:.4rem;color:#516782;font-size:.91rem;font-weight:560}.public-header{background:#fff;border-bottom:1px solid var(--line)}.public-header__inner{width:min(1080px,100% - 44px);margin:auto;min-height:70px;display:flex;justify-content:space-between;align-items:center;gap:.8rem}.public-header__label{color:var(--muted);font-size:.86rem;text-align:right}.public-main{width:min(920px,100% - 40px);margin:clamp(24px,6vw,70px) auto 0;min-height:390px}.public-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;width:min(920px,100% - 40px);margin:22px auto;color:var(--muted);font-size:.79rem}.public-footer span:last-child{display:inline-flex;align-items:center;gap:.4rem}.eyebrow{color:var(--blue-dark);font-size:.84rem;font-weight:700;overflow-wrap:anywhere}.state-mark{display:grid;place-items:center;width:55px;height:55px;margin-bottom:.3rem;border-radius:13px;color:var(--blue);background:var(--blue-soft)}.state-mark--success{color:#126347;background:#e5f6ef}.public-state,.login-card{width:min(100%,540px);margin-inline:auto;padding:clamp(24px,5vw,44px);display:grid;justify-items:start;gap:.75rem}.public-state p:not(.eyebrow),.login-card p:not(.eyebrow){color:var(--muted)}.login-card{width:min(100%,430px)}.login-card .form-stack{width:100%;margin-top:.8rem}.receipt{width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;border-radius:9px;padding:.75rem;margin-block:.3rem .45rem;color:#244268;background:#f0f5ff}.survey-intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);overflow:hidden}.survey-intro__copy,.survey-intro__guide{padding:clamp(25px,5vw,48px)}.survey-intro__copy{display:grid;gap:.8rem;justify-items:start;align-content:center}.survey-intro__copy .button{margin-top:.5rem}.survey-intro__guide{background:#f0f5ff;border-left:1px solid #dce8fc}.intro-text{color:var(--muted);overflow-wrap:anywhere}.intro-steps{list-style:none;padding:0;margin:1.05rem 0;display:grid;gap:.6rem}.intro-steps li{display:flex;align-items:center;gap:.68rem;font-size:.9rem;font-weight:600}.intro-steps span{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#dfeaff;color:#20449e}.inline-note{display:flex;gap:.55rem;align-items:flex-start;color:#3b526f;font-size:.83rem}.inline-note svg{margin-top:.16rem}.survey-workspace{display:grid;gap:18px}.survey-workspace__title{display:grid;gap:.4rem}.step-progress{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.step-progress li{min-width:0;display:flex;align-items:center;justify-content:flex-start;gap:.65rem;padding:.66rem .7rem;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted);font-size:.85rem;font-weight:620;line-height:1.32;word-break:keep-all;overflow-wrap:anywhere}.step-progress .is-current{background:#e8f0ff;color:#173b9d;border-color:#8ba8ef}.step-progress .is-past{color:#176046}.step-progress__number{display:inline-grid;place-items:center;flex:0 0 27px;height:27px;border-radius:50%;background:#edf1f7}.is-current .step-progress__number{background:var(--blue);color:#fff}.is-past .step-progress__number{background:#e3f5ed}.survey-card__header{padding:23px clamp(16px,4vw,34px);border-bottom:1px solid var(--line)}.survey-card__header p{margin-top:.35rem;color:var(--muted)}.survey-card__body{padding:24px clamp(16px,4vw,34px) 18px}.question-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px 18px}.question-grid--contact{grid-template-columns:repeat(2,minmax(0,1fr))}.question-grid--contact>*{grid-column:1/-1}.question-grid--contact>.form-field:has(:is(#answer-company,#answer-name,#answer-phone,#answer-email)){grid-column:auto}.survey-actions{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem;border-top:1px solid var(--line);margin-top:28px;padding-top:16px}.survey-actions__right{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;max-width:100%;margin-inline-start:auto;gap:.4rem}.survey-actions__advance{max-width:100%;white-space:normal;word-break:keep-all;overflow-wrap:anywhere}.save-status{min-height:1.25rem;margin-top:.38rem;color:#166347;font-size:.8rem;text-align:right}.review,.content-panel__body:has(.review__section){display:grid;gap:22px}.review__section{display:grid;gap:.65rem;min-width:0}.review__heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.detail-list{border-top:1px solid var(--line)}.detail-list div{display:grid;grid-template-columns:minmax(100px,38%) minmax(0,1fr);gap:.65rem;padding:.65rem 0;border-bottom:1px solid var(--line);font-size:.87rem;overflow-wrap:anywhere}.detail-list dt{color:var(--muted)}.detail-list dd{white-space:pre-wrap}.privacy{padding:17px;display:grid;gap:.75rem;border-radius:10px;background:#f0f5ff}.privacy h3{display:flex;align-items:center;gap:.5rem;color:#234785}.admin-shell{display:grid;grid-template-columns:234px minmax(0,1fr);min-height:100dvh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100dvh;padding:22px 14px 12px;border-right:1px solid var(--line);background:#fff}.sidebar__top{display:flex;justify-content:space-between;align-items:center;margin:0 8px 27px}.sidebar__brand{width:fit-content}.sidebar__nav{display:grid;gap:4px;min-height:0;overflow-y:auto;padding:4px}.sidebar__nav a{display:flex;align-items:center;gap:11px;min-height:44px;padding:8px 12px;border-radius:8px;color:#465a75;font-size:.91rem;font-weight:600}.sidebar__nav a:hover{background:#f0f4fa;color:var(--blue-dark)}.sidebar__nav a.nav-current{background:#eaf1ff;color:#1b41a4;font-weight:720}.sidebar__group{display:grid;gap:4px}.sidebar__group[role=group]{margin-block:.5rem}.sidebar__group-title{margin:0 12px .14rem;color:var(--muted);font-size:.76rem;font-weight:700}.sidebar__account{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.6rem;border-top:1px solid var(--line);padding:12px 3px 0;margin-top:auto}.sidebar__account strong,.sidebar__account small{display:block;overflow-wrap:anywhere}.sidebar__account strong{font-size:.88rem}.sidebar__account small{font-size:.77rem;color:var(--muted)}.avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;color:#254fba;background:#e9f0ff;font-weight:750}.sidebar-scrim,.menu-toggle{display:none}.admin-body{min-width:0}.admin-header{min-height:64px;background:#fff;border-bottom:1px solid var(--line);padding:0 clamp(16px,3vw,36px);display:flex;align-items:center;gap:.55rem}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;color:var(--muted);font-size:.84rem}.breadcrumbs strong{color:var(--ink)}.admin-main{width:min(100%,1510px);margin-inline:auto;padding:clamp(18px,3.4vw,40px) clamp(16px,3.2vw,36px) 55px}.page-stack{display:grid;align-content:start;gap:20px;min-width:0}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.page-heading>div{min-width:0}.page-heading p{color:var(--muted);margin-top:.4rem;overflow-wrap:anywhere}.page-heading__actions{display:flex;gap:.5rem;flex-wrap:wrap}.heading-status{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;margin-bottom:.65rem;color:var(--muted);font-size:.82rem}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:18px 20px;border-bottom:1px solid var(--line)}.panel-heading p{color:var(--muted);font-size:.85rem;margin-top:.27rem}.panel-heading>svg{color:#506a93}.data-scroll{overflow-x:auto;max-width:100%}.data-table{width:100%;min-width:570px;border-collapse:collapse;text-align:left;font-size:.86rem}.data-table th,.data-table td{padding:.68rem .84rem;border-bottom:1px solid var(--line);vertical-align:middle}.data-table th:first-child,.data-table td:first-child{padding-left:20px}.data-table th:last-child,.data-table td:last-child{padding-right:20px}.data-table th{white-space:nowrap;background:#f7f9fd;color:#50617c;font-size:.79rem;font-weight:670}.data-table td{overflow-wrap:anywhere}.data-table tr:last-child td{border-bottom:0}.data-table tr:hover td:not(.data-empty){background:#fbfcff}.data-table .data-empty{padding:40px 12px;text-align:center;color:var(--muted)}.data-table .data-empty>svg{display:block;margin:0 auto .55rem;color:#657eab}.table-description{max-width:36ch;margin-top:.2rem;color:var(--muted);font-size:.79rem}.pagination{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.6rem;padding:.72rem 20px;border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}.pagination div{display:flex;align-items:center;gap:.55rem}.pagination .button{padding:.25rem .48rem;min-height:34px}.status-badge{display:inline-flex;gap:.37rem;align-items:center;min-height:25px;padding:.16rem .5rem;border-radius:20px;color:#445a76;background:#edf2f8;font-size:.76rem;font-weight:690;white-space:nowrap}.status-badge>span{width:6px;height:6px;border-radius:50%;background:currentColor}.status-badge--draft,.status-badge--estimating,.status-badge--waiting_customer{color:#785009;background:#fff1d1}.status-badge--submitted,.status-badge--completed{color:#126047;background:#e3f6eb}.status-badge--reviewing,.status-badge--in_progress{color:#603ca4;background:#f0e9fe}.status-badge--quoted,.status-badge--received{color:#2147a5;background:#e8efff}.status-badge--failed{color:#912b3a;background:#ffe9ec}.filter-card{padding:16px 20px}.filter-form{display:grid;grid-template-columns:minmax(180px,1.45fr) repeat(4,minmax(130px,1fr));align-items:end;gap:12px}.filter-actions{display:flex;align-items:center;gap:.4rem;grid-column:1/-1;justify-content:flex-end}.search-form{width:min(100%,320px)}.customer-history{display:grid;gap:.7rem;margin-top:24px;padding-top:17px;border-top:1px solid var(--line)}.detail-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.9fr);gap:18px;align-items:start}.content-panel{min-width:0}.content-panel__body{padding:17px 20px 21px}.activity{display:grid;gap:.65rem}.activity h3{display:flex;align-items:center;gap:.45rem}.activity ol{list-style:none;padding:0;display:grid;gap:.5rem}.activity li{display:grid;gap:.25rem;padding:.62rem .72rem;border-radius:7px;color:#334460;background:#f5f8fc;overflow-wrap:anywhere;font-size:.86rem}.activity li span{color:var(--muted);font-size:.77rem}.note-body{white-space:pre-wrap}.template-question{display:grid;gap:14px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#f9fbfe}.template-question>header{display:flex;justify-content:space-between;align-items:center;gap:.7rem}.template-question>.choice{width:fit-content}.template-subsection{display:grid;gap:.65rem;border-top:1px solid var(--line);padding-top:.55rem}.template-option{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr) auto;align-items:end;gap:.6rem}.template-option--condition{grid-template-columns:minmax(0,1fr) auto}.template-condition{display:grid;gap:.6rem;padding:.7rem;border:1px solid var(--line);border-radius:8px}@media(max-width:1179px){.filter-form{grid-template-columns:repeat(4,minmax(0,1fr))}.filter-search{grid-column:span 2}}@media(max-width:930px){.admin-shell{grid-template-columns:195px minmax(0,1fr)}.filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:767px){.admin-shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;top:0;left:0;width:min(280px,83vw);z-index:9;visibility:hidden;transform:translate(-100%);transition:transform .16s ease}.sidebar--open{visibility:visible;transform:none}.sidebar-scrim{display:block;position:fixed;inset:0;z-index:8;border:0;background:#12264862}.menu-toggle{display:inline-flex}.admin-header{min-height:55px}.public-header__inner{min-height:59px}.public-main,.public-footer{width:min(100% - 28px,920px)}.public-main{margin-top:24px;min-height:330px}.step-progress li{flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;gap:.35rem;font-size:.76rem;padding:.45rem .22rem}.step-progress__number{flex:0 0 25px;width:25px}.control{font-size:16px}}@media(max-width:559px){.public-header__inner{width:calc(100% - 28px)}.survey-intro{grid-template-columns:minmax(0,1fr)}.survey-intro__guide{border-left:0;border-top:1px solid #dce8fc}.question-grid--contact{grid-template-columns:minmax(0,1fr)}.page-heading{align-items:flex-start;flex-direction:column}.panel-heading,.filter-card{padding:13px}.panel-heading{flex-wrap:wrap}.panel-heading--list{align-items:flex-start;flex-direction:column}.content-panel__body{padding:13px}.form-grid{grid-template-columns:minmax(0,1fr)}.survey-actions .button{padding-inline:.56rem}.review .review__heading .text-button{min-height:44px;padding-inline:.4rem;flex-shrink:0}.detail-list div{grid-template-columns:minmax(0,1fr);gap:.18rem}.privacy{padding:12px}.template-question{padding:10px}.template-question>header{align-items:flex-start}.template-question .icon-button{width:30px}.template-option{grid-template-columns:minmax(0,1fr) auto}.template-option:not(.template-option--condition)>.form-field:first-child{grid-column:1/-1}}
