@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Noto+Sans+JP:wght@400;500;600;700&display=swap";
:root{--ink:#142e52;--primary:#142e52;--deep:#142e52;--muted:#526176;--line:#d9e1ec;--bg:#f5f7fb;--orange:#ff922e;--accent-soft:#fff0df;--white:#fff;--shadow:0 8px 35px #142e5210}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:DM Sans,Noto Sans JP,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}input,textarea,select{width:100%;color:var(--ink);background:#fff;border:1px solid #dce7f4;border-radius:8px;outline:none;padding:11px 13px;transition:all .15s}input:focus,textarea:focus,select:focus{border-color:#365778;box-shadow:0 0 0 3px #142e520b}textarea{resize:vertical}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.8px;margin-bottom:9px;font-size:30px;font-weight:600;line-height:1.4}h2{letter-spacing:-.3px;margin-bottom:9px;font-size:19px;font-weight:600}h3{margin-bottom:9px;font-size:16px;font-weight:600}p{color:#34465e;line-height:1.85}small{font-size:14px}svg{flex-shrink:0}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #8198b5}.btn{border:1px solid var(--primary);background:var(--primary);color:#fff;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:11px;padding:13px 19px;font-size:14px;font-weight:500;transition:background .18s,transform .18s;display:inline-flex}.btn:hover{background:#142e52;transform:translateY(-1px)}.btn.small{padding:9px 13px;font-size:14px}.btn.outline{color:var(--ink);background:#fff;border-color:#dce7f4}.btn.outline:hover{background:#f1f5fa}.full{width:100%}.text-link{color:#34465e;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:14px;font-weight:500;display:inline-flex}.icon-btn{color:#34465e;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;padding:7px;display:inline-flex}.icon-btn:hover{background:#f1f5fa}.button-row{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.logo{letter-spacing:-1.5px;color:var(--deep);align-items:center;gap:8px;font-size:28px;font-weight:700;display:inline-flex}.logo-symbol{background:var(--deep);color:#34465e;border-radius:9px;place-items:center;width:33px;height:33px;display:grid}.logo-dot{color:#34465e;margin-left:-7px}.eyebrow{letter-spacing:1.8px;color:#34465e;margin-bottom:11px;font-size:14px;font-weight:600;display:block}.eyebrow>span{background:#365778;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block}.language{color:#34465e;background:0 0;border:0;align-items:center;gap:6px;padding:8px;font-size:14px;font-weight:600;display:flex}.header-actions{align-items:center;gap:19px;display:flex}.public-header{background:#fbfcf9;border-bottom:1px solid #f1f5fa;justify-content:space-between;align-items:center;height:98px;padding:0 max(6%,50vw - 660px);display:flex}.public-header nav{color:#34465e;gap:34px;font-size:14px;display:flex}.public{background:#fbfcf9}.login-link{font-size:14px}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:48px;max-width:1440px;min-height:630px;margin:auto;padding:73px 6% 65px;display:grid}.hero h1{letter-spacing:-2.5px;margin:23px 0;font-size:58px;line-height:1.55}.hero h1 em{z-index:0;font-style:normal;position:relative}.hero h1 em:after{content:"";z-index:-1;background:#dce7f4;height:13px;position:absolute;bottom:3px;left:0;right:0}.hero-copy>p{max-width:405px;margin-bottom:28px;font-size:14px;line-height:2.2}.hero-actions{align-items:center;gap:25px;display:flex}.hero-trust{color:#34465e;gap:22px;margin-top:24px;font-size:14px;display:flex}.hero-trust span{align-items:center;gap:5px;display:flex}.hero-art{background:#f1f5fa;border-radius:150px 12px 12px;min-height:450px;position:relative;overflow:visible}.art-grid{border-radius:inherit;background-image:linear-gradient(#8198b514 1px,#0000 1px),linear-gradient(90deg,#8198b514 1px,#0000 1px);background-size:30px 30px;position:absolute;inset:0;overflow:hidden}.art-label{writing-mode:vertical-rl;letter-spacing:3px;color:#34465e;font-size:14px;position:absolute;top:22px;right:22px}.art-caption{letter-spacing:2px;color:#34465e;font-size:14px;position:absolute;bottom:22px;left:27px}.architecture{perspective:800px;width:73%;height:64%;position:absolute;top:23%;left:14%}.house-face{z-index:3;background:#f5f4e9;width:60%;height:64%;position:absolute;bottom:16%;left:4%;box-shadow:inset -10px 0 25px #8198b522}.house-roof{clip-path:polygon(50% 0,100% 100%,0 100%);z-index:5;background:#365778;width:66%;height:48%;position:absolute;top:-.5%;left:1%}.house-side{transform-origin:0 100%;z-index:2;background:#dce7f4;width:28%;height:65%;position:absolute;bottom:16%;left:64%;transform:skewY(-29deg)}.window{background:#8198b5;border:6px solid #e2e5d8;position:absolute;box-shadow:inset 4px 4px #36577833}.large-window{width:44%;height:39%;top:14%;left:8%}.large-window:after{content:"";background:#dce7f4;width:4px;height:100%;position:absolute;left:48%}.small-window{width:25%;height:24%;top:15%;right:9%}.door{background:#8198b5;border:4px solid #dce7f4;width:24%;height:41%;position:absolute;bottom:0;right:10%}.door:after{content:"";background:#365778;width:3px;height:10px;position:absolute;top:50%;right:3px}.ground{z-index:1;background:#8198b59c;border-radius:50%;height:22%;position:absolute;bottom:0;left:-15%;right:-5%;transform:skew(-35deg)}.plant{z-index:5;background:#365778;border-radius:50% 50% 40% 40%;width:19%;height:38%;position:absolute;bottom:13%;right:-8%;box-shadow:inset -10px 0 #36577848}.plant:after{content:"";background:#365778;width:4px;height:30px;position:absolute;bottom:-18px;left:48%}.plant2{background:#8198b5;width:14%;height:25%;bottom:13%;left:-12%}.float-card{z-index:10;background:#fffe;border:1px solid #fff;border-radius:11px;align-items:center;gap:12px;padding:16px 19px;display:flex;position:absolute;box-shadow:0 15px 45px #142e5216}.float-card strong{font-size:14px;display:block}.float-card small{color:#34465e;margin-top:4px;font-size:14px;display:block}.float-top{top:33px;left:-24px}.float-bottom{bottom:42px;right:-20px}.round-icon{color:#34465e;background:#f1f5fa;border-radius:12px;place-items:center;width:46px;height:46px;display:grid}.mini-check{color:#34465e;background:#dce7f4;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.public-strip{color:#34465e;border-top:1px solid #f1f5fa;border-bottom:1px solid #f1f5fa;justify-content:space-between;align-items:center;gap:35px;padding:29px 6%;font-size:14px;display:flex}.public-strip>span{align-items:center;gap:10px;display:flex}.public-strip svg{width:20px}.public-section{max-width:1440px;margin:auto;padding:72px 6%}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.section-heading p{margin-bottom:0;font-size:14px}.steps{grid-template-columns:repeat(3,1fr);gap:25px;margin-top:34px;display:grid}.steps article{background:#fff;border:1px solid #f1f5fa;border-radius:11px;padding:27px}.step-top{color:#34465e;justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.step-top span{color:#34465e;font-size:27px;font-weight:400}.steps p{margin-bottom:0;font-size:14px;line-height:2}.company-cta{color:#fff;background:#142e52;border-radius:13px;justify-content:space-between;align-items:center;gap:30px;margin:0 6% 65px;padding:36px 42px;display:flex}.company-cta p{color:#34465e;margin:0;font-size:14px}.company-cta .eyebrow{color:#34465e}.public footer{border-top:1px solid var(--line);color:#34465e;align-items:center;gap:28px;padding:32px 6%;font-size:14px;display:flex}.public footer .logo{margin-right:auto;font-size:25px}.info-page{max-width:1000px;min-height:65vh}.info-page h1{margin:35px 0 28px}.info-page p{max-width:700px;margin-bottom:35px;font-size:16px;line-height:2.2}.loading-page{flex-direction:column;justify-content:center;align-items:center;gap:24px;height:100vh;display:flex}.spinner{border:2px solid #dce7f4;border-top-color:#142e52;border-radius:50%;width:25px;height:25px;animation:.8s linear infinite spin}.loading{justify-content:center;padding:70px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.auth-layout{background:#fff;grid-template-columns:42% 58%;min-height:100vh;display:grid}.auth-layout>aside{color:#34465e;background:#142e52;flex-direction:column;justify-content:space-between;min-height:100vh;padding:50px 12%;display:flex}.auth-layout aside .logo{color:#fff}.auth-layout aside .logo-symbol{color:#34465e;background:#dce7f4}.auth-layout aside h1{letter-spacing:-1px;margin:25px 0;font-size:42px;line-height:1.65}.auth-layout aside p{color:#34465e;font-size:14px;line-height:2.2}.auth-layout aside small{color:#34465e}.auth-layout>main{padding:40px 12%}.auth-form{max-width:400px;margin:60px auto}.auth-form h2{font-size:25px}.auth-form>p{font-size:14px}.field{margin-bottom:17px;display:block}.field>span{color:#34465e;margin-bottom:7px;font-size:14px;font-weight:500;display:block}.field small{color:#34465e;margin-top:5px;display:block}.checkbox{color:#34465e;align-items:flex-start;gap:9px;margin:19px 0;font-size:14px;line-height:1.9;display:flex}.checkbox input{accent-color:#142e52;width:15px;min-width:15px;margin-top:4px}.segmented{background:#f1f5fa;border-radius:8px;gap:5px;margin:25px 0;padding:4px;display:flex}.segmented button{color:#34465e;background:0 0;border:0;border-radius:6px;flex:1;padding:9px;font-size:14px}.segmented button.active{color:#34465e;background:#fff;box-shadow:0 2px 6px #142e5210}.auth-switch{text-align:center;margin-top:24px}.auth-switch a{color:#34465e;font-weight:600}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:50;background:#fff;flex-direction:column;width:232px;padding:29px 20px;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar>.logo,.sidebar>a{margin-left:9px}.workspace-label{color:#34465e;letter-spacing:.7px;justify-content:space-between;align-items:center;margin:42px 11px 17px;font-size:14px;display:flex}.workspace-label span{color:#34465e;background:#f1f5fa;border-radius:3px;padding:2px 5px;font-size:14px}.sidebar nav{flex-direction:column;gap:6px;display:flex}.sidebar nav a{color:#34465e;border-radius:7px;align-items:center;gap:12px;padding:13px 14px;font-size:14px;font-weight:500;display:flex}.sidebar nav a.active{color:#34465e;background:#f1f5fa}.sidebar nav a svg,.sidebar nav a.active svg{color:#34465e}.nav-dot{background:#365778;border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-help{color:#34465e;background:#f5f8f0;border-radius:9px;margin-top:auto;padding:19px 16px}.sidebar-help strong{color:#34465e;margin:10px 0 6px;font-size:14px;display:block}.sidebar-help p{color:#34465e;margin-bottom:15px;font-size:14px;line-height:1.9}.sidebar-help a{color:#34465e;align-items:center;gap:5px;font-size:14px;display:flex}.sidebar-user{border-top:1px solid var(--line);align-items:center;gap:9px;margin:24px -3px -5px;padding-top:21px;display:flex}.avatar{color:#34465e;background:#f1f5fa;border-radius:50%;justify-content:center;align-items:center;width:37px;min-width:37px;height:37px;font-size:14px;font-weight:600;display:inline-flex}.sidebar-user strong{text-overflow:ellipsis;max-width:98px;font-size:14px;font-weight:500;display:block;overflow:hidden}.sidebar-user small{color:#34465e;font-size:14px}.sidebar-user .icon-btn{margin-left:auto}.app-main{flex:1;min-width:0;margin-left:232px}.app-header{border-bottom:1px solid var(--line);background:#fffc;justify-content:space-between;align-items:center;height:78px;padding:0 38px;display:flex}.breadcrumb{color:#34465e;align-items:center;gap:13px;font-size:14px;display:flex}.breadcrumb strong{color:#34465e;font-weight:500}.live-indicator{color:#34465e;align-items:center;gap:7px;font-size:14px;display:flex}.live-indicator span{background:#8198b5;border-radius:50%;width:5px;height:5px}.small-avatar{width:30px;min-width:30px;height:30px;font-size:14px}.notification-button{position:relative}.notification-button i{background:#bc985c;border-radius:50%;width:5px;height:5px;position:absolute;top:5px;right:7px}.workspace-content{max-width:1550px;min-height:calc(100vh - 125px);margin:auto;padding:35px 38px 40px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.page-heading .eyebrow{margin-bottom:9px;font-size:14px}.page-heading h1{letter-spacing:-.8px;font-size:26px}.page-heading p{color:#34465e;margin-bottom:0;font-size:14px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:29px;display:grid}.stat-card{border:1px solid var(--line);background:#fff;border-radius:10px;padding:20px 20px 17px}.stat-card>div{color:#34465e;justify-content:space-between;align-items:center;font-size:14px;display:flex}.stat-card>div svg{color:#34465e;width:17px}.stat-card>strong{letter-spacing:-1px;margin:9px 0 8px;font-size:33px;font-weight:500;line-height:1.5;display:block}.stat-card>strong small{color:#34465e;margin-left:8px;font-size:14px;font-weight:400}.stat-card p{color:#34465e;align-items:center;gap:5px;margin:0;font-size:14px;display:flex}.stat-dot{background:#8198b5;border-radius:50%;width:4px;height:4px}.dot-1{background:#d2b378}.dot-2{background:#89a1b1}.panel{border:1px solid var(--line);background:#fff;border-radius:11px;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:20px;padding:24px 25px 19px;display:flex}.panel-heading h2{align-items:center;gap:9px;font-size:15px;display:flex}.panel-heading p{color:#34465e;margin:0;font-size:14px}.count{color:#34465e;background:#f1f5fa;border-radius:4px;justify-content:center;align-items:center;min-width:19px;height:19px;font-size:14px;font-weight:500;display:inline-flex}.search{border:1px solid var(--line);color:#34465e;border-radius:7px;align-items:center;gap:7px;min-width:210px;padding:0 10px;display:flex}.search input{box-shadow:none;border:0;padding:9px 0;font-size:14px}.tabs{border-bottom:1px solid var(--line);gap:23px;padding:0 25px;display:flex;overflow-x:auto}.tabs button{color:#34465e;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:12px 0 15px;font-size:14px;display:flex}.tabs button.active{color:#34465e;border-bottom-color:#365778;font-weight:600}.project-grid{grid-template-columns:repeat(3,1fr);gap:18px;padding:23px;display:grid}.project-card{border:1px solid #f1f5fa;border-radius:9px;padding:20px;transition:all .2s}.project-card:hover{box-shadow:var(--shadow);border-color:#8198b5;transform:translateY(-2px)}.project-card-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px;display:flex}.project-icon{color:#34465e;background:#f2f5ed;border-radius:9px;place-items:center;width:42px;height:42px;display:grid}.project-number{letter-spacing:1px;color:#34465e;font-size:14px}.project-card h3{margin:6px 0 9px;font-size:14px;font-weight:500}.project-address{color:#34465e;margin-bottom:15px;font-size:14px}.project-facts{color:#34465e;gap:9px;font-size:14px;display:flex}.project-facts span{background:#f8faf5;border:1px solid #f1f5fa;border-radius:4px;padding:4px 7px}.project-card-bottom{color:#34465e;border-top:1px solid #edf0e9;justify-content:space-between;margin-top:22px;padding-top:14px;font-size:14px;display:flex}.project-card-bottom>span{align-items:center;gap:5px;display:flex}.status{white-space:nowrap;color:#34465e;background:#f1f5fa;border:1px solid #f1f5fa;border-radius:5px;align-items:center;padding:3px 7px;font-size:14px;font-weight:500;display:inline-flex}.s-submitted,.s-pending,.s-contracting,.s-awaiting_customer{color:#34465e;background:#fcf7e9;border-color:#f1e9d1}.s-in_progress,.s-issued{color:#34465e;background:#eef4f7;border-color:#e1ebf0}.s-completed,.s-signed,.s-paid,.s-clean{color:#34465e;background:#f1f5fa;border-color:#dce7f4}.s-cancelled,.s-suspended,.s-blocked{color:#34465e;background:#fbefea;border-color:#f1dfd5}.s-superseded{color:#526176;background:#f3f3f3;border-color:#e9e9e9}.empty{text-align:center;flex-direction:column;align-items:center;padding:62px 30px;display:flex}.empty-icon{color:#34465e;background:#f4f7ee;border-radius:19px;place-items:center;width:67px;height:67px;margin-bottom:20px;display:grid}.empty h3{font-size:15px;font-weight:500}.empty p{color:#34465e;max-width:350px;font-size:14px}.empty .btn{margin-top:10px}.dashboard-note{background:#f1f5fa;border:1px solid #f1f5fa;border-radius:10px;align-items:center;gap:17px;margin-top:25px;padding:21px 24px;display:flex}.dashboard-note .round-icon{background:#f1f5fa}.dashboard-note strong{color:#34465e;font-size:14px;font-weight:500}.dashboard-note p{color:#34465e;margin:5px 0 0;font-size:14px}.dashboard-note>a{color:#34465e;margin-left:auto}.app-footer{color:#34465e;justify-content:space-between;padding:15px 38px;font-size:14px;display:flex}.alert{color:#34465e;background:#f8f3e5;border:1px solid #ebe3ca;border-radius:8px;align-items:center;gap:12px;margin-bottom:22px;padding:15px 18px;font-size:14px;display:flex}.alert.error{color:#34465e;background:#fff1ee;border-color:#f4d6ce}.alert .icon-btn{margin-left:auto}.notification-panel{z-index:60;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:10px;width:350px;max-height:70vh;padding:18px;position:absolute;top:67px;right:32px;overflow:auto}.notification-panel>a{border-top:1px solid var(--line);padding:14px 0;display:block}.notification-panel strong{font-size:14px;font-weight:500;display:block}.notification-panel small{color:#34465e;margin-top:5px;display:block}.notification-panel p{font-size:14px}.toast{z-index:100;color:#fff;box-shadow:var(--shadow);background:#142e52;border-radius:9px;align-items:center;gap:10px;padding:14px 23px;font-size:14px;display:flex;position:fixed;bottom:27px;left:50%;transform:translate(-50%)}.form-panel{max-width:900px;margin:0 auto;padding:32px}.form-grid{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.form-section{align-items:center;gap:16px;margin:10px 0 28px;display:flex}.section-number{color:#34465e;background:#f1f5fa;border-radius:9px;place-items:center;width:39px;height:39px;font-size:14px;display:grid}.form-section h2{margin:0 0 3px;font-size:16px}.form-section p{margin:0;font-size:14px}.form-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:23px;padding-top:23px;display:flex}.form-actions>span{color:#34465e;font-size:14px}.detail-grid{grid-template-columns:1.65fr 1fr;gap:22px;display:grid}.detail-panel{padding:25px}.detail-panel>h2{margin-bottom:24px;font-size:17px}.detail-panel>p{font-size:14px}.project-heading{margin-top:20px}.separator{color:#34465e;padding:0 9px}.progress-track{border:1px solid var(--line);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin:27px 0 20px;padding:21px;display:flex}.progress-track>div{color:#34465e;flex:1;align-items:center;gap:8px;font-size:14px;display:flex;position:relative}.progress-track>div:after{content:"";background:#f1f5fa;flex:1;height:1px;margin:0 8px}.progress-track>div:last-child{flex:none}.progress-track>div:last-child:after{display:none}.progress-track span{background:#f3f6ed;border-radius:50%;place-items:center;width:23px;height:23px;font-size:14px;display:grid}.progress-track .done{color:#34465e}.progress-track .done span{color:#34465e;background:#f1f5fa}.project-tabs{gap:30px;margin-bottom:23px;padding:0 2px}dl{margin:0}dt{color:#34465e;margin-top:20px;margin-bottom:6px;font-size:14px}dd{color:#34465e;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.9}.pre-wrap{white-space:pre-wrap}.next-step{color:#34465e;background:#f5f8ef;border-radius:8px;align-items:flex-start;gap:12px;margin:25px 0;padding:17px;display:flex}.next-step strong{font-size:14px}.next-step p{color:#34465e;margin:4px 0 0;font-size:14px}.assigned-company{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:15px 0;display:flex}.assigned-company>div{flex:1}.assigned-company strong{font-size:14px;font-weight:500;display:block}.assigned-company small{color:#34465e;margin-top:4px;font-size:14px;display:block}.assign-form{margin-top:26px}.muted{color:#34465e;font-size:14px}.quote-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.quote-card{border:1px solid var(--line);border-radius:10px;padding:22px}.quote-card .section-heading{gap:6px;margin-bottom:8px}.quote-card .section-heading strong{font-size:14px}.quote-card>small{color:#34465e;font-size:14px}.quote-card>h2{letter-spacing:-1px;margin:20px 0 0;font-size:28px;font-weight:500}.quote-card dd{max-height:100px;font-size:14px;overflow:auto}.quote-card dl{margin-bottom:25px}.quote-card .btn{margin-top:9px}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}th{color:#34465e;white-space:nowrap;border-bottom:1px solid var(--line);background:#fafbf7;padding:13px 20px;font-size:14px;font-weight:500}td{color:#34465e;border-bottom:1px solid #f1f5fa;padding:17px 20px}tr:last-child td{border-bottom:0}.money{white-space:nowrap;color:#34465e;font-weight:600}.table-doc{align-items:center;gap:10px;display:flex}.table-doc strong{color:#34465e;font-size:14px;font-weight:500;display:block}.table-doc small{color:#34465e;margin-top:3px;font-size:14px;display:block}.subheading{margin-top:35px;font-size:14px}.payment-row,.file-row{border-bottom:1px solid var(--line);color:#34465e;align-items:center;gap:15px;padding:17px 0;font-size:14px;display:flex}.payment-row>span{color:#34465e;font-size:14px}.payment-row button{margin-left:auto}.file-row>div{flex:1}.file-row strong{font-size:14px;font-weight:500;display:block}.file-row small{color:#34465e;margin-top:4px;font-size:14px;display:block}.timeline{margin-top:25px}.timeline>div{gap:17px;padding-bottom:24px;display:flex;position:relative}.timeline>div>span{background:#8198b5;border-radius:50%;width:8px;height:8px;margin-top:6px}.timeline>div:before{content:"";background:#f1f5fa;width:1px;position:absolute;top:16px;bottom:3px;left:3px}.timeline strong{font-size:14px;font-weight:500}.timeline p{margin:4px 0 0;font-size:14px}.chat-module{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:260px 1fr;height:650px;display:grid;overflow:hidden}.chat-list{border-right:1px solid var(--line);background:#fff}.chat-list h3{border-bottom:1px solid var(--line);justify-content:space-between;margin:0;padding:22px 19px;font-size:14px;display:flex}.chat-list>button{text-align:left;color:#34465e;background:#fff;border:0;border-bottom:1px solid #f0f3e9;align-items:center;gap:10px;width:100%;padding:19px 13px;display:flex}.chat-list>button.active{background:#f1f5fa}.chat-list>button>div{flex:1}.chat-list strong{color:#34465e;font-size:14px;font-weight:500;display:block}.chat-list small{color:#34465e;margin-top:4px;font-size:14px;display:block}.chat-main{flex-direction:column;min-width:0;min-height:0;display:flex}.chat-main>header{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:12px;padding:17px 22px;display:flex}.chat-main>header>div{flex:1}.chat-main>header strong{font-size:14px;font-weight:500;display:block}.chat-main>header small{color:#34465e;font-size:14px;display:block}.chat-main>header>svg{color:#34465e}.chat-project-bar{color:#34465e;background:#f4f7ee;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 18px;font-size:14px;display:flex}.chat-project-bar>span{margin-left:auto;font-size:14px}.chat-scroll{background:#f4f6f0 radial-gradient(#dce7f430 1px,#0000 1px) 0 0/17px 17px;flex:1;padding:20px 27px;overflow-y:auto}.chat-notice{text-align:center;color:#34465e;justify-content:center;gap:6px;margin:0 auto 25px;font-size:14px;display:flex}.message-row{margin-bottom:13px;display:flex}.message-row.own{justify-content:flex-end}.message-bubble{background:#fff;border:1px solid #f1f5fa;border-radius:0 9px 9px;max-width:78%;padding:11px 13px;box-shadow:0 2px 3px #142e5203}.own .message-bubble{background:#f1f5fa;border-color:#dce7f4;border-radius:9px 0 9px 9px}.message-bubble>strong{color:#34465e;font-size:14px;font-weight:500;display:block}.message-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;color:#34465e;margin:5px 0;font-size:14px}.message-bubble>small{color:#34465e;justify-content:flex-end;align-items:center;gap:4px;margin-top:4px;font-size:14px;display:flex}.message-file{word-break:break-all;align-items:center;gap:8px;margin-top:10px;font-size:14px;display:flex}.message-file small{font-size:14px}.chat-composer{border-top:1px solid var(--line);background:#fff;align-items:center;gap:12px;padding:14px 18px;display:flex}.chat-composer input{background:#f5f7f0;border:0;font-size:14px}.send-button{color:#fff;background:#142e52;border:0;border-radius:50%;place-items:center;width:40px;min-width:40px;height:40px;display:grid}.chat-empty{color:#34465e;flex-direction:column;justify-content:center;align-items:center;height:80%;display:flex}.chat-empty p{color:#34465e;margin-top:15px;font-size:14px}.inbox-row{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:23px 25px;display:flex}.inbox-row>div{flex:1}.inbox-row strong{font-size:14px;font-weight:500}.inbox-row small{color:#34465e;margin-top:5px;font-size:14px;display:block}.company-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}.company-grid .button-row{margin-top:25px}.document-top{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.save-indicator{color:#34465e;align-items:center;gap:6px;font-size:14px;display:flex}.save-indicator>span{background:#8198b5;border-radius:50%;width:5px;height:5px}.save-indicator.error,.save-indicator.unsaved,.save-indicator.saving{color:#34465e}.heading-muted{color:#34465e;font-size:19px;font-weight:400}.document-tabs{margin-bottom:24px;padding:0}.document-workspace{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:27px;display:grid}.document-workspace.read-only{max-width:780px;margin:auto;display:block}.editor-section{border-bottom:1px solid var(--line);padding:23px}.editor-section h3{align-items:center;gap:10px;margin-bottom:23px;font-size:14px;display:flex}.editor-section h3>span{color:#34465e;background:#f1f5fa;border-radius:4px;padding:3px 7px;font-size:14px}.editor-section input,.editor-section textarea,.editor-section select{padding:10px;font-size:14px}.editor-section .field>span{font-size:14px}.line-item{border:1px solid #dce7f4;border-radius:7px;margin-bottom:12px;padding:11px 12px}.line-heading{align-items:center;gap:7px;display:flex}.line-heading>span{color:#34465e;font-size:14px}.line-heading input{background:#f8faf3;border:0!important;padding:4px!important;font-size:14px!important}.line-description{margin:9px 0}.line-numbers{grid-template-columns:1fr .8fr 1.5fr 1.4fr;align-items:center;gap:7px;display:grid}.line-numbers .field{margin:0}.line-numbers strong{text-align:right;color:#34465e;padding-top:16px;font-size:14px}.add-line{color:#34465e;background:#fafcf6;border:1px dashed #dce7f4;border-radius:6px;justify-content:center;align-items:center;gap:7px;width:100%;margin:15px 0 22px;padding:11px;font-size:14px;display:flex}.document-preview{position:sticky;top:20px}.preview-label{letter-spacing:1px;color:#34465e;align-items:center;gap:7px;margin:0 0 12px;font-size:14px;display:flex}.preview-label>span{margin-left:auto}.paper{color:#34465e;background:#fff;border:1px solid #dce7f4;min-height:620px;padding:34px;box-shadow:0 5px 25px #142e5210}.paper-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:36px;display:flex}.paper-brand{align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.paper-top>span{text-align:right;letter-spacing:.6px;color:#34465e;font-size:14px}.paper h2{letter-spacing:2px;border-bottom:1px solid #f1f5fa;margin-bottom:22px;padding-bottom:16px;font-size:24px;font-weight:500}.paper-parties{justify-content:space-between;gap:20px;margin:0 0 26px;display:flex}.paper-parties>div{max-width:50%}.paper-parties>div:last-child{text-align:right}.paper-parties strong{font-size:14px;font-weight:500;display:block}.paper-parties small{color:#34465e;letter-spacing:.7px;margin-bottom:5px;font-size:14px;display:block}.paper-parties p{color:#34465e;margin:3px 0;font-size:14px}.paper-amount{background:#f1f5fa;border-left:3px solid #365778;justify-content:space-between;align-items:center;margin-bottom:25px;padding:16px 18px;display:flex}.paper-amount span{color:#34465e;font-size:14px}.paper-amount strong{color:#34465e;letter-spacing:-.8px;font-size:25px;font-weight:500}.paper-table th{color:#34465e;background:#fff;border-bottom:1px solid #dce7f4;padding:9px 4px;font-size:14px}.paper-table td{color:#34465e;padding:12px 4px;font-size:14px}.paper-table td strong{color:#34465e;font-size:14px;font-weight:500;display:block}.paper-table td small{color:#34465e;font-size:14px}.paper-table th:last-child,.paper-table td:last-child{text-align:right;white-space:nowrap}.paper-totals{max-width:60%;margin:20px 0 26px auto}.paper-totals>div{color:#34465e;justify-content:space-between;padding:5px 0;font-size:14px;display:flex}.paper-totals .total{color:#34465e;border-top:1px solid #dce7f4;margin-top:7px;padding-top:11px}.paper-notes{margin-bottom:17px;font-size:14px}.paper-notes>strong{color:#34465e;font-size:14px;font-weight:600}.paper-notes p{white-space:pre-wrap;color:#34465e;overflow-wrap:anywhere;margin:4px 0 0;font-size:14px;line-height:1.9}.paper-footer{color:#34465e;border-top:1px solid #f1f5fa;justify-content:space-between;margin-top:30px;padding-top:15px;font-size:14px;display:flex}.signature{color:#34465e;border:1px solid #dce7f4;align-items:center;gap:10px;margin-top:12px;padding:12px;display:flex}.signature strong{font-size:14px;display:block}.signature small{color:#34465e;font-size:14px;display:block}.sign-button{margin-top:20px}.revision-row{border-bottom:1px solid var(--line);align-items:center;gap:17px;padding:20px 0;display:flex}.version-circle{color:#34465e;background:#f1f5fa;border-radius:9px;place-items:center;min-width:40px;height:40px;font-size:14px;display:grid}.revision-row>div{flex:1}.revision-row strong{font-size:14px;font-weight:500}.revision-row small{color:#34465e;font-size:14px;display:block}.comparison{margin-top:30px}.comparison h3{font-size:14px}.compare-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.compare-grid pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#34465e;background:#faf3ed;border-radius:6px;padding:15px;font-size:14px}.compare-grid pre+pre{color:#34465e;background:#f1f5fa}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#142e5270;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:480px;max-width:100%;max-height:90vh;padding:35px;position:relative;overflow:auto}.modal>svg{color:#34465e;margin-bottom:20px}.modal h2{font-size:21px}.modal>p{font-size:14px}.modal-close{position:absolute;top:13px;right:13px}.mobile-menu,.mobile-nav,.scrim{display:none}@media (min-width:1600px){.workspace-content{padding-top:45px}.hero{padding-top:100px;padding-bottom:100px}.hero h1{font-size:64px}}@media (max-width:1200px){.sidebar{width:205px;padding-left:15px;padding-right:15px}.app-main{margin-left:205px}.workspace-content{padding:27px}.app-header{padding:0 27px}.stats-grid{gap:12px}.stat-card{padding:16px}.project-grid,.quote-grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:47px}.hero{gap:30px;min-height:560px;padding-top:55px;padding-bottom:50px}.hero-art{min-height:385px}.float-top{left:-10px}.float-bottom{right:-10px}.public-strip{gap:15px;font-size:14px}.public-strip>span:first-child{display:none}.document-workspace{gap:17px}.paper{padding:24px}.editor-section{padding:18px}.line-numbers{grid-template-columns:1fr .8fr 1.3fr}.line-numbers>strong{grid-column:1/-1;padding:0}.chat-module{grid-template-columns:210px 1fr}.live-indicator{display:none}}@media (max-width:900px){.hero{grid-template-columns:1fr 1fr;gap:25px;padding-left:5%;padding-right:5%}.hero h1{font-size:39px}.hero-copy>p{font-size:14px}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.hero-art{min-height:345px}.float-card{gap:8px;padding:11px}.float-card strong,.float-card small{font-size:14px}.float-card .round-icon{width:33px;height:33px}.public-header nav{display:none}.sidebar{width:185px;padding-left:12px;padding-right:12px}.app-main{margin-left:185px}.sidebar nav a{gap:9px;padding:11px;font-size:14px}.stats-grid{grid-template-columns:repeat(2,1fr)}.page-heading h1{font-size:23px}.workspace-content{padding:24px 22px}.page-heading{flex-wrap:wrap}.detail-grid{grid-template-columns:1fr}.progress-track>div{gap:5px;font-size:14px}.progress-track>div:after{margin:0 3px}.progress-track{padding:14px}.document-workspace{grid-template-columns:1fr}.document-preview{position:static}.paper{padding:35px}.chat-module{grid-template-columns:1fr}.chat-list{border-bottom:1px solid var(--line);border-right:0;display:flex;overflow:auto}.chat-list h3{display:none}.chat-list>button{white-space:nowrap;width:auto;min-width:180px;padding:12px}.chat-list button>svg{display:none}.chat-module{grid-template-rows:auto 1fr;height:680px}.auth-layout{grid-template-columns:38% 62%}.auth-layout aside{padding:35px 12%}.auth-layout aside h1{font-size:30px}.auth-layout>main{padding:35px 10%}.auth-form{margin-top:45px}.company-grid{grid-template-columns:1fr}}@media (max-width:650px){body{font-size:14px}.public-header{height:77px;padding:0 22px}.public-header .header-actions{gap:10px}.public-header .btn{display:none}.logo{font-size:26px}.hero{flex-direction:column;gap:50px;padding:40px 25px 30px;display:flex}.hero-copy{width:100%}.hero h1{margin:20px 0;font-size:43px;line-height:1.5}.hero-copy>p{max-width:100%;font-size:14px}.hero-actions{flex-direction:row;align-items:center;gap:18px}.hero-actions .btn{padding:13px;font-size:14px}.hero-actions .text-link{font-size:14px}.hero-trust{gap:16px;font-size:14px}.hero-art{width:95%;min-height:350px;margin-bottom:15px}.public-strip{flex-wrap:wrap;justify-content:center;gap:20px 28px;padding:23px}.public-strip>span{font-size:14px}.public-section{padding:45px 25px}.public-section h2{font-size:20px}.steps{grid-template-columns:1fr;gap:15px;margin-top:25px}.steps article{padding:24px}.step-top{margin-bottom:15px}.company-cta{flex-direction:column;align-items:flex-start;margin:0 22px 35px;padding:28px}.company-cta h2{font-size:19px}.public footer{flex-wrap:wrap;gap:17px;padding:25px}.public footer>a:first-child{width:100%}.sidebar{width:232px;transition:transform .2s;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.scrim{z-index:40;background:#142e5249;display:block;position:fixed;inset:0}.app-main{margin-left:0}.app-header{height:64px;padding:0 17px}.app-header .header-actions{gap:8px}.breadcrumb{gap:8px;font-size:14px}.breadcrumb>span,.breadcrumb>svg{display:none}.mobile-menu{margin-left:-7px;display:inline-flex}.workspace-content{min-height:calc(100vh - 145px);padding:25px 17px 35px}.page-heading{gap:15px;margin-bottom:22px}.page-heading h1{font-size:23px}.page-heading p{font-size:14px;line-height:1.9}.page-heading .btn{padding:10px 14px;font-size:14px}.stats-grid{gap:10px;margin-bottom:20px}.stat-card{padding:15px}.stat-card>div{font-size:14px}.stat-card>strong{font-size:29px}.stat-card p{font-size:14px}.panel-heading{flex-wrap:wrap;gap:14px;padding:19px 17px}.panel-heading h2{font-size:14px}.search{width:100%}.project-grid{grid-template-columns:1fr;gap:14px;padding:17px}.project-card{padding:20px}.tabs{gap:23px;padding-left:17px}.tabs button{font-size:14px}.dashboard-note{gap:12px;padding:17px}.dashboard-note p,.dashboard-note strong{font-size:14px}.dashboard-note .round-icon{width:35px;min-width:35px;height:35px}.app-footer{padding:14px 20px 83px;font-size:14px}.mobile-nav{height:67px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);z-index:35;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav a{color:#34465e;flex-direction:column;align-items:center;gap:4px;padding:9px;font-size:14px;display:flex}.mobile-nav a.active{color:#34465e}.toast{width:max-content;max-width:90vw;font-size:14px;bottom:85px}.empty{padding:40px 20px}.notification-panel{width:calc(100% - 24px);top:58px;right:12px}.form-panel{padding:22px 18px}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column;align-items:stretch}.form-actions>span{font-size:14px}.form-section h2{font-size:15px}.detail-panel{padding:20px 17px}.progress-track{gap:0;padding:13px 8px}.progress-track>div{white-space:nowrap;flex-direction:column;gap:6px;font-size:14px;flex:1!important}.progress-track>div:after{display:none}.progress-track span{width:21px;height:21px}.project-heading{align-items:flex-start}.project-tabs{gap:22px;padding-left:0}.quote-grid{grid-template-columns:1fr}.section-heading{flex-wrap:wrap;gap:14px}.chat-module{height:calc(100dvh - 260px);min-height:480px}.chat-main>header{padding:12px}.chat-scroll{padding:15px 12px}.chat-project-bar>span{font-size:14px}.chat-composer{gap:6px;padding:11px}.message-bubble{max-width:88%}.chat-list>button{min-width:175px}.chat-list strong{font-size:14px}.payment-row{flex-wrap:wrap}.payment-row button{margin-left:0}.file-row{gap:10px}.file-row strong{word-break:break-all;font-size:14px}.document-top{font-size:14px}.document-tabs{padding:0}.document-workspace{gap:24px}.paper{min-height:500px;padding:24px 20px}.paper h2,.paper-amount strong{font-size:23px}.editor-section{padding:19px 16px}.editor-section .form-grid{grid-template-columns:1fr 1fr;gap:0 12px}.line-numbers{grid-template-columns:1fr .8fr 1.5fr}.paper-parties{gap:10px}.revision-row{flex-wrap:wrap;gap:9px}.revision-row>div{min-width:50%}.compare-grid{grid-template-columns:1fr}.compare-grid pre{margin:0}.comparison>div{margin-top:15px}.auth-layout{display:block}.auth-layout>aside{min-height:auto;padding:22px 25px}.auth-layout aside>div,.auth-layout aside>small{display:none}.auth-layout>main{padding:23px 25px}.auth-form{margin:30px auto}.auth-form h2{font-size:24px}.auth-layout .logo{font-size:26px}.info-page h1{font-size:29px}.info-page p{font-size:14px}.modal-backdrop{padding:15px}.modal{padding:30px 22px}.modal h2{font-size:20px}th,td{padding:13px 12px}.table-doc{min-width:150px}.panel .table-scroll{margin:0}.document-preview .btn{font-size:14px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}body{overflow-wrap:anywhere}input,select,textarea{min-height:48px;font-size:16px}input::placeholder,textarea::placeholder{color:#5a687c;opacity:1}input[type=checkbox],input[type=radio]{min-height:0;accent-color:var(--primary)}button,a{touch-action:manipulation}.btn{white-space:normal;min-height:48px;font-size:16px;font-weight:600}.btn.small,.text-link{min-height:44px;font-size:14px}.btn{background:var(--orange);border-color:var(--orange);color:#122b4d}.btn:hover{background:#ffab59;border-color:#ffab59}.btn.outline,.btn.secondary{color:var(--primary);background:#fff;border-color:#8a9db6}.btn.light{background:var(--orange);border-color:var(--orange);color:#122b4d}.icon-btn{width:44px;min-width:44px;height:44px}h1{font-size:32px}h2{font-size:22px}h3{font-size:18px}:focus-visible{outline-offset:3px;outline:3px solid #cf6000}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #142e521a}.logo-dot,.hero h1 em{color:#ac4900}.logo-symbol{background:var(--primary);color:#fff}.hero h1 em:after{background:#ffe0ba}.sidebar{color:#fff;background:#122b4d;border:0;width:280px;padding:24px 18px;overflow-y:auto}.sidebar .logo{color:#fff}.sidebar .logo-symbol{background:var(--orange);color:#122b4d}.sidebar .logo-dot{color:var(--orange)}.sidebar nav a,.sidebar nav a svg{color:#e7eef8;font-size:16px}.sidebar nav a{min-height:50px}.sidebar nav a:hover{color:#fff;background:#24466d}.sidebar nav a.active,.sidebar nav a.active svg{background:var(--orange);color:#122b4d}.workspace-label{color:#d7e3f3;flex-wrap:wrap;gap:8px;margin:28px 8px 16px}.workspace-label span{color:#fff;background:#29496f}.sidebar-help{background:#203f65;margin-top:30px}.sidebar-help strong,.sidebar-help p,.sidebar-help a,.sidebar-help svg{color:#e7eef8}.sidebar-user{border-color:#466080;margin-top:auto;padding-top:20px}.sidebar-user small,.sidebar-user .icon-btn{color:#d7e3f3}.sidebar-user strong{max-width:132px}.avatar{color:#183657;background:#e4ecf7}.nav-dot{background:var(--orange);width:8px;height:8px}.app-main{margin-left:280px}.page-heading h1{font-size:30px}.page-heading p,.field>span,.editor-section input,.editor-section textarea,.editor-section select{font-size:16px}.line-heading input{font-size:16px!important}.section-heading,.page-heading,.project-heading,.document-heading,.paper-top,.paper-parties{flex-wrap:wrap}.tabs,.project-tabs,.document-tabs{scrollbar-width:thin;overflow-x:auto}.tabs button{color:#34465e;flex-shrink:0;min-height:44px}.tabs button.active{color:#142e52;border-bottom-color:#cf6000}.auth-layout aside,.cta-band,.toast{color:#fff;background:#122b4d}.auth-layout aside p,.auth-layout aside small,.auth-layout aside .eyebrow,.auth-layout aside .logo{color:#e7eef8}.auth-layout aside .logo-symbol{background:var(--orange);color:#122b4d}.status{white-space:normal;line-height:1.5}.progress-track{overflow-x:auto}.progress-track>div{min-width:86px}.paper{color:#1e334f;overflow-x:auto}.paper table{min-width:440px}.paper td,.paper th{font-size:14px}.paper-total{color:#142e52}.message-bubble p{color:#172d48;font-size:16px}.own .message-bubble{background:#e4edf9}.chat-composer input,.chat-composer textarea{font-size:16px}.chat-composer button{min-width:44px;min-height:44px}.request-choice.selected{background:#fff4e8;border-color:#cc6200;box-shadow:0 0 0 1px #cc6200}.request-choice.selected i{color:#fff;background:#142e52;border-color:#142e52}.request-contact input,.request-contact select{font-size:16px}@media (max-width:1100px){.document-workspace{grid-template-columns:minmax(0,1fr)}.document-preview{position:static}}@media (max-width:900px){.sidebar{visibility:hidden;width:260px;transition:transform .2s;transform:translate(-100%)}.sidebar.is-open{visibility:visible;transform:translate(0)}.app-main{margin-left:0}.mobile-menu{display:inline-flex}.scrim{z-index:40;background:#122b4d88;display:block;position:fixed;inset:0}.mobile-nav{bottom:0;height:auto;min-height:76px;padding:6px 4px calc(6px + env(safe-area-inset-bottom));z-index:35;background:#122b4d;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;inset-inline:0}.mobile-nav a{color:#fff;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:54px;padding:6px 2px;font-size:14px;line-height:1.3;display:flex}.mobile-nav a.active{color:#ffac63}.app-footer{padding-bottom:calc(104px + env(safe-area-inset-bottom))}.workspace-content{padding:24px 16px}.app-header{padding:0 16px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.breadcrumb>span,.breadcrumb>svg{display:none}.toast{bottom:calc(96px + env(safe-area-inset-bottom))}}@media (max-width:650px){body{font-size:16px}.page-heading h1{font-size:26px}.page-heading p,.hero-copy>p{font-size:16px}.page-heading{flex-direction:column;align-items:stretch}.stats-grid{gap:12px}.stat-card{padding:16px 12px}.stat-card>strong{font-size:30px}.public-header{flex-wrap:wrap;gap:12px}.hero-trust,.hero-actions{flex-wrap:wrap}.hero-art{min-height:350px}.chat-module{height:calc(100dvh - 190px);min-height:420px}.line-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}.paper{padding:20px 16px}.paper-parties{grid-template-columns:1fr;gap:20px;display:grid}.document-actions,.heading-actions{flex-wrap:wrap}.progress-track{justify-content:flex-start;gap:14px;padding:16px 12px}.progress-track>div{white-space:normal;text-align:center;flex:0 0 86px!important}.request-choices{gap:10px}.request-choice>span{min-height:78px}.notification-panel{inset-inline:12px;width:auto;max-height:calc(100dvh - 168px);position:fixed;top:68px;overflow-y:auto}}.company-cta p,.company-cta .eyebrow{color:#e7eef8}.toast svg{color:#ffad66}@media (max-width:650px){.editor-section .form-grid{grid-template-columns:1fr}}.private-fee-note{color:#142e52;background:#fff0df;border:1px solid #d8954a;border-radius:10px;margin-bottom:20px;padding:20px}.private-fee-note p{margin:10px 0}.service-invoice-card{border-top:1px solid var(--line);padding:16px 0}.service-invoice-card .btn{margin:4px 10px 4px 0}@media print{.private-fee-note{display:none!important}}.branding-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:24px;display:grid}.branding-card{flex-direction:column;gap:16px;min-width:0;display:flex}.branding-card input{max-width:100%}.branding-image{object-fit:contain;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;width:100%;height:140px}.document-logo{object-fit:contain;max-width:110px;max-height:48px}.document-seal{object-fit:contain;width:80px;height:80px;margin:12px 0 0 auto;display:block}.edit-requests{margin-bottom:24px}.edit-requests label{gap:8px;display:grid}.edit-requests form{gap:16px;display:grid}.edit-request-item{border-top:1px solid #cbd5e1;padding:16px 0}.edit-request-item small{display:block}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.support-panel{margin-bottom:24px;overflow:hidden}.support-pin{text-align:left;color:#142e52;background:#eef4fc;border:0;width:100%}.support-layout{grid-template-columns:250px minmax(0,1fr);display:grid}.support-users{max-height:580px;padding:12px;overflow:auto}.support-users button{text-align:left;background:#fff;border:0;width:100%}.support-users button.active{background:#eef4fc}.support-users small{text-overflow:ellipsis;max-width:190px;display:block;overflow:hidden}.support-chat{flex-direction:column;min-width:0;height:580px;display:flex}.support-chat .chat-scroll{flex:1;min-height:120px;overflow:auto}.support-compose{background:#fff;align-items:center;gap:8px;padding:12px;display:flex}.support-compose textarea{flex:1;min-width:0;min-height:52px}.support-compose .btn{padding:10px}.message-file[aria-disabled=true]{cursor:wait;opacity:.8}@media (max-width:600px){.support-layout{grid-template-columns:1fr}.support-users{max-height:180px}.support-chat{height:65vh}.support-compose{flex-wrap:wrap}.support-compose textarea{width:100%}}.attachment-card{max-width:300px;overflow:hidden}.attachment-card.has-preview{flex-direction:column;align-items:stretch;display:flex}.attachment-preview{object-fit:cover;border-radius:8px;width:100%;max-height:220px;display:block}.attachment-name{overflow-wrap:anywhere;min-width:0}.attachment-name small{display:block}.message-read{color:#164c83;font-weight:700}.message-bubble>small{justify-content:flex-end;gap:8px;display:flex}.account-filters{flex-wrap:wrap;gap:16px;display:flex}.account-filters label{flex:1;gap:8px;min-width:180px;display:grid}.account-table{border-collapse:collapse;width:100%}.account-table th,.account-table td{text-align:left;border-bottom:1px solid #d9e1ec;padding:16px}.account-table small{overflow-wrap:anywhere;display:block}.account-modal{width:min(720px,94vw);max-height:88dvh;overflow:auto}.account-fields{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 24px;padding:0;display:grid}.account-fields label{gap:8px;display:grid}.account-fields input,.account-fields select{width:100%;min-width:0}@media (max-width:600px){.account-fields{grid-template-columns:1fr}.account-filters label{min-width:100%}}.compact-quote-heading{gap:12px;margin-bottom:12px}.compact-quote-heading h1{margin:4px 0;font-size:24px}.compact-quote-heading p{margin:0;font-size:14px}.document-workspace.compact-quote{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px}.compact-quote .editor-section{padding:14px 16px}.compact-quote .editor-section h3{margin-bottom:10px}.compact-quote .editor-section .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.compact-quote .field{gap:4px;margin-bottom:8px}.compact-quote .editor-section input,.compact-quote .editor-section select,.compact-quote .editor-section textarea{min-height:40px;padding:8px}.compact-quote .editor-section>p{margin:6px 0 10px;font-size:14px}.quote-group{border:1px solid #d9e1ec;border-radius:6px;margin:10px 0;overflow:hidden}.quote-group-heading{background:#eaf0f8;align-items:center;gap:12px;padding:6px 10px;display:flex}.quote-group-heading input{color:#142e52;background:0 0;border:0;flex:1;min-width:0;font-weight:700}.quote-group-heading .btn{flex-shrink:0}.quote-item-row{border-top:1px solid #e2e8f0;grid-template-columns:minmax(160px,1fr) 74px 86px 115px 105px 80px;align-items:end;gap:8px;padding:7px 10px;display:grid}.quote-item-row label{min-width:0;font-size:14px;display:block}.quote-unit-field{min-width:0;font-size:14px}.quote-unit-field>span{color:#34465e;margin-bottom:3px;display:block}.quote-unit select{width:100%;min-width:0;padding-left:4px!important;padding-right:4px!important}.quote-unit input{margin-top:4px}.quote-item-row label span{color:#34465e;margin-bottom:3px;display:block}.quote-item-row input,.quote-item-row textarea{width:100%;min-width:0;font-size:14px}.quote-item-row textarea{resize:vertical;line-height:1.5}.quote-line-total{text-align:right;overflow-wrap:anywhere;align-self:center;font-size:14px}.quote-row-actions{align-self:center;display:flex}.quote-row-actions .icon-btn{min-width:40px;min-height:40px}.compact-quote .paper{min-height:0;padding:22px}.compact-quote .paper h2{margin:12px 0 6px;font-size:24px}.compact-quote .paper-parties{gap:14px;margin:12px 0}.compact-quote .paper-amount{margin:12px 0;padding:12px 14px}.compact-quote .paper-amount strong{font-size:26px}.compact-quote .paper-table td,.compact-quote .paper-table th{padding:7px 9px}.paper-table .paper-group-title th{color:#142e52;text-align:left;background:#eaf0f8}.compact-quote .paper-notes{margin-top:12px;padding-top:8px}.compact-quote .paper-notes p{margin-top:4px}.compact-quote .paper-footer{margin-top:16px}.admin-remarks-editor textarea{width:100%;min-height:85px;font-size:14px}.admin-remarks-editor h3{margin:0 0 6px;font-size:16px}.admin-remarks-editor .btn{margin-top:8px}@media (max-width:900px){.compact-quote .editor-section .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-item-row{grid-template-columns:58px 82px minmax(0,1fr)}.quote-item-description{grid-column:1/-1}.quote-line-total{grid-column:1/3}.quote-row-actions{grid-area:3/3}.quote-item-row label:nth-child(4){grid-column:3}.compact-quote .paper{padding:14px}.compact-quote .paper table{table-layout:fixed;min-width:0}.compact-quote .paper th:first-child{width:55%}.compact-quote .paper td{overflow-wrap:anywhere}}.compact-quote-top{margin-bottom:10px}.compact-quote-tabs{margin-bottom:12px}.compact-quote .editor-section:first-child>.form-grid>.field:nth-child(n+5){grid-column:span 2}.app-shell .workspace-content{padding-top:16px}.app-shell .page-heading{flex-direction:row;align-items:center;gap:8px 12px;margin:0 0 12px;padding:0}.app-shell .page-heading>div:first-child{min-width:0}.app-shell .page-heading h1{letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:20px;line-height:1.4}.app-shell .page-heading .eyebrow{letter-spacing:0;margin:0 0 2px;font-size:14px;line-height:1.4}.app-shell .page-heading p{overflow-wrap:anywhere;margin:2px 0 0;font-size:14px;line-height:1.5}.app-shell .page-heading .btn{min-height:40px;padding:8px 12px;font-size:14px}.app-shell .page-heading.project-heading{margin-top:8px}.role-admin .page-heading .eyebrow,.role-admin .page-heading>div>p,.app-shell .dashboard-heading .eyebrow,.app-shell .dashboard-heading>div>p{display:none}.app-shell .page-heading .button-row{gap:8px;margin:0}.selection-banner{border:1px solid;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin:16px 0;padding:16px 20px;display:flex}.selection-banner h2{margin:6px 0;font-size:20px}.selection-banner p{color:#1e3c36;margin:4px 0;font-size:14px}.selection-label{color:#126445;align-items:center;gap:7px;font-size:14px;font-weight:700;display:flex}.selected-contractor{background:#edf9f2;border-color:#a4d9bc #a4d9bc #a4d9bc #168456;border-left-style:solid;border-left-width:5px}.selection-banner.not-selected{background:#fff4ed;border-color:#edc0a5;display:block}.selection-banner.not-selected h1{margin:12px 0;font-size:22px}.contact-privacy{color:#23446f;background:#eef4fd;border-left:3px solid #3269b4;padding:10px 12px;font-size:14px}.status.s-submitted,.status.s-draft,.status.s-pending{color:#40516a;background:#eef1f6}.status.s-approved,.status.s-quoting,.status.s-issued{color:#234fa2;background:#e8f0ff}.status.s-contracting,.status.s-awaiting_customer,.status.s-completion_review,.status.s-changes_requested{color:#945000;background:#fff0d8}.status.s-selected,.status.s-contracted,.status.s-signed,.status.s-completed,.status.s-paid{color:#126445;background:#dcf4e6}.status.s-in_progress{color:#63399d;background:#ede6ff}.status.s-cancelled,.status.s-not_selected,.status.s-suspended,.status.s-blocked{color:#9a3528;background:#fde9e5}.progress-track>.done{color:#126445;border-color:#76c69a}.progress-track>.done>span{color:#fff;background:#168456;border-color:#168456}.progress-track>.current{color:#a65008;border-color:#ee9a44;font-weight:700}.progress-track>.current>span{color:#142e52;background:#ff951c;border-color:#ff951c;box-shadow:0 0 0 4px #fff0dd}.project-tabs button.active{color:#914500;background:#fff3e6;border-bottom-color:#ec8619}.quote-card:has(.s-selected){background:#f4fcf7;border:2px solid #168456}@media (max-width:650px){.app-shell .workspace-content{padding-top:12px}.app-shell .page-heading{gap:8px;margin-bottom:10px}.app-shell .page-heading h1{font-size:18px}.selection-banner{flex-direction:column;align-items:stretch;padding:14px}}.contract-workspace{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start}.contract-workspace>*{min-width:0}.contract-intro{background:#edf3fb;border-bottom:1px solid #ccd9eb;padding:20px}.contract-intro h2{margin:12px 0 8px;font-size:20px}.contract-intro p,.contract-editor p{color:#334761;font-size:14px}.contract-editor .editor-section{padding:20px}.contract-editor .field{flex-direction:column;gap:6px;min-width:0;margin-bottom:12px;display:flex}.contract-editor .field>span{font-size:14px;font-weight:600}.contract-editor .wide{grid-column:1/-1}.contract-editor textarea{font-size:14px;line-height:1.7}.contract-editor summary{cursor:pointer;padding:12px 0;font-size:14px;font-weight:600}.contract-editor details ul{padding-left:20px;font-size:14px;line-height:1.8}.contract-price{color:#175c42;background:#eaf6f0;border-radius:10px;flex-direction:column;gap:6px;margin-bottom:16px;padding:15px;display:flex}.contract-price strong{font-size:20px}.contract-price span{font-size:14px}.contract-payment{background:#fff2df;border-radius:8px;padding:12px;font-weight:600}.contract-template-tools{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.contract-sources a{color:#194b85;padding:6px 0;font-size:14px;display:block}.contract-missing{background:#fff4e6;border-radius:8px;margin-bottom:16px;padding:0 12px}.contract-detail p{white-space:pre-wrap;overflow-wrap:anywhere}.quote-groups{gap:24px;display:grid}.quote-groups>section>h3{margin:0 0 14px;font-size:18px}.selected-quote-group>h3{color:#156342}.quote-card.selected-quote-card{background:#f3fbf7;border:2px solid #27865e}.other-quote-group{min-width:0}@media (max-width:1100px){.contract-workspace{grid-template-columns:minmax(0,1fr)}}@media (max-width:600px){.contract-editor .form-grid{grid-template-columns:minmax(0,1fr)}.contract-editor .editor-section,.contract-intro{padding:16px}.contract-price strong{font-size:18px}}.compact-quote>.document-editor,.compact-quote>.document-preview{min-width:0}.compact-quote .quote-item-row{grid-template-columns:minmax(52px,.7fr) minmax(70px,.9fr) minmax(85px,1fr) minmax(75px,1fr) 80px}.compact-quote .quote-item-description{grid-column:1/-1}.contract-document{min-height:0;padding:24px}.contract-paper-heading{justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.contract-paper h2{margin:18px 0 8px;font-size:24px}.contract-paper h3{color:#142e52;background:#edf3fb;margin:20px 0 10px;padding:9px 12px;font-size:15px}.contract-created{color:#43546d;font-size:14px}.contract-facts{border:1px solid #d8e1ee;margin:0}.contract-facts>div{border-bottom:1px solid #d8e1ee;grid-template-columns:85px minmax(0,1fr);display:grid}.contract-facts>div:last-child{border-bottom:0}.contract-facts dt,.contract-facts dd{margin:0;padding:9px;font-size:14px}.contract-facts dt{background:#f6f8fc}.contract-parties{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.contract-parties section{min-width:0;position:relative}.contract-parties h3{margin-top:14px}.contract-parties p{overflow-wrap:anywhere;margin:6px 0;font-size:14px}.contract-parties strong{font-size:16px}.contract-total{color:#fff;background:#142e52;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.contract-total span{font-size:14px}.contract-total strong{font-size:24px}.contract-tax{margin:8px 0 0;font-size:14px}.contract-tax>div{justify-content:space-between;gap:12px;padding:4px 0;display:flex}.contract-tax dd{margin:0}.contract-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.contract-dates>div{border:1px solid #d8e1ee;border-top:3px solid #ed922d;padding:10px 8px}.contract-dates span,.contract-dates strong{font-size:14px;display:block}.contract-dates strong{margin-top:8px}.contract-hours,.contract-payment-terms,.contract-bank p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.contract-payments{border-collapse:collapse;width:100%;font-size:14px}.contract-payments th,.contract-payments td{text-align:left;overflow-wrap:anywhere;border:1px solid #d8e1ee;padding:9px 6px}.contract-payments thead{background:#edf3fb}.contract-bank{background:#fff8ee;border-left:3px solid #ed922d;padding:8px 12px;font-size:14px}.contract-conditions,.contract-clauses{border-top:2px solid #d8e1ee;margin-top:24px}.contract-conditions h4{margin:14px 0 6px;font-size:14px}.contract-conditions p,.contract-clauses p,.contract-annex p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.8}.contract-annex{margin-top:24px;font-size:14px}.contract-annex summary{cursor:pointer;padding:12px 0;font-weight:600}@media (max-width:1100px){.document-workspace.compact-quote{grid-template-columns:minmax(0,1fr)}}@media (min-width:1101px) and (max-width:1450px){.compact-quote .quote-item-row{grid-template-columns:minmax(52px,1fr) minmax(75px,1fr) minmax(80px,1.2fr)}.compact-quote .quote-line-total{text-align:left}}@media (max-width:600px){.contract-document{padding:14px}.contract-parties{grid-template-columns:minmax(0,1fr);gap:0}.contract-dates{grid-template-columns:minmax(0,1fr)}.contract-dates>div{justify-content:space-between;align-items:center;display:flex}.contract-dates strong{margin-top:0}.contract-total strong{font-size:20px}.contract-total{flex-wrap:wrap}.compact-quote .quote-item-row{grid-template-columns:58px 82px minmax(0,1fr)}}.paper.contract-document table,.compact-quote .paper table{table-layout:fixed;min-width:0}.paper.contract-document td,.paper.contract-document th,.compact-quote .paper td{overflow-wrap:anywhere;white-space:normal}.contract-payments th:first-child{width:16%}.contract-payments th:nth-child(2){width:15%}.contract-payments th:nth-child(3){width:32%}.contract-payments th:nth-child(4){width:37%}.contract-cover{color:#142e52}.contract-cover h2{letter-spacing:.04em;margin:16px 0 8px;font-size:26px}.contract-cover>h3{background:0 0;border-left:3px solid #ed922d;margin:22px 0 10px;padding:2px 0 2px 11px;font-size:16px}.contract-created{margin:6px 0 18px}.contract-facts{border-radius:6px;overflow:hidden}.contract-facts dt,.contract-facts dd{padding:11px 12px;line-height:1.6}.contract-facts dt{background:#edf3f8;font-weight:600}.contract-parties{gap:14px;margin-top:14px}.contract-parties section{border:1px solid #d8e1ee;border-radius:6px;padding:0 12px 12px;overflow:hidden}.contract-parties h3{color:#fff;background:#142e52;margin:0 -12px 12px;padding:10px 12px}.contract-parties p{overflow-wrap:anywhere;margin:6px 0;line-height:1.6}.contract-total{border-radius:6px 6px 0 0;padding:18px 16px}.contract-total strong{font-variant-numeric:tabular-nums;font-size:28px}.contract-tax{background:#f7f9fc;border:1px solid #d8e1ee;border-top:0;border-radius:0 0 6px 6px;margin:0;padding:8px 14px}.contract-tax>div{justify-content:space-between}.contract-dates>div{background:#f7f9fc;border-radius:5px;padding:12px}.contract-dates strong{margin-top:8px;font-size:16px}.contract-payments th,.contract-payments td{padding:11px 9px;line-height:1.6}.contract-payments thead th{color:#fff;background:#142e52;font-weight:600}.contract-payments tbody th{background:#edf3f8}.contract-payments tbody tr:nth-child(2n) td{background:#f7f9fc}.contract-payments th:nth-child(2),.contract-payments td:nth-child(2){text-align:center}.contract-payments th:nth-child(3),.contract-payments td:nth-child(3){text-align:right;font-variant-numeric:tabular-nums}.contract-cover .contract-hours,.contract-cover .contract-payment-terms{margin:10px 0;font-size:14px;line-height:1.65}.contract-bank{margin-top:12px;padding:10px 12px}.contract-bank p{margin:6px 0;line-height:1.6}@media (max-width:600px){.contract-cover h2{font-size:22px}.contract-total{padding:14px 12px}.contract-total strong{font-size:24px}.contract-payments th,.contract-payments td{padding:9px 5px}.contract-facts dt,.contract-facts dd{padding:9px 8px}}.pdf-preview{background:#edf1f7;border:1px solid #d8e1ee;border-radius:8px;min-width:0;padding:12px}.pdf-controls{color:#142e52;flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:flex}.pdf-controls label{align-items:center;gap:6px;display:flex}.pdf-controls select{max-width:140px;font-size:14px}.pdf-preview>p{color:#142e52;font-size:14px}.pdf-page-viewport{width:100%;min-height:240px;overflow:auto}.pdf-page-viewport canvas{background:#fff;display:block}.field input[readonly]{color:#142e52;background:#edf3f8}.status.withdrawn,.status.changes_requested{color:#824508;background:#fff0d8}body:has(.messenger-screen){overflow:hidden}:is(.app-shell:has(.messenger-screen) .app-header,.app-shell:has(.messenger-screen) .app-footer,.app-shell:has(.messenger-screen) .mobile-nav){display:none}.messenger-screen{top:var(--messenger-top,0px);height:var(--messenger-height,100dvh);z-index:35;color:#142e52;background:#f1f5f9;grid-template-columns:320px minmax(0,1fr);display:grid;position:fixed;left:280px;right:0;overflow:hidden}.messenger-list{background:#fff;border-right:1px solid #d8e1ee;flex-direction:column;min-width:0;min-height:0;display:flex}.messenger-list>header{color:#fff;background:#142e52;flex-shrink:0;align-items:center;gap:10px;padding:16px 14px;display:flex}.messenger-list>header .icon-btn{color:#fff}.messenger-list h1{margin:0;font-size:22px}.messenger-search{flex-shrink:0;align-items:center;gap:8px;padding:12px;display:flex}.messenger-search input{background:#f1f5f9;width:100%;min-width:0;font-size:16px}.messenger-conversations{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.messenger-conversations .inbox-row{border-bottom:1px solid #e5eaf1;gap:12px;width:100%;padding:18px 14px;display:flex}.messenger-conversations .inbox-row>div{flex:1;min-width:0}.messenger-conversations .inbox-row strong,.messenger-conversations .inbox-row small{text-overflow:ellipsis;white-space:nowrap;color:#142e52;display:block;overflow:hidden}.messenger-conversations .inbox-row strong{font-size:16px}.messenger-conversations .inbox-row small{margin-top:4px;font-size:14px}.messenger-conversations .inbox-row.active{background:#e4edf9;box-shadow:inset 3px 0 #ed922d}.pinned-conversation{background:#fff8ed}.unread-dot{background:#ed922d;border-radius:50%;flex-shrink:0;width:10px;height:10px}.messenger-detail{min-width:0;height:100%;min-height:0}.messenger-screen .embedded-chat{border:0;border-radius:0;height:100%;display:block}.messenger-screen .chat-main{height:100%;min-height:0}.messenger-screen .chat-main>header{flex-shrink:0;min-height:76px;padding:14px 18px}.messenger-screen .chat-main>header>div{min-width:0}.messenger-screen .chat-main>header strong{font-size:16px;font-weight:700}.messenger-screen .chat-main>header small{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;overflow:hidden}.messenger-screen .chat-project-bar{background:#e9f0f9;flex-shrink:0}.messenger-screen .chat-scroll{overscroll-behavior:contain;flex:1 1 0;min-height:0;overflow-y:auto}.messenger-screen .chat-composer,.messenger-screen .support-compose{padding:12px 16px max(12px, env(safe-area-inset-bottom));background:#fff;border-top:1px solid #d8e1ee;flex-wrap:nowrap;flex:none;margin:0;display:flex}.messenger-screen .chat-composer input,.messenger-screen .support-compose textarea{flex:1;width:0;min-width:0;font-size:16px}.messenger-screen .support-compose textarea{resize:none;height:44px;min-height:44px;max-height:100px}.messenger-screen .embedded-support{border:0;border-radius:0;flex-direction:column;height:100%;margin:0;display:flex}.messenger-screen .support-single{flex:1;min-height:0}.messenger-placeholder{flex-direction:column;justify-content:center;align-items:center;gap:18px;height:100%;padding:24px;display:flex}.messenger-screen .chat-notice{padding:12px}@media (max-width:900px){.messenger-screen{grid-template-columns:minmax(0,1fr);left:0}.messenger-screen.has-conversation .messenger-list,.messenger-screen.show-conversations .messenger-detail{display:none}.messenger-screen .chat-main>header{padding:max(10px, env(safe-area-inset-top)) 10px 10px;gap:8px;min-height:64px}.messenger-screen .chat-main>header>svg{display:none}.messenger-screen .chat-scroll{padding:16px 12px}.messenger-screen .chat-project-bar{padding:8px 12px}.messenger-screen .chat-composer,.messenger-screen .support-compose{padding:8px 10px max(8px, env(safe-area-inset-bottom));gap:8px}.messenger-list>header{padding-top:max(16px, env(safe-area-inset-top))}.messenger-screen .message-bubble{max-width:88%}}.connection-notice{top:max(12px, env(safe-area-inset-top));z-index:150;color:#142e52;background:#fff4df;border:1px solid #ed922d;border-radius:8px;width:max-content;max-width:calc(100vw - 24px);padding:12px 18px;font-size:14px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 18px #142e5220}.connection-notice a{margin-left:12px;font-weight:700;text-decoration:underline}.building-map-panel{margin-bottom:16px;overflow:hidden}.admin-project-edit-action{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-project-edit-action>span{color:#176b49;font-size:14px}.admin-project-dialog{border:1px solid var(--line);color:#142e52;background:#fff;border-radius:12px;width:min(800px,100vw - 24px);max-height:calc(100dvh - 32px);margin:auto;padding:0;box-shadow:0 16px 70px #0005}.admin-project-dialog::backdrop{background:#10284ac0}.admin-project-dialog header,.admin-project-dialog footer{z-index:1;background:#fff;align-items:center;gap:10px;padding:12px 18px;display:flex;position:sticky}.admin-project-dialog header{border-bottom:1px solid var(--line);justify-content:space-between;top:0}.admin-project-dialog h2{margin:0;font-size:20px}.admin-project-dialog h3{margin:20px 0 12px;font-size:16px}.admin-project-dialog footer{border-top:1px solid var(--line);bottom:0}.admin-project-dialog fieldset{border:0;min-width:0;margin:0;padding:16px 18px}.admin-project-dialog label{flex-direction:column;gap:6px;margin-bottom:12px;font-size:14px;display:flex}.admin-project-dialog input,.admin-project-dialog textarea{font-size:16px}.admin-project-dialog .form-grid{gap:0 14px}.admin-project-dialog .address-preview{overflow-wrap:anywhere;background:#eef3fa;padding:10px;font-size:14px}.building-map-heading{justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;display:flex}.building-map-heading h2{align-items:center;gap:6px;margin:0;font-size:16px;display:flex}.building-map-heading p{overflow-wrap:anywhere;margin:3px 0 0;font-size:14px}.building-map-heading .btn{flex-shrink:0}.building-map-actions{flex-shrink:0;max-width:100%}.directory-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.directory-stats>div{background:#fff;border:1px solid #dbe3ed;border-top:3px solid #ee8b22;border-radius:10px;gap:6px;padding:14px 18px;display:grid}.directory-stats span{color:#334962;font-size:14px}.directory-stats strong{color:#122f53;font-size:25px}.directory-stats small{font-size:14px;font-weight:500}.directory-import{margin-bottom:14px;padding:14px 18px;font-size:14px}.directory-import summary{cursor:pointer;font-weight:600}.directory-import summary span{color:#47617c;margin-left:12px;font-weight:400;display:inline-block}.directory-import p{color:#334962;line-height:1.7}.directory-area-progress{flex-wrap:wrap;gap:8px 16px;margin:12px 0;display:flex}.directory-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.directory-filters label,.directory-editor label{color:#263e59;gap:6px;font-size:14px;font-weight:600;display:grid}.directory-search{grid-column:span 2}.directory-search-input{position:relative}.directory-search-input svg{position:absolute;top:14px;left:12px}.directory-search-input input{padding-left:38px}.directory-filters input,.directory-filters select,.directory-editor input:not([type=checkbox]),.directory-editor select,.directory-editor textarea{color:#182f4a;background:#fff;border:1px solid #c9d4e2;border-radius:8px;width:100%;min-width:0;padding:10px 12px;font-size:16px}.directory-filters .directory-search-input input{padding-left:38px}.directory-results-bar,.directory-pagination{justify-content:space-between;align-items:center;gap:10px;padding:15px 0;font-size:14px;display:flex}.directory-list{gap:8px;display:grid}.directory-card{text-align:left;cursor:pointer;color:#19344f;background:#fff;border:1px solid #dbe3ed;border-radius:10px;align-items:center;gap:14px;width:100%;padding:14px;font-size:14px;display:flex}.directory-card:hover,.directory-card:focus-visible{background:#f3f7fd;border-color:#6584a8}.directory-image{color:#61778f;background:#edf2f8;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex;overflow:hidden}.directory-image img{object-fit:contain;width:100%;height:100%}.directory-image.large{width:88px;height:88px}.directory-card-info{overflow-wrap:anywhere;flex:1;gap:5px;min-width:0;display:grid}.directory-card-info>strong{font-size:16px}.directory-card-tags{flex-wrap:wrap;gap:5px;display:flex}.directory-card-tags span{background:#edf2f8;border-radius:4px;padding:3px 7px;font-size:14px}.directory-status{color:#394e65;white-space:nowrap;background:#e9edf2;border-radius:6px;padding:5px 9px;font-size:14px;font-weight:600}.directory-status.status-reviewing{color:#1a5794;background:#e9f1ff}.directory-status.status-ready{color:#8a4a00;background:#fff0d8}.directory-status.status-promoted{color:#19613d;background:#ddf4e7}.directory-status.status-rejected{color:#943e34;background:#ffe8e5}.directory-empty{text-align:center;padding:28px}.directory-pagination{justify-content:center}.directory-editor{gap:14px;display:grid}.directory-editor fieldset{border:0;min-width:0;margin:0;padding:0}.directory-editor h2{margin:0 0 12px;font-size:18px}.directory-editor h3{font-size:16px}.directory-editor p,.directory-editor small{font-size:14px;line-height:1.65}.directory-profile-heading{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px;display:flex}.directory-profile-heading>div{flex:1;min-width:150px}.directory-profile-heading p{margin:8px 0 0}.directory-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.directory-logo-upload{border-top:1px solid #dde4ee;margin-top:18px;padding-top:16px}.directory-checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.directory-checks label{background:#f2f6fb;border-radius:8px;align-items:center;gap:10px;padding:12px;display:flex}.directory-checks input{accent-color:#173a64;width:18px;height:18px}.directory-readiness{color:#65451a;align-items:center;gap:6px;display:flex}.directory-promotion{background:#fffaf2;border:1px solid #dfad68;border-radius:10px;gap:14px;margin-top:18px;padding:18px;display:grid}.directory-source-fields{margin:0}.directory-source-fields>div{border-bottom:1px solid #e2e8f0;grid-template-columns:140px 1fr;gap:10px;padding:10px 0;font-size:14px;display:grid}.directory-source-fields dt{font-weight:600}.directory-source-fields dd{overflow-wrap:anywhere;margin:0}.directory-research summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:10px;font-weight:700;display:flex}.contact-summary{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.contact-summary>span{color:#173352;background:#eef3fa;border-radius:8px;padding:7px 10px}.directory-contacts h2{margin:0}.contact-group{margin:20px 0}.contact-group h3{border-bottom:2px solid #ec963a;padding-bottom:8px;font-size:16px}.contact-entry{background:#f7f9fc;border:1px solid #d1dbea;border-radius:12px;min-width:0;margin-top:10px;padding:14px}.contact-verified{border-left:4px solid #29845a}.contact-rejected{background:#f5f5f5}.contact-value{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:10px;display:flex}.contact-value a,.contact-value strong,.directory-contacts details a{overflow-wrap:anywhere}.contact-entry label{max-width:480px;display:block}.contact-entry details{margin:12px 0}.contact-entry summary,.contact-add summary{cursor:pointer;font-weight:600}.contact-add{border:1px solid #d1dbea;border-radius:12px;margin:16px 0;padding:14px}.contact-empty{color:#495d75;font-size:14px}@media (max-width:900px){.directory-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.directory-stats{gap:6px}.directory-stats>div{padding:10px}.directory-stats strong{font-size:20px}.directory-form-grid,.directory-checks{grid-template-columns:1fr}.directory-card{flex-wrap:wrap;gap:10px;padding:12px}.directory-card>.directory-status{margin-left:58px}.directory-card .directory-image{width:48px;height:48px}.directory-source-fields>div{grid-template-columns:1fr;gap:4px}.directory-import summary span{margin:6px 0 0;display:block}}.building-map-panel .building-map{z-index:0;background:#e9edf3;width:100%;height:300px;font-family:inherit}.building-map .leaflet-control-attribution,.building-map .leaflet-control-attribution a{font-size:14px}.building-map .leaflet-control-zoom a{width:40px;height:40px;line-height:40px}.building-pin{background:0 0;border:0}.building-pin>span{background:#f58a19;border:3px solid #fff;border-radius:50% 50% 50% 0;width:30px;height:30px;display:block;transform:rotate(-45deg);box-shadow:0 2px 6px #142e5260}.building-pin>span:after{content:"";background:#142e52;border-radius:50%;width:9px;height:9px;position:absolute;top:8px;left:8px}.building-map-footer{padding:10px 18px 14px}.building-map-footer p,.building-files p{margin:0 0 8px;font-size:14px;line-height:1.5}.building-map-footer small,.building-map-footer a{font-size:14px}.building-map-footer small{color:#34465e;margin-top:8px;display:block}.building-map-footer a{text-decoration:underline}.building-map-footer .button-row{flex-wrap:wrap;gap:8px;margin:8px 0}.map-loading{padding:24px;display:block}.map-warning{color:#97400b}.map-success{color:#176b49}.building-files{margin-bottom:16px}.building-files .section-heading{gap:10px;margin-bottom:10px}.building-files .section-heading h2{margin:0;font-size:16px}.building-files .upload-button{cursor:pointer;position:relative;overflow:hidden}.building-files .upload-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.building-files .upload-button:focus-within{outline-offset:3px;outline:3px solid #f58a19}.building-files .upload-button.disabled{opacity:.6;cursor:wait}.building-files-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.building-files-grid .attachment-card{border:1px solid var(--line);background:#f7f9fc;width:100%;min-width:0;max-width:100%;margin:0}.building-files-grid .attachment-preview{object-fit:cover;width:100%;height:140px}@media (max-width:900px){.app-shell .progress-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0;padding:10px;display:grid;overflow:visible}.app-shell .progress-track>div{white-space:normal;text-align:left;background:#f0f3f8;border-radius:6px;flex-direction:row;justify-content:flex-start;gap:6px;width:auto;min-width:0;padding:8px 6px;font-size:14px;line-height:1.4;flex:initial!important}.app-shell .progress-track>div:after{display:none}.app-shell .progress-track>div>span{flex:0 0 22px;width:22px;height:22px}.app-shell .progress-track>.done{color:#176b49;background:#e8f5ed}.app-shell .progress-track>.current{color:#8b4308;background:#fff0da;box-shadow:inset 0 0 0 1px #ed922d}.app-shell .project-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:0;display:grid;overflow:visible}.app-shell .project-tabs button{white-space:normal;min-width:0;padding:12px 4px;font-size:14px}}@media (max-width:650px){.building-map-panel .building-map{height:250px}.building-map-heading{flex-wrap:wrap;padding:12px}.building-map-footer{padding:10px 12px}.building-files-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.building-files-grid .attachment-card{padding:8px}.building-files-grid .attachment-preview{height:110px}}
.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(../media/layers.3muxcl8sz6330.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(../media/layers-2x.23wrxu3xxu9-i.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(../media/marker-icon.1le94j_pe_ih1.png)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.public-request-wrap{max-width:960px;margin:auto;padding:40px 20px 70px}.request-intro h1,.request-success h1{font-size:clamp(30px,4.8vw,52px)}.request-intro>p:not(.public-eyebrow){margin-top:20px}.request-intro>div{align-items:center;gap:10px;margin-top:24px;font-size:14px;display:flex}.request-progress{gap:8px;padding:28px 0 10px;font-size:14px;display:grid}.request-progress progress,.customer-project-progress progress{accent-color:#1e54a5;border:0;border-radius:20px;width:100%;height:8px;overflow:hidden}.public-site progress::-webkit-progress-bar{background:#d8e1ef}.public-site progress::-webkit-progress-value{background:#1e54a5}.request-form-body{border:0;min-width:0;margin:0;padding:0}.request-honeypot{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}.request-step{padding:28px 0;scroll-margin-top:120px}.request-step>header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.request-step>header>span{color:#34465e;border:1px solid #b5c8e4;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:15px;font-weight:600;display:grid}.request-step>header h2{flex:1;font-size:clamp(21px,3vw,28px)}.request-step>header>svg{color:#34465e}.request-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.request-choice{cursor:pointer;background:#fff;border:2px solid #c4d0e1;border-radius:8px;min-width:0;transition:border-color .15s,box-shadow .15s;position:relative;overflow:hidden}.request-choice.selected{background:#eaf1fb;border-color:#1e54a5;box-shadow:0 0 0 1px #1e54a5}.request-choice>input{opacity:0;width:1px;height:1px;position:absolute}.request-choice img{object-fit:cover;width:100%;height:120px;display:block}.request-choice>span{flex-direction:column;justify-content:center;min-height:70px;padding:14px 34px 14px 14px;line-height:1.45;display:flex;position:relative}.request-choice b{font-size:15px;font-weight:600}.request-choice small{color:var(--muted);margin-top:3px}.request-choice i{color:#0000;border:1px solid #a9bbd4;border-radius:50%;place-items:center;width:19px;height:19px;display:grid;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.request-choice.selected i{color:#fff;background:#1e54a5;border-color:#1e54a5}.public-site label{font-size:15px}.public-site .form-grid{grid-template-columns:1fr;gap:18px;display:grid}.public-site .form-grid label,.customer-login-form form>label,.customer-profile form>label{flex-direction:column;gap:8px;font-weight:550;display:flex}.public-site input:not([type=checkbox]):not([type=radio]),.public-site select,.public-site textarea{min-width:0;min-height:48px;color:var(--ink);background:#fff;border:1px solid #a9bbd4;border-radius:5px;width:100%;padding:10px 12px;font-size:16px}.public-site select:disabled{color:#34465e;background:#eef2f8}.public-site input[readonly]{background:#eef2f8}.request-privacy,.request-security-note{font-size:14px;line-height:1.65;margin:20px 0!important}.request-privacy a{text-decoration:underline}.request-security-note{background:#fff2e6;border-left:3px solid #f28a2e;padding:12px 16px;color:#34465e!important}.request-success{text-align:center;padding:30px 0}.request-success>svg{color:#34465e;margin-bottom:20px}.request-success>p{max-width:660px;margin:25px auto}.request-reference{border:1px solid var(--line);background:#fff;border-radius:8px;max-width:580px;margin:30px auto;padding:24px}.request-reference>span{color:var(--muted);font-size:14px;display:block}.request-reference>strong{font-size:21px}.request-details-fields{gap:24px;margin-top:24px;display:grid}.request-details-fields select{max-width:100%}.request-summary{grid-template-columns:1fr;gap:0 26px;margin:24px 0;display:grid}.request-summary>div{border-bottom:1px solid var(--line);min-width:0;padding:15px 0}.request-summary dt{color:var(--muted);margin-bottom:6px;font-size:14px}.request-summary dd{overflow-wrap:anywhere;margin:0;font-size:16px}.request-admin-toolbar{flex-direction:column;gap:14px;margin-bottom:22px;padding:16px;display:flex}.request-admin-toolbar label{flex:1;align-items:center;gap:10px;display:flex}.request-admin-toolbar input{border:0;width:100%;min-width:0;font-size:16px}.request-admin-toolbar select{border:1px solid var(--line);background:#fff;border-radius:6px;min-width:0;min-height:44px;padding:8px;font-size:15px}.request-admin-grid{gap:18px;display:grid}.request-admin-card{min-width:0;color:inherit;padding:22px;text-decoration:none}.request-admin-card header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.request-admin-card h2{margin:8px 0;font-size:22px;line-height:1.4}.request-admin-card p,.request-admin-card small{overflow-wrap:anywhere;font-size:14px}.request-admin-card time{color:var(--muted);margin-top:22px;font-size:14px;display:block}.request-result-count{margin:12px 0;font-size:14px}.request-status{color:#34465e;background:#e5edf6;border-radius:30px;align-items:center;max-width:100%;padding:6px 12px;font-size:14px;font-weight:600;line-height:1.4;display:inline-flex}.request-status.reviewed{color:#34465e;background:#faf0da}.request-status.denied{color:#34465e;background:#f5e2dd}.request-status.converted{color:#34465e;background:#f1f5fa}.request-empty{text-align:center;padding:45px 22px}.request-empty svg{color:var(--muted)}.request-convert{margin-top:24px}.request-convert p{margin:15px 0}.request-convert-confirm button{margin:6px 8px 0 0}.request-admin-toolbar .secondary-button{justify-content:center}.request-form-body .form-section{margin-bottom:22px}.request-form-body .form-section h2{font-size:22px}.request-form-body .form-section>p{font-size:14px;line-height:1.65}.preserve-lines{white-space:pre-wrap}.request-contact label{flex-direction:column;gap:8px;display:flex}.request-field{flex-direction:column;gap:8px;min-width:0;display:flex}.request-contact{row-gap:24px}.request-field>label{flex-flow:wrap;align-items:center;font-weight:700;display:flex}.request-field-hint{color:#334155;margin:0;font-size:14px;line-height:1.6}.request-required,.request-optional{border-radius:4px;flex-shrink:0;width:fit-content;padding:2px 7px;font-size:14px;font-weight:700;line-height:1.5;display:inline-block}.request-required{color:#9f261b;background:#fff0e9;border:1px solid #e1a28a}.request-optional{color:#334155;background:#edf2f7;border:1px solid #cbd5e1}.request-contact [aria-invalid=true],.request-choices[aria-invalid=true]{background-color:#fff8f7;border:2px solid #b42318}.request-choices[aria-invalid=true]{border-radius:12px;padding:10px}.request-field-error{color:#a51c14;margin:0;font-size:14px;font-weight:600;line-height:1.65}.request-error-summary{color:#172b49;background:#fff8f7;border:2px solid #b42318;border-radius:12px;margin:20px 0;padding:20px;scroll-margin-top:110px}.request-error-summary h2{margin:0 0 10px;font-size:20px}.request-error-summary p{margin:8px 0;font-size:16px}.request-error-summary ul{margin:12px 0 0;padding-left:22px}.request-error-summary li{margin:4px 0}.request-error-summary button,.request-text-button{text-underline-offset:3px;color:#164786;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:8px 0;font-size:16px;line-height:1.6;text-decoration:underline}.request-error-summary button{color:#9f261b;min-height:44px}.request-error-summary:focus,.request-review:focus{outline-offset:4px;outline:3px solid #1e54a5}.request-review{padding:24px 0;scroll-margin-top:110px}.request-review h2{font-size:24px}.request-review p{margin:12px 0}.request-review-actions{flex-wrap:wrap;gap:12px;margin:24px 0;display:flex}.request-form-body[hidden]{display:none}@media (max-width:600px){.request-error-summary{padding:16px}.request-step>header{flex-wrap:wrap;gap:8px}.request-step>header h2{min-width:150px;font-size:20px}.request-contact input,.request-contact select{font-size:16px}.request-review-actions .btn,.request-review>.btn{width:100%}}.request-account{margin:28px 0}.request-account-switch{flex-wrap:wrap;gap:12px;margin:18px 0;display:flex}.request-intro h1{line-height:1.3}.request-choice:has(input:focus-visible){outline-offset:4px;outline:3px solid #1e54a5}.request-contact input,.request-contact select{width:100%;min-height:48px}.request-form-body .form-error{color:#34465e}.public-request-wrap .form-error{color:#34465e;background:#fff0ef;padding:16px}.request-summary dd,.request-summary dt{margin:0!important}.request-topbar{justify-content:space-between;align-items:center;max-width:1000px;margin:auto;padding:24px;display:flex}.request-choices{grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:600px){.request-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.request-choice img{height:145px}}@media (min-width:900px){.request-choices{grid-template-columns:repeat(4,minmax(0,1fr))}}
