@font-face{font-family:Pretendard;src:url('../fonts/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--gold:#e7b92a;--gold-dark:#8d6700;--ink:#1f2937;--muted:#667085;--line:#e3e7ed;--bg:#f4f6f8;--primary:#2563eb;--primary-soft:#eff5ff;--radius:12px;--font:Pretendard,-apple-system,BlinkMacSystemFont,'Noto Sans KR','Malgun Gothic',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.65;letter-spacing:-.025em;word-break:keep-all;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.35}ul,ol{padding:0;margin:0}button{border:0}fieldset{border:0;padding:0;margin:0}legend{padding:0}input,select,textarea{color:var(--ink)}[hidden]{display:none!important}:focus-visible{outline:3px solid #93b7ff;outline-offset:3px}.icon{width:22px;height:22px;vertical-align:middle}.small{font-size:13px}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-100px;left:16px;padding:12px 20px;z-index:100;background:var(--ink);color:#fff;border-radius:8px}.skip-link:focus{top:12px}.container{max-width:1200px;padding:0 28px;margin:0 auto}.brand{display:inline-flex;align-items:center;gap:11px}.brand-mark{width:40px;height:40px;color:var(--gold);display:block}.brand-mark svg{display:block;width:100%;height:100%}.brand-text{font-size:21px;line-height:1.25;font-weight:800;letter-spacing:-.045em}.brand-text small{display:block;font-size:9px;letter-spacing:.12em;font-weight:650;margin-top:3px;color:var(--muted)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:44px;border:1px solid transparent;border-radius:8px;padding:9px 18px;font-size:15px;font-weight:650;line-height:1.5;white-space:nowrap;transition:background .15s,box-shadow .15s}.btn:disabled{cursor:wait;opacity:.65}.btn-dark{background:#27313b;color:#fff}.btn-dark:hover{background:#111c27}.btn-gold{background:var(--gold);color:#31290f}.btn-gold:hover{background:#d9aa1f}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:#1d4ed8}.btn-outline{border-color:#d3d9e2;background:#fff}.btn-outline:hover{background:#f4f6f8}.btn-danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.btn-lg{min-height:52px;padding:13px 23px}.btn-sm{min-height:36px;padding:6px 11px;font-size:13px}.btn-sm .icon{width:17px;height:17px}.full-width{width:100%}.text-link{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px}.text-link:hover{color:var(--primary)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;color:var(--muted);background:transparent}.icon-button:hover{background:#f0f3f8;color:var(--ink)}.eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:750;letter-spacing:.09em;color:var(--gold-dark)}.tiny-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold)}
/* 홍보 홈페이지 */
.site-header{height:86px;border-bottom:1px solid #f0ede5;background:#fff;position:relative;z-index:20}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}.site-nav>a[aria-current]{color:var(--gold-dark)}.menu-toggle{display:none}.hero{background:#faf8f0;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr 1fr;align-items:center;min-height:576px;gap:16px}.hero-copy{padding:36px 0 50px}.hero h1{font-size:46px;letter-spacing:-.055em;font-weight:800;line-height:1.3;margin:20px 0}.hero h1 span{color:#695626}.hero-copy>p{font-size:17px;line-height:1.9;color:#667066}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:32px}.hero-note{margin-top:24px;font-size:12px;color:#767869;display:flex;align-items:center;gap:7px}.hero-note .icon{width:16px;height:16px;color:#92752d}.hero-visual{position:relative;padding-bottom:40px}.hero-visual>img{width:100%}.visual-label{position:absolute;bottom:60px;left:22px;display:flex;align-items:center;gap:15px;background:#fff;box-shadow:0 8px 30px #68582314;border:1px solid #eee9db;border-radius:12px;padding:16px 23px}.visual-label>.icon{color:#917323;width:29px;height:29px}.visual-label strong{font-size:14px;display:block}.visual-label small{display:block;color:#7d837a;font-size:11px;margin-top:4px}.section{padding-top:64px;padding-bottom:64px}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:30px}.section-heading h2{font-size:29px;font-weight:750;letter-spacing:-.045em;margin-top:9px}.section-heading p{color:var(--muted);margin-top:12px;font-size:15px}.section-heading>.text-link{padding-bottom:3px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{padding:28px;border:1px solid #e8e9e4;border-radius:12px;background:#fff}.service-icon{display:inline-flex;align-items:center;justify-content:center;width:49px;height:49px;border-radius:12px;background:#fbf4dc;color:#8e7430;margin-bottom:23px}.service-icon .icon{width:26px;height:26px}.service-card h3{font-size:20px;font-weight:700}.service-card p{font-size:14px;color:var(--muted);margin-top:12px;min-height:48px;line-height:1.8}.card-link{display:flex;align-items:center;justify-content:space-between;margin-top:24px;padding-top:18px;border-top:1px solid #ecefe9;font-size:12px;color:#74796c;font-weight:600}.card-link:hover{color:var(--ink)}.card-link .icon{width:17px;height:17px}.soft-section{background:#f7f8f5}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.step-number{font-size:20px;font-weight:750;color:#9d8339;display:inline-block;border:1px solid #e4d7aa;border-radius:50%;width:48px;height:48px;text-align:center;line-height:46px;background:#fff}.step h3{font-size:18px;margin:18px 0 9px}.step p{color:var(--muted);font-size:14px;line-height:1.8}.contact-cta{margin-top:52px;margin-bottom:64px;padding:34px 40px;background:#f8f1d8;border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:1144px}.contact-cta h2{font-size:26px;margin:9px 0}.contact-cta p{font-size:14px;color:#807456}.site-footer{padding-top:42px;background:#fff;border-top:1px solid #e9e9e4}.footer-grid{display:flex;justify-content:space-between;gap:24px;padding-bottom:32px}.footer-grid p{margin-top:12px;font-size:14px}.footer-grid .muted{margin-top:3px;font-size:12px}.footer-contact{min-width:220px;display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:13px}.footer-contact strong{margin-bottom:7px;font-size:14px}.footer-contact .icon{width:16px;height:16px}.footer-bottom{border-top:1px solid #eeefeb;padding-top:20px;padding-bottom:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:25px;color:#878c83;font-size:11px}.footer-bottom small{display:block;margin-top:4px;font-size:11px}.footer-bottom>div:last-child{display:flex;gap:18px;flex-shrink:0}.page-intro{padding-top:60px;padding-bottom:30px}.page-intro h1{font-size:36px;letter-spacing:-.05em;margin:13px 0}.page-intro p{font-size:16px;color:var(--muted);line-height:1.8}.compact-top{padding-top:12px}.service-details{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-detail{padding:30px;border:1px solid var(--line);border-radius:12px;display:flex;gap:21px;align-items:flex-start}.service-detail .service-icon{flex-shrink:0;margin:0}.service-detail h2{font-size:21px}.service-detail p{color:var(--muted);font-size:14px;margin-top:10px}.check-list{list-style:none;margin-top:20px;display:grid;gap:8px;font-size:14px}.check-list li{display:flex;gap:7px;align-items:center}.check-list .icon{color:#8c9b72;width:17px;height:17px}.info-note{border:1px solid #e5e9ef;background:#f7f9fc;border-radius:8px;padding:15px 18px;display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.75;color:var(--muted);margin-top:22px}.info-note>.icon{color:#7e94b3;width:20px;height:20px;margin-top:2px}.process-list{max-width:900px}.process-row{display:flex;gap:28px;padding:32px 0;border-bottom:1px solid var(--line)}.process-row:first-child{padding-top:14px}.process-row .step-number{flex-shrink:0}.process-row h2{font-size:23px}.process-row p{margin-top:12px;color:var(--muted);line-height:1.9;font-size:15px}.process-note{display:inline-block;margin-top:17px;padding:7px 12px;border-radius:6px;background:#f5f6f3;color:#73816a;font-size:12px}.faq-list{max-width:900px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:20px;padding:23px 0;font-size:18px;font-weight:600;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#a4aa9c;font-size:22px;font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{padding:0 32px 24px 0;font-size:15px;line-height:1.9;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1.65fr;gap:52px;align-items:start}.contact-guide{padding-top:14px}.contact-guide h2{font-size:27px;line-height:1.5;letter-spacing:-.04em}.contact-guide>p{font-size:14px;color:var(--muted);line-height:1.9;margin-top:19px}.contact-guide ol{list-style:none;margin-top:30px;display:grid;gap:19px;font-size:14px}.contact-guide li{display:flex;gap:12px;align-items:center}.contact-guide li span{width:26px;height:26px;border-radius:50%;background:#f7eed0;text-align:center;line-height:26px;font-size:12px;font-weight:700;color:#947530}.contact-guide-note{display:flex;align-items:center;gap:10px;margin-top:38px;padding-top:24px;border-top:1px solid #e9e9e0;color:#788265;font-size:13px}.form-card{padding:32px;border:1px solid var(--line);border-radius:12px;background:#fff}.form-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:26px}.form-heading h2{font-size:23px}.form-heading>span{font-size:12px;color:var(--muted)}.form-heading b,.field b,.consent-box b{color:#c16920}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:22px;min-width:0}.field>label,.field>legend{font-size:14px;font-weight:650}.field small{font-size:12px;color:var(--muted);line-height:1.7}.field>legend{margin-bottom:9px}.optional{font-size:11px;font-weight:400;color:#8e97a3;margin-left:6px}.field input:not([type=checkbox]),.field select,.field textarea{width:100%;border:1px solid #d8dfe8;border-radius:7px;background:#fff;min-height:46px;padding:10px 12px;font-size:16px;line-height:1.5;outline:none;transition:border-color .15s,box-shadow .15s}.field input:focus,.field textarea:focus,.field select:focus{border-color:#85a9f7;box-shadow:0 0 0 3px #2563eb10}.field input[readonly]{background:#f8fafc;color:#5b6673}.field input::placeholder,.field textarea::placeholder{color:#9aa3ae;font-size:14px}.field textarea{resize:vertical;min-height:110px}.input-action{display:flex;gap:8px}.input-action>input{min-width:0}.input-action>.btn{padding:8px 12px}.input-action .icon{width:18px;height:18px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.choice{display:flex;align-items:center;gap:9px;font-size:13px;border:1px solid #e0e5ec;border-radius:7px;min-height:44px;padding:10px}.choice:has(input:checked){border-color:#e0bc52;background:#fdf8e9}.choice input,.check-label input,.consent-box input{accent-color:var(--primary);width:17px;height:17px;flex-shrink:0;margin:0}.consent-box{padding:19px 20px;background:#f8f9fa;border-radius:8px;margin-bottom:25px}.consent-box label{display:flex;gap:10px;align-items:flex-start;font-weight:600;font-size:13px}.consent-box input{margin-top:3px}.consent-box p{font-size:11px;color:#7f8893;line-height:1.8;margin-top:11px}.consent-box>a{display:inline-block;font-size:11px;text-decoration:underline;color:#717984;margin-top:8px}.address-panel{border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-top:8px}.address-toolbar{display:flex;justify-content:space-between;align-items:center;padding:5px 12px;background:#f7f8fa;font-size:13px}.address-toolbar .icon-button{width:36px;height:36px}#address-widget{width:100%;min-height:350px}#address-status{font-size:12px;color:#7d8795;padding:8px 12px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.alert{padding:14px 17px;border:1px solid #dbeafe;border-radius:8px;background:#eff6ff;color:#245bb4;font-size:14px;display:flex;align-items:flex-start;gap:10px;margin-bottom:22px}.alert>.icon{width:20px;height:20px;margin-top:2px}.alert.error{background:#fff4f2;border-color:#fdd6cc;color:#b34730}.alert.success{background:#f0f9f4;border-color:#d1eadc;color:#28764a}.receipt-card{max-width:700px;padding-top:65px;padding-bottom:80px;text-align:center}.receipt-card h1{font-size:31px;margin:15px 0}.receipt-card>p{color:var(--muted);line-height:1.85}.success-circle{width:72px;height:72px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f1f8ec;color:#6b9160;margin:0 auto 24px}.success-circle .icon{width:35px;height:35px}.receipt-detail{margin:30px auto;padding:22px;background:#f8f9fa;border-radius:12px;max-width:430px;display:grid;gap:10px}.receipt-detail span{display:flex;justify-content:space-between;align-items:center;gap:15px;color:var(--muted);font-size:13px}.receipt-detail strong{color:var(--ink);font-size:14px}.receipt-card .btn{margin-top:25px}.policy{max-width:900px;font-size:15px;line-height:1.95}.policy h2{font-size:20px;margin:26px 0 10px}.policy p{color:#5f6b7b;margin-top:8px}.policy a{text-decoration:underline;color:var(--primary)}
/* 설치 / 로그인 */
.auth-page,.install-page{background:#f4f6f8}.auth-container{max-width:450px;margin:0 auto;padding:50px 20px 45px;text-align:center}.auth-container>.brand{margin-bottom:29px}.auth-card{text-align:left;border:1px solid var(--line);border-radius:14px;background:#fff;padding:30px;box-shadow:0 12px 35px #2c374508}.auth-card h1{font-size:27px;margin:10px 0 8px}.auth-card>p{font-size:14px;color:var(--muted);margin-bottom:26px}.auth-card .eyebrow{color:#6883ae}.check-label{display:flex;gap:9px;align-items:center;font-size:13px;flex-wrap:wrap}.check-label .muted{font-size:11px}.auth-card .small{margin:12px 0 23px}.auth-note{font-size:12px;color:var(--muted);border-top:1px solid var(--line);margin-top:25px;padding-top:21px;line-height:1.8}.auth-container>.text-link{margin-top:27px;font-size:12px;color:var(--muted)}.password-field{position:relative}.password-field input{width:100%;border:1px solid #d8dfe8;min-height:46px;padding:10px 56px 10px 12px;border-radius:7px;font-size:16px;line-height:1.5}.password-field button{position:absolute;right:0;top:0;height:46px;padding:0 13px;background:transparent;color:var(--muted);font-size:12px}.install-container{max-width:820px;margin:0 auto;padding:36px 24px 60px}.install-heading{margin:30px 0}.install-heading h1{font-size:29px;margin:10px 0}.install-heading>p{font-size:14px;color:var(--muted)}.preflight-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:24px}.preflight{display:flex;align-items:center;gap:9px;font-size:12px;background:#fff;border:1px solid var(--line);border-radius:7px;padding:12px}.preflight>.icon{width:18px;height:18px;color:#5c916b}.preflight>strong{font-size:11px;color:#5c916b;margin-left:auto}.preflight.fail>strong,.preflight.fail>.icon{color:#be4f34}.install-form h2{font-size:20px;margin:8px 0 22px}.install-form h2:not(:first-child){border-top:1px solid var(--line);padding-top:25px;margin-top:28px}.install-form .info-note{margin-top:0;margin-bottom:15px}.install-container>.small{margin-top:20px}
/* 관리자: 사진 기준의 사이드 메뉴, 업무 탭, 표 중심 구성 */
.admin{background:var(--bg);font-size:15px}.admin-rail{position:fixed;z-index:25;inset:0 auto 0 0;width:96px;background:#fff;border-right:1px solid var(--line);display:flex;align-items:center;flex-direction:column}.rail-logo{display:flex;align-items:center;justify-content:center;height:80px;width:100%;margin-bottom:5px}.rail-logo .brand-mark{width:36px;height:36px}.admin-rail nav{width:100%;display:flex;flex-direction:column;gap:3px;padding:0 10px}.rail-item{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;min-height:66px;width:100%;border-radius:9px;padding:10px 3px;color:#647185;font-size:11px;font-weight:550;position:relative;line-height:1.5}.rail-item>.icon{width:22px;height:22px}.rail-item.active{background:#eff5ff;color:var(--primary);font-weight:700}.rail-item:not(.disabled):hover{background:#f2f6fc}.rail-item.disabled{color:#b1b9c5;min-height:78px;cursor:default}.rail-item small{font-size:9px;font-weight:400}.rail-bottom{margin-top:auto;width:100%;display:flex;align-items:center;flex-direction:column;gap:4px;padding:20px 6px;color:var(--muted);font-size:10px}.rail-bottom>.icon{width:20px;height:20px}.admin-shell{margin-left:96px;min-height:100vh}.admin-header{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 28px}.admin-brand{display:flex;gap:14px;align-items:center;font-size:16px;font-weight:750}.workspace-label{font-size:11px;font-weight:400;color:#8993a2;border-left:1px solid var(--line);padding-left:15px}.admin-user{display:flex;align-items:center;gap:12px;font-size:12px}.admin-user>a{display:flex;gap:8px;align-items:center;font-weight:600}.admin-user .icon{width:18px;height:18px}.admin-user form{display:flex}.workspace-tabs{height:48px;display:flex;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--line);padding-left:28px;font-size:12px;color:var(--muted)}.workspace-tabs>a,.workspace-tabs>.selected{display:flex;align-items:center;padding:0 20px}.workspace-tabs>.selected{border-bottom:2px solid var(--primary);font-weight:650;color:var(--primary)}.version-tag{align-self:center;margin-left:auto;margin-right:28px;background:#f1f4f8;padding:2px 9px;border-radius:4px;font-size:10px;color:#8993a3}.admin-main{padding:25px 28px 12px;max-width:1600px;margin:0 auto}.admin-page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:16px}.breadcrumb{font-size:11px;color:#8c96a3;margin-bottom:6px}.breadcrumb span{margin:0 7px}.admin-page-head h1{font-size:24px;line-height:1.4;font-weight:700;letter-spacing:-.04em}.date-label{display:flex;gap:7px;align-items:center;font-size:12px;color:#788395}.date-label .icon{width:16px;height:16px}.welcome-strip{padding:25px 27px;border:1px solid #e0e8f6;background:linear-gradient(110deg,#f9fbff,#edf3ff);border-radius:10px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:21px}.welcome-strip .eyebrow{font-size:11px;color:#7690b8;letter-spacing:.01em}.welcome-strip h2{font-size:21px;font-weight:650;margin:5px 0 8px}.welcome-strip p{font-size:13px;color:#7c8ca5}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:23px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px 22px}.stat-card>div{display:flex;align-items:center;justify-content:space-between;color:#718095;font-size:13px}.stat-card>div>.icon{width:20px;height:20px;color:#94a3bc}.stat-card>strong{display:block;font-size:31px;font-weight:700;margin:12px 0 7px;line-height:1.3;color:#2b3a50}.stat-card strong small{font-size:12px;font-weight:400;color:#8e98a9;margin-left:8px}.stat-card>p{font-size:11px;color:#9aa5b5;display:flex;align-items:center;justify-content:space-between}.stat-card p>.icon{width:15px;height:15px}.stat-card:hover{border-color:#afc3e8}.dashboard-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;margin-bottom:23px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;min-width:0;overflow:hidden}.panel-heading{padding:20px 23px;border-bottom:1px solid #edf0f4;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:66px}.panel-heading h2{font-size:17px;font-weight:650}.panel-heading .text-link{font-size:11px;color:#8091ac}.panel-heading .text-link>.icon{width:15px;height:15px}.empty-state{padding:43px 24px;text-align:center;display:flex;align-items:center;flex-direction:column}.empty-icon{display:flex;align-items:center;justify-content:center;width:49px;height:49px;border-radius:50%;background:#f4f6fa;color:#a5b1c4;margin-bottom:16px}.empty-icon .icon{width:24px;height:24px}.empty-state h3{font-size:16px;font-weight:550;color:#64748b}.empty-state p{font-size:12px;color:#9aa5b6;margin:9px 0 22px;line-height:1.9}.empty-state .btn{font-size:12px;min-height:38px}.recent-list>a{padding:17px 22px;display:flex;align-items:center;gap:13px;border-bottom:1px solid #f0f2f6;min-width:0}.recent-list>a:last-child{border-bottom:0}.recent-list>a:hover{background:#fafcff}.avatar{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:11px;background:#f0f4fb;color:#7b8fae;font-size:14px;font-weight:600;flex-shrink:0}.avatar.large{width:52px;height:52px;font-size:21px}.recent-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.recent-copy strong{font-size:14px;font-weight:600}.recent-copy small{font-size:11px;color:#98a3b4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-list time{font-size:11px;color:#99a4b5}.recent-list>a>.icon{width:15px;height:15px;color:#b5becc}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:3px 9px;border-radius:5px;font-size:11px;font-weight:550;line-height:1.6;white-space:nowrap;background:#f0f3f6;color:#64748b}.status-new{background:#eff5ff;color:#467be0}.status-contacted{background:#f1f0ff;color:#8273bc}.status-visit_scheduled{background:#fff6df;color:#ad8331}.status-proposal{background:#fdf0e7;color:#ba7e47}.status-contracted{background:#edf8f1;color:#558d70}.status-closed{background:#f1f3f6;color:#8994a3}.task-guide{list-style:none;padding:24px;display:grid;gap:22px}.task-guide li{display:flex;gap:15px;align-items:flex-start}.task-guide li>span{display:flex;align-items:center;justify-content:center;border:1px solid #e3e9f4;background:#f7f9fc;border-radius:50%;width:28px;height:28px;font-size:12px;color:#8094b3;flex-shrink:0}.task-guide strong{font-size:14px;font-weight:600}.task-guide p{font-size:12px;color:#99a4b4;margin-top:5px}.progress-panel{padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.progress-panel h2{font-size:15px;font-weight:600}.progress-panel p{font-size:12px;color:#8d99aa;margin-top:6px}.progress-panel .btn{font-size:12px;min-height:38px}.admin-footer{font-size:10px;color:#a3adba;text-align:center;padding:30px 15px 20px}.mobile-bottom{display:none}.white-note{background:#fff;margin:0 0 22px;font-size:13px}.filter-tabs{display:flex;align-items:stretch;gap:4px;min-height:53px;padding:0 20px;border-bottom:1px solid var(--line);overflow-x:auto;white-space:nowrap}.filter-tabs>a{padding:16px 13px;font-size:13px;color:#8190a5;border-bottom:2px solid transparent}.filter-tabs>a.active{border-color:var(--primary);color:var(--primary);font-weight:650}.filter-bar{padding:20px 23px;display:flex;align-items:center;gap:9px}.search-field{display:flex;align-items:center;border:1px solid #dbe2eb;border-radius:7px;padding-left:12px;max-width:440px;flex:1;min-width:0;background:#fff}.search-field>.icon{width:18px;height:18px;color:#97a4b6}.search-field input{width:100%;border:0;outline:0;background:transparent;font-size:14px;padding:11px;min-height:42px;min-width:0}.search-field input::placeholder{color:#a0aaba;font-size:12px}.search-field:focus-within{outline:2px solid #9ab9f0}.result-count{font-size:12px;color:#8a98aa;margin-left:auto;white-space:nowrap}.result-count strong{color:var(--primary);font-weight:600}.table-wrap{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.data-table th{background:#f8fafc;color:#8190a5;font-size:12px;font-weight:500;padding:13px 18px;border-top:1px solid #edf0f4;border-bottom:1px solid #e7ecf3;white-space:nowrap}.data-table td{padding:17px 18px;border-bottom:1px solid #edf1f5;color:#69798e;vertical-align:middle;min-height:56px;line-height:1.7}.data-table tr:last-child td{border-bottom:0}.data-table strong{font-weight:550;color:#475569;font-size:14px}.data-table small{display:block;color:#9aa6b7;font-size:11px;line-height:1.7;margin-top:6px}.leads-table .lead-status{width:150px}.leads-table .lead-status small{font-size:9px;white-space:nowrap;letter-spacing:0}.leads-table .lead-name{min-width:125px}.leads-table .lead-building{max-width:290px;min-width:170px}.leads-table .lead-building small{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lead-name a:hover{text-decoration:underline;text-underline-offset:4px}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;padding:22px;border-top:1px solid #edf0f4;font-size:12px;color:#8392a8}.detail-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.detail-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:22px;align-items:start}.summary-content{padding:24px}.person-summary{display:flex;align-items:center;gap:15px;padding-bottom:24px}.person-summary h3{font-size:20px;font-weight:650}.person-summary p{font-size:13px;margin-top:4px}.phone-link{display:flex;align-items:center;gap:6px;color:#71829a;font-size:14px;margin-top:7px}.phone-link>.icon{width:16px;height:16px}.detail-list{margin:0;display:grid}.detail-list>div{display:grid;grid-template-columns:95px 1fr;gap:12px;padding:12px 0;border-top:1px solid #eef1f6;font-size:13px;line-height:1.85}.detail-list dt{color:#8b99ad}.detail-list dd{margin:0;color:#5f6f85}.detail-list small{display:block;font-size:10px;color:#a3adbc}.subheading{font-size:14px;font-weight:650;margin:23px 0 12px}.message-box{border:1px solid #e9edf3;background:#fafbfc;border-radius:8px;padding:17px;font-size:13px;color:#748399;line-height:1.85;min-height:95px;overflow-wrap:anywhere}.panel-form{padding:24px}.panel-form .field{margin-bottom:22px}.panel-form .field>label{font-size:13px}.panel-form .field small{font-size:11px;color:#94a0b1}.panel-form .btn{min-height:42px}.history-panel{margin-top:23px}.history-list{list-style:none;padding:24px;display:grid;gap:22px}.history-list li{display:flex;gap:14px;align-items:flex-start}.history-dot{width:9px;height:9px;border-radius:50%;background:#8faee1;margin-top:8px;flex-shrink:0}.history-list li>div{flex:1}.history-meta{display:flex;align-items:center;justify-content:space-between;gap:15px}.history-meta strong{font-size:13px;font-weight:550;color:#73839a}.history-meta time{font-size:11px;color:#a0adbf}.history-list p{font-size:13px;color:#8794a8;margin-top:8px;line-height:1.9}.danger-zone{margin-top:22px;color:#ad6757;font-size:13px}.danger-zone>summary{cursor:pointer;padding:19px 24px;font-size:13px}.danger-zone>div{padding:0 24px 24px}.danger-zone p{font-size:12px;color:#9e8790;margin-bottom:19px}.danger-zone .btn{margin-top:15px;font-size:13px}.settings-panel{margin-top:22px}.span-two{grid-column:1 / -1}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:23px}.settings-links{display:flex;align-items:center;justify-content:flex-end;gap:25px;margin-top:24px;color:#8394af}.settings-links .text-link{font-size:12px}.settings-links .icon{width:17px;height:17px}.profile-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:22px;align-items:start}.system-list{margin:0;padding:8px 24px 22px}.system-list>div{display:grid;grid-template-columns:180px 1fr;gap:20px;font-size:13px;border-bottom:1px solid #eef1f6;padding:15px 0;line-height:1.8}.system-list dt{color:#8b99ad}.system-list dd{margin:0;color:#63758e}.admin-main>p.small{margin-top:20px}
@media(min-width:1440px){.hero-grid{min-height:605px}.hero h1{font-size:49px}}
@media(max-width:1199px){.site-nav{gap:20px}.hero h1{font-size:37px}.hero-grid{min-height:520px}.hero-actions{gap:16px;flex-wrap:wrap}.visual-label{bottom:42px;left:5px;padding:13px 16px}.contact-cta{margin-left:28px;margin-right:28px}.section-heading h2{font-size:25px}.service-card{padding:22px}.admin-main{padding:24px}.admin-header{padding:0 24px}.workspace-tabs{padding-left:24px}.stats-grid{gap:13px}.stat-card{padding:18px}.dashboard-grid{grid-template-columns:1.25fr 1fr;gap:18px}.leads-table{font-size:13px}.leads-table th,.leads-table td{padding-left:13px;padding-right:13px}.recent-list>a{gap:10px;padding:17px}.recent-list time{display:none}.service-detail{padding:24px;gap:15px}.contact-grid{gap:35px}.contact-guide h2{font-size:24px}}
@media(max-width:959px){.hero-grid{min-height:490px}.hero h1{font-size:33px}.hero-copy>p{font-size:15px}.hero-actions>.text-link{font-size:12px}.hero-note{font-size:11px}.visual-label strong{font-size:12px}.visual-label small{font-size:10px}.visual-label>.icon{width:23px;height:23px}.service-grid{gap:14px}.service-card h3{font-size:17px}.service-card p{font-size:13px}.dashboard-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr 1fr;gap:16px}.summary-content,.panel-form{padding:20px}.panel-heading{padding:18px 20px}.data-table:not(.leads-table){min-width:560px}.contact-grid{grid-template-columns:1fr}.contact-guide{display:none}.contact-grid .form-card{max-width:700px;width:100%;margin:auto}.stats-grid{gap:12px}.stat-card{padding:16px}.stat-card>div{font-size:11px}.stat-card>strong{font-size:27px}.welcome-strip h2{font-size:18px}.welcome-strip p{font-size:12px}}
@media(max-width:767px){.container{padding-left:20px;padding-right:20px}.site-header{height:72px}.brand-mark{width:34px;height:34px}.brand-text{font-size:19px}.brand-text small{font-size:8px}.menu-toggle{display:flex}.site-nav{display:none;position:absolute;top:71px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:20px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 15px 24px #24304410}.site-nav.open{display:flex}.site-nav>a{min-height:48px;display:flex;align-items:center}.site-nav>.btn{margin-top:13px;justify-content:center}.hero-grid{grid-template-columns:1fr;gap:0;min-height:0;padding-top:34px}.hero-copy{padding:0;text-align:center}.hero h1{font-size:37px;line-height:1.35;margin-top:17px;margin-bottom:19px}.hero-copy>p{font-size:15px;line-height:1.9}.hero-actions{justify-content:center;gap:17px;margin-top:26px}.hero-note{justify-content:center;font-size:10px;margin-top:17px}.hero-visual{max-width:430px;width:100%;margin:12px auto 0;padding:0 16px 36px}.hero-visual>img{width:100%}.visual-label{bottom:35px;left:36px;padding:13px 18px}.visual-label strong{font-size:12px}.visual-label small{font-size:10px}.section{padding-top:42px;padding-bottom:42px}.section-heading{align-items:flex-start;gap:20px;margin-bottom:25px}.section-heading h2{font-size:25px}.section-heading p{font-size:13px;margin-top:9px}.section-heading>.text-link{display:none}.service-grid{grid-template-columns:1fr;gap:12px}.service-card{padding:23px;position:relative}.service-icon{width:42px;height:42px;border-radius:10px;margin-bottom:14px}.service-icon .icon{width:23px;height:23px}.service-card h3{font-size:20px}.service-card p{min-height:0;max-width:95%;font-size:14px;margin-top:10px}.card-link{margin-top:17px;padding-top:15px}.steps-grid{grid-template-columns:1fr 1fr;gap:26px 21px}.step h3{font-size:16px;margin-top:12px}.step p{font-size:12px}.step-number{width:39px;height:39px;font-size:16px;line-height:37px}.contact-cta{margin:30px 20px 40px;padding:26px;display:block;border-radius:12px}.contact-cta h2{font-size:23px;line-height:1.5}.contact-cta p{font-size:13px}.contact-cta>.btn{margin-top:24px;width:100%}.footer-grid{display:block;padding-bottom:26px}.footer-contact{margin-top:26px}.footer-bottom{display:block;font-size:11px;padding-top:20px}.footer-bottom>div:last-child{margin-top:16px}.site-footer{padding-top:32px}.page-intro{padding-top:36px;padding-bottom:20px}.page-intro h1{font-size:29px;line-height:1.45;margin:12px 0}.page-intro p{font-size:14px}.compact-top{padding-top:10px}.service-details{grid-template-columns:1fr;gap:15px}.service-detail{padding:23px;gap:16px}.service-detail h2{font-size:20px}.service-detail p{font-size:13px}.check-list{font-size:13px}.process-row{gap:16px;padding:25px 0}.process-row h2{font-size:20px}.process-row p{font-size:14px;margin-top:10px}.process-note{font-size:11px}.faq-list summary{font-size:16px;padding:20px 0}.faq-list details p{font-size:14px}.contact-grid{gap:0}.form-card{padding:24px 20px}.form-heading{margin-bottom:22px}.form-heading h2{font-size:21px}.form-grid{gap:0 14px}.field input::placeholder{font-size:13px}.choice{font-size:12px;padding:10px 8px}.consent-box{padding:16px}.consent-box label{font-size:12px}.consent-box p{font-size:10px}.receipt-card{padding-top:43px;padding-bottom:50px}.receipt-card h1{font-size:27px;line-height:1.45}.receipt-card>p{font-size:14px}.receipt-detail{padding:20px 15px}.receipt-detail strong{font-size:13px}.policy{font-size:14px}.policy h2{font-size:18px}.auth-container{padding-top:32px}.auth-card{padding:26px}.install-container{padding:25px 16px 40px}.install-heading h1{font-size:25px}.preflight-grid{grid-template-columns:1fr}.install-form{padding:23px 18px}.install-form .form-grid{grid-template-columns:1fr}.install-heading p{font-size:13px}
.admin{font-size:14px}.admin-rail{display:none}.admin-shell{margin-left:0}.admin-header{height:60px;padding:0 16px}.admin-brand{font-size:16px;gap:0}.workspace-label{display:none}.admin-user{gap:4px;font-size:11px}.admin-user>a{gap:5px}.admin-user>a>.icon{display:none}.admin-user .icon-button{width:36px;height:44px}.workspace-tabs{height:43px;padding-left:7px;font-size:11px}.workspace-tabs>a,.workspace-tabs>.selected{padding:0 13px}.version-tag{margin-right:16px;font-size:9px}.admin-main{padding:20px 16px 76px}.admin-page-head{margin-bottom:18px}.breadcrumb{font-size:10px;margin-bottom:5px}.admin-page-head h1{font-size:23px}.date-label{font-size:10px}.date-label>.icon{width:14px;height:14px}.welcome-strip{padding:20px;margin-bottom:16px;display:block;border-radius:10px}.welcome-strip h2{font-size:19px;line-height:1.55;margin:5px 0 8px}.welcome-strip p{font-size:12px;line-height:1.8}.welcome-strip .btn{margin-top:17px;min-height:44px;font-size:13px}.stats-grid{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:18px}.stat-card{padding:16px 17px}.stat-card>div{font-size:12px}.stat-card>strong{font-size:29px;margin:12px 0 8px}.stat-card>div>.icon{width:18px;height:18px}.dashboard-grid{gap:18px;margin-bottom:18px}.panel-heading{padding:18px 18px;min-height:60px}.panel-heading h2{font-size:16px}.panel-heading .small{font-size:10px}.task-guide{padding:21px;gap:20px}.task-guide strong{font-size:13px}.task-guide p{font-size:11px}.progress-panel{display:block;padding:21px}.progress-panel h2{font-size:14px;line-height:1.6}.progress-panel p{font-size:11px;line-height:1.8}.progress-panel .btn{margin-top:16px;min-height:44px}.recent-list>a{padding:16px 18px;gap:11px}.recent-list .badge{font-size:10px;padding:3px 7px}.recent-copy small{font-size:10px}.mobile-bottom{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;border-top:1px solid var(--line);background:#fff;padding:6px 6px max(6px,env(safe-area-inset-bottom));height:64px;justify-content:space-around}.mobile-bottom>a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:#8391a6;font-size:10px;min-width:60px;min-height:48px;border-radius:8px}.mobile-bottom .icon{width:20px;height:20px}.mobile-bottom a:hover{background:#f4f7fc;color:var(--primary)}.admin-footer{font-size:9px;padding-top:25px}.white-note{font-size:12px;padding:14px;margin-bottom:16px}.filter-tabs{padding:0 10px;gap:0;min-height:48px}.filter-tabs>a{font-size:12px;padding:13px 11px}.filter-bar{padding:17px 16px;flex-wrap:wrap;gap:9px}.search-field{max-width:none;flex:1;min-width:160px}.search-field input{font-size:16px}.search-field input::placeholder{font-size:11px}.filter-bar>.btn{min-height:44px;font-size:12px;padding:9px 13px}.result-count{width:100%;margin-left:0;text-align:right;font-size:11px}.leads-table{display:block;width:100%}.leads-table thead{display:none}.leads-table tbody{display:block}.leads-table tr{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:20px 18px;border-top:1px solid var(--line)}.leads-table tr:last-child{border-bottom:0}.leads-table td{border:0!important;padding:0!important;display:block;min-width:0!important;width:auto!important;max-width:none!important;font-size:12px}.leads-table .lead-status{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between}.leads-table .lead-status small{margin:0;font-size:9px}.leads-table .lead-name{grid-column:1 / -1;padding-top:4px!important}.leads-table .lead-name strong{font-size:17px;font-weight:650}.leads-table .lead-name small{font-size:13px;margin-top:4px}.leads-table .lead-building{grid-column:1 / -1;padding-bottom:8px!important;border-bottom:1px solid #f0f3f7!important}.leads-table .lead-building strong{font-size:12px}.leads-table .lead-building small{font-size:11px;max-width:100%;white-space:normal}.leads-table td[data-label]::before{content:attr(data-label);display:block;font-size:10px;color:#a0abba;margin-bottom:4px}.leads-table .lead-link{align-self:center;text-align:right}.lead-link .btn{min-height:44px;min-width:80px;font-size:12px}.detail-grid,.profile-grid{grid-template-columns:1fr;gap:18px}.detail-toolbar>.small{font-size:9px}.detail-toolbar>.text-link{font-size:12px}.summary-content,.panel-form{padding:21px 18px}.person-summary h3{font-size:20px}.detail-list>div{grid-template-columns:78px 1fr;font-size:12px;gap:12px}.detail-list dt{font-size:11px}.message-box{font-size:12px;padding:15px}.history-panel{margin-top:18px}.history-list{padding:21px 18px}.history-meta{display:block}.history-meta strong{font-size:12px}.history-meta time{display:block;margin-top:5px;font-size:10px}.history-list p{font-size:12px;margin-top:9px}.panel-form .form-grid{grid-template-columns:1fr}.settings-panel .form-grid{grid-template-columns:1fr}.settings-panel{margin-top:18px}.form-actions{gap:10px}.form-actions>.btn{font-size:13px;flex:1;padding:9px}.settings-links{gap:18px;justify-content:center}.settings-links .text-link{font-size:11px}.system-list{padding:5px 18px 15px}.system-list>div{grid-template-columns:105px 1fr;gap:10px;font-size:12px}.system-list dt{font-size:11px}.danger-zone{font-size:12px}.danger-zone>summary{padding:17px 18px}.danger-zone>div{padding:0 18px 21px}.danger-zone .check-label{font-size:12px}.danger-zone .btn{min-height:44px}}
@media(max-width:389px){.container{padding-left:16px;padding-right:16px}.hero h1{font-size:31px}.hero-copy>p{font-size:13px}.hero-actions{flex-direction:column;gap:16px}.hero-visual{padding:0 0 34px}.visual-label{left:12px;bottom:28px;padding:12px 16px}.visual-label strong{font-size:11px}.contact-cta{margin-left:16px;margin-right:16px;padding:24px 20px}.page-intro h1{font-size:26px}.form-grid{grid-template-columns:1fr}.form-card{padding:22px 16px}.choice-grid{grid-template-columns:1fr}.input-action{gap:6px}.input-action>.btn{font-size:12px;padding:8px}.input-action>.btn>.icon{display:none}.receipt-card h1{font-size:24px}.receipt-detail span{align-items:flex-start;flex-direction:column;gap:3px}.admin-main{padding-left:13px;padding-right:13px}.admin-header{padding:0 13px}.admin-brand{font-size:14px}.admin-user>a{font-size:10px}.welcome-strip h2{font-size:17px}.stat-card{padding:14px}.stat-card>div{font-size:11px}.stat-card>div>.icon{width:16px;height:16px}.recent-list>a{padding:15px 13px;gap:8px}.recent-list>a>.icon{display:none}.filter-bar{padding:15px 13px}.search-field{min-width:130px}.filter-bar .btn{padding:9px 10px}.date-label{font-size:9px}.system-list>div{grid-template-columns:90px 1fr}.contact-cta h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.active-filter{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#edf4ff;color:#5575a3;font-size:12px;border:1px solid #dbe7fb;border-radius:8px;padding:12px 16px;margin-bottom:16px}.active-filter a{text-decoration:underline;font-size:11px}
/* 2단계 · 건물/호실 업무: 기존 표·탭·레일 체계 유지 */
.section-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;font-size:14px}.toolbar-actions{display:flex;gap:9px;flex-wrap:wrap}.building-steps{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:24px;padding:20px 24px;gap:16px}.building-steps li{display:flex;align-items:center;gap:11px;color:#8995a6;font-size:14px}.building-steps li>span{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#f0f3f7;font-size:13px;font-weight:650}.building-steps .current{color:#2563eb}.building-steps .current>span{background:#2563eb;color:#fff}.building-steps .done{color:#4b698c}.building-steps .done>span{background:#e9f0fc}.building-steps .icon{width:16px;height:16px}.building-form-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:24px;align-items:start}.onboarding-help{padding:25px}.onboarding-help h3{font-size:18px;margin:0 0 14px}.onboarding-help p{font-size:14px;color:#758296;line-height:1.85;margin-bottom:16px}.onboarding-help ol{padding-left:20px;display:grid;gap:12px;font-size:14px;color:#5a6b82;margin:20px 0 24px}.onboarding-help .help-icon{display:flex;justify-content:center;align-items:center;width:42px;height:42px;background:#f1f5fd;color:#5f80b0;border-radius:9px;margin-bottom:20px}.required-mark{font-size:11px;font-weight:500;color:#567bbb;margin-left:6px}.selected-address{display:flex;gap:16px;align-items:center;background:#edf4ff;border:1px solid #dce7f8;border-radius:9px;padding:20px 24px;margin-bottom:24px}.selected-address>.icon{width:28px;height:28px;color:#6484b1}.selected-address>div{min-width:0;flex:1}.selected-address span,.selected-address small{display:block;color:#7b91ad;font-size:12px}.selected-address strong{display:block;font-weight:650;font-size:16px;margin:3px 0}.selected-address>a{font-size:12px;white-space:nowrap}.parcel-form{border:1px solid var(--line);border-radius:8px;padding:20px}.parcel-form>div>strong{font-size:15px;font-weight:600}.parcel-fields{display:grid;grid-template-columns:minmax(110px,1.2fr) 1fr 1fr auto;gap:14px;align-items:end;margin-top:18px}.parcel-fields .field{margin:0}.parcel-fields>.btn{margin-bottom:1px}.parcel-form>p{margin-top:16px}.candidate-heading{margin:30px 0 16px}.candidate-heading h3{font-size:17px;font-weight:650}.candidate-heading h3 small{font-size:12px;font-weight:500;color:#8094b0;margin-left:8px}.candidate-heading p{font-size:13px;color:#8290a2;margin-top:5px}.candidate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.candidate-card{display:flex;flex-direction:column;justify-content:space-between;gap:20px;border:1px solid #dce3ed;border-radius:9px;padding:20px;min-width:0}.candidate-card h3{font-size:17px;margin:13px 0 5px}.candidate-card p{font-size:13px;color:#8390a2}.candidate-card dl{margin:18px 0;display:grid;gap:7px;font-size:13px}.candidate-card dl>div{display:grid;grid-template-columns:55px minmax(0,1fr);gap:12px}.candidate-card dt{color:#9aa5b4}.candidate-card dd{margin:0;color:#596e88}.candidate-card small{font-size:11px;color:#9aa6b6}.manual-register{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:25px 0;margin-bottom:5px}.manual-register strong{font-size:15px;font-weight:600}.manual-register p{font-size:13px;color:#8291a5;margin-top:4px}.compact-info{margin:0 0 20px}.compact-info>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:14px;padding:11px 0;border-bottom:1px solid #f0f3f6;font-size:14px}.compact-info dt{color:#8997aa;font-size:13px}.compact-info dd{margin:0;color:#5b6b81}.building-banner{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:10px;background:white;padding:24px;margin-bottom:16px}.building-banner-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid #e6edf7;border-radius:12px;color:#6a88ad;background:#f8fafd}.building-banner-icon>.icon{width:27px;height:27px}.building-banner>div{flex:1;min-width:0}.building-banner h2{font-size:23px;font-weight:700;margin-bottom:5px}.building-banner p{font-size:14px;color:#8896a8}.building-tabs{display:flex;gap:30px;border-bottom:1px solid #dce3ec;margin-bottom:24px;overflow:auto}.building-tabs a{font-size:14px;padding:10px 1px 14px;color:#8997ac;font-weight:550;white-space:nowrap}.building-tabs [aria-current]{color:#2563eb;border-bottom:2px solid #2563eb}.next-task{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;background:#edf4ff;border:1px solid #dbe7f8;border-radius:10px;margin-bottom:24px}.next-task .eyebrow{font-size:11px;color:#5a7cac}.next-task h3{font-size:20px;margin-top:6px}.next-task p{font-size:13px;color:#8496ad;margin-top:7px;line-height:1.8}.building-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.mini-stat{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:white;border:1px solid var(--line);border-radius:10px;gap:16px}.mini-stat>span{font-size:14px;color:#7a8ba3}.mini-stat>strong{font-size:26px;font-weight:700;white-space:nowrap;line-height:1.5}.mini-stat small{font-size:12px;font-weight:500;color:#8c9ab0;margin-left:7px}.building-detail-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(0,1.5fr);gap:24px;align-items:start}.ledger-values{padding:5px 24px 18px;margin:0;display:grid;grid-template-columns:1fr}.ledger-values>div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid #edf1f6;font-size:14px}.ledger-values>div:last-child{border:0}.ledger-values dt{color:#8c99ab;font-size:13px}.ledger-values dd{margin:0;color:#566b87;font-variant-numeric:tabular-nums}.manual-value{font-size:11px!important;color:#ab8223!important;display:inline-block!important;margin-left:7px}.status-active{background:#eaf5ee;color:#538066}.status-paused{background:#fff4dc;color:#a17e31}.status-archived,.status-inactive{background:#f0f2f5;color:#8a96a7}.status-unconfirmed{background:#fff4df;color:#a58335}.status-vacant{background:#ecf3fe;color:#6486b8}.status-occupied{background:#ecf5ee;color:#5f9270}.status-owner_use,.status-common{background:#f2edfc;color:#9883b7}.snapshot-list{padding:4px 24px 20px}.snapshot-list details{border-bottom:1px solid var(--line)}.snapshot-list summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:16px 0;gap:16px;font-size:14px}.snapshot-list summary span{font-size:12px;color:#9aa7b8}.snapshot-list details>div{padding:10px 0 20px}.snapshot-list pre{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f7fa;padding:18px;border-radius:8px;line-height:1.8}.small-empty{padding:30px 24px;color:#8c9bae;font-size:14px}.form-footnote{margin:18px 0}.integration-description{font-size:14px;color:#7f8fa5;line-height:1.85;margin:5px 0 24px}.batch-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.csv-upload{margin-top:24px}.batch-errors{padding:24px;background:#fff6f2;border-bottom:1px solid #f3ded2;font-size:14px;color:#ab7659}.batch-errors>ul{padding-left:20px;display:grid;gap:7px;margin-top:10px}.batch-preview{max-height:600px;overflow:auto}.batch-preview th{position:sticky;top:0}.invalid-row{background:#fff8f5}.compare-table input{width:19px;height:19px;accent-color:#2563eb}.compare-table tbody th{background:white;white-space:normal;font-size:13px;color:#6b7e99;font-weight:550}.table-note{margin:20px 24px}.units-table .unit-name strong,.buildings-table .building-name strong{font-size:16px;font-weight:650}.buildings-table small{max-width:400px}.metrics-form .field input,.units-table{font-variant-numeric:tabular-nums}.filter-bar select{min-height:44px;border:1px solid #dbe2eb;border-radius:7px;color:#7688a2;padding:8px 10px;background:white;max-width:220px;font-size:13px}.form-save-footer{padding:24px 0;display:flex;justify-content:flex-end}
@media(max-width:1050px){.building-form-layout{grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr)}.building-detail-layout{grid-template-columns:1fr}.parcel-fields{grid-template-columns:1.2fr 1fr 1fr}.parcel-fields>.btn{grid-column:1/-1;margin-top:5px}.batch-layout{grid-template-columns:1fr 1fr}.mini-stat{padding:18px;gap:8px}.mini-stat>span{font-size:13px}.candidate-grid{grid-template-columns:1fr}}
@media(max-width:767px){.section-toolbar{display:block;margin-bottom:18px;font-size:13px}.section-toolbar>p,.section-toolbar>div:first-child{margin-bottom:14px}.toolbar-actions .btn{flex:1;font-size:13px;padding:9px 12px}.building-steps{padding:16px 12px;gap:8px;margin-bottom:18px}.building-steps li{display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center;font-size:12px}.building-steps li strong{font-weight:600}.building-steps li>span{width:28px;height:28px}.building-form-layout,.batch-layout{grid-template-columns:1fr;gap:18px}.onboarding-help{padding:22px 18px}.onboarding-help p,.onboarding-help li{font-size:13px}.onboarding-help .help-icon{display:none}.selected-address{padding:18px;gap:12px;flex-wrap:wrap;margin-bottom:18px}.selected-address>.icon{width:23px;height:23px}.selected-address>div{flex:1}.selected-address strong{font-size:15px}.selected-address>a{margin-left:35px;width:100%}.parcel-form{padding:16px}.parcel-fields{gap:12px;grid-template-columns:1.2fr 1fr 1fr}.parcel-fields .field>label{font-size:12px}.parcel-fields input,.parcel-fields select{padding:10px 8px}.parcel-form>div>strong{font-size:14px}.candidate-card{padding:18px}.manual-register{display:block;padding:22px 0}.manual-register .btn{margin-top:14px;width:100%}.manual-register p{font-size:12px}.building-banner{padding:18px;gap:12px;flex-wrap:wrap;margin-bottom:10px}.building-banner-icon{width:42px;height:42px}.building-banner h2{font-size:21px}.building-banner p{font-size:13px}.building-banner>.badge{margin-left:54px}.building-tabs{gap:24px;margin-bottom:18px}.building-tabs a{font-size:13px}.next-task{display:block;padding:20px 18px;margin-bottom:18px}.next-task h3{font-size:18px}.next-task .btn{width:100%;margin-top:18px}.building-kpis{gap:9px;margin-bottom:18px}.mini-stat{display:block;padding:15px 12px}.mini-stat>span{display:block;font-size:11px;white-space:nowrap}.mini-stat>strong{display:block;font-size:25px;margin-top:7px}.mini-stat small{font-size:11px;margin-left:4px}.building-detail-layout{gap:18px}.compact-info>div{grid-template-columns:90px minmax(0,1fr);font-size:13px}.compact-info dt{font-size:12px}.ledger-values{padding:4px 18px 14px}.ledger-values>div{grid-template-columns:94px minmax(0,1fr);gap:12px;font-size:13px;padding:13px 0}.ledger-values dt{font-size:12px}.snapshot-list{padding:4px 18px 18px}.snapshot-list summary{flex-wrap:wrap;font-size:13px;gap:7px}.snapshot-list pre{padding:14px;font-size:11px}.units-table,.buildings-table{display:block}.units-table thead,.buildings-table thead{display:none}.units-table tbody,.buildings-table tbody{display:block}.units-table tr,.buildings-table tr{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;padding:20px 18px;border-top:1px solid var(--line)}.units-table td,.buildings-table td{display:block!important;border:0!important;padding:0!important;min-width:0;font-size:13px}.units-table td[data-label]::before,.buildings-table td[data-label]::before{content:attr(data-label);display:block;font-size:11px;color:#9eabbd;margin-bottom:4px}.units-table .unit-name,.buildings-table .building-name{grid-column:1/-1}.units-table .unit-name strong,.buildings-table .building-name strong{font-size:18px}.buildings-table .building-state{grid-column:1/-1}.buildings-table .building-name small{font-size:12px;white-space:normal;margin-top:5px}.units-table .unit-status{grid-column:1/-1}.row-action{text-align:right;grid-column:2;align-self:center}.row-action .btn{min-height:44px;font-size:12px}.filter-bar{flex-wrap:wrap}.filter-bar select{flex:1;min-width:0;max-width:100%;font-size:12px}.filter-bar>.search-field{flex-basis:100%;max-width:100%}.compare-table{min-width:560px}.compare-table th,.compare-table td,.batch-preview th,.batch-preview td{padding:13px 14px;font-size:13px}.batch-preview table{min-width:620px}.table-note{margin:18px}.batch-errors{padding:20px 18px;font-size:13px}.form-save-footer{padding-top:18px}.form-save-footer .btn{width:100%}.integration-description{font-size:13px}.form-footnote{font-size:12px}}
@media(max-width:389px){.building-steps li{font-size:11px}.building-steps{gap:4px;padding-left:9px;padding-right:9px}.parcel-fields{grid-template-columns:1fr 1fr}.parcel-fields .field:first-child{grid-column:1/-1}.mini-stat{padding:14px 10px}.mini-stat>span{font-size:10px}.mini-stat>strong{font-size:23px}.building-tabs{gap:20px}.building-banner h2{font-size:20px}}

.buildings-panel>.result-count,.units-panel>.result-count{padding:0 23px 15px}.building-banner p,.onboarding-help p,.integration-description,.ledger-values dt,.compact-info dt{color:#64748b}.building-name small,.candidate-card p,.candidate-card small{color:#76879c}
@media(max-width:767px){.data-table.units-table,.data-table.buildings-table{min-width:0;width:100%}.units-table td,.buildings-table td{min-height:0!important}.units-table .unit-name{grid-column:1}.units-table .unit-status{grid-column:2;grid-row:1;align-self:center;text-align:right}.units-table .badge{white-space:normal;line-height:1.5;max-width:150px;font-size:11px}.buildings-panel>.result-count,.units-panel>.result-count{padding:0 18px 15px}}

/* 3단계 연락처·계약·입퇴실 */
.form-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:22px 0 18px;margin-top:6px;font-size:16px;font-weight:650}.form-section-title small{font-size:12px;color:#64748b;font-weight:400}.selected-person{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:18px 20px;background:#f7f9fc;border:1px solid #e4eaf2;border-radius:8px;margin-bottom:24px}.selected-person strong{font-size:18px}.selected-person span{font-size:13px;color:#64748b}.selected-person a{margin-left:auto}.party-picker{padding-bottom:6px}.party-picker .form-footnote{margin-top:0}.contract-heading{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.contract-heading>strong{font-size:20px;color:#334155}.contract-heading small{font-size:12px;color:#64748b}.contract-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.contract-contact{display:grid;gap:6px;padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.contract-contact>span{font-size:12px;color:#64748b}.contract-contact>strong{font-size:22px;font-weight:700}.contract-contact>small{font-size:14px;color:#475569}.contract-contact:last-child{margin-bottom:0;border-bottom:0}.contract-note{font-size:14px;line-height:1.85;color:#475569;margin-bottom:18px}.service-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.service-tags .badge{padding:7px 10px}.primary-contact{color:#2563eb!important}.lease-unit-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:white;border:1px solid var(--line);border-radius:10px;padding:20px 24px;margin-bottom:24px}.lease-unit-bar>div{display:flex;align-items:baseline;gap:18px}.lease-unit-bar span{font-size:12px;color:#64748b}.lease-unit-bar strong{font-size:25px;color:#334155}.lease-unit-bar small{font-size:12px;color:#64748b}.lease-money-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.lease-money{background:#fff;border:1px solid var(--line);border-radius:10px;padding:23px 24px}.lease-money>span{font-size:13px;color:#64748b}.lease-money>strong{display:block;font-size:26px;font-weight:700;margin-top:10px;font-variant-numeric:tabular-nums}.lease-money>small{display:block;font-size:12px;color:#64748b;margin-top:8px}.lease-status-active{background:#eaf5ee;color:#426d54}.lease-status-registered{background:#ecf3fe;color:#4e6e9c}.lease-status-ended,.lease-status-cancelled{background:#f0f2f5;color:#64748b}.lease-status-open{background:#ecf3fe;color:#4e6e9c}.version-list{padding:0 24px}.version-list details{border-bottom:1px solid var(--line)}.version-list details:last-child{border-bottom:0}.version-list summary{display:flex;align-items:center;gap:16px;padding:18px 0;cursor:pointer;font-size:13px}.version-list summary>strong{color:#2563eb;font-variant-numeric:tabular-nums}.version-list summary>span{flex:1;min-width:0}.version-list time{color:#64748b;font-size:12px;white-space:nowrap}.version-list .compact-info{padding-bottom:18px}.related-links{padding:12px 24px}.related-links>a{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);min-height:52px;font-size:14px}.related-links>a:last-child{border:0}.related-links>a>.icon:last-child{margin-left:auto;color:#8798af}.related-links>p{padding:12px 0}.contract-guide{list-style:none;display:grid;gap:14px;margin:20px 0 24px;font-size:14px;color:#475569}.contract-guide li{display:flex;align-items:center;gap:10px}.contract-guide span{width:25px;height:25px;border-radius:50%;background:#eff5ff;color:#2563eb;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:650}.row-action{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.unit-status small{font-size:10px;color:#64748b}.building-tabs{overflow-x:auto;white-space:nowrap;scrollbar-width:thin}.building-tabs a{flex-shrink:0}.admin-rail nav{max-height:calc(100dvh - 155px);overflow-y:auto;scrollbar-width:thin}.housing-table .housing-title strong{font-size:15px}.housing-table .housing-action{white-space:nowrap}.housing-table .housing-state .badge{white-space:normal}
@media(max-width:1050px){.contract-summary-grid{gap:18px}.lease-money{padding:19px}.lease-money>strong{font-size:22px}.contract-heading small{flex-basis:100%}}
@media(max-width:767px){.contract-summary-grid{grid-template-columns:1fr;gap:18px}.form-section-title{display:block;padding-top:20px;font-size:15px}.form-section-title small{display:block;margin-top:6px}.selected-person{padding:17px;margin-bottom:20px;gap:10px}.selected-person strong{font-size:17px}.selected-person a{width:100%;margin-left:0;font-size:12px}.contract-heading{gap:10px;margin-bottom:14px}.contract-heading>strong{font-size:19px}.contract-heading small{font-size:11px}.contract-contact{margin-bottom:18px;padding-bottom:18px}.contract-contact>strong{font-size:21px}.contract-note{font-size:13px}.lease-unit-bar{padding:18px;margin-bottom:18px}.lease-unit-bar>div{display:grid;grid-template-columns:auto auto;gap:3px 12px}.lease-unit-bar span{grid-column:1/-1;font-size:11px}.lease-unit-bar strong{font-size:23px}.lease-unit-bar .text-link{font-size:12px}.lease-money-grid{grid-template-columns:1fr;gap:10px;margin-bottom:18px}.lease-money{padding:17px 18px;display:grid;grid-template-columns:auto 1fr;gap:5px 14px;align-items:center}.lease-money>span{font-size:12px}.lease-money>strong{font-size:23px;margin:0;text-align:right;word-break:normal}.lease-money>small{grid-column:2;text-align:right;margin:0;font-size:11px}.version-list{padding:0 18px}.version-list summary{gap:10px;flex-wrap:wrap;font-size:12px}.version-list summary>span{flex:1}.version-list time{flex-basis:100%;margin-left:28px;font-size:10px}.related-links{padding:8px 18px}.contract-guide{font-size:13px}.data-table.housing-table{min-width:0;width:100%;display:block}.housing-table thead{display:none}.housing-table tbody{display:block}.housing-table tr{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;padding:20px 18px;border-top:1px solid var(--line)}.housing-table td{display:block!important;border:0!important;padding:0!important;min-height:0!important;min-width:0;font-size:13px}.housing-table td[data-label]::before{content:attr(data-label);display:block;color:#64748b;font-size:11px;margin-bottom:4px}.housing-table .housing-title{grid-column:1}.housing-table .housing-title strong{font-size:16px}.housing-table .housing-title small{font-size:10px;word-break:break-all}.housing-table .housing-state{grid-column:2;grid-row:1;text-align:right;align-self:start}.housing-table .housing-action{grid-column:2;text-align:right;align-self:center}.housing-table .housing-action .btn{font-size:12px;min-height:44px;white-space:normal}.housing-table .housing-state .badge{font-size:10px;line-height:1.5}.row-action .btn{padding:7px 9px}.row-action .btn .icon{display:none}.building-tabs{scrollbar-width:none}.building-tabs::-webkit-scrollbar{display:none}}
@media(max-width:389px){.lease-money{grid-template-columns:1fr}.lease-money>strong,.lease-money>small{text-align:left;grid-column:1}.lease-money>strong{font-size:23px}}

.account-number{overflow-wrap:anywhere;word-break:break-all}
/* Stage 4: same typography and spacing, with narrow-screen reading and allocation cards. */
.utility-tabs{display:flex;gap:6px;overflow:auto;border-bottom:1px solid var(--line);margin:0 0 24px;padding:0 0 10px}.utility-tabs a{font-size:14px;font-weight:600;color:var(--muted);padding:10px 16px;white-space:nowrap;border-radius:7px}.utility-tabs a[aria-current]{background:#eaf1ff;color:var(--primary)}.utility-filter{display:flex;align-items:end;gap:14px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;margin-bottom:24px}.utility-filter .field{margin:0;flex:1;max-width:480px}.utility-building-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:24px;gap:16px}.utility-building{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:10px;padding:20px;min-width:0}.utility-building>.icon{color:var(--primary)}.utility-building div{flex:1;min-width:0}.utility-building span{display:block;font-size:13px;color:var(--muted);margin-top:5px}.utility-building:hover{background:#f8faff}.empty-utility{text-align:center;padding:48px 24px}.empty-utility>.icon{color:var(--primary);width:38px;height:38px;margin:0 auto 20px}.empty-utility h2{font-size:21px}.empty-utility p{color:var(--muted);max-width:650px;margin:12px auto 24px}.utility-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.btn-small{min-height:38px;padding:7px 12px;font-size:13px}.utility-table td small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.utility-unit-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.utility-unit-choices .choice{min-width:0;align-items:center;flex-wrap:wrap}.utility-unit-choices small{color:var(--muted);font-size:12px}.utility-link-chip{display:inline-block;margin:3px 7px 3px 0;font-size:13px;color:var(--muted)}.meter-link-rows{border:1px solid var(--line);border-radius:8px;overflow:hidden}.meter-link-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 16px;border-bottom:1px solid var(--line)}.meter-link-row:last-child{border-bottom:0}.meter-link-row label{display:flex;align-items:center;gap:12px;min-width:0}.meter-link-row>div{display:flex;align-items:center;gap:9px}.meter-link-row input[data-meter-share]{width:110px}.meter-link-row input[type=checkbox]{width:18px;height:18px}.utility-run-list{padding:0 24px}.utility-run-list>a{display:flex;gap:20px;align-items:center;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid var(--line)}.utility-run-list>a:last-child{border-bottom:0}.utility-run-list strong{font-size:18px}.utility-run-list span,.utility-run-list time{font-size:13px;color:var(--muted)}.utility-run-list .icon{margin-left:auto}.reading-grid{border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-bottom:22px}.reading-grid-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:20px;padding:20px;border-bottom:1px solid var(--line);align-items:center}.reading-grid-row:last-child{border-bottom:0}.reading-grid-title{min-width:0}.reading-grid-title>strong{display:block;font-size:16px}.reading-grid-title>span{display:block;font-size:12px;color:var(--muted);margin:4px 0}.reading-grid-row .field{margin:0}.reading-boundary{border:1px solid var(--line);border-radius:8px;margin:20px 0;padding:16px}.reading-boundary summary{cursor:pointer;font-size:15px;font-weight:650}.reading-boundary>p{margin:14px 0}.boundary-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-bottom:1px solid var(--line);padding:12px 0}.boundary-row .field{margin:0;min-width:0}.reading-boundary>button{margin-top:14px}.reading-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.reading-photo-grid figure{margin:0;padding:12px;border:1px solid var(--line);border-radius:9px;min-width:0}.reading-photo-grid img{width:100%;height:180px;object-fit:cover;border-radius:5px}.reading-photo-grid figcaption{font-size:12px;color:var(--muted);margin:8px 0;overflow-wrap:anywhere}.reading-photo-grid form{display:flex;flex-direction:column;gap:10px}.utility-upload{display:flex;gap:16px;align-items:end;margin-top:22px}.utility-upload .field{flex:1;min-width:0;margin:0}.utility-warning{background:#fff9ed;border:1px solid #efdbac;border-radius:10px;padding:24px;margin-bottom:24px}.utility-warning h2{font-size:18px;margin-bottom:12px}.utility-warning ul{padding-left:20px;color:#78632e;font-size:14px}.utility-warning li+li{margin-top:7px}.boundary-record{border-bottom:1px solid var(--line);padding:0 0 18px;margin-bottom:18px}.boundary-record p{font-size:14px;margin-top:8px}.utility-table tfoot td{font-weight:650;background:#f8faff}
@media(max-width:900px){.reading-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.utility-unit-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-grid-row{gap:12px}.utility-filter{flex-wrap:wrap}}
@media(max-width:767px){.utility-building-grid{grid-template-columns:1fr;padding:16px;gap:12px}.utility-building{padding:16px}.utility-tabs{margin-bottom:20px;gap:2px}.utility-tabs a{padding:9px 11px;font-size:13px}.utility-filter{padding:16px;align-items:stretch;flex-direction:column}.utility-filter .field{max-width:none}.utility-actions{gap:9px}.utility-actions .btn{flex:1}.utility-table td{min-width:0}.utility-table tfoot{display:block}.utility-table tfoot tr{display:flex;justify-content:space-between;flex-wrap:wrap;padding:16px;border-top:1px solid var(--line)}.utility-table tfoot td{display:block;border:0;padding:3px;background:transparent}.utility-table tfoot td:before{display:none}.utility-unit-choices{grid-template-columns:1fr}.reading-grid-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:16px;gap:12px}.reading-grid-title{grid-column:1/-1}.reading-photo-grid{grid-template-columns:1fr}.reading-photo-grid img{height:auto;max-height:320px}.utility-upload{flex-direction:column;align-items:stretch}.boundary-row{grid-template-columns:1fr}.utility-run-list{padding:0 16px}.utility-run-list>a{gap:8px}.utility-run-list strong{flex-basis:100%}.utility-warning{padding:18px}.empty-utility{padding:34px 18px}}
/* Monthly billing follows the existing blue/gray property management workbench. */
.billing-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0;padding:0}.billing-steps li{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;padding:14px 16px;border-radius:8px;font-size:13px;font-weight:650;color:#73839a}.billing-steps li>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#edf1f7;flex-shrink:0;font-size:12px}.billing-steps [aria-current]{border-color:#a9c6f6;color:#245caa;background:#f4f8ff}.billing-steps [aria-current]>span{background:#2563eb;color:#fff}.billing-create{display:flex;flex-wrap:wrap;gap:18px;align-items:end}.billing-create .field{width:220px;margin-bottom:0}.billing-create>p{width:100%;margin:0}.billing-settings>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:22px 24px;cursor:pointer;font-size:15px}.billing-settings>summary>span{font-size:12px;color:#64748b}.billing-settings[open]>summary{border-bottom:1px solid var(--line)}.billing-item-setting{display:grid;grid-template-columns:120px 1fr 1.4fr;gap:18px;align-items:center;border-bottom:1px solid var(--line);margin-bottom:20px}.billing-item-setting>strong{font-size:14px;color:#334155}.billing-previews{padding:24px;display:grid;gap:24px}.invoice-preview{border:1px solid var(--line);border-radius:10px;background:white;overflow:hidden;min-width:0}.invoice-preview>header{padding:24px;background:#f9fbfe}.invoice-preview h3{margin:9px 0;font-size:19px}.invoice-preview h2{font-size:25px;margin:12px 0}.invoice-preview header>strong{display:block;font-size:30px;letter-spacing:-.025em;color:#255ba4;font-variant-numeric:tabular-nums;margin:12px 0}.invoice-preview header p{font-size:13px;line-height:1.65;color:#64748b;margin:8px 0;overflow-wrap:anywhere}.invoice-payment{padding:20px 24px;border-top:1px solid var(--line)}.invoice-payment>strong{font-size:14px}.invoice-payment p{font-size:14px;margin:10px 0 0;line-height:1.7;overflow-wrap:anywhere}.invoice-detail{margin-top:24px}.billing-part-group{border:1px solid #dce5f1;border-radius:8px;padding:20px;margin:18px 0 28px;min-width:0}.billing-part-group legend{font-weight:700;font-size:14px;color:#334155;padding:0 8px}.billing-part{padding:18px 0;border-top:1px solid var(--line)}.billing-part .form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.billing-part .field{min-width:0}.billing-part-group>.small{line-height:1.75}.billing-part-group>button{margin-top:18px}.billing-schedule{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.billing-schedule>summary{cursor:pointer;font-size:14px;font-weight:650}.billing-schedule form{margin-top:18px;max-width:560px}.invoice-job{padding:18px 0;border-bottom:1px solid var(--line)}.invoice-job:last-child{border-bottom:0}.invoice-job p{font-size:13px;line-height:1.65;color:#64748b}.invoice-table{font-variant-numeric:tabular-nums}.invoice-table .housing-title{white-space:normal}.mobile-bottom{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:1100px){.billing-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-part .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.billing-steps{gap:8px}.billing-steps li{padding:12px 10px;font-size:12px;gap:8px}.billing-item-setting{grid-template-columns:1fr;gap:0;padding-bottom:12px}.billing-item-setting>strong{margin:4px 0 16px}.billing-previews{padding:16px}.invoice-preview>header{padding:20px 16px}.invoice-preview h2{font-size:21px}.invoice-preview header>strong{font-size:27px}.invoice-payment{padding:18px 16px}.billing-part-group{padding:14px}.billing-part .form-grid{grid-template-columns:1fr}.billing-create .field{width:100%}.billing-create>.btn{width:100%}.billing-settings>summary{padding:20px 16px;align-items:start}.billing-settings>summary>span{white-space:nowrap}.mobile-bottom a{font-size:10px;min-width:0}.billing-total-grid .lease-money{padding:20px}.invoice-job .utility-actions{flex-wrap:wrap}}

.billing-total-grid .lease-money>strong{overflow-wrap:anywhere;font-size:clamp(20px,2vw,26px)}

.mobile-bottom a[aria-current="page"]{background:#eff5ff;color:var(--primary);font-weight:700}

/* Stage 6: finance uses the established workspace type, spacing and surfaces. */
.finance-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin:20px 0}.finance-metrics .lease-money{min-width:0}.finance-metrics strong{font-size:clamp(19px,1.8vw,28px);letter-spacing:-.045em}.finance-accent{background:#edf4ff;border-color:#d1e1ff}.finance-alert strong{color:#b33e3e}.finance-breakdown{display:flex;flex-wrap:wrap;gap:12px 24px;color:#65758a;font-size:13px;margin:14px 0 22px}.finance-breakdown strong{color:#24354e;margin-left:5px}.finance-account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.finance-account-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:24px;min-width:0;overflow-wrap:anywhere}.finance-account-card>strong{font-size:18px;font-weight:700}.finance-account-card>small{color:#677991;font-size:12px}.finance-account-icon{width:44px;height:44px;border-radius:12px;background:#edf4ff;display:grid;place-items:center;color:#285daf}.finance-account-card .text-link{margin-top:10px}.finance-quick-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.finance-table td{overflow-wrap:anywhere}.finance-table small{display:block;color:#73839a;font-size:12px;line-height:1.6;margin-top:5px}.finance-table .housing-title strong{font-size:14px}.finance-state-unpaid,.finance-state-partial{background:#fff4dd;color:#936719}.finance-state-paid{background:#e8f7ef;color:#21754d}.finance-state-overpaid{background:#fcecec;color:#ac3838}.finance-state-cancelled{background:#eef0f3;color:#687386}.finance-filter{flex-wrap:wrap}.finance-filter .field{min-width:140px;flex:1}.finance-welcome{margin-bottom:20px}.finance-account-card:hover{border-color:#b4cbed;box-shadow:0 5px 16px #203f6710}.mobile-bottom{grid-template-columns:repeat(7,minmax(0,1fr))}
@media(max-width:1024px){.finance-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.finance-account-grid{grid-template-columns:1fr}.finance-account-card{padding:20px}.finance-metrics{gap:10px}.finance-metrics .lease-money{padding:16px 12px}.finance-metrics strong{font-size:19px}.finance-metrics small{font-size:10px}.finance-breakdown{display:grid;gap:10px}.finance-filter{align-items:stretch}.finance-filter .field{min-width:calc(50% - 10px)}.finance-quick-actions .btn{flex:1;min-width:130px}.finance-table small{font-size:11px}.mobile-bottom a{font-size:10px;padding-left:1px;padding-right:1px}.mobile-bottom svg{width:18px;height:18px}}
/* Keep amounts readable on narrow finance cards, including large totals. */
.finance-metrics .lease-money{display:block}
.finance-metrics .lease-money>strong{white-space:nowrap;font-size:clamp(18px,1.55vw,25px);text-align:left;margin-top:10px}
.finance-metrics .lease-money>small{margin-top:8px;text-align:left}
@media(max-width:600px){.finance-metrics{grid-template-columns:1fr}.finance-metrics .lease-money{padding:18px}.finance-metrics .lease-money>strong{font-size:22px}}
.history-list li>div{min-width:0}.history-meta time{white-space:nowrap}.history-list p{overflow-wrap:anywhere}
/* Stage 7: building notices and reviewed delivery. */
.message-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.message-metrics>div{border:1px solid var(--line);background:#fff;border-radius:16px;padding:22px;min-width:0}.message-metrics span{display:block;color:var(--muted);font-size:13px;font-weight:600}.message-metrics strong{display:block;font-size:30px;line-height:1.4;margin-top:9px;letter-spacing:-.7px}.message-metrics small{font-size:14px;margin-left:5px;font-weight:500}.message-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.message-shortcut{padding:24px;display:flex;flex-direction:column;gap:12px;color:var(--ink);transition:border-color .2s}.message-shortcut:hover{border-color:var(--gold)}.message-shortcut>span{color:#b87510}.message-shortcut strong{font-size:18px}.message-shortcut p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}.message-shortcut small{display:flex;align-items:center;gap:8px;font-size:13px;margin-top:auto}.message-notices{padding:0 24px}.message-notices article{padding:24px 0;border-top:1px solid var(--line)}.message-notices article:first-child{border-top:0}.message-notices article>div:first-child{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.message-notices small{font-size:12px;color:var(--muted)}.message-notices h3{font-size:19px;margin:15px 0 10px}.message-notices p{line-height:1.8;overflow-wrap:anywhere}.message-filter{flex-wrap:wrap}.message-selection{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;font-size:13px}.message-selection label{display:flex;align-items:center;gap:8px}.message-selection input,.message-target-table input{width:18px;height:18px;accent-color:#bf800d}.message-selection span{color:var(--muted)}.message-warning{color:#a1462f;line-height:1.6}.message-result-summary{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.message-result-summary>span{display:flex;gap:8px;align-items:center;font-size:13px}.message-recipient-list{padding:0 24px 24px}.message-recipient{border:1px solid var(--line);border-radius:14px;margin-top:16px;overflow:hidden}.message-recipient>summary{display:flex;align-items:center;gap:12px;padding:18px;cursor:pointer;list-style:none}.message-recipient>summary::after{content:'⌄';margin-left:6px;color:var(--muted)}.message-recipient-name{flex:1;min-width:0}.message-recipient-name strong{display:block;font-size:15px}.message-recipient-name small{display:block;font-size:12px;color:var(--muted);line-height:1.7;margin-top:4px;overflow-wrap:anywhere}.message-recipient-number{width:30px;height:30px;border-radius:50%;background:#f4f1ea;display:grid;place-items:center;font-size:12px;flex-shrink:0}.message-recipient-body{padding:0 20px 20px}.message-bubble{max-width:520px;border:1px solid #ece3c9;border-radius:16px;background:#fffcf2;padding:22px}.message-bubble-label{display:block;font-size:11px;color:#847555;margin-bottom:12px;font-weight:600}.message-bubble p{font-size:14px;line-height:1.9;white-space:normal;overflow-wrap:anywhere;margin:0}.message-recipient-reason{line-height:1.7;overflow-wrap:anywhere}.message-attempt{margin-top:18px;background:#f8f9fb;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:6px;overflow-wrap:anywhere}.message-attempt strong{font-size:13px}.message-attempt span,.message-attempt small{font-size:12px;color:var(--muted)}.message-retry{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.message-template{border:1px solid var(--line);border-radius:14px;padding:22px;margin:25px 0}.message-template legend{padding:0 8px;font-size:16px;font-weight:700}.message-variable-help{margin:20px 0}.message-variable-help summary{cursor:pointer;font-weight:600;font-size:14px}.message-variable-help p{font-size:13px;line-height:1.9;overflow-wrap:anywhere}.message-url{background:#f7f8fb;padding:12px;border-radius:8px;font-size:13px;overflow-wrap:anywhere}.message-install-guide{padding-left:22px;line-height:1.9;font-size:14px}.message-install-guide li{padding-left:4px;margin-bottom:12px}.message-install-guide code{overflow-wrap:anywhere;white-space:normal}.message-state-draft{background:#edf0f5;color:#54617a}.message-state-queued,.message-state-sending,.message-state-accepted{background:#fff4d5;color:#8b650d}.message-state-delivered,.message-state-done{background:#e8f4ed;color:#31634a}.message-state-failed,.message-state-uncertain,.message-state-blocked{background:#fdebe4;color:#9b4731}.message-state-cancelled{background:#edf0f5;color:#687386}
@media(max-width:760px){.message-shortcuts{grid-template-columns:1fr}.message-shortcut{padding:20px}.message-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.message-metrics>div{padding:18px}.message-metrics strong{font-size:26px}.message-notices{padding:0 18px}.message-selection{align-items:flex-start;flex-direction:column;gap:10px}.message-recipient-list{padding:0 14px 14px}.message-recipient>summary{padding:14px;flex-wrap:wrap;gap:9px}.message-recipient>summary>.badge{margin-left:39px}.message-recipient-name{flex-basis:calc(100% - 55px)}.message-recipient>summary::after{margin-left:auto}.message-recipient-body{padding:0 14px 14px}.message-bubble{padding:18px}.message-template{padding:16px}.message-steps strong{font-size:11px}}

.message-pagination{margin:22px 0;align-items:center}.message-recipient-list .consent-check,.panel-form>.consent-check{display:flex;gap:9px;align-items:flex-start;margin:15px 0;font-size:14px;line-height:1.7}.message-recipient-list .consent-check input,.panel-form>.consent-check input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--primary)}
