@import url("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{margin:0;background:var(--bg);color:var(--ink);font-family:DM Sans,Noto Sans JP,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}input,select,textarea{width:100%;background:#fff;border:1px solid #dce7f4;border-radius:8px;padding:11px 13px;color:var(--ink);outline:none;transition:.15s}input:focus,select:focus,textarea:focus{border-color:#365778;box-shadow:0 0 0 3px #142e520b}textarea{resize:vertical}h1,h2,h3,p{margin-top:0}h1{font-size:30px;line-height:1.4;letter-spacing:-.8px}h1,h2{font-weight:600;margin-bottom:9px}h2{font-size:19px;letter-spacing:-.3px}h3{font-size:16px;font-weight:600;margin-bottom:9px}p{color:#34465e;line-height:1.85}small{font-size:14px}svg{flex-shrink:0}a:focus-visible,button:focus-visible{outline:3px solid #8198b5;outline-offset:4px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:11px;border:1px solid var(--primary);background:var(--primary);color:#fff;font-weight:500;font-size:14px;border-radius:8px;padding:13px 19px;white-space:nowrap;transition:background .18s,transform .18s}.btn:hover{background:#142e52;transform:translateY(-1px)}.btn.small{padding:9px 13px;font-size:14px}.btn.outline{background:#fff;color:var(--ink);border-color:#dce7f4}.btn.outline:hover{background:#f1f5fa}.btn.light{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--deep)}.full{width:100%}.text-link{background:none;gap:8px;font-size:14px;font-weight:500;padding:0}.icon-btn,.text-link{border:0;display:inline-flex;align-items:center;color:#34465e}.icon-btn{background:transparent;border-radius:7px;padding:7px;justify-content:center}.icon-btn:hover{background:#f1f5fa}.button-row{display:flex;gap:9px;flex-wrap:wrap}.button-row,.logo{align-items:center}.logo{font-size:28px;letter-spacing:-1.5px;font-weight:700;color:var(--deep);display:inline-flex;gap:8px}.logo-symbol{height:33px;width:33px;display:grid;place-items:center;border-radius:9px;background:var(--deep);color:#34465e}.logo-dot{color:#34465e;margin-left:-7px}.eyebrow{display:block;font-size:14px;letter-spacing:1.8px;font-weight:600;color:#34465e;margin-bottom:11px}.eyebrow>span{display:inline-block;background:#365778;width:6px;height:6px;border-radius:50%;margin-right:8px}.language{border:0;background:transparent;color:#34465e;gap:6px;font-size:14px;font-weight:600;padding:8px}.header-actions,.language{display:flex;align-items:center}.header-actions{gap:19px}.public-header{height:98px;padding:0 max(6%,calc((100vw - 1320px) / 2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f1f5fa;background:#fbfcf9}.public-header nav{display:flex;gap:34px;font-size:14px;color:#34465e}.public{background:#fbfcf9}.login-link{font-size:14px}.hero{max-width:1440px;margin:auto;padding:73px 6% 65px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;min-height:630px}.hero h1{font-size:58px;line-height:1.55;letter-spacing:-2.5px;margin:23px 0}.hero h1 em{font-style:normal;position:relative;z-index:0}.hero h1 em:after{position:absolute;content:"";height:13px;bottom:3px;left:0;right:0;background:#dce7f4;z-index:-1}.hero-copy>p{font-size:14px;max-width:405px;line-height:2.2;margin-bottom:28px}.hero-actions{display:flex;gap:25px;align-items:center}.hero-trust{display:flex;gap:22px;font-size:14px;color:#34465e;margin-top:24px}.hero-trust span{display:flex;align-items:center;gap:5px}.hero-art{position:relative;min-height:450px;background:#f1f5fa;border-radius:150px 12px 12px 12px;overflow:visible}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#8198b514 1px,transparent 0),linear-gradient(90deg,#8198b514 1px,transparent 0);background-size:30px 30px;border-radius:inherit;overflow:hidden}.art-label{right:22px;top:22px;writing-mode:vertical-rl;letter-spacing:3px}.art-caption,.art-label{position:absolute;font-size:14px;color:#34465e}.art-caption{left:27px;bottom:22px;letter-spacing:2px}.architecture{left:14%;top:23%;width:73%;perspective:800px}.architecture,.house-face{position:absolute;height:64%}.house-face{background:#f5f4e9;width:60%;bottom:16%;left:4%;box-shadow:inset -10px 0 25px #8198b522;z-index:3}.house-roof{position:absolute;width:66%;height:48%;background:#365778;clip-path:polygon(50% 0,100% 100%,0 100%);left:1%;top:-.5%;z-index:5}.house-side{position:absolute;left:64%;width:28%;height:65%;bottom:16%;background:#dce7f4;transform:skewY(-29deg);transform-origin:left bottom;z-index:2}.window{position:absolute;background:#8198b5;border:6px solid #e2e5d8;box-shadow:inset 4px 4px 0 #36577833}.large-window{width:44%;height:39%;left:8%;top:14%}.large-window:after{content:"";height:100%;width:4px;background:#dce7f4;position:absolute;left:48%}.small-window{width:25%;height:24%;right:9%;top:15%}.door{position:absolute;width:24%;height:41%;right:10%;bottom:0;background:#8198b5;border:4px solid #dce7f4}.door:after{content:"";width:3px;height:10px;background:#365778;position:absolute;right:3px;top:50%}.ground{position:absolute;left:-15%;right:-5%;height:22%;bottom:0;transform:skewX(-35deg);background:#8198b59c;border-radius:50%;z-index:1}.plant{border-radius:50% 50% 40% 40%;width:19%;height:38%;bottom:13%;right:-8%;z-index:5;box-shadow:inset -10px 0 #36577848}.plant,.plant:after{position:absolute;background:#365778}.plant:after{content:"";width:4px;height:30px;bottom:-18px;left:48%}.plant2{height:25%;width:14%;left:-12%;bottom:13%;background:#8198b5}.float-card{position:absolute;display:flex;align-items:center;gap:12px;background:#ffffffee;padding:16px 19px;border:1px solid #fff;border-radius:11px;box-shadow:0 15px 45px #142e5216;z-index:10}.float-card small,.float-card strong{display:block;font-size:14px}.float-card small{color:#34465e;margin-top:4px}.float-top{top:33px;left:-24px}.float-bottom{bottom:42px;right:-20px}.round-icon{width:46px;height:46px;border-radius:12px;background:#f1f5fa;display:grid;place-items:center;color:#34465e}.mini-check{height:27px;width:27px;background:#dce7f4;border-radius:50%;display:grid;place-items:center;color:#34465e}.public-strip{border-top:1px solid #f1f5fa;border-bottom:1px solid #f1f5fa;display:flex;gap:35px;align-items:center;justify-content:space-between;padding:29px 6%;font-size:14px;color:#34465e}.public-strip>span{display:flex;gap:10px;align-items:center}.public-strip svg{width:20px}.public-section{max-width:1440px;margin:auto;padding:72px 6%}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading p{margin-bottom:0;font-size:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:34px}.steps article{background:#fff;border:1px solid #f1f5fa;border-radius:11px;padding:27px}.step-top{display:flex;align-items:center;justify-content:space-between;color:#34465e;margin-bottom:28px}.step-top span{font-size:27px;font-weight:400;color:#34465e}.steps p{font-size:14px;margin-bottom:0;line-height:2}.company-cta{margin:0 6% 65px;background:#142e52;border-radius:13px;padding:36px 42px;color:white;display:flex;align-items:center;justify-content:space-between;gap:30px}.company-cta p{margin:0;color:#34465e;font-size:14px}.company-cta .eyebrow{color:#34465e}.public footer{display:flex;align-items:center;gap:28px;padding:32px 6%;border-top:1px solid var(--line);color:#34465e;font-size:14px}.public footer .logo{margin-right:auto;font-size:25px}.info-page{min-height:65vh;max-width:1000px}.info-page h1{margin:35px 0 28px}.info-page p{font-size:16px;line-height:2.2;max-width:700px;margin-bottom:35px}.loading-page{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px}.spinner{height:25px;width:25px;border:2px solid #dce7f4;border-top-color:#142e52;border-radius:50%;animation:spin .8s linear infinite}.loading{padding:70px;display:flex;justify-content:center}@keyframes spin{to{transform:rotate(1turn)}}.auth-layout{min-height:100vh;display:grid;grid-template-columns:42% 58%;background:#fff}.auth-layout>aside{padding:50px 12%;background:#142e52;display:flex;flex-direction:column;justify-content:space-between;color:#34465e;min-height:100vh}.auth-layout aside .logo{color:white}.auth-layout aside .logo-symbol{background:#dce7f4;color:#34465e}.auth-layout aside h1{font-size:42px;line-height:1.65;letter-spacing:-1px;margin:25px 0}.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{display:block;margin-bottom:17px}.field>span{font-size:14px;font-weight:500;margin-bottom:7px}.field small,.field>span{display:block;color:#34465e}.field small{margin-top:5px}.checkbox{display:flex;align-items:flex-start;gap:9px;font-size:14px;line-height:1.9;color:#34465e;margin:19px 0}.checkbox input{width:15px;min-width:15px;margin-top:4px;accent-color:#142e52}.segmented{background:#f1f5fa;border-radius:8px;padding:4px;display:flex;gap:5px;margin:25px 0}.segmented button{flex:1 1;border:0;padding:9px;border-radius:6px;background:transparent;color:#34465e;font-size:14px}.segmented button.active{background:white;color:#34465e;box-shadow:0 2px 6px #142e5210}.auth-switch{margin-top:24px;text-align:center}.auth-switch a{color:#34465e;font-weight:600}.app-shell{display:flex;min-height:100vh}.sidebar{width:232px;background:#fff;border-right:1px solid var(--line);position:fixed;top:0;bottom:0;left:0;display:flex;flex-direction:column;padding:29px 20px;z-index:50}.sidebar>.logo,.sidebar>a{margin-left:9px}.workspace-label{margin:42px 11px 17px;color:#34465e;font-size:14px;letter-spacing:.7px;display:flex;justify-content:space-between;align-items:center}.workspace-label span{font-size:14px;background:#f1f5fa;padding:2px 5px;border-radius:3px;color:#34465e}.sidebar nav{display:flex;flex-direction:column;gap:6px}.sidebar nav a{display:flex;align-items:center;gap:12px;color:#34465e;font-size:14px;font-weight:500;padding:13px 14px;border-radius:7px}.sidebar nav a:hover{background:#f7f9f3;color:#34465e}.sidebar nav a.active{background:#f1f5fa;color:#34465e}.sidebar nav a svg,.sidebar nav a.active svg{color:#34465e}.nav-dot{margin-left:auto;width:5px;height:5px;background:#365778;border-radius:50%}.sidebar-user{margin:24px -3px -5px;display:flex;gap:9px;align-items:center;padding-top:21px;border-top:1px solid var(--line)}.avatar{height:37px;width:37px;min-width:37px;display:inline-flex;align-items:center;justify-content:center;background:#f1f5fa;border-radius:50%;color:#34465e;font-size:14px;font-weight:600}.sidebar-user strong{display:block;max-width:98px;overflow:hidden;text-overflow:ellipsis;font-size:14px;font-weight:500}.sidebar-user small{font-size:14px;color:#34465e}.sidebar-user .icon-btn{margin-left:auto}.app-main{margin-left:232px;flex:1 1;min-width:0}.app-header{height:78px;border-bottom:1px solid var(--line);background:#ffffffcc;justify-content:space-between;padding:0 38px}.app-header,.breadcrumb{display:flex;align-items:center}.breadcrumb{gap:13px;font-size:14px;color:#34465e}.breadcrumb strong{font-weight:500;color:#34465e}.live-indicator{display:flex;gap:7px;align-items:center;font-size:14px;color:#34465e}.live-indicator span{height:5px;width:5px;border-radius:50%;background:#8198b5}.small-avatar{width:30px;height:30px;min-width:30px;font-size:14px}.notification-button{position:relative}.notification-button i{width:5px;height:5px;position:absolute;top:5px;right:7px;border-radius:50%;background:#bc985c}.workspace-content{max-width:1550px;margin:auto;padding:35px 38px 40px;min-height:calc(100vh - 125px)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.page-heading .eyebrow{font-size:14px;margin-bottom:9px}.page-heading h1{font-size:26px;letter-spacing:-.8px}.page-heading p{font-size:14px;margin-bottom:0;color:#34465e}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:29px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px 20px 17px}.stat-card>div{display:flex;justify-content:space-between;align-items:center;color:#34465e;font-size:14px}.stat-card>div svg{width:17px;color:#34465e}.stat-card>strong{display:block;font-size:33px;font-weight:500;line-height:1.5;margin:9px 0 8px;letter-spacing:-1px}.stat-card>strong small{font-size:14px;margin-left:8px;color:#34465e;font-weight:400}.stat-card p{font-size:14px;color:#34465e;display:flex;align-items:center;gap:5px;margin:0}.stat-dot{width:4px;height:4px;border-radius:50%;background:#8198b5}.dot-1{background:#d2b378}.dot-2{background:#89a1b1}.panel{background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden}.panel-heading{padding:24px 25px 19px;display:flex;justify-content:space-between;align-items:center;gap:20px}.panel-heading h2{font-size:15px;display:flex;align-items:center;gap:9px}.panel-heading p{margin:0}.count,.panel-heading p{font-size:14px;color:#34465e}.count{min-width:19px;height:19px;background:#f1f5fa;border-radius:4px;display:inline-flex;justify-content:center;font-weight:500}.count,.search{align-items:center}.search{display:flex;gap:7px;border:1px solid var(--line);border-radius:7px;padding:0 10px;min-width:210px;color:#34465e}.search input{border:0;box-shadow:none;padding:9px 0;font-size:14px}.tabs{display:flex;gap:23px;border-bottom:1px solid var(--line);padding:0 25px;overflow-x:auto}.tabs button{display:flex;align-items:center;gap:7px;border:0;background:none;font-size:14px;white-space:nowrap;padding:12px 0 15px;border-bottom:2px solid transparent}.tabs button.active{color:#34465e;border-bottom-color:#365778;font-weight:600}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:23px}.project-card{padding:20px;border:1px solid #f1f5fa;border-radius:9px;transition:.2s}.project-card:hover{border-color:#8198b5;box-shadow:var(--shadow);transform:translateY(-2px)}.project-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:10px}.project-icon{width:42px;height:42px;border-radius:9px;display:grid;place-items:center;background:#f2f5ed;color:#34465e}.project-number{font-size:14px;letter-spacing:1px;color:#34465e}.project-card h3{font-size:14px;margin:6px 0 9px;font-weight:500}.project-address{font-size:14px;color:#34465e;margin-bottom:15px}.project-facts{display:flex;gap:9px;font-size:14px;color:#34465e}.project-facts span{background:#f8faf5;padding:4px 7px;border:1px solid #f1f5fa;border-radius:4px}.project-card-bottom{border-top:1px solid #edf0e9;margin-top:22px;padding-top:14px;display:flex;justify-content:space-between;color:#34465e;font-size:14px}.project-card-bottom>span{display:flex;gap:5px;align-items:center}.status{display:inline-flex;align-items:center;white-space:nowrap;font-size:14px;font-weight:500;background:#f1f5fa;color:#34465e;border:1px solid #f1f5fa;border-radius:5px;padding:3px 7px}.s-awaiting_customer,.s-contracting,.s-pending,.s-submitted{background:#fcf7e9;color:#34465e;border-color:#f1e9d1}.s-in_progress,.s-issued{background:#eef4f7;color:#34465e;border-color:#e1ebf0}.s-clean,.s-completed,.s-paid,.s-signed{background:#f1f5fa;color:#34465e;border-color:#dce7f4}.s-blocked,.s-cancelled,.s-suspended{background:#fbefea;color:#34465e;border-color:#f1dfd5}.s-superseded{background:#f3f3f3;color:#526176;border-color:#e9e9e9}.empty{padding:62px 30px;text-align:center;display:flex;align-items:center;flex-direction:column}.empty-icon{background:#f4f7ee;width:67px;height:67px;display:grid;place-items:center;border-radius:19px;color:#34465e;margin-bottom:20px}.empty h3{font-size:15px;font-weight:500}.empty p{font-size:14px;max-width:350px;color:#34465e}.empty .btn{margin-top:10px}.dashboard-note{margin-top:25px;border:1px solid #f1f5fa;border-radius:10px;padding:21px 24px;display:flex;gap:17px;align-items:center}.dashboard-note,.dashboard-note .round-icon{background:#f1f5fa}.dashboard-note strong{font-size:14px;font-weight:500;color:#34465e}.dashboard-note p{font-size:14px;color:#34465e;margin:5px 0 0}.dashboard-note>a{margin-left:auto;color:#34465e}.app-footer{justify-content:space-between;padding:15px 38px}.alert,.app-footer{display:flex;font-size:14px;color:#34465e}.alert{gap:12px;align-items:center;padding:15px 18px;background:#f8f3e5;border:1px solid #ebe3ca;border-radius:8px;margin-bottom:22px}.alert.error{background:#fff1ee;border-color:#f4d6ce;color:#34465e}.alert .icon-btn{margin-left:auto}.notification-panel{position:absolute;right:32px;top:67px;z-index:60;background:white;border:1px solid var(--line);box-shadow:var(--shadow);width:350px;max-height:70vh;overflow:auto;border-radius:10px;padding:18px}.notification-panel>a{display:block;padding:14px 0;border-top:1px solid var(--line)}.notification-panel strong{font-size:14px;display:block;font-weight:500}.notification-panel small{display:block;color:#34465e;margin-top:5px}.notification-panel p,.toast{font-size:14px}.toast{position:fixed;bottom:27px;left:50%;transform:translateX(-50%);z-index:100;background:#142e52;color:#fff;padding:14px 23px;box-shadow:var(--shadow);border-radius:9px;display:flex;gap:10px;align-items:center}.form-panel{max-width:900px;margin:0 auto;padding:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.form-section{display:flex;align-items:center;gap:16px;margin:10px 0 28px}.section-number{height:39px;width:39px;display:grid;place-items:center;background:#f1f5fa;border-radius:9px;font-size:14px;color:#34465e}.form-section h2{font-size:16px;margin:0 0 3px}.form-section p{font-size:14px;margin:0}.form-actions{border-top:1px solid var(--line);padding-top:23px;margin-top:23px;display:flex;justify-content:space-between;align-items:center;gap:20px}.form-actions>span{font-size:14px;color:#34465e}.detail-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:22px}.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{padding:0 9px;color:#34465e}.progress-track{background:#fff;border:1px solid var(--line);border-radius:10px;padding:21px;display:flex;align-items:center;justify-content:space-between;margin:27px 0 20px;gap:10px}.progress-track>div{display:flex;align-items:center;gap:8px;font-size:14px;color:#34465e;flex:1 1;position:relative}.progress-track>div:after{content:"";height:1px;background:#f1f5fa;flex:1 1;margin:0 8px}.progress-track>div:last-child{flex:0 0 auto}.progress-track>div:last-child:after{display:none}.progress-track span{background:#f3f6ed;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;font-size:14px}.progress-track .done{color:#34465e}.progress-track .done span{background:#f1f5fa;color:#34465e}.project-tabs{padding:0 2px;margin-bottom:23px;gap:30px}dl{margin:0}dt{margin-top:20px;margin-bottom:6px}dd,dt{font-size:14px;color:#34465e}dd{margin:0;line-height:1.9;overflow-wrap:anywhere}.pre-wrap{white-space:pre-wrap}.next-step{background:#f5f8ef;padding:17px;display:flex;align-items:flex-start;gap:12px;margin:25px 0;color:#34465e;border-radius:8px}.next-step p,.next-step strong{font-size:14px}.next-step p{color:#34465e;margin:4px 0 0}.assigned-company{display:flex;align-items:center;gap:10px;padding:15px 0;border-bottom:1px solid var(--line)}.assigned-company>div{flex:1 1}.assigned-company strong{display:block;font-size:14px;font-weight:500}.assigned-company small{display:block;font-size:14px;color:#34465e;margin-top:4px}.assign-form{margin-top:26px}.muted{color:#34465e;font-size:14px}.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.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{font-size:14px;color:#34465e}.quote-card>h2{font-size:28px;font-weight:500;letter-spacing:-1px;margin:20px 0 0}.quote-card dd{font-size:14px;max-height:100px;overflow:auto}.quote-card dl{margin-bottom:25px}.quote-card .btn{margin-top:9px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left}table,th{font-size:14px}th{font-weight:500;background:#fafbf7;padding:13px 20px;white-space:nowrap;border-bottom:1px solid var(--line)}td,th{color:#34465e}td{padding:17px 20px;border-bottom:1px solid #f1f5fa}tr:last-child td{border-bottom:0}.money{white-space:nowrap;font-weight:600;color:#34465e}.table-doc{display:flex;gap:10px;align-items:center}.table-doc strong{font-weight:500}.table-doc small,.table-doc strong{display:block;font-size:14px;color:#34465e}.table-doc small{margin-top:3px}.subheading{font-size:14px;margin-top:35px}.file-row,.payment-row{display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding:17px 0}.file-row,.payment-row,.payment-row>span{color:#34465e;font-size:14px}.payment-row button{margin-left:auto}.file-row>div{flex:1 1}.file-row strong{font-size:14px;font-weight:500;display:block}.file-row small{font-size:14px;color:#34465e;display:block;margin-top:4px}.timeline{margin-top:25px}.timeline>div{display:flex;gap:17px;position:relative;padding-bottom:24px}.timeline>div>span{width:8px;height:8px;border-radius:50%;background:#8198b5;margin-top:6px}.timeline>div:before{content:"";position:absolute;width:1px;left:3px;top:16px;bottom:3px;background:#f1f5fa}.timeline strong{font-size:14px;font-weight:500}.timeline p{font-size:14px;margin:4px 0 0}.chat-module{display:grid;grid-template-columns:260px 1fr;background:white;border:1px solid var(--line);border-radius:11px;overflow:hidden;height:650px}.chat-list{border-right:1px solid var(--line);background:#fff}.chat-list h3{padding:22px 19px;font-size:14px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);margin:0}.chat-list>button{display:flex;align-items:center;gap:10px;width:100%;padding:19px 13px;border:0;border-bottom:1px solid #f0f3e9;background:#fff;text-align:left;color:#34465e}.chat-list>button.active{background:#f1f5fa}.chat-list>button>div{flex:1 1}.chat-list strong{font-weight:500}.chat-list small,.chat-list strong{display:block;font-size:14px;color:#34465e}.chat-list small{margin-top:4px}.chat-main{display:flex;flex-direction:column;min-height:0;min-width:0}.chat-main>header{display:flex;gap:12px;align-items:center;padding:17px 22px;border-bottom:1px solid var(--line);background:#fff}.chat-main>header>div{flex:1 1}.chat-main>header strong{font-size:14px;font-weight:500;display:block}.chat-main>header small{display:block;font-size:14px;color:#34465e}.chat-main>header>svg{color:#34465e}.chat-project-bar{padding:8px 18px;background:#f4f7ee;display:flex;align-items:center;gap:6px;font-size:14px;color:#34465e;flex-wrap:wrap}.chat-project-bar>span{margin-left:auto;font-size:14px}.chat-scroll{flex:1 1;overflow-y:auto;padding:20px 27px;background:#f4f6f0;background-image:radial-gradient(#dce7f430 1px,transparent 0);background-size:17px 17px}.chat-notice{font-size:14px;text-align:center;color:#34465e;margin:0 auto 25px;display:flex;justify-content:center;gap:6px}.message-row{display:flex;margin-bottom:13px}.message-row.own{justify-content:flex-end}.message-bubble{background:#fff;border:1px solid #f1f5fa;border-radius:0 9px 9px 9px;padding:11px 13px;max-width:78%;box-shadow:0 2px 3px #142e5203}.own .message-bubble{background:#f1f5fa;border-color:#dce7f4;border-radius:9px 0 9px 9px}.message-bubble>strong{font-size:14px;display:block;color:#34465e;font-weight:500}.message-bubble p{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0;color:#34465e}.message-bubble>small{align-items:center;gap:4px;color:#34465e;font-size:14px;margin-top:4px}.message-file{display:flex;align-items:center;gap:8px;word-break:break-all;margin-top:10px}.message-file,.message-file small{font-size:14px}.chat-composer{display:flex;gap:12px;align-items:center;padding:14px 18px;background:white;border-top:1px solid var(--line)}.chat-composer input{border:0;background:#f5f7f0;font-size:14px}.send-button{width:40px;height:40px;min-width:40px;background:#142e52;color:white;border:0;border-radius:50%;display:grid;place-items:center}.chat-empty{height:80%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#34465e}.chat-empty p{color:#34465e;font-size:14px;margin-top:15px}.inbox-row{display:flex;align-items:center;gap:16px;padding:23px 25px;border-bottom:1px solid var(--line)}.inbox-row>div{flex:1 1}.inbox-row strong{font-size:14px;font-weight:500}.inbox-row small{display:block;font-size:14px;color:#34465e;margin-top:5px}.company-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.company-grid .button-row{margin-top:25px}.document-top{justify-content:space-between;margin-bottom:22px}.document-top,.save-indicator{display:flex;align-items:center}.save-indicator{font-size:14px;color:#34465e;gap:6px}.save-indicator>span{width:5px;height:5px;background:#8198b5;border-radius:50%}.save-indicator.error,.save-indicator.saving,.save-indicator.unsaved{color:#34465e}.heading-muted{color:#34465e;font-weight:400;font-size:19px}.document-tabs{padding:0;margin-bottom:24px}.document-workspace{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:27px;align-items:start}.document-workspace.read-only{display:block;max-width:780px;margin:auto}.editor-section{padding:23px;border-bottom:1px solid var(--line)}.editor-section h3{font-size:14px;margin-bottom:23px;display:flex;align-items:center;gap:10px}.editor-section h3>span{font-size:14px;background:#f1f5fa;padding:3px 7px;border-radius:4px;color:#34465e}.editor-section input,.editor-section select,.editor-section textarea{font-size:14px;padding:10px}.editor-section .field>span{font-size:14px}.line-item{border:1px solid #dce7f4;border-radius:7px;padding:11px 12px;margin-bottom:12px}.line-heading{display:flex;gap:7px;align-items:center}.line-heading>span{font-size:14px;color:#34465e}.line-heading input{border:0!important;padding:4px!important;font-size:14px!important;background:#f8faf3}.line-description{margin:9px 0}.line-numbers{display:grid;grid-template-columns:1fr .8fr 1.5fr 1.4fr;gap:7px;align-items:center}.line-numbers .field{margin:0}.line-numbers strong{font-size:14px;text-align:right;padding-top:16px;color:#34465e}.add-line{width:100%;padding:11px;border:1px dashed #dce7f4;background:#fafcf6;color:#34465e;border-radius:6px;font-size:14px;display:flex;align-items:center;justify-content:center;gap:7px;margin:15px 0 22px}.document-preview{position:sticky;top:20px}.preview-label{display:flex;gap:7px;align-items:center;font-size:14px;letter-spacing:1px;color:#34465e;margin:0 0 12px}.preview-label>span{margin-left:auto}.paper{background:#fff;border:1px solid #dce7f4;box-shadow:0 5px 25px #142e5210;padding:34px;color:#34465e;min-height:620px}.paper-top{justify-content:space-between;gap:10px;margin-bottom:36px}.paper-brand,.paper-top{display:flex;align-items:center}.paper-brand{gap:6px;font-size:14px;font-weight:600}.paper-top>span{font-size:14px;text-align:right;letter-spacing:.6px;color:#34465e}.paper h2{font-size:24px;letter-spacing:2px;font-weight:500;border-bottom:1px solid #f1f5fa;padding-bottom:16px;margin-bottom:22px}.paper-parties{display:flex;justify-content:space-between;gap:20px;margin:0 0 26px}.paper-parties>div{max-width:50%}.paper-parties>div:last-child{text-align:right}.paper-parties strong{font-size:14px;display:block;font-weight:500}.paper-parties small{font-size:14px;color:#34465e;display:block;margin-bottom:5px;letter-spacing:.7px}.paper-parties p{font-size:14px;margin:3px 0;color:#34465e}.paper-amount{background:#f1f5fa;padding:16px 18px;border-left:3px solid #365778;display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.paper-amount span{font-size:14px;color:#34465e}.paper-amount strong{font-size:25px;font-weight:500;color:#34465e;letter-spacing:-.8px}.paper-table th{font-size:14px;padding:9px 4px;background:#fff;color:#34465e;border-bottom:1px solid #dce7f4}.paper-table td{font-size:14px;padding:12px 4px;color:#34465e}.paper-table td strong{display:block;font-weight:500}.paper-table td small,.paper-table td strong{font-size:14px;color:#34465e}.paper-table td:last-child,.paper-table th:last-child{text-align:right;white-space:nowrap}.paper-totals{max-width:60%;margin:20px 0 26px auto}.paper-totals>div{display:flex;justify-content:space-between;font-size:14px;padding:5px 0;color:#34465e}.paper-totals .total{border-top:1px solid #dce7f4;margin-top:7px;padding-top:11px;color:#34465e}.paper-notes{margin-bottom:17px;font-size:14px}.paper-notes>strong{font-size:14px;font-weight:600;color:#34465e}.paper-notes p{font-size:14px;line-height:1.9;white-space:pre-wrap;color:#34465e;margin:4px 0 0;overflow-wrap:anywhere}.paper-footer{border-top:1px solid #f1f5fa;justify-content:space-between;font-size:14px;padding-top:15px;margin-top:30px}.paper-footer,.signature{display:flex;color:#34465e}.signature{align-items:center;gap:10px;border:1px solid #dce7f4;padding:12px;margin-top:12px}.signature small,.signature strong{display:block;font-size:14px}.signature small{color:#34465e}.sign-button{margin-top:20px}.revision-row{display:flex;align-items:center;gap:17px;padding:20px 0;border-bottom:1px solid var(--line)}.version-circle{border-radius:9px;min-width:40px;height:40px;background:#f1f5fa;display:grid;place-items:center;color:#34465e;font-size:14px}.revision-row>div{flex:1 1}.revision-row strong{font-size:14px;font-weight:500}.revision-row small{display:block;font-size:14px;color:#34465e}.comparison{margin-top:30px}.comparison h3{font-size:14px}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.compare-grid pre{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;background:#faf3ed;color:#34465e;padding:15px;border-radius:6px}.compare-grid pre+pre{background:#f1f5fa;color:#34465e}.modal-backdrop{position:fixed;inset:0;background:#142e5270;z-index:100;display:flex;align-items:center;justify-content:center;padding:25px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background:white;border-radius:14px;padding:35px;width:480px;max-width:100%;max-height:90vh;overflow:auto;position:relative}.modal>svg{color:#34465e;margin-bottom:20px}.modal h2{font-size:21px}.modal>p{font-size:14px}.modal-close{position:absolute;right:13px;top: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;padding-top:55px;padding-bottom:50px;min-height:560px}.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{padding:11px;gap:8px}.float-card small,.float-card strong{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{font-size:14px;gap:9px;padding:11px}.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{font-size:14px;gap:5px}.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{display:flex;overflow:auto;border-bottom:1px solid var(--line);border-right:0}.chat-list h3{display:none}.chat-list>button{min-width:180px;padding:12px;white-space:nowrap;width:auto}.chat-list button>svg{display:none}.chat-module{height:680px;grid-template-rows:auto 1fr}.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{display:flex;flex-direction:column;padding:40px 25px 30px;gap:50px}.hero-copy{width:100%}.hero h1{font-size:43px;line-height:1.5;margin:20px 0}.hero-copy>p{font-size:14px;max-width:100%}.hero-actions{flex-direction:row;align-items:center;gap:18px}.hero-actions .btn{font-size:14px;padding:13px}.hero-actions .text-link,.hero-trust{font-size:14px}.hero-trust{gap:16px}.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{margin:0 22px 35px;flex-direction:column;align-items:flex-start;padding:28px}.company-cta h2{font-size:19px}.public footer{padding:25px;gap:17px;flex-wrap:wrap}.public footer>a:first-child{width:100%}.sidebar{transform:translateX(-100%);transition:transform .2s;width:232px}.sidebar.is-open{transform:translateX(0)}.scrim{display:block;position:fixed;inset:0;background:#142e5249;z-index:40}.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{display:inline-flex;margin-left:-7px}.workspace-content{padding:25px 17px 35px;min-height:calc(100vh - 145px)}.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{font-size:14px;padding:10px 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{padding:19px 17px;flex-wrap:wrap;gap:14px}.panel-heading h2{font-size:14px}.search{width:100%}.project-grid{grid-template-columns:1fr;padding:17px;gap:14px}.project-card{padding:20px}.tabs{padding-left:17px;gap:23px}.tabs button{font-size:14px}.dashboard-note{padding:17px;gap:12px}.dashboard-note p,.dashboard-note strong{font-size:14px}.dashboard-note .round-icon{min-width:35px;width:35px;height:35px}.app-footer{padding:14px 20px 83px;font-size:14px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;height:67px;padding-bottom:env(safe-area-inset-bottom);background:#fffffffa;border-top:1px solid var(--line);z-index:35;justify-content:space-around;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-nav,.mobile-nav a{display:flex;align-items:center}.mobile-nav a{flex-direction:column;gap:4px;color:#34465e;padding:9px;font-size:14px}.mobile-nav a.active{color:#34465e}.toast{bottom:85px;max-width:90vw;width:max-content;font-size:14px}.empty{padding:40px 20px}.notification-panel{right:12px;top:58px;width:calc(100% - 24px)}.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{flex-direction:column;flex:1 1!important;font-size:14px;gap:6px;white-space:nowrap}.progress-track>div:after{display:none}.progress-track span{width:21px;height:21px}.project-heading{align-items:flex-start}.project-tabs{padding-left:0;gap:22px}.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{padding:11px;gap:6px}.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{font-size:14px;word-break:break-all}.document-top{font-size:14px}.document-tabs{padding:0}.document-workspace{gap:24px}.paper{padding:24px 20px;min-height:500px}.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{gap:9px;flex-wrap:wrap}.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}td,th{padding:13px 12px}.table-doc{min-width:150px}.panel .table-scroll{margin:0}.document-preview .btn{font-size:14px}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}body{overflow-wrap:anywhere}input,select,textarea{font-size:16px;min-height:48px}input::placeholder,textarea::placeholder{color:#5a687c;opacity:1}input[type=checkbox],input[type=radio]{min-height:0;accent-color:var(--primary)}a,button{touch-action:manipulation}.btn{min-height:48px;font-size:16px;font-weight:600;white-space:normal}.btn.small,.text-link{font-size:14px;min-height:44px}.btn{background:var(--orange);border-color:var(--orange);color:#122b4d}.btn:hover{background:#ffab59;border-color:#ffab59}.btn.outline,.btn.secondary{background:#fff;color:var(--primary);border-color:#8a9db6}.btn.light{background:var(--orange);border-color:var(--orange);color:#122b4d}.icon-btn{width:44px;height:44px;min-width:44px}h1{font-size:32px}h2{font-size:22px}h3{font-size:18px}:focus-visible{outline:3px solid #cf6000;outline-offset:3px}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #142e521a}.hero h1 em,.logo-dot{color:#ac4900}.logo-symbol{background:var(--primary);color:#fff}.hero h1 em:after{background:#ffe0ba}.sidebar{width:280px;background:#122b4d;border:0;overflow-y:auto;padding:24px 18px}.sidebar,.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{background:#24466d;color:#fff}.sidebar nav a.active,.sidebar nav a.active svg{background:var(--orange);color:#122b4d}.workspace-label{color:#d7e3f3;margin:28px 8px 16px;gap:8px;flex-wrap:wrap}.workspace-label span{background:#29496f;color:#fff}.sidebar-user{margin-top:auto;padding-top:20px;border-color:#466080}.sidebar-user .icon-btn,.sidebar-user small{color:#d7e3f3}.sidebar-user strong{max-width:132px}.avatar{background:#e4ecf7;color:#183657}.nav-dot{background:var(--orange);width:8px;height:8px}.app-main{margin-left:280px}.page-heading h1{font-size:30px}.editor-section input,.editor-section select,.editor-section textarea,.field>span,.page-heading p{font-size:16px}.line-heading input{font-size:16px!important}.document-heading,.page-heading,.paper-parties,.paper-top,.project-heading,.section-heading{flex-wrap:wrap}.document-tabs,.project-tabs,.tabs{overflow-x:auto;scrollbar-width:thin}.tabs button{flex-shrink:0;min-height:44px;color:#34465e}.tabs button.active{color:#142e52;border-bottom-color:#cf6000}.auth-layout aside,.cta-band,.toast{background:#122b4d;color:#fff}.auth-layout aside .eyebrow,.auth-layout aside .logo,.auth-layout aside p,.auth-layout aside small{color:#e7eef8}.auth-layout aside .logo-symbol{background:var(--orange);color:#122b4d}.status{line-height:1.5;white-space:normal}.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{font-size:16px;color:#172d48}.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{border-color:#cc6200;background:#fff4e8;box-shadow:0 0 0 1px #cc6200}.request-choice.selected i{background:#142e52;border-color:#142e52;color:#fff}.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{width:260px;transform:translateX(-100%);transition:transform .2s;visibility:hidden}.sidebar.is-open{transform:translateX(0);visibility:visible}.app-main{margin-left:0}.mobile-menu{display:inline-flex}.scrim{display:block;position:fixed;inset:0;background:#122b4d88;z-index:40}.mobile-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;bottom:0;inset-inline:0;min-height:76px;height:auto;padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:#122b4d;z-index:35}.mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:14px;padding:6px 2px;color:#fff;text-align:center;line-height:1.3;min-height:54px}.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}.hero-copy>p,.page-heading 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-actions,.hero-trust{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{display:grid;grid-template-columns:1fr;gap:20px}.document-actions,.heading-actions{flex-wrap:wrap}.progress-track{justify-content:flex-start;padding:16px 12px;gap:14px}.progress-track>div{flex:0 0 86px!important;white-space:normal;text-align:center}.request-choices{gap:10px}.request-choice>span{min-height:78px}.notification-panel{position:fixed;inset-inline:12px;top:68px;width:auto;max-height:calc(100dvh - 168px);overflow-y:auto}}.company-cta .eyebrow,.company-cta p{color:#e7eef8}.toast svg{color:#ffad66}@media (max-width:650px){.editor-section .form-grid{grid-template-columns:1fr}}.service-invoice-card{padding:16px 0;border-top:1px solid var(--line)}.service-invoice-card .btn{margin:4px 10px 4px 0}.branding-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:24px}.branding-card{display:flex;flex-direction:column;gap:16px;min-width:0}.branding-card input{max-width:100%}.branding-image{width:100%;height:140px;object-fit:contain;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px}.document-logo{max-width:110px;max-height:48px;object-fit:contain}.document-seal{display:block;width:80px;height:80px;object-fit:contain;margin:12px 0 0 auto}.edit-requests{margin-bottom:24px}.edit-requests label{display:grid;gap:8px}.edit-requests form{display:grid;gap:16px}.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{width:100%;text-align:left;color:#142e52;background:#eef4fc;border:0}.support-layout{display:grid;grid-template-columns:250px minmax(0,1fr)}.support-users{max-height:580px;overflow:auto;padding:12px}.support-users button{width:100%;text-align:left;border:0;background:white}.support-users button.active{background:#eef4fc}.support-users small{display:block;overflow:hidden;text-overflow:ellipsis;max-width:190px}.support-chat{min-width:0;height:580px;display:flex;flex-direction:column}.support-chat .chat-scroll{flex:1 1;min-height:120px;overflow:auto}.support-compose{display:flex;gap:8px;padding:12px;align-items:center;background:white}.support-compose textarea{flex:1 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{display:flex;flex-direction:column;align-items:stretch}.attachment-preview{display:block;width:100%;max-height:220px;object-fit:cover;border-radius:8px}.attachment-name{overflow-wrap:anywhere;min-width:0}.attachment-name small{display:block}.message-read{font-weight:700;color:#164c83}.message-bubble>small{display:flex;gap:8px;justify-content:flex-end}.account-filters{display:flex;flex-wrap:wrap;gap:16px}.account-filters label{display:grid;gap:8px;flex:1 1;min-width:180px}.account-table{width:100%;border-collapse:collapse}.account-table td,.account-table th{padding:16px;text-align:left;border-bottom:1px solid #d9e1ec}.account-table small{display:block;overflow-wrap:anywhere}.account-modal{width:min(720px,94vw);max-height:88dvh;overflow:auto}.account-fields{border:0;padding:0;margin:0 0 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.account-fields label{display:grid;gap:8px}.account-fields input,.account-fields select{min-width:0;width:100%}@media (max-width:600px){.account-fields{grid-template-columns:1fr}.account-filters label{min-width:100%}}.compact-quote-heading{margin-bottom:12px;gap:12px}.compact-quote-heading h1{font-size:24px;margin:4px 0}.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{gap:10px 14px;grid-template-columns:repeat(2,minmax(0,1fr))}.compact-quote .field{margin-bottom:8px;gap:4px}.compact-quote .editor-section input,.compact-quote .editor-section select,.compact-quote .editor-section textarea{padding:8px;min-height:40px}.compact-quote .editor-section>p{margin:6px 0 10px;font-size:14px}.quote-group{margin:10px 0;border:1px solid #d9e1ec;border-radius:6px;overflow:hidden}.quote-group-heading{display:flex;align-items:center;gap:12px;padding:6px 10px;background:#eaf0f8}.quote-group-heading input{flex:1 1;min-width:0;font-weight:700;color:#142e52;background:transparent;border:0}.quote-group-heading .btn{flex-shrink:0}.quote-item-row{display:grid;grid-template-columns:minmax(160px,1fr) 74px 86px 115px 105px 80px;gap:8px;align-items:end;padding:7px 10px;border-top:1px solid #e2e8f0}.quote-item-row label{display:block}.quote-item-row label,.quote-unit-field{min-width:0;font-size:14px}.quote-unit-field>span{display:block;margin-bottom:3px;color:#34465e}.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{display:block;margin-bottom:3px;color:#34465e}.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{font-size:14px;text-align:right;align-self:center;overflow-wrap:anywhere}.quote-row-actions{display:flex;align-self:center}.quote-row-actions .icon-btn{min-width:40px;min-height:40px}.compact-quote .paper{padding:22px;min-height:0}.compact-quote .paper h2{font-size:24px;margin:12px 0 6px}.compact-quote .paper-parties{margin:12px 0;gap:14px}.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{background:#eaf0f8;color:#142e52;text-align:left}.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-column:3;grid-row:3}.quote-item-row label:nth-child(4){grid-column:3}.compact-quote .paper{padding:14px}.compact-quote .paper table{min-width:0;table-layout:fixed}.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{margin:0 0 12px;padding:0;gap:8px 12px;flex-direction:row;align-items:center}.app-shell .page-heading>div:first-child{min-width:0}.app-shell .page-heading h1{font-size:20px;line-height:1.4;letter-spacing:0;margin:0;overflow-wrap:anywhere}.app-shell .page-heading .eyebrow{font-size:14px;line-height:1.4;margin:0 0 2px;letter-spacing:0}.app-shell .page-heading p{font-size:14px;line-height:1.5;margin:2px 0 0;overflow-wrap:anywhere}.app-shell .page-heading .btn{font-size:14px;min-height:40px;padding:8px 12px}.app-shell .page-heading.project-heading{margin-top:8px}.app-shell .dashboard-heading .eyebrow,.app-shell .dashboard-heading>div>p,.role-admin .page-heading .eyebrow,.role-admin .page-heading>div>p{display:none}.app-shell .page-heading .button-row{margin:0;gap:8px}.selection-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;margin:16px 0;border-radius:10px;border:1px solid}.selection-banner h2{margin:6px 0;font-size:20px}.selection-banner p{margin:4px 0;color:#1e3c36;font-size:14px}.selection-label{display:flex;align-items:center;gap:7px;font-weight:700;color:#126445;font-size:14px}.selected-contractor{background:#edf9f2;border-color:#a4d9bc;border-left:5px solid #168456}.selection-banner.not-selected{display:block;background:#fff4ed;border-color:#edc0a5}.selection-banner.not-selected h1{font-size:22px;margin:12px 0}.contact-privacy{padding:10px 12px;border-left:3px solid #3269b4;background:#eef4fd;font-size:14px;color:#23446f}.status.s-draft,.status.s-pending,.status.s-submitted{background:#eef1f6;color:#40516a}.status.s-approved,.status.s-issued,.status.s-quoting{background:#e8f0ff;color:#234fa2}.status.s-awaiting_customer,.status.s-changes_requested,.status.s-completion_review,.status.s-contracting{background:#fff0d8;color:#945000}.status.s-completed,.status.s-contracted,.status.s-paid,.status.s-selected,.status.s-signed{background:#dcf4e6;color:#126445}.status.s-in_progress{background:#ede6ff;color:#63399d}.status.s-blocked,.status.s-cancelled,.status.s-not_selected,.status.s-suspended{background:#fde9e5;color:#9a3528}.progress-track>.done{color:#126445;border-color:#76c69a}.progress-track>.done>span{background:#168456;color:white;border-color:#168456}.progress-track>.current{color:#a65008;font-weight:700;border-color:#ee9a44}.progress-track>.current>span{background:#ff951c;color:#142e52;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){border:2px solid #168456;background:#f4fcf7}@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{align-items:stretch;flex-direction:column;padding:14px}}.contract-workspace{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start}.contract-workspace>*{min-width:0}.contract-intro{padding:20px;background:#edf3fb;border-bottom:1px solid #ccd9eb}.contract-intro h2{font-size:20px;margin:12px 0 8px}.contract-editor p,.contract-intro p{font-size:14px;color:#334761}.contract-editor .editor-section{padding:20px}.contract-editor .field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;min-width:0}.contract-editor .field>span{font-weight:600;font-size:14px}.contract-editor .wide{grid-column:1/-1}.contract-editor textarea{font-size:14px;line-height:1.7}.contract-editor summary{cursor:pointer;font-size:14px;font-weight:600;padding:12px 0}.contract-editor details ul{padding-left:20px;font-size:14px;line-height:1.8}.contract-price{display:flex;flex-direction:column;gap:6px;padding:15px;margin-bottom:16px;background:#eaf6f0;color:#175c42;border-radius:10px}.contract-price strong{font-size:20px}.contract-price span{font-size:14px}.contract-payment{padding:12px;background:#fff2df;border-radius:8px;font-weight:600}.contract-template-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:12px}.contract-sources a{display:block;font-size:14px;padding:6px 0;color:#194b85}.contract-missing{background:#fff4e6;padding:0 12px;margin-bottom:16px;border-radius:8px}.contract-detail p{white-space:pre-wrap;overflow-wrap:anywhere}.quote-groups{display:grid;gap:24px}.quote-groups>section>h3{margin:0 0 14px;font-size:18px}.selected-quote-group>h3{color:#156342}.quote-card.selected-quote-card{border:2px solid #27865e;background:#f3fbf7}.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{padding:24px;min-height:0}.contract-paper-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px}.contract-paper h2{margin:18px 0 8px;font-size:24px}.contract-paper h3{background:#edf3fb;color:#142e52;padding:9px 12px;font-size:15px;margin:20px 0 10px}.contract-created{font-size:14px;color:#43546d}.contract-facts{margin:0;border:1px solid #d8e1ee}.contract-facts>div{display:grid;grid-template-columns:85px minmax(0,1fr);border-bottom:1px solid #d8e1ee}.contract-facts>div:last-child{border-bottom:0}.contract-facts dd,.contract-facts dt{margin:0;padding:9px;font-size:14px}.contract-facts dt{background:#f6f8fc}.contract-parties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contract-parties section{min-width:0;position:relative}.contract-parties h3{margin-top:14px}.contract-parties p{font-size:14px}.contract-parties strong{font-size:16px}.contract-total{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;background:#142e52;color:white;border-radius:6px}.contract-total span{font-size:14px}.contract-total strong{font-size:24px}.contract-tax{font-size:14px;margin:8px 0 0}.contract-tax>div{display:flex;gap:12px;padding:4px 0}.contract-tax dd{margin:0}.contract-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.contract-dates>div{border:1px solid #d8e1ee;border-top:3px solid #ed922d;padding:10px 8px}.contract-dates span,.contract-dates strong{display:block;font-size:14px}.contract-bank p,.contract-hours,.contract-payment-terms{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.contract-payments{width:100%;border-collapse:collapse;font-size:14px}.contract-payments td,.contract-payments th{padding:9px 6px;border:1px solid #d8e1ee;text-align:left;overflow-wrap:anywhere}.contract-payments thead{background:#edf3fb}.contract-bank{border-left:3px solid #ed922d;padding:8px 12px;background:#fff8ee;font-size:14px}.contract-clauses,.contract-conditions{margin-top:24px;border-top:2px solid #d8e1ee}.contract-conditions h4{margin:14px 0 6px;font-size:14px}.contract-annex p,.contract-clauses p,.contract-conditions 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;font-weight:600;padding:12px 0}@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{gap:0}.contract-dates,.contract-parties{grid-template-columns:minmax(0,1fr)}.contract-dates>div{display:flex;justify-content:space-between;align-items:center}.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)}}.compact-quote .paper table,.paper.contract-document table{min-width:0;table-layout:fixed}.compact-quote .paper td,.paper.contract-document td,.paper.contract-document th{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{margin:16px 0 8px;font-size:26px;letter-spacing:.04em}.contract-cover>h3{margin:22px 0 10px;padding:2px 0 2px 11px;border-left:3px solid #ed922d;background:transparent;font-size:16px}.contract-created{margin:6px 0 18px}.contract-facts{border-radius:6px;overflow:hidden}.contract-facts dd,.contract-facts dt{padding:11px 12px;line-height:1.6}.contract-facts dt{background:#edf3f8;font-weight:600}.contract-parties{margin-top:14px;gap:14px}.contract-parties section{border:1px solid #d8e1ee;border-radius:6px;overflow:hidden;padding:0 12px 12px}.contract-parties h3{margin:0 -12px 12px;padding:10px 12px;background:#142e52;color:white}.contract-parties p{margin:6px 0;line-height:1.6;overflow-wrap:anywhere}.contract-total{padding:18px 16px;border-radius:6px 6px 0 0}.contract-total strong{font-size:28px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.contract-tax{margin:0;border:1px solid #d8e1ee;border-top:0;padding:8px 14px;border-radius:0 0 6px 6px;background:#f7f9fc}.contract-tax>div{justify-content:space-between}.contract-dates>div{padding:12px;background:#f7f9fc;border-radius:5px}.contract-dates strong{margin-top:8px;font-size:16px}.contract-payments td,.contract-payments th{padding:11px 9px;line-height:1.6}.contract-payments thead th{background:#142e52;color:white;font-weight:600}.contract-payments tbody th{background:#edf3f8}.contract-payments tbody tr:nth-child(2n) td{background:#f7f9fc}.contract-payments td:nth-child(2),.contract-payments th:nth-child(2){text-align:center}.contract-payments td:nth-child(3),.contract-payments th:nth-child(3){text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.contract-cover .contract-hours,.contract-cover .contract-payment-terms{margin:10px 0;line-height:1.65;font-size:14px}.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 td,.contract-payments th{padding:9px 5px}.contract-facts dd,.contract-facts dt{padding:9px 8px}}.pdf-preview{min-width:0;background:#edf1f7;border:1px solid #d8e1ee;border-radius:8px;padding:12px}.pdf-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:#142e52;font-size:14px}.pdf-controls label{display:flex;align-items:center;gap:6px}.pdf-controls select{max-width:140px;font-size:14px}.pdf-preview>p{font-size:14px;color:#142e52}.pdf-page-viewport{width:100%;overflow:auto;min-height:240px}.pdf-page-viewport canvas{display:block;background:white}.field input[readonly]{background:#edf3f8;color:#142e52}.status.changes_requested,.status.withdrawn{background:#fff0d8;color:#824508}body:has(.messenger-screen){overflow:hidden}.app-shell:has(.messenger-screen) .app-footer,.app-shell:has(.messenger-screen) .app-header,.app-shell:has(.messenger-screen) .mobile-nav{display:none}.messenger-screen{position:fixed;top:var(--messenger-top,0);right:0;left:280px;height:var(--messenger-height,100dvh);display:grid;grid-template-columns:320px minmax(0,1fr);overflow:hidden;z-index:35;background:#f1f5f9;color:#142e52}.messenger-list{display:flex;flex-direction:column;min-height:0;min-width:0;background:white;border-right:1px solid #d8e1ee}.messenger-list>header{display:flex;align-items:center;gap:10px;padding:16px 14px;background:#142e52;color:white;flex-shrink:0}.messenger-list>header .icon-btn{color:white}.messenger-list h1{margin:0;font-size:22px}.messenger-search{display:flex;align-items:center;gap:8px;padding:12px;flex-shrink:0}.messenger-search input{width:100%;min-width:0;background:#f1f5f9;font-size:16px}.messenger-conversations{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.messenger-conversations .inbox-row{display:flex;width:100%;gap:12px;padding:18px 14px;border-bottom:1px solid #e5eaf1}.messenger-conversations .inbox-row>div{min-width:0;flex:1 1}.messenger-conversations .inbox-row small,.messenger-conversations .inbox-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#142e52}.messenger-conversations .inbox-row strong{font-size:16px}.messenger-conversations .inbox-row small{font-size:14px;margin-top:4px}.messenger-conversations .inbox-row.active{background:#e4edf9;box-shadow:inset 3px 0 #ed922d}.pinned-conversation{background:#fff8ed}.unread-dot{width:10px;height:10px;flex-shrink:0;border-radius:50%;background:#ed922d}.messenger-detail{min-width:0;min-height:0;height:100%}.messenger-screen .embedded-chat{display:block;height:100%;border:0;border-radius:0}.messenger-screen .chat-main{height:100%;min-height:0}.messenger-screen .chat-main>header{flex-shrink:0;padding:14px 18px;min-height:76px}.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{margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messenger-screen .chat-project-bar{flex-shrink:0;background:#e9f0f9}.messenger-screen .chat-scroll{min-height:0;flex:1 1;overflow-y:auto;overscroll-behavior:contain}.messenger-screen .chat-composer,.messenger-screen .support-compose{flex:0 0 auto;margin:0;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid #d8e1ee;background:white;display:flex;flex-wrap:nowrap}.messenger-screen .chat-composer input,.messenger-screen .support-compose textarea{flex:1 1;width:0;min-width:0;font-size:16px}.messenger-screen .support-compose textarea{min-height:44px;height:44px;max-height:100px;resize:none}.messenger-screen .embedded-support{height:100%;border:0;border-radius:0;margin:0;display:flex;flex-direction:column}.messenger-screen .support-single{flex:1 1;min-height:0}.messenger-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px}.messenger-screen .chat-notice{padding:12px}@media (max-width:900px){.messenger-screen{left:0;grid-template-columns:300px minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.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;min-height:64px;gap:8px}.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{position:fixed;top:max(12px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:150;max-width:calc(100vw - 24px);width:max-content;padding:12px 18px;border:1px solid #ed922d;border-radius:8px;background:#fff4df;color:#142e52;font-size:14px;box-shadow:0 4px 18px #142e5220}.connection-notice a{margin-left:12px;text-decoration:underline;font-weight:700}.building-map-panel{margin-bottom:16px;overflow:hidden}.admin-project-edit-action{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.admin-project-edit-action>span{font-size:14px;color:#176b49}.admin-project-dialog{width:min(800px,calc(100vw - 24px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--line);border-radius:12px;color:#142e52;background:#fff;box-shadow:0 16px 70px #0005}.admin-project-dialog::backdrop{background:#10284ac0}.admin-project-dialog footer,.admin-project-dialog header{position:sticky;z-index:1;display:flex;align-items:center;gap:10px;padding:12px 18px;background:#fff}.admin-project-dialog header{top:0;justify-content:space-between;border-bottom:1px solid var(--line)}.admin-project-dialog h2{margin:0;font-size:20px}.admin-project-dialog h3{font-size:16px;margin:20px 0 12px}.admin-project-dialog footer{bottom:0;border-top:1px solid var(--line)}.admin-project-dialog fieldset{border:0;padding:16px 18px;margin:0;min-width:0}.admin-project-dialog label{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;font-size:14px}.admin-project-dialog input,.admin-project-dialog textarea{font-size:16px}.admin-project-dialog .form-grid{gap:0 14px}.admin-project-dialog .address-preview{font-size:14px;background:#eef3fa;padding:10px;overflow-wrap:anywhere}.building-map-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px}.building-map-heading h2{display:flex;align-items:center;gap:6px;margin:0;font-size:16px}.building-map-heading p{margin:3px 0 0;font-size:14px;overflow-wrap:anywhere}.building-map-heading .btn{flex-shrink:0}.building-map-actions{flex-shrink:0;max-width:100%}.directory-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.directory-stats>div{background:#fff;border:1px solid #dbe3ed;border-top:3px solid #ee8b22;border-radius:10px;padding:14px 18px;display:grid;gap:6px}.directory-stats span{font-size:14px;color:#334962}.directory-stats strong{font-size:25px;color:#122f53}.directory-stats small{font-size:14px;font-weight:500}.directory-import{padding:14px 18px;margin-bottom:14px;font-size:14px}.directory-import summary{cursor:pointer;font-weight:600}.directory-import summary span{display:inline-block;margin-left:12px;color:#47617c;font-weight:400}.directory-import p{color:#334962;line-height:1.7}.directory-area-progress{display:flex;flex-wrap:wrap;gap:8px 16px;margin:12px 0}.directory-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.directory-editor label,.directory-filters label{display:grid;gap:6px;font-size:14px;color:#263e59;font-weight:600}.directory-search{grid-column:span 2}.directory-search-input{position:relative}.directory-search-input svg{position:absolute;left:12px;top:14px}.directory-search-input input{padding-left:38px}.directory-editor input:not([type=checkbox]),.directory-editor select,.directory-editor textarea,.directory-filters input,.directory-filters select{width:100%;min-width:0;font-size:16px;padding:10px 12px;border:1px solid #c9d4e2;border-radius:8px;background:#fff;color:#182f4a}.directory-filters .directory-search-input input{padding-left:38px}.directory-pagination,.directory-results-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px 0;font-size:14px}.directory-list{display:grid;gap:8px}.directory-card{width:100%;text-align:left;display:flex;align-items:center;gap:14px;padding:14px;border:1px solid #dbe3ed;border-radius:10px;background:#fff;cursor:pointer;color:#19344f;font-size:14px}.directory-card:focus-visible,.directory-card:hover{background:#f3f7fd;border-color:#6584a8}.directory-image{display:flex;align-items:center;justify-content:center;width:64px;height:64px;flex-shrink:0;background:#edf2f8;border-radius:8px;overflow:hidden;color:#61778f}.directory-image img{width:100%;height:100%;object-fit:contain}.directory-image.large{width:88px;height:88px}.directory-card-info{display:grid;gap:5px;flex:1 1;min-width:0;overflow-wrap:anywhere}.directory-card-info>strong{font-size:16px}.directory-card-tags{display:flex;gap:5px;flex-wrap:wrap}.directory-card-tags span{padding:3px 7px;border-radius:4px;background:#edf2f8;font-size:14px}.directory-status{padding:5px 9px;border-radius:6px;font-size:14px;background:#e9edf2;color:#394e65;white-space:nowrap;font-weight:600}.directory-status.status-reviewing{background:#e9f1ff;color:#1a5794}.directory-status.status-ready{background:#fff0d8;color:#8a4a00}.directory-status.status-promoted{background:#ddf4e7;color:#19613d}.directory-status.status-rejected{background:#ffe8e5;color:#943e34}.directory-empty{padding:28px;text-align:center}.directory-pagination{justify-content:center}.directory-editor{display:grid;gap:14px}.directory-editor fieldset{border:0;padding:0;margin:0;min-width:0}.directory-editor h2{font-size:18px;margin:0 0 12px}.directory-editor h3{font-size:16px}.directory-editor p,.directory-editor small{font-size:14px;line-height:1.65}.directory-profile-heading{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px}.directory-profile-heading>div{flex:1 1;min-width:150px}.directory-profile-heading p{margin:8px 0 0}.directory-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px}.directory-logo-upload{margin-top:18px;padding-top:16px;border-top:1px solid #dde4ee}.directory-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.directory-checks label{display:flex;align-items:center;gap:10px;padding:12px;background:#f2f6fb;border-radius:8px}.directory-checks input{width:18px;height:18px;accent-color:#173a64}.directory-readiness{display:flex;align-items:center;gap:6px;color:#65451a}.directory-promotion{border:1px solid #dfad68;border-radius:10px;padding:18px;margin-top:18px;background:#fffaf2;display:grid;gap:14px}.directory-source-fields{margin:0}.directory-source-fields>div{display:grid;grid-template-columns:140px 1fr;border-bottom:1px solid #e2e8f0;padding:10px 0;gap:10px;font-size:14px}.directory-source-fields dt{font-weight:600}.directory-source-fields dd{margin:0;overflow-wrap:anywhere}.directory-research summary{cursor:pointer;font-weight:700;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.contact-summary{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.contact-summary>span{padding:7px 10px;border-radius:8px;background:#eef3fa;color:#173352}.directory-contacts h2{margin:0}.contact-group{margin:20px 0}.contact-group h3{font-size:16px;border-bottom:2px solid #ec963a;padding-bottom:8px}.contact-entry{border:1px solid #d1dbea;background:#f7f9fc;border-radius:12px;padding:14px;margin-top:10px;min-width:0}.contact-verified{border-left:4px solid #29845a}.contact-rejected{background:#f5f5f5}.contact-value{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px}.contact-value a,.contact-value strong,.directory-contacts details a{overflow-wrap:anywhere}.contact-entry label{display:block;max-width:480px}.contact-entry details{margin:12px 0}.contact-add summary,.contact-entry summary{cursor:pointer;font-weight:600}.contact-add{margin:16px 0;padding:14px;border:1px solid #d1dbea;border-radius:12px}.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-checks,.directory-form-grid{grid-template-columns:1fr}.directory-card{flex-wrap:wrap;padding:12px;gap:10px}.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{height:300px;width:100%;z-index:0;background:#e9edf3;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:transparent;border:0}.building-pin>span{display:block;width:30px;height:30px;background:#f58a19;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 6px #142e5260}.building-pin>span:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:#142e52;top:8px;left:8px}.building-map-footer{padding:10px 18px 14px}.building-files p,.building-map-footer p{font-size:14px;line-height:1.5;margin:0 0 8px}.building-map-footer a,.building-map-footer small{font-size:14px}.building-map-footer small{display:block;margin-top:8px;color:#34465e}.building-map-footer a{text-decoration:underline}.building-map-footer .button-row{margin:8px 0;gap:8px;flex-wrap:wrap}.map-loading{display:block;padding:24px}.google-building-map .building-map{height:440px;min-height:300px}.google-map-frame{display:block;border:0}.map-view-switch{display:flex;gap:6px;padding:0 18px 10px}.map-view-switch [aria-pressed=true]{background:#142e52;color:white}.map-settings-toggle{display:flex!important;align-items:center;gap:10px}.map-settings-toggle input{width:auto!important}#google-map-settings small{display:block;line-height:1.7;margin:8px 0 18px}#google-map-settings details{margin:18px 0;line-height:1.7}@media(max-width:600px){.google-building-map .building-map{height:380px}}.map-warning{color:#97400b}.map-success{color:#176b49}.building-files{margin-bottom:16px}.building-files .section-heading{margin-bottom:10px;gap:10px}.building-files .section-heading h2{margin:0;font-size:16px}.building-files .upload-button{position:relative;overflow:hidden;cursor:pointer}.building-files .upload-button input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.building-files .upload-button:focus-within{outline:3px solid #f58a19;outline-offset:3px}.building-files .upload-button.disabled{opacity:.6;cursor:wait}.building-files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.building-files-grid .attachment-card{min-width:0;max-width:100%;width:100%;margin:0;border:1px solid var(--line);background:#f7f9fc}.building-files-grid .attachment-preview{width:100%;height:140px;object-fit:cover}@media (max-width:900px){.app-shell .progress-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px;margin:12px 0;overflow:visible}.app-shell .progress-track>div{min-width:0;width:auto;flex:initial!important;flex-direction:row;justify-content:flex-start;gap:6px;padding:8px 6px;font-size:14px;line-height:1.4;white-space:normal;text-align:left;background:#f0f3f8;border-radius:6px}.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{background:#e8f5ed;color:#176b49}.app-shell .progress-track>.current{background:#fff0da;color:#8b4308;box-shadow:inset 0 0 0 1px #ed922d}.app-shell .project-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;overflow:visible;padding:0}.app-shell .project-tabs button{min-width:0;padding:12px 4px;white-space:normal;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}}.company-signup{background:#f5f7fb;color:#122b4d;min-height:100dvh;font-size:16px}.signup-header{display:flex;justify-content:space-between;align-items:center;padding:20px max(20px,calc((100vw - 1200px)/2));background:#fff;border-bottom:1px solid #dce3ed;gap:16px}.signup-header .logo{font-size:25px;white-space:nowrap}.signup-header>a:last-child{font-size:14px;font-weight:700}.signup-shell{max-width:1200px;margin:auto;display:grid;grid-template-columns:310px minmax(0,1fr);gap:48px;padding:40px 24px;align-items:start}.signup-intro{position:sticky;top:28px;background:#122b4d;color:#fff;border-radius:20px;padding:30px 25px}.signup-intro .eyebrow{color:#ffc582;font-size:14px;letter-spacing:0}.signup-intro h1{font-size:32px;line-height:1.55;letter-spacing:0;margin:18px 0}.signup-intro p{color:#e4ebf4;font-size:16px;line-height:1.8}.signup-benefit{display:flex;gap:12px;align-items:flex-start;margin:22px 0;font-size:15px;line-height:1.7}.signup-benefit svg{flex-shrink:0;color:#ffac51}.signup-fee{padding:20px 0;border-top:1px solid #51647e;border-bottom:1px solid #51647e;margin:26px 0}.signup-fee strong{color:#ffb568;font-size:24px}.signup-fee p{font-size:14px}.signup-intro>a{color:#fff;font-size:14px}.signup-content{min-width:0}.signup-content h2{font-size:25px;margin:20px 0 8px}.signup-content>div>p{line-height:1.8;color:#344c68}.signup-steps{display:flex;gap:10px}.signup-steps span{flex:1 1;padding:10px;border-radius:8px;background:#e4eaf2;color:#344c68;font-weight:700;text-align:center;font-size:14px}.signup-steps .current{background:#122b4d;color:white}.signup-steps .done{background:#d8efe4;color:#16543a}.signup-content fieldset{border:0;padding:0;margin:0;min-width:0}.signup-card{background:#fff;border:1px solid #dce3ed;border-radius:14px;padding:26px;margin:22px 0}.signup-card h3{font-size:19px;display:flex;align-items:center;gap:12px;margin:0 0 22px}.signup-card h3>span{background:#fff1df;color:#97520c;border-radius:8px;padding:7px;font-size:15px}.signup-card p{font-size:14px;color:#344c68;line-height:1.8}.signup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.signup-field{display:flex;flex-direction:column;gap:8px;font-size:14px;min-width:0}.signup-field>span{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-weight:700}.company-signup input:not([type=checkbox]),.company-signup select{width:100%;min-width:0;padding:11px 12px;min-height:46px;border:1px solid #9bacc0;border-radius:7px;background:#fff;color:#122b4d;font-size:16px}.company-signup [aria-invalid=true]{border-color:#b83024!important}.company-signup .field-error{color:#a4261c;font-size:14px}.company-signup .optional,.company-signup .required{font-size:14px;border-radius:4px;padding:2px 5px;font-weight:500}.company-signup .required{background:#fff0e0;color:#91460c}.company-signup .optional{background:#e8edf4;color:#344c68}.signup-areas{margin:24px 0!important}.signup-areas legend{font-size:15px;font-weight:700;margin-bottom:14px}.signup-areas>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.signup-areas label{display:flex;align-items:center;gap:6px;min-height:40px;font-size:14px}.company-signup input[type=checkbox]{width:19px;height:19px;flex-shrink:0;accent-color:#163e69}.signup-agreement{background:#f5f7fb;padding:20px;border-radius:8px;margin:24px 0}.signup-agreement h4{margin:0;font-size:17px}.signup-policy-links{display:grid;gap:12px;margin:16px 0}.signup-policy-links a{color:#164f89;text-decoration:underline;font-weight:700}.signup-consent{margin:18px 0}.signup-consent label{display:flex;align-items:flex-start;gap:10px;font-size:15px;line-height:1.7}.signup-consent input{margin-top:4px}.signup-review{margin:0}.signup-review>div{display:grid;grid-template-columns:170px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid #e1e7ef;font-size:15px}.signup-review dt{color:#435a74}.signup-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.signup-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.signup-content .alert ul{padding-left:20px}.signup-content .alert a{text-decoration:underline}.signup-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;padding:24px;font-size:14px;border-top:1px solid #dce3ed}.legal-page{max-width:900px;padding:36px 24px;font-size:16px;color:#122b4d}.legal-page header{border-bottom:3px solid #ff912c;margin:24px 0;padding-bottom:20px}.legal-page h1{font-size:28px;line-height:1.5}.legal-copy p{line-height:1.95;margin:26px 0}.legal-settings details{border-top:1px solid #dce3ed;margin-top:16px;padding-top:16px}.application-record summary,.legal-settings summary{cursor:pointer;font-size:16px;font-weight:700;padding:10px 0}.legal-settings label{display:grid;gap:8px;margin:14px 0}.legal-settings textarea{width:100%;font-size:16px;line-height:1.8}.application-record{background:#eef4fa;padding:20px;border-radius:10px;margin-bottom:20px}.application-record h3{font-size:18px;margin-top:0}.application-record p{font-size:14px;line-height:1.8}@media(max-width:850px){.signup-shell{grid-template-columns:1fr;gap:8px;padding:20px 16px}.signup-intro{position:static;padding:22px}.signup-intro h1{font-size:26px;margin:10px 0}.signup-benefit,.signup-intro h1 br,.signup-intro>p{display:none}.signup-fee{margin:14px 0;padding:12px 0}.signup-fee p{margin-bottom:0}}@media(max-width:540px){.signup-header{padding:16px}.signup-header .logo{font-size:21px}.signup-header .logo-symbol{width:32px;height:32px}.signup-header>a:last-child{white-space:nowrap}.signup-grid{grid-template-columns:1fr;gap:18px}.signup-card{padding:20px 16px}.signup-areas>div{grid-template-columns:repeat(3,minmax(0,1fr))}.signup-review>div{grid-template-columns:1fr;gap:5px}.signup-content h2{font-size:23px}.signup-buttons>*{width:100%}.legal-page h1{font-size:23px}.signup-agreement{padding:16px}}@media print{.legal-page{max-width:none;padding:0}.legal-page .button-row,.legal-page>a,.public-footer,.public-header{display:none!important}.legal-copy p{font-size:11pt;line-height:1.6}}.logo{width:210px;max-width:100%;flex-shrink:0;line-height:0;gap:0}.system-logo{display:block;width:100%;height:auto}.auth-layout aside .logo-light,.sidebar .logo-light{background:transparent}.sidebar .logo{width:218px}.breadcrumb .logo{width:102px}.public footer .logo{width:180px}.signup-header>a:first-child{display:flex;align-items:center;flex-shrink:0}@media(max-width:540px){.public-header .logo,.signup-header .logo{width:156px}.auth-layout aside .logo{width:180px}}.legal-page{max-width:1240px;padding:0 36px;margin:auto;color:#172d47}.legal-masthead{display:flex;justify-content:space-between;align-items:center;min-height:105px;border-bottom:1px solid #dce3eb}.legal-home{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:#53647b}.legal-page .legal-hero{margin:0;padding:48px 0 36px;border:0;max-width:880px}.legal-kicker{display:inline-flex;align-items:center;gap:8px;color:#8d490c;font-size:14px;font-weight:600;letter-spacing:.07em}.legal-page h1{font-size:clamp(26px,3.2vw,38px);line-height:1.55;letter-spacing:.01em;margin:14px 0;overflow-wrap:anywhere}.legal-description{font-size:16px;line-height:1.9;color:#526176;max-width:700px}.legal-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:24px;color:#596a80;font-size:14px}.legal-version{padding:4px 12px;border:1px solid #ccd6e3;border-radius:5px;background:#fff;color:#243d5a}.legal-print{display:inline-flex;align-items:center;gap:7px;padding:7px 0;background:transparent;border:0;color:#253e5b;font-size:14px}.legal-meta a{text-decoration:underline;text-underline-offset:4px}.legal-layout{display:grid;grid-template-columns:254px minmax(0,1fr);gap:34px;align-items:start}.legal-toc{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto;padding:20px 18px;background:#edf1f6;border:1px solid #dce3eb;border-radius:12px;scrollbar-width:thin}.legal-toc h2{display:flex;align-items:center;gap:10px;font-size:16px;margin:0 0 18px}.legal-sidebar{align-self:stretch}.legal-mobile-toc ol,.legal-toc ol{list-style:none;padding:0;margin:0}.legal-mobile-toc li+li,.legal-toc li+li{margin-top:3px}.legal-mobile-toc nav a,.legal-toc nav a{display:block;padding:7px 8px;border-radius:5px;font-size:14px;line-height:1.6;color:#445771;overflow-wrap:anywhere}.legal-mobile-toc nav a:hover,.legal-toc nav a:hover{background:#fff;color:#142e52}.legal-top-link{display:flex;align-items:center;gap:7px;border-top:1px solid #d0dbe7;margin-top:18px;padding:16px 8px 0;font-size:14px}.legal-paper{background:#fff;border:1px solid #dde4ed;border-radius:14px;padding:8px 40px 32px;box-shadow:0 6px 24px #142e5205}.legal-section{padding:28px 0 8px;scroll-margin-top:26px}.legal-section+.legal-section{border-top:1px solid #e2e8f0;margin-top:20px}.legal-section h2{position:relative;font-size:20px;line-height:1.7;margin:0 0 22px;letter-spacing:.01em}.legal-section h2:before{content:"";display:block;width:28px;height:3px;background:#ec932e;margin-bottom:14px;border-radius:2px}.legal-section:target h2{color:#9b500a}.legal-section:focus-visible{outline:2px solid #e99739;outline-offset:8px}.legal-copy p{font-size:16px;line-height:2.05;letter-spacing:.015em;color:#33465b;margin:12px 0;white-space:pre-wrap;overflow-wrap:anywhere;line-break:strict}.legal-paragraph+.legal-paragraph{margin-top:22px}.legal-copy p.legal-item{display:flex;align-items:baseline;gap:10px}.legal-number{flex:0 0 1.8em;color:#5e7084;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.legal-item>span:last-child{min-width:0}.legal-copy .legal-depth-1{margin-left:24px;font-size:15px}.legal-copy .legal-depth-2{margin-left:48px;font-size:15px}.legal-copy .legal-depth-3{margin-left:64px;font-size:15px}.legal-end{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#edf2f8;border-radius:12px;padding:28px;margin-top:24px}.legal-end strong{font-size:16px}.legal-end p{color:#526176;font-size:14px;margin:7px 0 0}.legal-end .btn{flex-shrink:0}.legal-related{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;padding:25px 0;font-size:14px;color:#53647b}.legal-related a{display:inline-flex;align-items:center;gap:9px}.legal-home:hover,.legal-related a:hover{text-decoration:underline}.legal-footer{border-top:1px solid #dce3eb;padding:24px 0 30px;color:#69798e;font-size:14px}.legal-mobile-toc{display:none}.legal-draft-tools{background:#f0f4f9;padding:20px;border-radius:10px;margin-top:20px}.legal-draft-tools h3{margin:0;font-size:18px}.legal-draft-tools p,.legal-review-notes li{font-size:14px;line-height:1.9}.legal-review-notes ul{padding-left:22px}.legal-review-notes li{margin:10px 0}.legal-publish-note{color:#93430b;font-size:14px}.legal-edit-preview{margin-bottom:24px}.legal-edit-preview>.legal-paper{max-height:650px;overflow:auto}@media(max-width:950px){.legal-layout{grid-template-columns:205px minmax(0,1fr);gap:22px}.legal-paper{padding:6px 26px 26px}.legal-end{align-items:flex-start;flex-direction:column}}@media(max-width:720px){.legal-page{padding:0 18px}.legal-masthead{min-height:83px}.legal-masthead .logo{width:165px}.legal-page .legal-hero{padding:30px 0 26px}.legal-description{font-size:15px}.legal-meta{gap:10px 14px;margin-top:18px}.legal-layout{display:block}.legal-sidebar{display:none}.legal-mobile-toc{display:block;background:#edf1f6;border:1px solid #dce3eb;border-radius:10px;margin-bottom:18px}.legal-mobile-toc summary{display:flex;gap:10px;align-items:center;padding:17px;font-size:15px;font-weight:600;cursor:pointer}.legal-mobile-toc summary:after{content:"＋";margin-left:auto}.legal-mobile-toc[open] summary:after{content:"−"}.legal-mobile-toc nav{padding:0 12px 14px}.legal-paper{padding:2px 20px 22px;border-radius:11px}.legal-section{padding-top:23px}.legal-section h2{font-size:18px;margin-bottom:18px}.legal-copy p{font-size:15px;line-height:2;margin:12px 0}.legal-copy .legal-depth-1{margin-left:12px}.legal-copy .legal-depth-2{margin-left:24px}.legal-copy .legal-depth-3{margin-left:32px}.legal-copy p.legal-item{gap:6px}.legal-end{padding:22px}.legal-end .btn{width:100%}.legal-footer{text-align:center}}@media print{.legal-page{max-width:none;padding:0;background:#fff}.legal-end,.legal-footer,.legal-masthead,.legal-mobile-toc,.legal-print,.legal-related,.legal-sidebar{display:none!important}.legal-layout{display:block}.legal-page .legal-hero{padding:0 0 18px;max-width:none}.legal-description{display:none}.legal-paper{padding:0;border:0;box-shadow:none}.legal-section h2{page-break-after:avoid;break-after:avoid;font-size:14pt}.legal-section h2:before{display:none}.legal-copy .legal-depth-1,.legal-copy .legal-depth-2,.legal-copy .legal-depth-3,.legal-copy p{font-size:10.5pt;line-height:1.65;orphans:3;widows:3}.legal-section{margin:0;padding:12px 0}.legal-page h1{font-size:22pt}.legal-hero a{display:none}}.customer-consent{margin:24px 0;padding:22px;border:1px solid #dbe3ed;border-radius:16px;background:#f8fafc}.customer-consent h3{margin:0 0 10px;font-size:16px}.customer-consent p{font-size:14px;line-height:1.8}.customer-consent .checkbox{display:flex;align-items:flex-start;gap:12px;margin:16px 0 0;font-size:14px;line-height:1.9}.customer-consent input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin-top:5px;accent-color:#ef8729}.customer-consent a{text-decoration:underline;text-underline-offset:3px}.legal-copy .legal-subheading{margin:28px 0 12px;font-size:17px;line-height:1.8;color:#17334f}.legal-copy .legal-review-flag{padding:14px 18px;border-left:3px solid #db901b;background:#fff7e9;color:#7c531d;font-size:14px;border-radius:0 8px 8px 0;margin:16px 0}@media(max-width:600px){.customer-consent{padding:16px}.legal-copy .legal-subheading{font-size:16px}}.legal-history{margin-top:22px;padding:16px 0;border-top:1px solid #dbe3ed}.legal-history li{margin:10px 0}.legal-history a{text-decoration:underline;text-underline-offset:3px}.legal-saved-note{color:#38614b;font-size:14px}.legal-settings .legal-draft-tools>summary,.legal-settings>.legal-draft-tools summary{cursor:pointer;font-size:14px}.recovery-page{min-height:100dvh;display:grid;place-items:center;padding:32px 20px;background:#f4f7fb}.recovery-card{width:100%;max-width:540px;padding:40px;background:white;border:1px solid #dce5ef;border-radius:22px;box-shadow:0 16px 48px #102f5010;color:#153451}.recovery-brand{display:inline-block;font-size:25px;font-weight:800;margin-bottom:28px;text-decoration:none}.recovery-card h1{font-size:27px;line-height:1.5;margin:8px 0 16px}.recovery-card p{line-height:1.8}.recovery-card form{display:grid;gap:22px;margin:26px 0}.recovery-card label{display:grid;gap:9px;font-weight:600}.recovery-card input{width:100%;min-height:48px;padding:12px;border:1px solid #bdccdc;border-radius:8px;font:inherit}.recovery-card>.text-link{display:inline-block;margin-top:24px}.mail-delivery-status,.recovery-card .alert{display:block}.recovery-card .alert a{display:inline-block;margin-top:8px}@media(max-width:600px){.recovery-card{padding:26px 20px}.recovery-card h1{font-size:23px}}.company-profile-page{max-width:1240px;margin:0 auto;color:#17304b}.company-back-link{display:inline-flex;align-items:center;gap:8px;margin:0 0 20px;color:#43596d;text-decoration:none;font-weight:600;min-height:44px}.company-profile-hero{background:linear-gradient(125deg,#132c49,#244965);color:#fff;border-radius:24px;padding:36px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 12px 32px #122c4912}.company-profile-identity{display:flex;align-items:center;gap:24px;min-width:0}.company-profile-logo{width:108px;height:108px;flex:0 0 108px;border-radius:22px;background:#fff;color:#254e6c;display:flex;align-items:center;justify-content:center;padding:12px;box-shadow:0 8px 20px #00132220}.company-profile-logo img{width:100%;height:100%;object-fit:contain}.company-profile-eyebrow{font-size:14px;letter-spacing:.09em;color:#c5d7e6;margin:0 0 8px}.company-profile-hero h1{font-size:clamp(24px,3vw,34px);line-height:1.45;color:#fff;margin:0;overflow-wrap:anywhere}.company-address{display:flex;align-items:flex-start;gap:7px;line-height:1.8;color:#e0e9f1;margin:10px 0 12px;font-size:14px}.company-address svg{flex-shrink:0;margin-top:4px}.company-profile-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:8px;background:#ffffff15;color:#eef7ff;font-size:14px}.company-hero-rating{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:5px;text-decoration:none;color:#fff;border-left:1px solid #ffffff30;padding-left:32px;min-width:175px}.company-hero-score{font-size:52px;font-weight:800;line-height:1.2;letter-spacing:-.035em}.company-hero-score small{font-size:16px;font-weight:500;color:#bdccda;margin-left:8px}.company-hero-rating>span:last-child{display:flex;align-items:center;gap:6px;font-size:14px;margin-top:5px;color:#deebf4}.rating-stars{display:inline-block;position:relative;color:#c4cdd6;font-size:23px;line-height:1.4;white-space:nowrap;letter-spacing:2px;vertical-align:middle;width:max-content;flex-shrink:0}.rating-stars-fill{position:absolute;top:0;left:0;overflow:hidden;color:#e69b14}.company-profile-hero .rating-stars{color:#657789}.company-profile-hero .rating-stars-fill{color:#ffc15c}.rating-stars.large{font-size:29px}.company-profile-nav{display:flex;gap:4px;background:#fff;border:1px solid #dce5ed;border-radius:14px;padding:6px;margin:20px 0 26px}.company-profile-nav a{flex:1 1;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;color:#25415c;font-weight:700;min-height:48px;padding:8px;border-radius:9px}.company-profile-nav a:hover{background:#f2f6fa}.company-profile-nav a span{font-size:14px;background:#edf2f6;border-radius:12px;padding:1px 7px}.company-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.company-profile-main{min-width:0;display:grid;gap:24px}.company-profile-section{background:#fff;border:1px solid #dce5ed;border-radius:20px;padding:30px;scroll-margin-top:90px}.review-section-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}.company-profile-section>.review-section-heading{display:block}.review-section-heading h2{font-size:23px;line-height:1.5;margin:4px 0;color:#17304b}.review-section-heading .eyebrow{font-size:14px;color:#a65b17;letter-spacing:.09em;font-weight:700}.company-profile-section p{line-height:1.9}.company-introduction,.company-strengths p{white-space:pre-wrap;overflow-wrap:anywhere}.company-strengths{padding:20px;background:#f5f8fb;border-left:3px solid #ef9b36;border-radius:0 12px 12px 0;margin:22px 0}.company-strengths h3{font-size:16px;margin:0 0 8px}.company-strengths p{margin:0}.company-facts{margin:25px 0 14px}.company-facts>div{display:grid;grid-template-columns:170px minmax(0,1fr);gap:18px;border-top:1px solid #e7edf2;padding:15px 0;font-size:14px;line-height:1.8}.company-facts dt{color:#5b6e80;font-weight:500}.company-facts dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.company-profile-section .company-info-note{font-size:14px;line-height:1.8;color:#607183;margin:16px 0 0}.rating-overview{display:grid;grid-template-columns:175px 1fr;gap:30px;align-items:center;padding:22px 0 28px}.rating-average{display:flex;align-items:center;gap:3px;flex-direction:column}.rating-average>strong{font-size:64px;letter-spacing:-.04em;line-height:1.1}.rating-average>span:last-child{font-size:14px;color:#607183;margin-top:8px}.rating-distribution{display:grid;gap:0}.rating-distribution button{display:grid;grid-template-columns:30px 1fr 38px;gap:10px;align-items:center;border:0;background:transparent;min-height:38px;font-size:14px;color:#465d71;padding:5px 7px;border-radius:6px;cursor:pointer}.rating-distribution button>span:first-child{display:flex;align-items:center;gap:5px}.rating-distribution button[aria-pressed=true]{background:#fff0d9;outline:2px solid #bd751a}.rating-distribution button:hover:not(:disabled){background:#f4f7fa}.rating-distribution button:disabled{cursor:default;opacity:.6}.rating-bar{background:#edf1f5;height:9px;overflow:hidden}.rating-bar,.rating-bar>span{border-radius:5px;display:block}.rating-bar>span{height:100%;background:#eda735}.company-criteria{border-top:1px solid #e5ebf1}.company-criterion{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:18px 0;border-bottom:1px solid #e5ebf1}.company-criterion h3{font-size:16px;margin:0 0 5px}.company-criterion p{font-size:14px;color:#657589;line-height:1.7;margin:0;max-width:390px}.criterion-score{display:grid;grid-template-columns:auto auto;gap:3px 9px;align-items:center;flex-shrink:0}.criterion-score strong{font-size:23px}.criterion-score .rating-stars{font-size:18px;letter-spacing:1px}.criterion-score small{grid-column:1/-1;text-align:right;color:#657589;font-size:14px}.review-count{font-size:16px;background:#f0f4f7;border-radius:20px;padding:3px 10px;vertical-align:middle;margin-left:6px}.review-toolbar{display:flex;gap:14px;padding:16px;background:#f5f8fb;border-radius:12px;margin:20px 0}.review-toolbar label{display:grid;gap:6px;font-size:14px;flex:1 1;min-width:0}.review-toolbar select{width:100%;min-height:44px;margin:0;background:#fff}.company-review{padding:26px 0;border-bottom:1px solid #e4eaf0}.company-review-top{justify-content:space-between}.company-review-top,.review-author{display:flex;gap:12px;align-items:center}.review-author>span{width:42px;height:42px;display:grid;place-items:center;background:#eef4f8;border-radius:50%;color:#385d7c}.review-author strong{font-size:14px;display:block}.review-author small{display:flex;gap:4px;align-items:center;color:#3a7563;font-size:14px;margin-top:3px}.company-review time{color:#66778a;font-size:14px;white-space:nowrap}.review-score-line{display:flex;gap:12px;align-items:center;margin:18px 0 12px}.review-score-line>strong{font-size:20px}.review-comment{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.review-individual-criteria summary,.review-moderation summary{font-size:14px;color:#47627a;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.review-individual-criteria summary:before,.review-moderation summary:before{content:"＋"}.review-individual-criteria[open] summary:before,.review-moderation[open] summary:before{content:"−"}.review-individual-criteria dl{background:#f6f8fb;padding:14px;border-radius:12px;margin:0}.review-individual-criteria dl>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;font-size:14px}.review-individual-criteria dd{display:flex;align-items:center;gap:10px;margin:0;color:#617287}.review-individual-criteria .rating-stars{font-size:18px}.company-reviews-empty{padding:38px 15px;text-align:center;color:#5d7489}.company-reviews-empty>svg{margin-bottom:10px;color:#849eb4}.company-reviews-empty h3{font-size:18px}.company-reviews-empty p{font-size:14px}.review-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:24px;font-size:14px}.company-profile-aside{display:grid;gap:20px;position:sticky;top:90px}.company-contact-card,.company-review-invite{background:#fff;border:1px solid #dce5ed;border-radius:20px;padding:25px}.company-contact-card{background:#fff7eb;border-color:#efdbc1}.company-contact-card h2,.company-review-invite h2{font-size:21px;line-height:1.7;margin:15px 0 10px}.company-contact-card p,.company-review-invite p{font-size:14px;line-height:1.9;color:#5d7185}.company-contact-card .btn{font-size:14px;margin-top:12px}.review-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#fff0db;color:#ad650d;flex-shrink:0}.company-review-invite>svg{color:#b5751c}.company-review-invite>a{display:grid;gap:8px;text-decoration:none;color:#2c5675;border-top:1px solid #dfe7ed;padding:15px 0;font-size:14px;overflow-wrap:anywhere}.company-review-invite>a strong{color:#94530b}.company-profile-link{display:block;font-size:14px;line-height:1.7;color:#23587f;margin:6px 0;min-height:30px;text-underline-offset:3px}.project-review-card{padding:28px;margin:24px 0;border:1px solid #e6d3b8;border-radius:18px;background:#fffdf9;scroll-margin-top:90px}.project-review-card p{line-height:1.85}.project-review-card .alert{display:block}.review-locked,.review-success{display:flex;align-items:center;gap:9px;font-size:14px}.review-locked svg,.review-success svg{flex-shrink:0}.review-success{color:#246f55}.review-form{margin-top:24px}.review-rating-input{border:0;padding:0;margin:0;min-width:0}.review-rating-input legend{font-size:16px;font-weight:700;margin-bottom:5px}.review-field-tag{font-size:14px;font-weight:400;padding:2px 6px;background:#edf1f4;border-radius:4px;margin-left:6px;color:#576a7c}.review-rating-input p{font-size:14px;color:#5c7082;margin:5px 0 12px}.review-star-choices{display:flex;gap:8px}.review-star-choices label{position:relative;margin:0;cursor:pointer}.review-star-choices input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;margin:0}.review-star-choices label>span{display:flex;flex-direction:column;align-items:center;justify-content:center;width:54px;min-height:66px;border:1px solid #cbd7e1;border-radius:10px;background:#fff;color:#748594;gap:3px;transition:background .15s}.review-star-choices small{font-size:14px;line-height:1.3}.review-star-choices .is-filled{color:#9a640d;border-color:#ddb16d;background:#fff2dc}.review-star-choices .is-filled svg{fill:#eda735;stroke:#af710f}.review-star-choices input:checked+span{border:2px solid #a96308;box-shadow:0 0 0 2px #ffe8c3}.review-star-choices input:focus-visible+span{outline:3px solid #176bb3;outline-offset:3px}.rating-input-caption{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px;font-size:14px;color:#536a7e}.review-text-button{border:0;background:none;text-decoration:underline;text-underline-offset:3px;color:#476983;padding:10px 0;min-height:44px;cursor:pointer;font-size:14px}.review-text-button:disabled{opacity:.5;cursor:default}.review-criteria-details{border:1px solid #dce4ea;border-radius:12px;padding:16px;margin:22px 0;background:#fff}.review-criteria-details>summary{font-weight:600;cursor:pointer;line-height:1.7;min-height:32px}.review-criteria-details>summary span{font-size:14px;color:#6a7986;margin-left:8px;font-weight:400}.review-criteria-details>p{font-size:14px;color:#607386}.review-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.review-input-grid .review-rating-input{padding-top:18px;border-top:1px solid #e5ebf0}.review-form textarea{width:100%;margin-top:10px;min-height:135px;resize:vertical;background:#fff}.review-comment-label{font-weight:600}.review-character-count{text-align:right;font-size:14px;margin:5px 0;color:#657689}.review-privacy-note{padding:14px 16px;background:#f0f5f8;color:#516a7e;font-size:14px;border-radius:10px}.review-form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.review-submitted-summary>strong{margin-left:12px}.review-hidden-badge{font-size:14px;padding:3px 8px;border-radius:6px;background:#edf0f3;color:#43586c}.review-moderation{margin-top:15px;background:#f6f8fa;padding:12px;border-radius:10px}.review-moderation p{font-size:14px}.review-moderation form{display:grid;gap:12px}.company-profile-edit{display:grid;gap:20px;margin-top:24px}.company-profile-edit label{display:grid;gap:8px}.company-profile-edit textarea{resize:vertical;width:100%}.company-profile-error{padding:30px}.company-profile-page :is(a,button,select):focus-visible{outline:3px solid #2673aa;outline-offset:3px}@media(max-width:1100px){.company-profile-grid{grid-template-columns:minmax(0,1fr)}.company-profile-aside{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.company-profile-hero{padding:28px}.company-profile-section{padding:26px}.review-input-grid{grid-template-columns:1fr}}@media(max-width:640px){.company-profile-hero{padding:24px 20px;border-radius:18px;flex-direction:column;align-items:stretch;gap:22px}.company-profile-identity{align-items:flex-start;gap:14px}.company-profile-logo{width:68px;height:68px;flex-basis:68px;padding:8px;border-radius:14px}.company-profile-hero h1{font-size:24px}.company-profile-eyebrow{font-size:14px;margin-bottom:5px}.company-hero-rating{border-left:0;border-top:1px solid #ffffff30;padding:18px 0 0;display:grid;grid-template-columns:auto 1fr;gap:2px 18px;min-width:0;justify-content:start}.company-hero-score{font-size:44px;grid-row:1/3}.company-hero-rating>span:last-child{font-size:14px;margin:0}.company-profile-nav{gap:0;padding:4px;margin:16px 0 20px}.company-profile-nav a{font-size:14px;padding:8px 4px;gap:4px;min-height:48px}.company-profile-nav a span{padding:1px 5px}.company-profile-section{padding:22px 18px;border-radius:16px}.company-profile-grid,.company-profile-main{gap:18px}.review-section-heading h2{font-size:21px}.company-facts>div{grid-template-columns:1fr;gap:4px;padding:13px 0}.rating-overview{grid-template-columns:1fr;gap:18px;padding:15px 0 24px}.rating-average>strong{font-size:56px}.rating-distribution button{min-height:44px}.company-criterion{gap:14px;align-items:flex-start}.company-criterion>div:first-child{min-width:0}.criterion-score{display:flex;flex-direction:column;align-items:flex-end;gap:0}.criterion-score .rating-stars{font-size:16px;letter-spacing:0}.company-profile-aside{grid-template-columns:1fr}.company-contact-card,.company-review-invite{padding:23px}.company-contact-card h2 br{display:none}.company-contact-card .btn{width:100%}.review-toolbar{padding:12px;gap:10px;flex-wrap:wrap}.review-toolbar label{flex:1 1 125px}.company-review-top{align-items:flex-start;flex-wrap:wrap;gap:10px}.company-review time{margin-left:54px}.company-review{padding:23px 0}.review-author{gap:10px}.project-review-card{padding:22px 16px;margin:20px 0}.project-review-card .review-section-heading{gap:10px}.project-review-card .review-section-heading .eyebrow{letter-spacing:0}.review-section-heading .review-icon{width:36px;height:40px}.review-form-actions{flex-direction:column}.review-form-actions .btn{width:100%;font-size:14px}.review-criteria-details{padding:13px}.review-star-choices{gap:6px}.review-star-choices label{flex:1 1}.review-star-choices label>span{width:100%;min-width:38px;min-height:64px}.review-star-choices{max-width:310px}.review-criteria-details>summary span{display:block;margin-left:0}.review-privacy-note{padding:12px}.review-pagination .btn{font-size:14px;min-width:70px}.review-individual-criteria .rating-stars{font-size:16px;letter-spacing:0}.company-profile-link{min-height:36px}.assigned-company>div{min-width:0;overflow-wrap:anywhere}}.billing-plan{margin:24px 0}.billing-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.billing-summary>div{border:1px solid #dce3ed;border-radius:12px;padding:18px;background:#f5f8fc}.billing-summary span{display:block;font-size:14px;color:#53647b;margin-bottom:7px}.billing-summary strong{display:block;font-size:22px;overflow-wrap:anywhere}.billing-invoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}.billing-invoice{border:1px solid #dce3ed;border-radius:14px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:#fff}.billing-invoice h3{margin:0;font-size:20px}.billing-invoice>strong{font-size:30px}.billing-invoice p{margin:0;font-size:14px}.billing-invoice .btn{margin-top:8px}.billing-change{color:#88440b;background:#fff5e8;padding:10px;border-radius:8px}.billing-consent{background:#edf4fb;border:1px solid #bed1e7;border-radius:12px;padding:24px}.billing-consent .checkbox{margin:20px 0}.change-quote-summary{margin:20px 0;background:#f5f8fc}.change-quote-summary .button-row{margin-top:20px}.workspace-content>.panel+.panel{margin-top:24px}.settings-page{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;padding-bottom:24px}.settings-page>*{min-width:0;margin-block:0}.settings-page>.panel{width:100%;max-width:900px;margin-inline:auto}.admin-settings-heading{align-items:center;gap:20px}.admin-settings-heading p{margin-bottom:0}.admin-settings-account{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid #dbe5f0;border-radius:12px;background:#fff;min-width:0}.admin-settings-account>svg{flex-shrink:0;color:#526f91}.admin-settings-account div{display:grid;gap:2px;min-width:0}.admin-settings-account span{font-size:14px;color:#61738b;overflow-wrap:anywhere}.admin-settings-layout{display:grid;grid-template-columns:244px minmax(0,1fr);align-items:start;gap:28px}.admin-settings-navigation{position:sticky;top:96px;padding:18px 10px;background:#fff;border:1px solid #dbe5f0;border-radius:16px}.admin-settings-nav-title{margin:0 12px 14px;color:#6b7e96;font-size:14px;font-weight:700;letter-spacing:.08em}.admin-settings-tabs{display:grid;gap:7px}.admin-settings-tabs button{display:flex;align-items:center;gap:11px;width:100%;min-height:72px;padding:13px 12px;text-align:left;border:1px solid transparent;border-radius:10px;background:transparent;color:#536781;cursor:pointer}.admin-settings-tabs button>svg{flex-shrink:0}.admin-settings-tabs button>svg:last-child{margin-left:auto;opacity:.4}.admin-settings-tabs button span{display:grid;gap:5px}.admin-settings-tabs strong{font-size:15px;color:#183555}.admin-settings-tabs small{font-size:14px;line-height:1.5}.admin-settings-tabs button:hover{background:#f4f7fb}.admin-settings-tabs button[aria-selected=true]{background:#fff2e3;border-color:#ffd4a3;box-shadow:inset 3px 0 #f28b25;color:#875019}.admin-settings-tabs button[aria-selected=true]>svg:last-child{opacity:1}.admin-settings-content>[role=tabpanel]:focus-visible,.admin-settings-tabs button:focus-visible{outline:3px solid #266aa4;outline-offset:3px}.admin-settings-nav-note{margin:20px 12px 2px;padding-top:16px;border-top:1px solid #edf1f5;color:#6b7e96;font-size:14px;line-height:1.7}.admin-settings-mobile-select{display:none}.admin-settings-content{min-width:0}.admin-settings-content>[role=tabpanel]:not([hidden]){display:grid;gap:20px}.admin-settings-content>[hidden]{display:none!important}.admin-settings-content .form-panel{width:100%;max-width:none;margin:0}.admin-settings-content .panel{min-width:0}.admin-settings-content .application-record{margin:0;overflow-wrap:anywhere}.settings-branding-upload{position:relative;cursor:pointer;justify-content:center;min-height:44px}.settings-branding-upload:focus-within{outline:3px solid #266aa4;outline-offset:3px}.settings-branding-file{position:absolute;width:1px!important;height:1px;opacity:0;padding:0!important}@media (max-width:1100px){.admin-settings-layout{grid-template-columns:218px minmax(0,1fr);gap:20px}.admin-settings-tabs button{gap:8px;padding-inline:10px}.admin-settings-tabs small{font-size:14px}.admin-settings-content .form-panel{padding:24px}}@media (max-width:800px){.admin-settings-heading{align-items:stretch}.admin-settings-account{align-self:flex-start;padding:10px 12px}.admin-settings-layout{grid-template-columns:minmax(0,1fr);gap:18px}.admin-settings-navigation{position:static;padding:16px}.admin-settings-nav-title,.admin-settings-tabs{display:none}.admin-settings-mobile-select{display:grid;gap:8px;font-size:14px;font-weight:700}.admin-settings-mobile-select select{width:100%;min-height:48px;margin:0;background-color:#fff8ef;border-color:#efc598;font-size:16px;color:#183555}.admin-settings-nav-note{margin:10px 0 0;border:0;padding:0}.admin-settings-content .form-panel{padding:20px}}@media (max-width:650px){.settings-page{gap:20px;padding-bottom:20px}.workspace-content>.panel+.panel{margin-top:20px}}.project-tabs button.project-messages-tab{align-self:center;justify-content:center;gap:6px;min-height:44px;margin:3px 0 7px;padding:10px 14px;border:1px solid #ed922d;border-radius:9px;background:#ffe4c7;color:#142e52;font-weight:700}.project-tabs button.project-messages-tab:hover{background:#ffd0a1;border-color:#cf6000}.project-tabs button.project-messages-tab:focus-visible{outline:3px solid #142e52;outline-offset:2px}.project-messages-tab svg{flex-shrink:0}@media (max-width:650px){.app-shell .project-tabs button.project-messages-tab{gap:4px;padding:10px 2px;font-size:14px}.project-messages-tab svg{width:16px;height:16px}}@media(max-width:700px){.billing-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-summary>div{padding:14px}.billing-summary strong{font-size:20px}.billing-invoices{grid-template-columns:1fr}.billing-consent,.billing-invoice{padding:18px}.billing-invoice .btn{width:100%}}.zoho-title{display:flex;align-items:flex-start;gap:12px}.zoho-title>svg{flex-shrink:0;color:#b6530b;margin-top:3px}.zoho-title h2,.zoho-title h3{margin-top:0}.zoho-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.zoho-settings-grid label{display:grid;gap:8px;min-width:0}.zoho-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.zoho-setup{margin-top:20px;line-height:1.8}.zoho-setup li{margin-bottom:12px}.zoho-setup code{overflow-wrap:anywhere}.zoho-envelope-list{display:grid;gap:12px;margin-top:16px}.zoho-envelope-list>div{display:flex;gap:12px;flex-wrap:wrap;padding:14px;background:#f2f5fa;border-radius:10px}.zoho-signing{padding:20px;border:1px solid #cedaea;border-radius:14px;background:#f4f7fc;display:grid;gap:14px;margin-bottom:20px}.zoho-signing h3,.zoho-signing p{margin:0}.zoho-signing small{display:block;margin-top:8px;line-height:1.6}.zoho-signing .checkbox{align-items:flex-start;line-height:1.7}@media(max-width:640px){.zoho-settings-grid{grid-template-columns:1fr}.zoho-actions .btn{width:100%}.zoho-signing{padding:16px}}.certificate-downloads{display:grid;gap:10px}.certificate-downloads .btn{white-space:normal;text-align:center}.project-completion-action{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;margin:0 0 22px;border:1px solid #edc99f;border-left:4px solid #fa902f;border-radius:12px;background:#fff8ee}.project-completion-copy{display:flex;align-items:center;gap:13px;min-width:0}.project-completion-copy>svg{color:#b45c12;flex-shrink:0}.project-completion-copy strong{color:#142e52}.project-completion-copy p{margin:5px 0 0;color:#43546d;font-size:14px;line-height:1.6}.project-completion-action>.btn{flex-shrink:0}@media (max-width:640px){.project-completion-action{flex-direction:column;align-items:stretch;gap:14px;padding:16px}.project-completion-action>.btn{width:100%;white-space:normal}}.fee-eyebrow{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:#536980;margin-bottom:8px;letter-spacing:.06em}.fee-management>.section-heading{align-items:flex-start;gap:24px;margin-bottom:24px}.fee-management>.section-heading p{max-width:680px;line-height:1.7;margin-bottom:0}.fee-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.fee-summary>div{padding:20px;border:1px solid #d9e3ee;border-radius:14px;background:#f5f8fc;display:flex;flex-direction:column;gap:10px}.fee-summary strong{font-size:26px;color:#173452}.fee-summary small{font-size:14px}.fee-summary .fee-overdue-total{background:#fff5ee;border-color:#f5ddc9}.fee-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:16px;margin-bottom:24px}.fee-list{display:grid;gap:20px}.fee-card{border:1px solid #d7e2ee;border-radius:16px;padding:24px;background:white;min-width:0}.fee-card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.fee-card-heading h3{margin:5px 0 8px}.fee-card-heading small{color:#667a90}.fee-card-heading a{font-size:14px;overflow-wrap:anywhere}.fee-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:999px;background:#fff1da;color:#795311;font-size:14px;font-weight:700;white-space:nowrap}.fee-badge.paid{background:#e6f5ed;color:#247149}.fee-badge.overdue{background:#ffebe6;color:#ad3f29}.fee-badge.draft{background:#edf1f5;color:#52677f}.fee-amount{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:22px 0}.fee-amount strong{font-size:30px;letter-spacing:-.02em}.fee-amount span{font-size:14px;color:#667a90}.fee-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;margin:0 0 20px;padding:16px 0;border-top:1px solid #edf1f5;border-bottom:1px solid #edf1f5}.fee-facts dt{font-size:14px;color:#667a90;margin-bottom:5px}.fee-facts dd{margin:0;font-size:14px}.fee-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}.fee-actions .btn{font-size:14px;min-height:44px}.fee-empty{text-align:center;padding:48px 16px;color:#64758a}.fee-empty svg{margin:auto}.fee-empty h3{color:#173452}.fee-success{gap:10px;background:#eaf6ef;border-radius:10px;padding:14px;color:#21613e}.fee-pagination,.fee-success{display:flex;align-items:center}.fee-pagination{justify-content:center;gap:18px;margin-top:24px;font-size:14px}.modal.fee-modal{width:min(760px,calc(100vw - 32px));max-height:90dvh;overflow:auto;background:white;padding:28px;border-radius:18px}.fee-modal label{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.fee-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.fee-edit-grid label:nth-last-child(-n+3){grid-column:1/-1}.fee-modal textarea{min-height:85px}@media(max-width:640px){.fee-management>.section-heading{flex-direction:column}.fee-summary{grid-template-columns:1fr;gap:10px}.fee-summary>div{flex-direction:row;justify-content:space-between;align-items:center;padding:16px}.fee-summary strong{font-size:22px}.fee-edit-grid,.fee-filters{grid-template-columns:1fr}.fee-card{padding:18px}.fee-card-heading{flex-wrap:wrap}.fee-amount strong{font-size:27px}.fee-actions .btn{width:100%;justify-content:center}.modal.fee-modal{padding:20px}.fee-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}.invoice-email{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;min-width:0}.invoice-email .btn{white-space:normal;justify-content:center}.invoice-email small{overflow-wrap:anywhere;line-height:1.6}.bank-fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}.bank-account-fields{grid-column:1/-1;margin:24px 0;min-width:0}.bank-account-fields h3{display:flex;align-items:center;gap:8px}.bank-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;margin:20px 0}.bank-field-grid label{display:flex;flex-direction:column;gap:8px;min-width:0}.bank-field-grid input,.bank-field-grid select,.bank-field-grid textarea{width:100%;min-width:0}.bank-full{grid-column:1/-1}.bank-required{font-size:14px;color:#9b3900}.bank-field-grid small,.bank-hint,.bank-yucho{font-size:14px;line-height:1.7}.bank-legacy,.bank-preview{padding:18px;border:1px solid #d5e1ef;border-radius:12px;background:#f4f8fc;margin:16px 0;overflow-wrap:anywhere}.bank-legacy p,.bank-preview p{white-space:pre-wrap;margin:8px 0}.bank-yucho a{text-decoration:underline;margin-left:8px}@media(max-width:640px){.bank-field-grid{grid-template-columns:1fr;gap:18px}}.fee-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:28px;font-size:14px}.fee-detail>.section-heading{margin-bottom:18px}.fee-detail>.fee-list{margin-bottom:24px}.fee-detail .fee-card{padding:20px 24px}.fee-detail .fee-amount{margin:14px 0}.fee-detail .fee-facts{margin-bottom:0;padding:12px 0}.fee-detail .fee-card>.muted{display:none}.fee-detail .revision-row small{display:block;margin-top:6px}.fee-detail .revision-row p{margin:8px 0 0}@media(max-width:640px){.fee-detail .fee-card{padding:16px}.fee-detail .document-tabs{display:flex}.fee-detail .document-tabs button{flex:1 1;justify-content:center}}.fee-detail .fee-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 24px;background:transparent;border:0;border-radius:0;padding:0}.fee-detail .fee-card-heading{grid-column:1;gap:20px}.fee-detail .fee-actions{grid-column:2;grid-row:1;align-self:start;justify-content:flex-end;margin:0;max-width:640px}.fee-detail .fee-amount,.fee-detail .fee-facts{display:none}@media(max-width:1100px){.fee-detail .fee-card{grid-template-columns:1fr}.fee-detail .fee-actions{grid-column:1;grid-row:2;justify-content:flex-start}}@media(max-width:640px){.fee-detail .fee-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fee-detail .fee-actions .btn{padding:10px 8px}.fee-detail .fee-card-heading{flex-wrap:nowrap}}@media (max-width:900px){.app-shell .app-main{padding-bottom:calc(104px + env(safe-area-inset-bottom, 0px))}.app-shell .app-footer{padding-bottom:15px}.app-shell .workspace-content :is(button,input,select,textarea,a,[tabindex]){scroll-margin-bottom:calc(104px + env(safe-area-inset-bottom, 0px))}.app-shell:has(.messenger-screen) .app-main{padding-bottom:0}}.customer-login-page .recovery-card{max-width:540px;width:100%}.email-code-heading,.email-login-badge{display:flex;align-items:center;gap:12px}.email-login-badge{color:#17664d;font-weight:700;margin:24px 0 12px}.customer-email-code{margin:24px 0;padding:24px;border:1px solid #d7e2ef;border-radius:16px;background:#f7faff;min-width:0}.email-code-heading h3{margin:0 0 6px}.email-code-heading p{margin:0;overflow-wrap:anywhere}.customer-email-code .btn{margin-top:12px;justify-content:center;min-height:48px}.customer-email-code .email-remember,.customer-login-page .email-remember{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.6;margin:0}.customer-email-code .email-remember input,.customer-login-page .email-remember input{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin-top:2px;padding:0}.customer-email-code .email-code-input{font-size:28px;letter-spacing:.35em;text-align:center;width:100%;min-height:60px}.email-code-help{margin-top:22px;font-size:14px}.email-code-help summary{cursor:pointer;font-weight:600}.email-code-help p{line-height:1.8}.email-code-notice{color:#17664d}.customer-email-code>.text-link{margin-top:16px;border:0;background:none;padding:8px 0;cursor:pointer}.email-login-alternatives{display:flex;flex-wrap:wrap;gap:16px;font-size:14px;border-top:1px solid #d7e2ef;padding-top:20px}@media(max-width:600px){.customer-email-code{padding:18px}.customer-login-page{padding:24px 12px}.customer-login-page .recovery-card{padding:24px 20px}.email-code-heading{align-items:flex-start}}.customer-login-page .recovery-brand{margin-bottom:8px}.customer-login-page .email-login-badge{margin:12px 0}.customer-login-page .recovery-card form{gap:16px;margin:22px 0}.customer-profile-fields{display:grid;gap:16px;min-width:0;margin-bottom:20px}.customer-identity-panel>label,.customer-profile-fields label{display:grid;gap:8px;min-width:0}.customer-identity-panel>label>input,.customer-profile-fields input,.customer-profile-fields select{width:100%;min-width:0}.customer-profile-fields p{margin:0;line-height:1.8}.customer-identity-panel{padding:20px;border:1px solid var(--border,#d8e1ee);border-radius:14px;background:#f7faff;margin-bottom:24px}.customer-identity-panel h3{margin-top:0}.account-modal>.customer-profile-fields{margin-top:20px}.request-contact+.customer-identity-panel{margin-top:24px}.customer-profile-fields .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:640px){.customer-profile-fields .form-grid{grid-template-columns:minmax(0,1fr)}}.login-choice{min-height:100dvh;background:radial-gradient(ellipse at 18% 30%,#fff0dc 0,transparent 45%),#f4f7fb;color:#153252;padding:28px 5vw 48px}.login-choice>header{max-width:1120px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.login-choice>header img{width:155px;height:auto}.login-choice-body{max-width:940px;margin:52px auto 0;text-align:center}.login-choice-body h1{font-size:clamp(25px,3vw,38px);line-height:1.6;letter-spacing:.025em;margin:12px 0}.login-choice-body>p{color:#52647a}.mobile-break{display:none}.login-choice-cards{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:34px 0 25px}.login-choice-card{display:flex;flex-direction:column;align-items:center;background:white;border:1px solid #d8e2ef;border-radius:24px;padding:30px 28px 24px;color:#173350;text-decoration:none;box-shadow:0 14px 36px #142f5010;transition:transform .18s,box-shadow .18s}.login-choice-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px #142f5020}.login-choice-card:focus-visible{outline:3px solid #1d6094;outline-offset:5px}.login-choice-art{position:relative;display:grid;place-items:center;width:155px;height:125px;border-radius:48% 52% 38% 62%;background:#fff0db;margin:0 0 22px}.login-choice-art>svg{width:85px;height:85px;color:#bf651a}.login-choice-card.company .login-choice-art{background:#e8f0fb}.login-choice-card.company .login-choice-art>svg{color:#254f79}.login-art-dot{position:absolute;width:22px;height:22px;right:0;top:6px;border-radius:50%;background:#ffb245;border:4px solid white}.login-choice-tag{font-size:14px;letter-spacing:.07em;color:#607089}.login-choice-card h2{font-size:29px;margin:8px 0 12px}.login-choice-card p{font-size:15px;line-height:1.9;margin:0 0 20px;color:#52647a}.login-choice-method{display:flex;align-items:center;justify-content:center;gap:7px;font-size:14px;margin-top:auto}.login-choice-action{margin-top:22px;border-radius:12px;width:100%;padding:15px;display:flex;justify-content:space-between;align-items:center;font-weight:700;background:#ff9529;color:#102b46}.company .login-choice-action{background:#173756;color:white}.login-choice-new{margin-top:28px!important;font-size:14px}.login-choice-body>.text-link{font-size:14px}.building-records{margin:24px 0;background:white;border:1px solid #d7e2ef;border-radius:18px;padding:28px}.building-records-heading{display:flex;align-items:flex-start;gap:14px}.building-records h2{font-size:23px;margin:0 0 8px}.building-records-heading p{color:#54667b;margin:0;line-height:1.8}.building-icon{display:grid;place-items:center;background:#eaf1f8;color:#244b71;padding:13px;border-radius:14px}.building-record-selector{display:flex;gap:22px;align-items:center;background:#f3f6fa;border-radius:12px;padding:17px;margin:24px 0 12px}.building-record-selector label{flex:1 1;max-width:620px}.building-record-selector select{display:block;width:100%;margin-top:8px}.building-record-selector>span{display:flex;gap:7px;font-size:14px;align-items:center}.building-record-meta{font-size:14px;color:#63728a;overflow-wrap:anywhere}.building-record-fields{border:0;padding:0;margin:22px 0;min-width:0}.building-section{border:1px solid #d9e3ee;border-radius:12px;margin-bottom:14px;overflow:hidden}.building-section>summary{list-style:none;display:flex;align-items:center;gap:12px;cursor:pointer;padding:19px;background:#f7f9fc;font-weight:700}.building-section>summary::-webkit-details-marker{display:none}.building-section>summary>span:nth-child(2){flex:1 1}.building-section summary small{display:block;color:#6a7b90;font-weight:400;font-size:14px;margin-top:4px}.building-section[open]>summary>svg{transform:rotate(180deg)}.building-section-number{font-size:14px;background:white;border:1px solid #dce5ef;border-radius:9px;padding:8px;color:#b96a1b}.building-section-body{padding:22px}.building-section-body>p{font-size:14px;color:#5d6e83;line-height:1.8;margin:0 0 22px}.building-fields-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px 20px}.building-fields-grid .wide{grid-column:1/-1}.building-fields-grid label{display:flex;flex-direction:column;gap:8px;font-size:14px;min-width:0}.building-fields-grid small{font-size:14px;color:#687a90}.building-fields-grid input,.building-fields-grid select,.building-fields-grid textarea{width:100%;min-width:0;margin:0}.building-record-fields:disabled input,.building-record-fields:disabled select,.building-record-fields:disabled textarea{color:#233e5b;opacity:1;background:#f4f7fa;-webkit-text-fill-color:#233e5b}.building-evidence{border-top:1px dashed #d7e1ee;padding-top:18px;margin-top:24px;font-size:14px}.building-evidence strong{display:flex;align-items:center;gap:6px}.building-file-options{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}.building-file-options label{display:flex;align-items:center;gap:8px;overflow-wrap:anywhere;max-width:100%}.building-file-options input{width:17px;min-width:17px;margin:0}.building-save{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0 0;border-top:1px solid #dbe4ee}.building-save>span{font-size:14px;color:#65758b}.building-saved{color:#18654b;display:flex;align-items:center;gap:8px;background:#edf9f3;padding:14px;border-radius:8px}.building-linked{padding:16px;background:#f2f6fb;border-radius:10px;margin-bottom:18px}.building-linked h3{font-size:15px;margin:0 0 10px}.building-linked a{display:flex;gap:7px;align-items:center;margin:8px 0;overflow-wrap:anywhere}.survey-document-action{display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:#eef5fb;border:1px solid #d8e6f3;padding:18px 22px;border-radius:12px;margin:16px 0}.survey-document-action>div{flex:1 1;min-width:220px}.survey-document-action p{font-size:14px;margin:5px 0 0;color:#5c6e84}.survey-document-action>a{font-size:14px}@media(max-width:640px){.login-choice{padding:20px 18px 36px}.login-choice>header img{width:132px}.login-choice-body{margin-top:30px}.mobile-break{display:initial}.login-choice-cards{grid-template-columns:1fr;gap:18px;margin-top:24px}.login-choice-card{padding:22px 22px 20px;border-radius:18px}.login-choice-art{width:105px;height:80px;margin-bottom:12px}.login-choice-art>svg{width:58px;height:58px}.login-choice-card h2{font-size:25px;margin:6px 0 8px}.login-choice-card p{margin-bottom:15px;font-size:14px}.login-choice-action{margin-top:16px;padding:14px}.building-records{padding:18px 12px;border-radius:12px;margin:16px 0 24px}.building-records h2{font-size:20px}.building-records-heading{gap:10px}.building-icon{padding:9px}.building-records-heading p{font-size:14px}.building-record-selector{flex-direction:column;align-items:stretch;padding:13px;gap:12px}.building-section>summary{padding:15px 12px;font-size:14px}.building-section-body{padding:17px 12px}.building-fields-grid{grid-template-columns:1fr;gap:20px}.building-fields-grid .wide{grid-column:auto}.building-save{flex-direction:column;align-items:stretch}.building-save button{justify-content:center;min-height:48px}.survey-document-action{padding:16px}.survey-document-action .btn{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.login-choice-card{transition:none}}.building-overview{margin-top:24px;border-top:1px solid var(--border,#d6e1ed);padding-top:18px}.building-overview-group{margin:14px 0}.building-overview-group h4{margin:0;padding:8px 10px;background:#eef3f8;border-radius:6px;font-size:14px}.building-overview-group dl{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:4px 0!important}.building-overview-group dl>div{padding:9px 0;border-bottom:1px solid #edf1f5;min-width:0}.building-overview-group dt{font-size:14px;color:#62738a;margin:0 0 3px}.building-overview-group dd{margin:0!important;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.6}.building-overview-group a{display:block;margin:6px 0;overflow-wrap:anywhere}.company-building-memo textarea{display:block;width:100%;margin-top:8px;resize:vertical}@media(max-width:600px){.building-overview-group dl{grid-template-columns:1fr}}.admin-project-edit-page{margin:24px 0}.admin-project-edit-page>header{margin-bottom:24px}.admin-project-edit-page>header nav{display:flex;flex-wrap:wrap;gap:12px 24px}.admin-project-editor{padding:28px;margin-bottom:28px}.admin-project-editor header h2{margin-top:0}.admin-project-editor header p{color:#62738a;line-height:1.7}.admin-project-editor fieldset{border:0;padding:0;margin:0;min-width:0}.admin-project-editor label{display:flex;flex-direction:column;gap:8px;margin:14px 0;min-width:0}.admin-project-editor input,.admin-project-editor select,.admin-project-editor textarea{width:100%;min-width:0;margin:0}.admin-edit-section{padding:18px 0 24px;border-bottom:1px solid #dbe4ee;margin-bottom:20px}.admin-edit-section h3{margin:0 0 18px}.admin-project-editor footer{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-top:20px;margin-top:20px;border-top:1px solid #dbe4ee}.admin-project-editor footer span{font-size:14px;color:#62738a}#project-basic-edit,#project-building-edit{scroll-margin-top:90px}.company-building-memo{padding:28px;margin:24px 0}.company-building-memo h2{margin-top:0}.company-building-memo p{line-height:1.8}.company-building-memo form{margin-top:24px}.company-building-memo label{display:block}.company-building-memo textarea{padding:14px;margin:10px 0 20px}@media(max-width:640px){.admin-project-editor,.company-building-memo{padding:20px 16px;margin:18px 0 24px}.admin-project-editor .form-grid{grid-template-columns:1fr}.admin-project-editor footer .btn{flex:1 1;justify-content:center}.admin-project-edit-page>header nav{gap:12px}.company-building-memo .building-save{padding-top:18px}}.unread-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#137d40;color:#fff;font-size:14px;font-weight:750;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.sidebar nav a>.unread-badge{margin-left:auto}.mobile-nav-icon{position:relative;display:inline-flex;align-items:center}.mobile-nav-icon>.unread-badge{position:absolute;top:-8px;left:13px;min-width:22px;height:22px;padding:0 5px;font-size:14px;box-shadow:0 0 0 2px #fff}.project-messages-tab .unread-badge{margin-left:4px}.project-card-top .unread-badge{margin-left:auto}.project-card-unread{display:inline-flex;align-items:center;gap:5px;margin-left:auto}.project-card-unread>svg{display:none}.inbox-row .unread-badge{margin-left:auto}.project-list-panel{background:#fff;border:1px solid #dbe4ef;border-radius:20px;overflow:hidden;margin-bottom:28px}.project-list-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:18px;background:#edf2f8;border-bottom:1px solid #dbe4ef}.project-list-tabs.participant-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.project-list-tabs>button{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:16px;min-width:0;margin:0;padding:18px 20px;border:1px solid #d7e1ec;border-radius:13px;background:#fff;color:#425b76;cursor:pointer;transition:background .15s,border-color .15s}.project-list-tabs>button:hover{background:#f7f9fc;border-color:#8a9fb7}.project-list-tabs>button.active{background:#142f50;border-color:#142f50;color:#fff;box-shadow:0 4px 12px #142f5018}.project-list-tabs>button.active:after{content:"";position:absolute;bottom:0;left:20px;right:20px;height:4px;border-radius:4px 4px 0 0;background:#ff922b}.project-list-tabs>button:focus-visible{outline:3px solid #e47b14;outline-offset:3px;z-index:1}.project-tab-label{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;white-space:nowrap}.project-tab-label svg{flex:none}.project-tab-count{display:flex;align-items:baseline;gap:6px;font-size:28px;font-weight:750;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.project-tab-unit{font-size:14px;font-weight:500;opacity:.8}.project-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px 0}.project-list-toolbar p{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0}.project-list-toolbar p strong{font-size:18px}.project-list-toolbar p span{color:#60758c;font-size:14px}.project-list-toolbar .search{width:min(400px,55%);margin:0}.project-list-toolbar .search input{min-width:0;width:100%;font-size:14px}.project-list-toolbar .search button{display:flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;padding:0;border:0;border-radius:8px;background:transparent;color:#425b76;cursor:pointer}.project-list-toolbar .search button:hover{background:#e9eff6}#project-list-results{min-height:220px}#project-list-results:focus-visible{outline:3px solid #e47b14;outline-offset:-3px}@media(max-width:1100px){.project-list-tabs:not(.participant-tabs){grid-template-columns:repeat(3,minmax(0,1fr))}.project-list-tabs>button{padding:16px}}@media(max-width:640px){.project-list-panel{border-radius:16px}.project-list-tabs{gap:8px;padding:12px}.project-list-tabs.participant-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px}.project-list-tabs>button{align-items:center;padding:14px 6px 16px;gap:12px;border-radius:10px}.project-tab-label{flex-direction:column;gap:6px;font-size:14px}.project-tab-count{font-size:22px;gap:3px}.project-list-tabs>button.active:after{left:10px;right:10px}.project-list-tabs.participant-tabs>button{padding:10px 1px 12px;gap:5px;min-height:64px;border-radius:8px}.participant-tabs .project-tab-label{line-height:1.4}.participant-tabs .project-tab-label svg{display:none}.participant-tabs .project-tab-count{font-size:18px}.project-list-tabs.participant-tabs>button.active:after{height:3px;left:8px;right:8px}.project-list-toolbar{align-items:stretch;flex-direction:column;gap:14px;padding:20px 16px 0}.project-list-toolbar .search{width:100%}.project-list-panel .project-grid{padding:12px;gap:10px}.project-list-panel .project-card{min-width:0;padding:12px;border-color:#dbe4ef;border-radius:12px}.project-list-panel .project-card-top{margin-bottom:8px;gap:8px;flex-wrap:wrap}.project-list-panel .project-facts,.project-list-panel .project-icon,.project-list-panel .project-number{display:none}.project-list-panel .project-card-top .status{order:0}.project-list-panel .project-card-unread{order:1;color:#137d40}.project-list-panel .project-card-unread>svg{display:block}.project-list-panel .project-card h3{margin:0 0 5px;font-size:16px;font-weight:700;line-height:1.5;overflow-wrap:anywhere}.project-list-panel .project-address{margin:0;line-height:1.5;overflow-wrap:anywhere}.project-list-panel .project-card-bottom{margin-top:8px;padding-top:8px;align-items:center;gap:8px}.project-list-panel .project-card-bottom>svg{flex:none}}.account-email-settings{min-width:0}.account-email-settings h2{display:flex;align-items:center;gap:8px}.account-email-settings p{line-height:1.7;overflow-wrap:anywhere}.account-email-current{display:grid;gap:6px;padding:14px;border-radius:10px;background:#f0f5fb;margin:16px 0;overflow-wrap:anywhere}.account-email-current span,.account-email-note{font-size:14px;color:#52647b}.account-email-settings form{display:grid;gap:12px}.account-email-settings form>.btn{justify-self:start;max-width:100%;white-space:normal}.account-email-actions{display:flex;gap:10px;flex-wrap:wrap}.account-email-code{max-width:230px;font-size:24px;letter-spacing:.25em}.account-email-result{padding:12px;border-radius:8px;color:#146135;background:#edf9f1}@media(max-width:640px){.account-email-actions .btn,.account-email-settings form>.btn{width:100%;justify-content:center}.account-email-actions{display:grid;grid-template-columns:minmax(0,1fr)}}.admin-company-editor{max-width:1100px;margin:0 auto;padding-bottom:30px}.admin-company-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:24px 0}.admin-company-editor h2,.admin-company-heading h1{display:flex;align-items:center;gap:10px}.admin-company-heading p{margin:8px 0;color:#566982}.admin-company-sections{display:flex;gap:8px;overflow-x:auto;margin:0 0 24px;padding:4px 0 10px}.admin-company-sections a{white-space:nowrap;border:1px solid #cdd9e7;border-radius:999px;padding:9px 15px;background:white;color:#173454;text-decoration:none}.admin-company-fieldset{border:0;padding:0;margin:0;min-width:0}.admin-company-editor .panel{margin-bottom:24px;padding:28px;scroll-margin-top:90px}.admin-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.admin-company-grid label{display:flex;flex-direction:column;gap:8px;min-width:0}.admin-company-grid input,.admin-company-grid select,.admin-company-grid textarea{width:100%;min-width:0}.admin-company-wide{grid-column:1/-1}.admin-company-save{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#edf4fa;border:1px solid #d5e1ee;padding:18px;border-radius:12px;margin-bottom:28px}.admin-company-editor .branding-image{max-width:100%;object-fit:contain}.admin-company-editor input[type=file]{max-width:100%}@media(max-width:640px){.admin-company-heading{align-items:flex-start;flex-direction:column}.admin-company-heading h1{font-size:24px}.admin-company-grid{grid-template-columns:1fr;gap:18px}.admin-company-editor .panel{padding:18px}.admin-company-save{flex-direction:column;align-items:stretch}.admin-company-save button{justify-content:center}.admin-company-editor .branding-grid{grid-template-columns:1fr}}.admin-company-upload{position:relative;display:inline-flex;cursor:pointer}.admin-company-file-input{position:absolute;width:1px!important;height:1px;opacity:0;padding:0!important}.admin-company-upload:focus-within{outline:2px solid #e77c20;outline-offset:3px}.delete-confirm-dialog{width:min(480px,calc(100vw - 32px));padding:24px;border:1px solid #d5e0ef;border-radius:16px;color:#142e4d;box-shadow:0 20px 80px #102a4c40}.delete-confirm-dialog::backdrop{background:#102a4c80}.delete-confirm-dialog h2{margin:0 0 12px;font-size:20px}.delete-confirm-dialog p{line-height:1.8;white-space:pre-wrap}.delete-confirm-dialog .button-row{justify-content:flex-end;margin-top:24px}.delete-confirm-dialog .btn.danger{background:#b42318;color:#fff}.japanese-birth-date{display:flex;gap:10px;margin-top:8px}.japanese-birth-date label{display:flex;align-items:center;gap:6px;min-width:0;flex:1 1}.japanese-birth-date label:first-child{flex:1.5 1}.japanese-birth-date input{min-width:0;width:100%}.action-confirm-dialog textarea{display:block;width:100%;margin-top:8px;resize:vertical;min-height:100px}.delete-confirm-dialog{max-height:calc(100dvh - 32px);overflow:auto}.delete-confirm-dialog .btn{min-height:44px}.admin-company-save .save-error{color:#b42318}@media(max-width:640px){.admin-company-editor{padding-bottom:120px}.admin-company-save{position:fixed;z-index:36;left:12px;right:12px;bottom:calc(88px + env(safe-area-inset-bottom, 0px));margin:0;padding:12px;gap:8px;box-shadow:0 4px 24px #102a4c30}.admin-company-save span{font-size:14px;line-height:1.5;max-height:60px;overflow:auto}.admin-company-save .btn{min-height:48px;width:100%}.admin-company-editor :is(input,select,textarea){font-size:16px;scroll-margin-bottom:240px}.admin-company-editor .japanese-birth-date label{flex-direction:row;align-items:center}.admin-company-editor .japanese-birth-date input{padding-inline:6px;text-align:center}.delete-confirm-dialog{padding:20px}.delete-confirm-dialog .button-row{display:flex;flex-wrap:wrap;gap:10px}.delete-confirm-dialog .button-row .btn{flex:1 1;white-space:normal}}@media(max-width:360px){.delete-confirm-dialog .button-row{display:grid;grid-template-columns:1fr}.delete-confirm-dialog .button-row .btn{width:100%}}.backup-settings{padding:clamp(18px,3vw,30px)}.backup-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;margin-bottom:22px}.backup-heading h2{margin:0 0 8px}.backup-heading p{margin:0;line-height:1.8}.backup-heading .btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.backup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.backup-card{border:1px solid #d6e2ee;border-top:4px solid #447daf;border-radius:14px;padding:22px;background:#fff;min-width:0}.backup-card header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.backup-card h3{margin:0;font-size:18px}.backup-badge{display:inline-flex;align-items:center;gap:7px;border-radius:30px;padding:6px 11px;font-weight:700;font-size:13px;background:#eaf2ff;color:#24598b}.backup-success{border-top-color:#19835c}.backup-success .backup-badge{background:#e3f5ed;color:#11633f}.backup-warning{border-top-color:#b17a12}.backup-warning .backup-badge{background:#fff4d9;color:#795305}.backup-danger{border-top-color:#c4473d}.backup-danger .backup-badge{background:#fde9e7;color:#9b3028}.backup-message{line-height:1.8;font-size:14px;min-height:50px}.backup-card dl{margin:18px 0}.backup-card dl div{padding:12px 0;border-bottom:1px solid #e5ebf2}.backup-card dt{font-size:12px;color:#52667c;margin-bottom:5px}.backup-card dd{margin:0;font-size:14px;font-weight:600;overflow-wrap:anywhere}.backup-schedule,.backup-updated{color:#52667c;font-size:12px;line-height:1.8}.backup-updated{margin:18px 0}.backup-guidance{border-radius:12px;background:#eff4fa;padding:18px;margin-top:22px;line-height:1.8}.backup-guidance h3{margin:0 0 8px;font-size:15px}.backup-guidance p{font-size:13px;margin:8px 0}@media(max-width:900px){.backup-grid{grid-template-columns:1fr}.backup-card{padding:18px}.backup-message{min-height:0}}.japanese-date-field{min-width:0;display:flex;flex-direction:column;gap:8px}.japanese-date-field>span{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.japanese-date-required{color:#a23b14;font-size:11px;font-weight:600}.japanese-date-selects{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));gap:6px;min-width:0}.japanese-date-field .japanese-date-selects select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:10px 4px;font-size:16px;border:1px solid #bdcde1;border-radius:8px;background-color:#fff;color:#183451}.japanese-date-field .japanese-date-selects select:focus-visible{outline:2px solid #2368a5;outline-offset:2px}.japanese-date-field .japanese-date-selects select[aria-invalid=true]{border-color:#b84335}.japanese-date-help{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 8px}.japanese-date-help small{flex:1 1 110px;color:#52667c;font-size:12px;line-height:1.6}.japanese-date-actions{display:flex;flex-shrink:0;gap:6px}.japanese-date-actions button{min-height:44px;min-width:44px;padding:8px;border:1px solid #bdcde1;border-radius:7px;background:#fff;color:#24466b;font-size:13px}.japanese-date-actions button:disabled{opacity:.5}.japanese-date-field .field-error{color:#a52620;font-size:13px}@media (max-width:640px){.form-grid>.japanese-date-field{grid-column:1/-1}}