/* Шрифт Inter хранится в портале: без него Windows подставляет Segoe UI и рисует жирный текст «смазанным». */
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vendor/inter-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vendor/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+20BD}
:root{font-family:Inter,"Segoe UI",sans-serif;font-size:14px;color:#24201D;background:#FAF5EF;--bg:#FAF5EF;--card:#fff;--beige:#F1E4D5;--soft:#FFF9F3;--accent:#FF821C;--accent-hover:#E96D0A;--text:#24201D;--muted:#81776F;--line:#EADFD3;--active:#FFF0E2;--success:#219B75;--error:#DC5757;--sidebar-width:256px;--shadow:0 4px 24px #70451c05}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--text);border-radius:10px;padding:11px 16px;min-height:44px;font-weight:500;transition:background .17s,border-color .17s,box-shadow .17s,transform .17s}button:hover{background:var(--soft);border-color:#d8c5b2}button:active{transform:translateY(1px)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ff821c66;outline-offset:3px}button:disabled{opacity:.55;cursor:wait;transform:none}.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 4px 10px #ff821c18}.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.icon-button{padding:6px;min-width:32px;min-height:32px;background:transparent;border-color:transparent;font-size:22px;display:grid;place-items:center;color:var(--muted)}aside{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);background:#f5ebdf;border-right:1px solid #eadfd399;padding:28px 16px;z-index:20;display:flex;flex-direction:column;transition:width .18s,transform .18s}.brand-row{display:flex;align-items:flex-start;padding:3px 8px 0 12px}.brand{display:block;text-decoration:none;color:var(--muted);flex:1}.brand img{display:block;width:112px;height:auto;object-fit:contain}.brand span{font-size:12px;display:block;margin-top:13px;white-space:nowrap}.brand-row .icon-button{margin-top:20px}.workspace{font-size:10px;letter-spacing:1.3px;font-weight:600;color:#a19387;margin:43px 15px 14px}.nav{display:flex;align-items:center;gap:11px;width:100%;background:none;border:1px solid transparent;color:#75695f;text-align:left;margin:6px 0;border-radius:11px;font-size:13px;padding:13px 14px;min-height:47px}.nav-label{white-space:nowrap}.nav:hover{background:#fff8f0;border-color:transparent}.nav.active{background:var(--active);color:#33291f;border-color:#f2d9c0;box-shadow:0 2px 5px #a15d1c03}.nav.active .icon{color:var(--accent)}.sidebar-note{margin:32px 12px 12px;padding:20px 14px;border-radius:14px;background:#ffffff55;color:#9b7d61;font-size:12px}.sidebar-note>.icon{color:#c3976d;margin-bottom:12px}.sidebar-note strong{display:block;color:#756353;font-size:12px;font-weight:600}.sidebar-note p{font-size:12px;line-height:1.7;margin:8px 0 0}.aside-bottom{margin-top:auto;padding-top:22px}.profile{display:flex;align-items:center;gap:11px;border-top:1px solid var(--line);padding:18px 10px 8px;margin-top:14px}.avatar{display:grid;place-items:center;border-radius:50%;width:36px;height:36px;background:#eadac7;font-weight:600;color:#8a6748;flex-shrink:0}#identity{font-size:12px;line-height:1.65;white-space:normal}.local-label{font-size:10px;color:#a19387;display:block;margin:12px 9px}.local-label i{display:inline-block;width:5px;height:5px;background:var(--success);border-radius:50%;margin-right:4px}.shell{margin-left:var(--sidebar-width);transition:margin-left .18s}header{height:76px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 40px;border-bottom:1px solid #eadfd366;background:#fff9f366}.breadcrumbs{font-size:12px;color:var(--muted)}.breadcrumbs b{font-weight:400;margin:0 12px;color:#c9b9a9}.breadcrumbs #breadcrumb{color:#5f554c}.header-right{display:flex;align-items:center;gap:17px}.saving-indicator{font-size:11px;color:#9d9084;display:flex;align-items:center;gap:7px}.saving-indicator.saved{color:var(--success)}.saving-indicator.busy:before{content:'';border:2px solid #eddbc9;border-top-color:var(--accent);width:11px;height:11px;border-radius:50%;animation:spin .7s linear infinite}.badge{border:1px solid #e7dccd;background:#f3ede4;color:#8b765d;border-radius:7px;padding:6px 10px;font-size:11px;white-space:nowrap}.badge:before{content:'';width:5px;height:5px;border-radius:50%;display:inline-block;background:#c2a37a;margin-right:6px;vertical-align:2px}.badge.green{background:#edf8f2;border-color:#d2ebdf;color:var(--success)}.badge.green:before{background:var(--success)}main{max-width:1560px;margin:auto;padding:34px 40px 40px}h1{font-size:31px;font-weight:600;letter-spacing:-.9px;line-height:1.25;margin:0 0 10px}h2{font-size:18px;font-weight:600;line-height:1.5;margin:0}h3{font-size:15px;font-weight:600;margin:0 0 10px}p{line-height:1.7;color:var(--muted);margin:8px 0 18px}.page-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.page-title p{font-size:13px;margin-bottom:0}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#b39b82;font-weight:600;margin-bottom:10px}.page-title>button{display:flex;align-items:center;gap:8px;font-size:12px;min-height:40px;padding:8px 13px}.top-note{display:none}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;background:#f0e5d7;padding:5px;border-radius:13px;margin:0 0 27px;max-width:100%}.tab{border:none;background:transparent;min-width:0;min-height:47px;display:flex;justify-content:center;align-items:center;gap:9px;padding:9px 10px;color:#8e7d6c;font-size:12px;line-height:1.4;font-weight:500}.tab:hover{background:#fff9f380;border:none}.tab[aria-selected=true]{background:white;color:#d96512;box-shadow:0 2px 8px #7a512110}.tab-number{font-size:11px;display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#e7daca;color:#9d846b;flex-shrink:0}.tab[aria-selected=true] .tab-number{background:var(--active);color:var(--accent)}.tab-marker{width:6px;height:6px;border-radius:50%;background:#bba58e;flex-shrink:0;margin-left:2px}.tab-marker.complete{width:18px;height:18px;border-radius:50%;background:#e7f5ed;color:var(--success);font-size:11px;display:grid;place-items:center}.tab[aria-selected=true] .tab-marker:not(.complete){background:var(--accent)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.builder-form{min-width:0}.tab-panel{animation:appear .18s ease-out}.tab-panel[hidden]{display:none}.card{background:var(--card);border:1px solid #eadfd377;border-radius:18px;padding:25px 26px;margin-bottom:20px;box-shadow:var(--shadow)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.card-head h2{display:flex;align-items:center;gap:11px}.step-number{display:grid;place-items:center;background:#fff0e2;color:var(--accent);font-size:12px;border-radius:10px;width:35px;height:35px;font-weight:600;flex-shrink:0}.card-head>.small{font-size:11px;color:#ac9b8c}.card-description{font-size:12px;margin-top:-11px;margin-bottom:23px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.wide{grid-column:1/-1}label{display:block;font-size:12px;font-weight:500;color:#6a5e53;min-width:0}input,select,textarea{display:block;width:100%;min-width:0;background:#fffdfb;border:1px solid var(--line);border-radius:9px;min-height:45px;padding:11px 12px;margin-top:8px;color:var(--text);font-weight:400;outline:none;transition:box-shadow .15s,border-color .15s,background .15s}input::placeholder,textarea::placeholder{color:#b8a99b;font-size:12px}input:hover,select:hover,textarea:hover{border-color:#d4bda5}input:focus,select:focus,textarea:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #ff821c13}textarea{min-height:92px;resize:vertical}input[type=checkbox]{width:17px;height:17px;min-height:17px;padding:0;margin:0;accent-color:var(--accent);flex-shrink:0}.check{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;margin:15px 0;font-weight:400}.inline{display:flex;gap:9px;align-items:flex-end}.inline input,.inline select{flex:1}.inline button{white-space:nowrap}.lookup-button{background:var(--active);border-color:#f3dcc6;color:#d96b1b;font-size:12px;display:flex;align-items:center;gap:6px}.lookup-button:hover{background:#ffe4ca}.hint{font-size:12px;color:var(--muted);line-height:1.75;font-weight:400}.field-group{padding-top:23px;margin-top:24px;border-top:1px solid #f2eae1}.field-group>h3{font-size:13px;color:#6d5c4c;margin-bottom:17px;display:flex;align-items:center;gap:8px}.field-group>h3 .icon{color:#be9b76;width:17px;height:17px}details{margin-top:20px}summary{cursor:pointer;list-style:none;font-size:12px;font-weight:500;color:#8c7054;display:flex;align-items:center;gap:8px}summary:before{content:'›';font-size:18px;font-weight:400;transition:transform .15s}details[open]>summary:before{transform:rotate(90deg)}summary::-webkit-details-marker{display:none}.recommendation{background:var(--soft);border:1px solid #f3e5d6;border-radius:11px;padding:14px 16px;margin-top:21px;font-size:12px;color:#8b6b4e;line-height:1.75;display:flex;gap:10px}.recommendation:before{content:'i';display:grid;place-items:center;border:1px solid #dcb184;width:17px;height:17px;border-radius:50%;font-size:11px;flex-shrink:0;margin-top:2px}.toolbar{display:flex;gap:10px;align-items:center;margin:20px 0}.toolbar input{margin:0}.toolbar button{white-space:nowrap;font-size:12px}.service{background:#fffdfb;border:1px solid var(--line);border-radius:13px;padding:20px;margin-top:15px}.service-title{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:18px}.service-title strong{font-size:13px;line-height:1.6;font-weight:600}.service .grid{gap:16px 12px}.service .grid label{font-size:11px}.service .remove{padding:0;min-width:26px;min-height:26px;background:none;border-color:transparent;color:#b6a08d;font-size:22px}.service .remove:hover{color:var(--error);background:#fff1ed}.summary{position:sticky;top:24px;align-self:start}.summary>.card{padding:23px 22px}.cost-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.cost-heading .cost-icon{width:34px;height:34px;background:var(--active);border-radius:10px;display:grid;place-items:center;color:var(--accent)}.summary h2{font-size:17px}.summary .eyebrow{font-size:9px;letter-spacing:1.1px;margin-bottom:5px}.summary-row{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--muted);font-size:12px;margin:19px 0}.summary-row b{font-size:13px;font-weight:600;color:#6e5f51;white-space:nowrap}.divider{border-top:1px solid #f0e6dc;margin:22px 0}.amount{font-size:35px;line-height:1.4;letter-spacing:-1px;font-weight:600;color:var(--text);margin:8px 0}.total-label{font-size:12px;color:var(--muted)}.period-note{font-size:11px;line-height:1.7;color:#a59280;margin:8px 0 20px}.summary button{width:100%;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px}.summary .primary{min-height:46px;font-size:13px}.summary .text-action{background:transparent;border-color:transparent;color:#9a8774;min-height:34px;padding:6px;margin-top:9px;font-weight:400}.summary .text-action:hover{color:var(--accent-hover);background:var(--soft)}.summary .text-action .icon{width:16px;height:16px}.summary .download-action{background:#fffaf5}.summary .outline-action{color:#77624e}.summary .small{font-size:11px;line-height:1.7}.summary-help{padding:6px 10px;display:flex;gap:10px;color:#ae9781;font-size:11px;line-height:1.7}.summary-help .icon{width:17px;height:17px}.summary-status{font-size:12px;line-height:1.7;color:#9a8168}.summary-status button{border:none;background:none;width:auto;padding:5px 0;margin:5px 0 0;color:#d77124;min-height:30px;justify-content:flex-start;font-size:12px}.tab-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0 15px}.tab-footer .primary{display:flex;align-items:center;gap:8px}.tab-footer .previous{border-color:transparent;background:none;color:#97826d}.tab-footer .small{font-size:12px}.document-list{display:grid;gap:12px;margin-top:22px}.document-row{display:flex;align-items:center;gap:14px;background:#fffcf8;border:1px solid #f0e5d9;border-radius:12px;padding:17px}.document-row .document-icon{width:40px;height:43px;border:1px solid #efd7bf;background:#fff4e8;display:grid;place-items:center;border-radius:9px;color:#d58d46;flex-shrink:0}.document-row strong{display:block;font-size:13px;font-weight:600}.document-row small{display:block;font-size:11px;color:var(--muted);line-height:1.6;margin-top:4px}.document-row .pill{margin-left:auto;white-space:nowrap}.pill{font-size:10px;background:#f5eddf;color:#aa8b65;padding:5px 8px;border-radius:6px}.pill.green{background:#edf8f2;color:var(--success)}.check-intro{display:flex;gap:14px;background:var(--soft);padding:17px;border-radius:12px;margin-bottom:22px;font-size:12px;color:#987451;line-height:1.7}.check-intro>.icon{color:var(--accent);flex-shrink:0}.checks{padding:0;list-style:none;color:#8a7058;font-size:13px;line-height:1.7;margin:12px 0}.checks li{position:relative;padding:12px 13px 12px 36px;background:#fffaf4;border:1px solid #f0e4d7;border-radius:9px;margin:9px 0}.checks li:before{content:'!';position:absolute;left:13px;top:15px;display:grid;place-items:center;width:14px;height:14px;border:1px solid #d9b389;border-radius:50%;font-size:10px;color:#b98b57}.checks li.validation-success{background:#f1faf5;color:var(--success);border-color:#d9ece2}.checks li.validation-success:before{content:'✓';border-color:#a5d6be;color:var(--success)}.field-invalid{border-color:#df9d7b!important;background:#fffcf9!important}.field-error{display:block;font-size:11px;color:#bc7648;font-weight:400;margin-top:6px}.small{font-size:12px;color:var(--muted)}.empty{padding:36px 20px;text-align:center;color:#ab9783;font-size:13px;line-height:1.8;border:1px dashed #e7d7c7;border-radius:12px;margin-top:20px;background:#fffdf9}.catalog-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid #f1e9e0;font-size:13px}.catalog-row span{font-size:13px;line-height:1.6}.catalog-row small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.catalog-row button{color:var(--accent);min-height:34px;padding:4px 12px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:12px;line-height:1.9;color:#807365}table{width:100%;border-collapse:collapse;font-size:12px}td,th{text-align:left;border-bottom:1px solid #f0e6dd;padding:15px 10px;line-height:1.6}th{background:#fffaf4;color:#a08972;font-weight:500}td button{font-size:11px;padding:7px 10px;min-height:34px}.history{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:18px;margin:14px 0;font-size:12px;line-height:1.8}.history button{font-size:12px}a{color:#bd6e30;text-underline-offset:3px}.warn{color:#b67e44}.login-brand{width:90px;height:auto}dialog{border:1px solid var(--line);border-radius:20px;max-width:1000px;width:90vw;max-height:88vh;overflow:auto;padding:30px;box-shadow:0 20px 90px #58381f22;background:#fffdfb}dialog::backdrop{background:#4e39284d;backdrop-filter:blur(3px)}#login{max-width:430px}#login label{margin:20px 0}#login button{margin-top:10px;width:100%}#loginError{color:var(--error);font-size:12px}#preview h1{font-family:Georgia,serif}#preview article{padding:25px 10px}#previewBody{overflow-x:auto}#preview pre{line-height:1.8}.settings-close{float:right}.settings-note{font-size:12px;margin-bottom:20px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);display:none;background:#fff;border:1px solid #dfebdf;border-radius:12px;color:#487458;padding:16px 24px;box-shadow:0 8px 35px #48342216;z-index:100;max-width:90vw;font-size:13px;animation:appear .18s}footer{font-size:11px;color:#b09e8c;padding:12px 40px 25px;display:flex;justify-content:space-between;gap:10px}#mobileMenu{display:none}.sidebar-collapsed{--sidebar-width:84px}.sidebar-collapsed aside{padding:24px 9px}.sidebar-collapsed .brand-row{padding:0;flex-direction:column;align-items:center}.sidebar-collapsed .brand{flex:none}.sidebar-collapsed .brand img{width:56px}.sidebar-collapsed .brand span,.sidebar-collapsed .workspace,.sidebar-collapsed .nav-label,.sidebar-collapsed .sidebar-note,.sidebar-collapsed #identity,.sidebar-collapsed .local-label{display:none}.sidebar-collapsed .brand-row .icon-button{margin:15px 0 12px;transform:rotate(180deg)}.sidebar-collapsed .nav{justify-content:center;padding:13px 8px}.sidebar-collapsed .profile{justify-content:center;padding:18px 0 8px}.sidebar-collapsed aside nav{margin-top:18px}.sidebar-collapsed .aside-bottom{padding-top:15px}.sidebar-collapsed .profile .avatar{width:32px;height:32px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes appear{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1550px){main{padding-top:43px}.layout{grid-template-columns:minmax(0,1fr) 320px;gap:28px}.card{padding:28px}.summary>.card{padding:26px}}@media(max-height:850px){.sidebar-note{display:none}.workspace{margin-top:30px}aside{padding-top:20px}.brand img{width:100px}.brand-row .icon-button{margin-top:15px}.aside-bottom{padding-top:10px}.profile{padding-top:13px}}@media(max-width:1199px){:root{--sidebar-width:220px}aside{padding-left:10px;padding-right:10px}.nav{font-size:12px;gap:9px;padding:12px 10px}main{padding:28px 25px}header{padding:0 25px}.layout{grid-template-columns:minmax(0,1fr) 270px;gap:18px}.card{padding:22px}.grid.three{grid-template-columns:1fr 1fr}.tab{font-size:11px;gap:6px;padding:8px 5px}.summary>.card{padding:20px}.saving-indicator{display:none}.amount{font-size:31px}}@media(max-width:1000px){.layout{grid-template-columns:minmax(0,1fr)}.summary{position:static;display:grid;grid-template-columns:1fr 1fr;gap:18px}.summary-help{grid-column:1/-1}.tabs{gap:3px}.sidebar-note{display:none}.tab-label{max-width:150px}.summary>.card{margin:0}.summary button{min-height:42px}}@media(max-width:760px){:root{--sidebar-width:0px}aside,.sidebar-collapsed aside{width:256px;padding:24px 16px;transform:translateX(-100%);box-shadow:10px 0 45px #58381f15}.menu-open aside{transform:translateX(0)}.sidebar-collapsed .brand img{width:100px}.sidebar-collapsed .brand-row{flex-direction:row;padding:3px 8px 0 12px;align-items:flex-start}.sidebar-collapsed .brand-row .icon-button{margin:15px 0 0}.sidebar-collapsed .brand span,.sidebar-collapsed .workspace,.sidebar-collapsed .nav-label,.sidebar-collapsed #identity,.sidebar-collapsed .local-label{display:block}.sidebar-collapsed .nav{justify-content:flex-start;padding:13px 14px}.sidebar-collapsed .profile{justify-content:flex-start;padding:18px 10px 8px}.brand img{width:100px}.shell,.sidebar-collapsed .shell{margin-left:0}#mobileMenu{display:grid;flex-shrink:0}header{height:65px;padding:0 17px;gap:8px}.breadcrumbs{font-size:11px;flex:1}.breadcrumbs b{margin:0 6px}.badge{font-size:10px;padding:5px 7px}.header-right{gap:0}main{padding:25px 17px 30px}.page-title{align-items:flex-start;gap:12px;margin-bottom:24px}.page-title>button{font-size:0;min-width:38px;padding:8px}.page-title>button .icon{width:19px;height:19px}h1{font-size:28px}.page-title p{font-size:12px;max-width:260px}.eyebrow{font-size:9px}.tabs{grid-template-columns:repeat(4,minmax(0,1fr));padding:4px;margin-bottom:20px;border-radius:11px}.tab{flex-direction:column;gap:5px;padding:8px 2px;position:relative;min-height:65px;font-size:10px}.tab-label{max-width:100%;white-space:normal;overflow-wrap:normal;line-height:1.3;text-align:center}.tab-number{width:19px;height:19px;font-size:10px}.tab-marker{position:absolute;right:7px;top:10px;width:4px;height:4px}.tab-marker.complete{width:13px;height:13px;font-size:8px;right:4px;top:7px}.card{padding:21px 19px;border-radius:16px}.card-head{gap:10px;align-items:flex-start;margin-bottom:23px}.card-head h2{font-size:16px;gap:9px}.card-head>.small{display:none}.step-number{width:31px;height:31px}.grid,.grid.three{grid-template-columns:1fr;gap:19px}.wide{grid-column:auto}.inline input{width:0}.inline button{padding:10px 12px}.inline .lookup-button{font-size:11px}.summary{grid-template-columns:1fr;gap:15px}.summary>.card{padding:24px}.summary .amount{font-size:36px}.summary .period-note{max-width:310px}.summary-help{padding:0 10px}.toolbar{align-items:stretch}.toolbar button{font-size:11px;padding:8px 12px}.service{padding:17px}.service .grid{grid-template-columns:1fr 1fr}.service .grid label:first-child{grid-column:1/-1}.service .grid label:last-child{grid-column:1/-1}.service .grid label{font-size:11px}.document-row{padding:14px;gap:10px;flex-wrap:wrap}.document-row>div:nth-child(2){flex:1;min-width:150px}.document-row .pill{margin-left:50px}.tab-footer button{font-size:12px;padding:10px 12px}.tab-footer .small{display:none}footer{padding:0 20px 22px;font-size:10px}footer span{display:none}#registryRows{overflow:auto}#registryRows table{min-width:630px}dialog{padding:23px;width:94vw}.catalog-row{font-size:12px}.catalog-row b{white-space:nowrap;font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.reduce-motion *{animation:none!important;transition:none!important}

.mobile-brand{display:none}@media(max-width:760px){.mobile-brand{display:block;flex-shrink:0;margin-right:3px}.mobile-brand img{display:block;width:42px;height:auto}.breadcrumbs{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breadcrumbs b{margin:0 4px}}

.hint a{white-space:nowrap}.saving-indicator.saved:before{content:"✓";color:var(--success)}

/* Calm milk-and-sage system for the folder-tab workspace. */
:root{color:#252B28;background:#F7F8F5;--bg:#F7F8F5;--card:#FFFFFF;--beige:#E9EBE5;--soft:#F3F4EF;--accent:#658779;--accent-hover:#527366;--text:#252B28;--muted:#77817A;--line:#E1E5DF;--active:#E5EFE9;--success:#36876A;--error:#C65D5D;--shadow:0 8px 30px rgba(37,43,40,.055)}
body{background:var(--bg);color:var(--text)}
aside{background:#F0F1EB;border-right-color:var(--line)}
.brand img,.mobile-brand img{background:transparent}.brand span,.workspace,.local-label{color:var(--muted)}
.nav{color:#59635D}.nav:hover{background:#E9EBE5}.nav.active{background:#E5EFE9;color:#29483C;border-color:#D4E3DA;box-shadow:none}.nav.active .icon{color:var(--accent)}
.sidebar-note{background:rgba(255,255,255,.48);color:var(--muted)}.sidebar-note strong{color:var(--text)}.sidebar-note>.icon{color:var(--accent)}.avatar{background:#DFE8E2;color:#45675A}
header{background:rgba(247,248,245,.92);border-bottom-color:var(--line);backdrop-filter:blur(12px)}.breadcrumbs b{color:#B7C0BA}.breadcrumbs #breadcrumb{color:#4B5750}
.badge{background:#F3F4EF;border-color:var(--line);color:#647169}.badge:before{background:#98A39C}.badge.green{background:#E5EFE9;border-color:#D2E5DA;color:var(--success)}
.eyebrow{color:#70867C}button{border-color:var(--line);color:var(--text);box-shadow:none}button:hover{background:#F3F4EF;border-color:#C8D2CC}button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:rgba(101,135,121,.35)}
.primary{background:var(--accent);border-color:var(--accent);box-shadow:0 5px 14px rgba(82,115,102,.16)}.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}

/* Each item reads as a folder tab; the selected one opens into the surface below. */
.tabs{display:flex;align-items:flex-end;gap:7px;background:transparent;padding:7px 0 0;margin:0 324px -1px 0;border-radius:0;position:relative;z-index:3;overflow:visible}
.tab{position:relative;isolation:isolate;flex:1;min-height:54px;padding:13px 18px 12px;background:#E9EBE5;color:#667069;border:1px solid #DDE2DD;border-bottom-color:#D5DAD5;border-radius:13px 13px 0 0;box-shadow:0 -2px 10px rgba(37,43,40,.025);overflow:visible}
.tab::before{content:"";position:absolute;z-index:-1;top:-6px;left:13px;width:38px;height:8px;background:inherit;border:1px solid #DDE2DD;border-bottom:0;border-radius:7px 7px 0 0}
.tab:hover{background:#F0F2ED;border:1px solid #D4DBD6;border-bottom-color:#D4DBD6;color:#3F4B45}.tab[aria-selected=true]{z-index:4;background:#FFFFFF;color:#36594B;border:1px solid var(--line);border-bottom-color:#FFFFFF;box-shadow:0 -6px 20px rgba(37,43,40,.055)}.tab[aria-selected=true]::before{border-color:var(--line);background:#FFFFFF}
.tab-number{display:none}.tab-marker{width:6px;height:6px;background:#A5AEA8;border-radius:2px;margin-left:3px}.tab-marker.complete{width:auto;height:auto;min-width:0;background:transparent;color:var(--success);font-size:13px;border-radius:0}.tab[aria-selected=true] .tab-marker:not(.complete){background:var(--accent)}

.layout{gap:24px}.builder-form{background:#FFFFFF;border:1px solid var(--line);border-radius:0 16px 16px 16px;box-shadow:var(--shadow);overflow:hidden}.tab-panel{padding:10px 30px 2px;background:#FFFFFF;animation:appear .18s ease-out}
.tab-panel>.card{border:0;border-radius:0;box-shadow:none;margin:0;padding:27px 0 29px;background:transparent}.tab-panel>.card+.card{border-top:1px solid var(--line)}.tab-panel .card-head{margin-bottom:21px}.tab-panel .card-head h2{font-size:16px;color:#303934}.step-number{display:none}.card-description{color:var(--muted)}
.tab-footer{margin:0;padding:22px 30px 25px;background:#FFFFFF;border-top:1px solid var(--line)}
label{color:#535F58;font-size:12.5px;font-weight:600}input,select,textarea{background:#F9FAF7;border-color:#DDE2DD;color:var(--text)}input::placeholder,textarea::placeholder{color:#A7B0AA}input:hover,select:hover,textarea:hover{border-color:#BFCBC4}input:focus,select:focus,textarea:focus{border-color:var(--accent);background:#FFFFFF;box-shadow:0 0 0 3px rgba(101,135,121,.13)}input[type=checkbox]{accent-color:var(--accent)}
.lookup-button{background:#E5EFE9;border-color:#D4E3DA;color:#3E6757}.lookup-button:hover{background:#DCEAE2}.field-group{border-top-color:var(--line)}.field-group>h3,.field-group>h3 .icon,summary{color:#586D63}
.recommendation{background:#F3F7F4;border-color:#DFE9E3;color:#557064}.recommendation:before{border-color:#9CB7AA}.service{background:#F9FAF7;border-color:var(--line);box-shadow:none}.service .remove{color:#89958E}.service .remove:hover{color:var(--error);background:#FAEEEE}

.summary>.card{background:#FFFFFF;border-color:var(--line);border-radius:16px;box-shadow:0 8px 28px rgba(37,43,40,.05)}.cost-heading .cost-icon{background:#E5EFE9;color:var(--accent)}.summary-row b{color:#46534C}.divider{border-top-color:var(--line)}.amount{color:#2C493E}.period-note,.summary .text-action,.summary-help{color:var(--muted)}.summary .text-action:hover{color:var(--accent-hover);background:#F3F4EF}.summary .download-action{background:#F7F8F5}.summary .outline-action{color:#53635B}.summary-status button{color:var(--accent)}
.document-row{background:#F9FAF7;border-color:var(--line)}.document-row .document-icon{border-color:#D7E4DC;background:#EAF2ED;color:var(--accent)}.pill{background:#ECEEEA;color:#6F7973}.pill.green{background:#E5EFE9;color:var(--success)}
.check-intro{background:#F3F7F4;color:#557064}.check-intro>.icon{color:var(--accent)}.checks li{background:#FAFBF9;border-color:var(--line);color:#647169}.checks li:before{border-color:#AAB6AF;color:#6D7B73}.checks li.validation-success{background:#F0F8F3;border-color:#D7E9DE;color:var(--success)}.field-invalid{border-color:#D88A8A!important;background:#FFF9F9!important}.field-error{color:var(--error)}

@media(max-width:1100px){.tabs{margin-right:0}.layout{grid-template-columns:1fr}.summary{position:static}.builder-form{border-radius:0 16px 16px 16px}}
@media(max-width:760px){.tabs{display:flex;gap:4px;overflow-x:auto;padding:7px 0 0;margin-bottom:-1px;border-radius:0}.tab{flex:0 0 auto;min-width:max-content;min-height:49px;padding:11px 14px;flex-direction:row}.tab::before{left:11px;width:30px}.tab-label{white-space:nowrap;font-size:11px}.tab-marker{position:static}.tab-panel{padding:5px 18px 0}.tab-footer{padding:18px}.builder-form{border-radius:0 12px 12px 12px}.brand img{width:94px}.mobile-brand img{width:42px}}

.messenger-choice{border:0;padding:0;margin:2px 0 0;min-width:0}.messenger-choice legend{padding:0;font-size:12.5px;font-weight:600;color:#535F58}.messenger-choice legend span{margin-left:7px;color:var(--muted);font-size:10px;font-weight:500}.messenger-choice .hint{margin:7px 0 12px}.messenger-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.messenger-option{position:relative;display:flex;align-items:center;gap:10px;min-height:58px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#F9FAF7;cursor:pointer;transition:background .17s,border-color .17s,box-shadow .17s,color .17s}.messenger-option:hover{border-color:#BFCBC4;background:#F3F7F4}.messenger-option input{position:absolute;width:1px;height:1px;min-height:0;margin:0;opacity:0;pointer-events:none}.messenger-symbol{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0}.messenger-symbol img{display:block;width:29px;height:29px;object-fit:contain}.messenger-symbol .icon{width:25px;height:25px;color:#087F79}.messenger-check{margin-left:auto;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#DDE4DF;color:transparent;font-size:12px}.messenger-option:has(input:checked){background:#E5EFE9;border-color:#9EB8AA;color:#2F5948;box-shadow:0 0 0 2px rgba(101,135,121,.1)}.messenger-option:has(input:checked) .messenger-check{background:#658779;color:#FFFFFF}.messenger-option:has(input:focus-visible){outline:3px solid rgba(101,135,121,.28);outline-offset:2px}.field-invalid-group{padding:10px!important;border:1px solid #D88A8A!important;border-radius:12px;background:#FFF9F9}
@media(max-width:760px){.messenger-options{grid-template-columns:1fr}.messenger-option{min-height:54px}}

/* Sage + soft lavender refinement. */
:root{--bg:#F7F8F6;--sidebar:#F0F2EE;--accent:#658779;--accent-hover:#4F7163;--active:#E4EFE8;--lavender:#A18BC7;--lavender-soft:#F0EBF9;--lavender-hover:#8973B5;--text:#252B28;--muted:#758079;--line:#E1E6E1}
aside{background:var(--sidebar)}
body,button,input,select,textarea{font-size:14px}
label,.messenger-choice legend{font-size:13px}.tab{font-size:13px;font-weight:600}.page-title h1{font-size:30px}.hint,.small{font-size:12px}
.badge{background:var(--lavender-soft);border-color:transparent;color:#69558F}.badge:before{background:var(--lavender)}
.nav:hover{background:#ECE8F3}.nav.active{background:var(--active);color:#29483C}
.builder-form{box-shadow:0 13px 38px rgba(37,43,40,.065),0 2px 7px rgba(37,43,40,.025)}

.tab{transition:background .18s,border-color .18s,color .18s,transform .18s,box-shadow .18s}
.tab-0{background:#E7F0EA}.tab-1{background:#F0EBF9}.tab-2{background:#EDF1F3}.tab-3{background:#E9EFEB}
.tab:hover{transform:translateY(-2px);background:#F7F7F5}.tab[aria-selected=true]{background:#FFFFFF;transform:none}
.tab[aria-selected=true]::after{content:"";position:absolute;left:14px;right:14px;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--accent)}
.tab-1[aria-selected=true]::after,.tab-3[aria-selected=true]::after{background:var(--lavender)}
.tab-icon{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:rgba(101,135,121,.13);color:#58786B;flex-shrink:0}.tab-icon .icon{width:16px;height:16px}
.tab-1 .tab-icon{background:#E5DCF5;color:#8065AD}.tab-2 .tab-icon{background:#E1E9EC;color:#607985}.tab-3 .tab-icon{background:#E1EAE4;color:#5D7C6E}
.tab[aria-selected=true] .tab-icon{background:#E4EFE8;color:var(--accent)}.tab-1[aria-selected=true] .tab-icon,.tab-3[aria-selected=true] .tab-icon{background:var(--lavender-soft);color:var(--lavender-hover)}

.section-icon{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:#E4EFE8;color:#58796B;flex-shrink:0}.section-icon .icon{width:18px;height:18px}.section-lavender .section-icon{background:var(--lavender-soft);color:#8065AD}
.tab-panel>.card{padding:23px 0 25px}.tab-panel .card-head{margin-bottom:18px}.tab-panel .card-head h2{gap:11px;font-size:16px}.grid{gap:18px}.field-group{padding-top:20px;margin-top:21px}
details>summary .icon{width:17px;height:17px;color:var(--accent)}

.cost-heading .cost-icon{background:var(--lavender-soft);color:#8065AD}.summary>.card{box-shadow:0 10px 30px rgba(37,43,40,.055)}
.readiness-head{display:flex;align-items:center;gap:14px}.readiness-head h3{margin-bottom:5px}.progress-ring{--progress:0%;position:relative;display:grid;place-items:center;width:66px;height:66px;border-radius:50%;flex-shrink:0;background:conic-gradient(var(--accent) var(--progress),#E7EBE8 0)}.progress-ring:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#FFFFFF}.progress-ring span{position:relative;z-index:1;font-size:13px;font-weight:600;color:#3E5D50}.summary-status #readinessText{font-size:11px;line-height:1.55;color:var(--muted)}.summary-status>button{margin-top:15px}
.saving-indicator.saved{background:#EAF4EE;padding:5px 8px;border-radius:7px;color:#2F785D}

@media(max-width:760px){.page-title h1{font-size:28px}.tabs{display:grid;grid-template-columns:1fr 1.35fr 1fr 1fr;overflow:visible}.tab{min-width:0;padding:10px 4px;font-size:10px;gap:4px;justify-content:center}.tab-icon{width:22px;height:22px}.tab-icon .icon{width:14px;height:14px}.tab-label{white-space:normal;line-height:1.2}.tab-panel>.card{padding:21px 0 23px}.section-icon{width:31px;height:31px}.readiness-head{align-items:flex-start}}

/* Final scale and composition pass for daily desktop use. */
:root{--sidebar-width:232px}
main{max-width:1600px;padding:30px 32px 42px}
header{padding:0 32px}
.page-title{margin-bottom:30px}.page-title h1{font-size:32px;line-height:1.18}.page-title p{font-size:14px;line-height:1.6}.page-title>button{font-size:14px;min-height:44px;padding:10px 15px}
.nav{font-size:14px;min-height:49px}.brand span{font-size:13px}.sidebar-note p,.sidebar-note strong,#identity{font-size:13px}.local-label{font-size:11px}
.tabs{margin-right:344px;gap:0;padding-top:9px}.tab{font-size:14px;min-height:61px;padding:15px 18px 13px;margin-right:-5px;box-shadow:0 -3px 12px rgba(37,43,40,.035)}.tab:last-child{margin-right:0}.tab:hover{z-index:2}.tab[aria-selected=true]{z-index:5;box-shadow:0 -8px 24px rgba(37,43,40,.075)}.tab::before{top:-7px;height:9px;width:44px}.tab-icon{width:30px;height:30px}.tab-icon .icon{width:17px;height:17px}
.layout{grid-template-columns:minmax(620px,1fr) 320px;gap:24px}.builder-form{box-shadow:0 16px 44px rgba(37,43,40,.07),0 2px 8px rgba(37,43,40,.025)}.tab-panel{padding:12px 32px 3px}.tab-panel>.card{padding:26px 0 29px}.tab-panel .card-head{margin-bottom:21px}.tab-panel .card-head h2{font-size:17px}.section-blue .section-icon{background:#EAF0F5;color:#607B8A}.section-icon{width:34px;height:34px}
.grid{gap:20px 18px}label,.messenger-choice legend{font-size:13px;line-height:1.45}input,select,textarea{min-height:46px;font-size:14px;padding:11px 13px}.hint,.small{font-size:13px;line-height:1.7}button{font-size:14px}.tab-footer{padding:23px 32px 27px}
.summary{top:18px;max-height:calc(100vh - 36px);overflow:auto;scrollbar-width:thin;padding-right:2px}.summary>.card{padding:24px 23px;border-radius:18px}.summary h2{font-size:18px}.summary-row{font-size:13px}.summary-row b{font-size:14px}.amount{font-size:32px}.summary button{font-size:14px;min-height:44px}.summary .primary{min-height:48px;font-size:14px}.summary-status #readinessText{font-size:12px}
.saving-indicator{font-size:12px}.badge{font-size:12px;padding:7px 11px}

@media(min-width:1700px){main{padding-left:38px;padding-right:38px}.layout{grid-template-columns:minmax(720px,1fr) 326px;gap:24px}.tabs{margin-right:350px}}
@media(max-width:1199px){:root{--sidebar-width:220px}main{padding:28px 24px}.tabs{margin-right:294px}.layout{grid-template-columns:minmax(0,1fr) 270px;gap:18px}.tab{font-size:12px;padding-left:10px;padding-right:10px}.tab-icon{width:27px;height:27px}.summary>.card{padding:21px}}
@media(max-width:1100px){.tabs{margin-right:0}.layout{grid-template-columns:1fr}.summary{position:static;display:grid;grid-template-columns:1fr 1fr;max-height:none;overflow:visible}.summary-help{grid-column:1/-1}}
@media(max-width:760px){main{padding:24px 16px 30px}.page-title{margin-bottom:26px}.page-title h1{font-size:28px}.tabs{display:grid;grid-template-columns:1fr 1.35fr 1fr 1fr;overflow:visible}.tab{min-width:0;min-height:55px;margin-right:-3px;padding:10px 3px;font-size:10px;gap:4px;justify-content:center}.tab::before{width:29px;height:7px;top:-5px}.tab-icon{width:22px;height:22px}.tab-icon .icon{width:14px;height:14px}.tab-label{white-space:normal;line-height:1.2}.tab-panel{padding:6px 18px 0}.tab-panel>.card{padding:22px 0 25px}.tab-panel .card-head h2{font-size:16px}.section-icon{width:31px;height:31px}.summary{display:grid;grid-template-columns:1fr}.readiness-head{align-items:flex-start}.tab-footer{padding:19px 18px 21px}input,select,textarea{font-size:16px}}

/* Reference-matched desktop composition: restrained paper workspace with warm line icons. */
:root{--sidebar-width:232px;--bg:#F8F8F5;--sidebar:#F1F3EF;--card:#FFFFFF;--accent:#5F8879;--accent-hover:#4F7567;--warm:#C96D26;--warm-soft:#FFF4E9;--text:#161A18;--muted:#69736D;--line:#DFE4E0;--shadow:0 8px 26px rgba(44,55,49,.055)}
body{background:var(--bg)}
aside{padding:20px 14px 22px;background:linear-gradient(180deg,#F1F3EF 0%,#F5F5F1 100%)}
.brand-row{padding:0 8px 18px 16px;align-items:center}.brand img{width:80px}.brand span,.workspace{display:none}.brand-row .icon-button{margin:0 0 0 auto;font-size:17px;color:#35423C}
aside nav{margin-top:4px}.nav{min-height:44px;margin:3px 0;padding:11px 14px;font-size:13px;color:#26302B;border-radius:10px}.nav .icon{width:18px;height:18px}.nav.active{background:#DCEAE4;border-color:transparent;color:#183D31}.nav:hover{background:#E8EDE9}.sidebar-note{margin:28px 8px 12px;padding:18px;border-radius:14px;background:rgba(255,255,255,.74);color:#4E5953}.sidebar-note strong{font-size:13px}.sidebar-note p{font-size:11px;line-height:1.55;color:#505A55}.sidebar-note>.icon{color:#34483F}.aside-bottom .nav{font-size:12px}.profile{margin-top:10px}.avatar{width:34px;height:34px}
.shell{min-height:100vh}.shell>header{height:49px;padding:0 42px;border:0;background:transparent}.breadcrumbs{font-size:10px}.breadcrumbs #breadcrumb{font-weight:600;color:#2D3531}.saving-indicator{display:none}.header-right{gap:11px}.badge{padding:7px 14px;border:0;border-radius:20px;background:#FFF1E0;color:#8A5A31;font-size:11px}.badge:before{background:#C68B48}.more-button{min-width:38px;min-height:38px;padding:0;border:0;border-radius:50%;background:#F0F2EF;letter-spacing:2px;color:#36413B}
main{position:relative;width:auto;max-width:none;margin:0;padding:4px 32px 28px 34px}.page-title{position:relative;min-height:104px;margin:0 0 0;align-items:flex-start;isolation:isolate}.page-title>div{position:relative;z-index:2}.page-title .eyebrow{margin:4px 0 9px;font-size:9px;letter-spacing:2.5px;color:#596861}.page-title h1{font-size:30px;line-height:1.1;letter-spacing:-.8px}.page-title p{margin-top:7px;font-size:13px}.page-title>button{position:relative;z-index:2;margin-top:28px;min-width:161px;background:#FFF;border-color:#D9E0DC;font-size:13px}.page-title>button:hover{background:#F4F8F5}.page-title:before{content:"";position:absolute;z-index:-1;left:32%;right:15%;top:-30px;height:142px;background:radial-gradient(circle at 18% 45%,#EBEFEB 0 22px,transparent 23px),radial-gradient(ellipse at 42% 49%,#E7ECE8 0 73px,transparent 74px),radial-gradient(ellipse at 72% 82%,#F9E9D6 0 62px,transparent 63px);opacity:.78}.page-title:after{content:"✓";position:absolute;z-index:1;left:63%;top:22px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#648C7D;color:#FFF;font-size:24px;box-shadow:0 7px 16px rgba(76,111,97,.16)}
.hero-illustration{position:absolute;z-index:0;left:48%;top:-24px;width:230px;height:132px;transform:translateX(-50%);pointer-events:none;opacity:.88}.hero-folder{position:absolute;display:block;width:104px;height:92px;border-radius:11px 11px 15px 15px;transform:rotate(-14deg);box-shadow:0 8px 18px rgba(69,96,85,.08)}.hero-folder:before{content:"";position:absolute;left:10px;top:-12px;width:45px;height:20px;border-radius:8px 8px 0 0;background:inherit}.hero-folder:after{content:"";position:absolute;inset:18px 18px auto;height:8px;border-top:7px solid rgba(255,255,255,.34);border-bottom:7px solid rgba(255,255,255,.27)}.hero-folder-back{left:25px;top:24px;background:#B9CEC5}.hero-folder-front{left:73px;top:12px;background:#91B1A5;transform:rotate(-11deg)}.hero-paper{position:absolute;display:block;left:114px;top:18px;width:78px;height:105px;padding:31px 15px 12px;border-radius:5px;background:#FFF;transform:rotate(-12deg);box-shadow:0 8px 20px rgba(46,62,55,.11)}.hero-paper:before{content:"";position:absolute;left:15px;top:15px;width:28px;height:7px;border-radius:4px;background:#E5E8E5}.hero-paper b{display:block;height:5px;margin:0 0 8px;border-radius:3px;background:#D7DCD8}.hero-paper b:nth-child(2){width:86%}.hero-paper b:nth-child(3){width:72%}.hero-paper b:nth-child(4){width:91%}
.layout{grid-template-columns:minmax(640px,1fr) 344px;gap:16px}.tabs{margin-right:360px;padding-top:0;gap:5px}.tab{min-height:47px;margin:0;padding:11px 17px;background:#ECEDEA;border-color:#DFE2DE;border-radius:15px 15px 0 0;box-shadow:none;color:#4D5651;font-size:12px}.tab::before{display:none}.tab:hover{transform:none;background:#E7EAE6}.tab[aria-selected=true]{background:#FFF;color:#1F2723;border-color:#DDE2DE;border-bottom-color:#FFF;box-shadow:none}.tab[aria-selected=true]::after{display:none}.tab-icon,.tab-1 .tab-icon,.tab-2 .tab-icon,.tab-3 .tab-icon,.tab[aria-selected=true] .tab-icon,.tab-1[aria-selected=true] .tab-icon,.tab-3[aria-selected=true] .tab-icon{width:27px;height:27px;background:transparent;color:var(--warm)}.tab-icon .icon{width:20px;height:20px}.tab-marker{border-radius:50%;background:#AAB2AD}.tab[aria-selected=true] .tab-marker:not(.complete){background:#4D806D}
.builder-form{border-color:#DFE4E0;border-radius:0 15px 15px 15px;box-shadow:0 7px 24px rgba(45,55,49,.05)}.tab-panel{padding:4px 30px 0}.tab-panel>.card{padding:20px 0 22px}.tab-panel>.card+.card{border-top-color:#E5E8E5}.tab-panel .card-head{margin-bottom:14px}.tab-panel .card-head h2{font-size:16px;color:#171C19}.section-icon,.section-lavender .section-icon,.section-blue .section-icon{width:31px;height:31px;border-radius:9px;background:var(--warm-soft);color:#D06D1E}.section-icon .icon{width:18px;height:18px}.grid{gap:13px 14px}.field-group{padding-top:15px;margin-top:16px}label,.messenger-choice legend{font-size:11px;color:#626C66}input,select,textarea{min-height:36px;margin-top:5px;padding:7px 11px;border-radius:7px;background:#FBFCFA;font-size:13px}.inline button{min-height:36px;padding:7px 17px}.lookup-button{background:#E5EFEA;border-color:#D6E3DC;color:#294C3F}.hint,.small{font-size:11px;line-height:1.55}.tab-footer{padding:12px 30px 13px}.tab-footer button{min-height:39px}
.summary{top:12px;max-height:calc(100vh - 24px);padding-right:0}.summary>.card{padding:17px 21px;border-radius:15px;margin-bottom:13px;box-shadow:0 6px 22px rgba(45,55,49,.045)}.cost-heading{margin-bottom:12px}.cost-heading .cost-icon{width:34px;height:34px;background:var(--warm-soft);color:var(--warm)}.summary h2{font-size:16px}.summary-row{margin:13px 0;font-size:11px}.summary-row b{font-size:12px;color:#151A17}.divider{margin:16px 0}.amount{margin:4px 0;font-size:29px;color:#111512}.period-note{margin:6px 0 15px;font-size:10px}.summary button{min-height:39px;margin-top:8px;font-size:12px}.summary .primary{min-height:41px}.summary-status{color:#4D5852}.readiness-head{gap:13px}.progress-ring{width:64px;height:64px}.summary-status h3{color:#9A541E}.summary-status>button{font-size:11px}.summary-help{padding:12px 18px;border-radius:12px;background:#F0F4F1;color:#6B756F}.messenger-option{min-height:48px;padding:7px 10px}.messenger-symbol{width:29px;height:29px}.messenger-symbol img{width:25px;height:25px}
footer{display:none}
@media(min-width:1500px){main{padding-left:34px;padding-right:32px}.layout{grid-template-columns:minmax(760px,1fr) 344px;gap:16px}.tabs{margin-right:360px}}
@media(min-width:1101px) and (max-width:1350px){main{padding-left:28px;padding-right:24px}.layout{grid-template-columns:minmax(0,1fr) 270px;gap:16px}.tabs{margin-right:286px}.tab{padding-left:10px;padding-right:10px;font-size:11px}.summary>.card{padding-left:18px;padding-right:18px}.page-title:after{left:61%}}
@media(max-width:1100px){.page-title:before,.page-title:after,.hero-illustration{display:none}.tabs{margin-right:0}.layout{grid-template-columns:1fr}.summary{position:static}.builder-form{border-radius:0 15px 15px 15px}}
@media(max-width:760px){.shell>header{padding:0 16px}.more-button{display:none}main{padding:18px 16px 30px}.page-title{min-height:auto;margin-bottom:24px}.page-title>button{margin-top:0}.tabs{gap:3px}.tab{min-height:54px;padding:9px 3px}.tab-icon{width:22px}.tab-panel{padding:5px 18px 0}.tab-panel>.card{padding:20px 0 22px}input,select,textarea{min-height:44px;font-size:16px}.summary{display:grid;grid-template-columns:1fr}}

/* Denser form canvas with more legible controls. */
.tab-panel{padding-left:21px;padding-right:21px}.tab-panel>.card{padding-top:15px;padding-bottom:17px}.tab-panel .card-head{margin-bottom:11px}.tab-panel .card-head h2{font-size:17px}.grid{gap:10px 12px}.field-group{padding-top:12px;margin-top:13px}.tab-footer{padding-left:21px;padding-right:21px}
label,.messenger-choice legend{font-size:12.5px;line-height:1.4}input,select,textarea{min-height:39px;font-size:14px}.hint,.small{font-size:12px}.messenger-choice .hint{margin:4px 0 8px}.messenger-options{gap:8px}.messenger-option{min-height:44px}.optional-section .card-head{align-items:center}.optional-badge{margin-left:auto;padding:4px 8px;border-radius:999px;background:#F1F3F0;color:#77817B;font-size:10px;font-weight:600;white-space:nowrap}
.required-mark{color:#C56525;font-weight:600}
.option-row{display:flex;flex-wrap:wrap;gap:4px 22px;margin-top:12px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:14px}.choice-check{min-height:42px;margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#FAFBF9;align-items:center}.choice-check:has(input:checked){border-color:#9DB7AB;background:#E9F1ED;color:#315849}.grant-card[hidden]{display:none}.categories-card>.grid{grid-template-columns:minmax(260px,1fr) 1fr}.profile-card .card-description,.categories-card .card-description,.grant-card .card-description{margin-bottom:15px}
@media(max-width:760px){.choice-grid{grid-template-columns:1fr}.option-row{display:block}.categories-card>.grid{grid-template-columns:1fr}}
.spec-matrix{overflow:hidden;border:1px solid var(--line);border-radius:11px}.spec-header,.spec-row{display:grid;grid-template-columns:minmax(270px,1.55fr) 90px minmax(170px,1fr) minmax(170px,1fr);align-items:center;gap:10px;padding:9px 12px}.spec-header{background:#F0F3F0;color:#59645E;font-size:11px;font-weight:600}.spec-header span:nth-child(2){text-align:center}.spec-row{min-height:55px;border-top:1px solid #E7EAE7;background:#FFF}.spec-row:nth-child(odd){background:#FBFCFA}.spec-service{display:flex;align-items:center;gap:10px;margin:0;color:#26302B;font-size:13px;font-weight:500}.spec-service input{width:19px;height:19px;min-height:19px;margin:0;accent-color:var(--accent)}.spec-row>input{min-height:36px;margin:0}.spec-row>input:disabled{background:#F2F4F1;color:#9AA39D;cursor:not-allowed}.additional-services{margin-top:22px;padding-top:19px;border-top:1px solid var(--line)}.additional-services h3{font-size:15px;margin-bottom:4px}.compact-empty{padding:19px;margin-top:12px}.specification-card .toolbar{margin:12px 0}.specification-card details{margin-top:12px}
@media(max-width:900px){.spec-matrix{border:0;overflow:visible}.spec-header{display:none}.spec-row{grid-template-columns:1fr 1fr;gap:9px;padding:13px;margin-bottom:9px;border:1px solid var(--line);border-radius:10px}.spec-service{grid-column:1/-1}.spec-row>input{min-width:0}}
.spec-row.is-required{background:#F2F8F5;border-color:#D8E8E0}.spec-row.is-required .spec-service{color:#244F3E}.spec-row.is-required input[type=checkbox]{opacity:1;cursor:not-allowed}.spec-service>span{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.spec-required-note{display:inline-flex;padding:3px 7px;border-radius:999px;background:#DDEEE6;color:#39715B;font-size:10px;font-weight:600;line-height:1.2}.spec-required-note[hidden]{display:none}
/* Readable contract section navigation in the right rail. */
.contract-section-nav{display:grid;gap:8px;margin:0 0 14px;padding:10px;background:#fff;border:1px solid #E1E6E2;border-radius:15px;box-shadow:0 6px 22px rgba(45,55,49,.045)}
.contract-section-nav-row{min-width:0}
.contract-section-link{display:grid;grid-template-columns:32px minmax(0,1fr) 24px;align-items:center;column-gap:11px;width:100%;min-height:64px;margin:0;padding:10px 9px;text-align:left;border:1px solid transparent;border-radius:11px;background:transparent;color:#25302A}
.contract-section-link:hover{background:#F4F7F5;border-color:#E1E8E4}
.contract-section-link.is-active{background:#EAF3EF;border-color:#D5E7DF}
.section-link-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#F2F4F2;color:#60716A}
.contract-section-link.is-active .section-link-icon{background:#DCECE5;color:#38705A}
.section-link-icon .icon{width:19px;height:19px}
.section-link-copy{display:block;min-width:0}
.section-link-copy b{display:block;margin:0;font-size:13px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.section-link-copy small{display:block;margin-top:4px;color:#77827C;font-size:11px;font-weight:400;line-height:1.45;overflow-wrap:anywhere}
.section-link-state{display:grid;place-items:center;justify-self:end;width:22px;height:22px;border-radius:50%;color:#fff;font-size:12px;font-weight:600}
.contract-section-link.is-complete .section-link-state{background:#37916F}
.contract-section-link.has-error .section-link-state{background:#C66A45}
.summary{max-height:none;overflow:visible}
@media(min-width:1351px){.layout{grid-template-columns:minmax(640px,1fr) 380px}.tabs{margin-right:396px}}
@media(min-width:1101px) and (max-width:1350px){.contract-section-link{grid-template-columns:28px minmax(0,1fr) 22px;column-gap:8px;padding:9px 7px}.section-link-icon{width:28px;height:28px}.section-link-copy b{font-size:12px}.section-link-copy small{font-size:10.5px}}
@media(max-width:1100px){.contract-section-nav{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.contract-section-link{min-height:70px}}
@media(max-width:640px){.contract-section-nav{grid-template-columns:1fr}.contract-section-link{min-height:64px}}
@media(max-width:760px){
 .form-section>.card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px 12px}
 .form-section>.card-head h2{grid-column:1;grid-row:1;min-width:0;line-height:1.3}
 .form-section>.card-head .section-toggle{grid-column:2;grid-row:1;margin:0;align-self:center}
 .form-section>.card-head .section-summary{grid-column:1/-1;grid-row:2;display:block;margin:2px 0 0 43px;font-size:12px;line-height:1.5;color:#6F7A74}
 .form-section>.card-head .section-state{grid-column:1/-1;grid-row:3;justify-self:start;margin:2px 0 0 43px;white-space:nowrap}
}

/* Compact application sidebar shared by all contract views. */
:root{--sidebar-width:224px}
aside{width:var(--sidebar-width);padding:16px 12px 12px;background:#F7F8F7;border-right:1px solid #E3E8E5;box-shadow:none;transition:width .16s ease,transform .16s ease}
.brand-row{min-height:52px;padding:0 4px 10px;align-items:center;border:0}
.brand{display:flex;align-items:center;min-width:0;text-decoration:none}
.brand img{width:68px;max-height:42px;object-fit:contain;object-position:left center;background:transparent}
.brand span{display:none}
.brand-row .icon-button{width:30px;height:30px;min-width:30px;min-height:30px;margin:0 0 0 auto;padding:0;border:0;border-radius:7px;background:transparent;color:#67736D;font-size:17px;line-height:1}
.brand-row .icon-button:hover{background:#ECEFED;color:#25332D}
.brand-row .icon-button:focus-visible,.nav:focus-visible{outline:2px solid #087F79;outline-offset:2px}
.workspace{margin:12px 8px 7px;color:#8A948F;font-size:10px;font-weight:600;letter-spacing:1.15px}
aside nav{display:grid;gap:3px;margin:0}
.nav{display:flex;align-items:center;gap:11px;width:100%;min-height:40px;margin:0;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:#46524C;font-size:14px;font-weight:500;line-height:1.35;text-align:left;text-decoration:none;box-shadow:none}
.nav .icon{width:18px;height:18px;min-width:18px;color:#68756F;stroke-width:1.75}
.nav:hover{border:0;background:#ECEFED;color:#26342E;text-decoration:none;transform:none}
.nav.active{border:0;background:#E6F4F1;color:#087F79;box-shadow:none}
.nav.active .icon{color:#087F79}
.nav-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.aside-bottom{display:grid;gap:3px;margin-top:auto;padding:10px 0 0;border-top:1px solid #E3E8E5}
.aside-bottom .nav{font-size:14px}
.profile{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;min-height:48px;margin:3px 0;padding:6px 9px;border:0;border-radius:8px;background:transparent}
.avatar{width:32px;height:32px;background:#E7EFEB;color:#376454;font-size:12px}
#identity{overflow:hidden;color:#52605A;font-size:12px;line-height:1.45}
#logout{font-weight:500}

.sidebar-collapsed{--sidebar-width:64px}
.sidebar-collapsed aside{padding:14px 8px 10px}
.sidebar-collapsed .brand-row{min-height:auto;padding:0 0 12px;flex-direction:column;align-items:center}
.sidebar-collapsed .brand{flex:none;justify-content:center;width:100%}
.sidebar-collapsed .brand img{width:36px;max-height:32px;object-position:center}
.sidebar-collapsed .brand-row .icon-button{margin:7px 0 0;transform:rotate(180deg)}
.sidebar-collapsed .workspace,.sidebar-collapsed .nav-label,.sidebar-collapsed #identity{display:none}
.sidebar-collapsed aside nav{margin:0}
.sidebar-collapsed .nav{justify-content:center;gap:0;padding:9px;overflow:visible}
.sidebar-collapsed .profile{display:flex;justify-content:center;min-height:42px;margin:3px 0;padding:5px}
.sidebar-collapsed .aside-bottom{padding-top:9px}

@media(max-width:760px){
 :root,.sidebar-collapsed{--sidebar-width:0px}
 aside,.sidebar-collapsed aside{width:256px;padding:16px 12px 12px;transform:translateX(-100%);box-shadow:10px 0 36px rgba(30,45,38,.12)}
 .menu-open aside{transform:translateX(0)}
 .sidebar-collapsed .brand-row{min-height:52px;padding:0 4px 10px;flex-direction:row;align-items:center}
 .sidebar-collapsed .brand{justify-content:flex-start;width:auto;flex:1}
 .sidebar-collapsed .brand img{width:68px;max-height:42px;object-position:left center}
 .sidebar-collapsed .brand-row .icon-button{margin:0 0 0 auto;transform:none}
 .sidebar-collapsed .workspace{display:block}.sidebar-collapsed .nav-label,.sidebar-collapsed #identity{display:block}
 .sidebar-collapsed aside nav{margin:0}.sidebar-collapsed .nav{justify-content:flex-start;gap:11px;padding:9px 10px}
 .sidebar-collapsed .profile{display:grid;grid-template-columns:32px minmax(0,1fr);justify-content:initial;min-height:48px;padding:6px 9px}
}

/* Messenger choices stay open and readable without a selected-card frame. */
#panel-0 .messenger-options{gap:9px 26px}
#panel-0 .messenger-option{gap:9px;min-height:38px;padding:5px 0;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:15px;font-weight:500;outline:0!important}
#panel-0 .messenger-option:has(input:checked){border:0!important;background:transparent!important;box-shadow:none!important;color:#087F79;font-weight:600;outline:0!important}
#panel-0 .messenger-option:has(input:focus-visible){outline:0!important;outline-offset:0}
#panel-0 .messenger-option input{width:20px;height:20px;min-height:20px;box-shadow:none}
#panel-0 .messenger-option input:focus-visible{outline:2px solid rgba(8,127,121,.42);outline-offset:2px}
#panel-0 .messenger-symbol{width:31px;height:31px}
#panel-0 .messenger-symbol img{width:28px;height:28px}
#panel-0 .messenger-symbol .icon{width:25px;height:25px}
/* Administrator workspace */
.admin-page{width:min(100%,1380px);margin:0 auto;color:#27312C}
.admin-page [hidden]{display:none!important}
.admin-workspace-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 24px;align-items:start;margin:4px 0 20px}
.admin-workspace-header h1{grid-column:1;grid-row:1;margin:0;font-size:30px}
.admin-workspace-header>p{grid-column:1;grid-row:2;margin:0;font-size:13px}
.admin-workspace-header .settings-close{grid-column:2;grid-row:1/3;float:none;align-self:center;white-space:nowrap}
.admin-tabs{display:flex;gap:6px;margin:0 0 18px;padding:5px;background:#EEF1EE;border:1px solid #E0E5E1;border-radius:13px;overflow-x:auto}
.admin-tabs a{flex:1 0 auto;display:flex;align-items:center;justify-content:center;gap:7px;min-height:43px;padding:9px 13px;border-radius:9px;color:#59655F;font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}
.admin-tabs a:hover{background:#F7F9F7;color:#25302A}
.admin-tabs a.is-active{background:#FFF;color:#285B47;box-shadow:0 2px 9px rgba(42,65,54,.09)}
.admin-tabs a[aria-disabled=true]{opacity:.55}
.admin-block{margin:0 0 18px;padding:24px 26px;background:#FFF;border:1px solid #E1E6E2;border-radius:16px;box-shadow:0 6px 24px rgba(45,55,49,.045)}
.admin-block>h2{margin:0 0 6px;font-size:20px}.admin-block>.hint{margin:0 0 20px}
.invite-builder{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px 22px;align-items:start;padding:20px;background:#F7F9F7;border:1px solid #E4E9E5;border-radius:13px}
.invite-builder>label{grid-column:1}.invite-builder>fieldset{grid-column:2;grid-row:1/4}.invite-builder>#createInvite{grid-column:1;align-self:end}.invite-builder>#inviteResult{grid-column:1/-1}
.admin-block fieldset{min-width:0;margin:0;padding:15px 17px 12px;border:1px solid #DDE4DF;border-radius:11px}.admin-block legend{padding:0 6px;color:#435049;font-size:12px;font-weight:600}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px}.permission-grid .check{min-height:32px;margin:0;padding:6px 7px;border-radius:7px}.permission-grid .check:hover{background:#F1F5F2}
.invite-history,.inactive-employees,.audit-details{margin:16px 0 0;border:1px solid #E1E6E2;border-radius:12px;background:#FBFCFB;overflow:hidden}
.invite-history>summary,.inactive-employees>summary,.audit-details>summary,.employee-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;color:#29342E;list-style:none}
.invite-history>summary:before,.inactive-employees>summary:before,.audit-details>summary:before,.employee-editor>summary:before{content:none}
.invite-history>summary span,.inactive-employees>summary span,.audit-details>summary span,.employee-editor>summary>span:first-child{display:grid;gap:3px}
.invite-history summary small,.inactive-employees summary small,.audit-details summary small,.employee-editor summary small{color:#7A857F;font-size:11px;font-weight:400}
.invite-history>summary:after,.inactive-employees>summary:after,.audit-details>summary:after,.employee-editor>summary:after{content:'›';margin-left:auto;color:#718078;font-size:20px;transition:transform .15s}
.invite-history[open]>summary:after,.inactive-employees[open]>summary:after,.audit-details[open]>summary:after,.employee-editor[open]>summary:after{transform:rotate(90deg)}
.invite-list,.audit-list{padding:0 16px 14px}.invite-row,.audit-list>div{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #E7ECE8}.invite-row span{display:grid;gap:3px}.invite-row small{color:#77827C}
.employees-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:28px 0 10px;padding-top:22px;border-top:1px solid #E5EAE6}.employees-heading h3{margin:0;font-size:17px}.employees-heading p{margin:0;font-size:12px}
.employee-editor{margin:8px 0;border:1px solid #E1E6E2;border-radius:12px;background:#FFF;overflow:hidden}.employee-editor>summary{min-height:66px;background:#FBFCFB}.employee-editor[open]>summary{background:#F1F6F3;border-bottom:1px solid #E1E6E2}.employee-editor>.grid,.employee-editor>fieldset,.employee-editor>.employee-actions,.employee-editor>[data-password-reset-result]{margin-left:18px;margin-right:18px}.employee-editor>.grid{margin-top:18px}.employee-editor>fieldset{margin-top:18px}.employee-actions{display:flex;flex-wrap:wrap;gap:10px;padding:18px 0}.employee-actions button{margin:0}.employee-actions [data-user-dismiss]{color:#A14848;border-color:#E6C9C9;background:#FFF9F9}
.audit-block{padding:0}.audit-details{margin:0;border:0;background:#FFF}.audit-details>summary{padding:18px 24px}.audit-list{padding:0 24px 18px}.audit-list>div{grid-template-columns:180px minmax(0,1fr) 170px;font-size:12px}.audit-list time{text-align:right;color:#7A857F;font-variant-numeric:tabular-nums}
.admin-section-heading,.template-admin-heading,.pricing-discount{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.numbering-city-grid,.provider-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.numbering-city,.provider-field-group{padding:17px;border:1px solid #E2E7E3;border-radius:12px;background:#FAFBFA}.provider-columns{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px}.provider-editor,.template-section-editor{margin:10px 0;border:1px solid #E1E6E2;border-radius:12px;overflow:hidden}.provider-editor>summary,.template-section-editor>summary{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;background:#FBFCFB;list-style:none}.provider-editor>summary:before,.template-section-editor>summary:before{content:none}.provider-identity{display:grid;gap:4px}.provider-identity small{color:#7A857F;font-weight:400}.provider-actions,.template-heading-actions{display:flex;gap:8px}.icon-action,.template-save-icon,.template-delete-icon{display:grid;place-items:center;width:40px;height:40px;min-width:40px;min-height:40px;padding:0}.icon-action svg,.template-save-icon svg,.template-delete-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:900px){.admin-workspace-header{grid-template-columns:1fr}.admin-workspace-header .settings-close{grid-column:1;grid-row:3;justify-self:start}.invite-builder{grid-template-columns:1fr}.invite-builder>label,.invite-builder>fieldset,.invite-builder>#createInvite{grid-column:1;grid-row:auto}.numbering-city-grid,.provider-columns{grid-template-columns:1fr}.audit-list>div{grid-template-columns:1fr;gap:4px}.audit-list time{text-align:left}.permission-grid{grid-template-columns:1fr}.admin-block{padding:19px}.admin-tabs{justify-content:flex-start}}
/* Full-width readable right rail on desktop. */
@media(min-width:1351px){.layout{grid-template-columns:minmax(700px,1fr) 460px;gap:22px}.tabs{margin-right:482px}.contract-section-nav{padding:14px;gap:9px}.contract-section-link{grid-template-columns:40px minmax(0,1fr) 28px;min-height:78px;column-gap:13px;padding:12px 11px}.section-link-icon{width:40px;height:40px;min-width:40px;min-height:40px;border-radius:11px}.section-link-icon .icon{width:23px;height:23px;min-width:23px;min-height:23px}.section-link-copy b{font-size:14px;line-height:1.35}.section-link-copy small{font-size:12px;line-height:1.5}.section-link-state{width:26px;height:26px;min-width:26px;min-height:26px;font-size:13px}.summary>.card{padding-left:26px;padding-right:26px}}
@media(min-width:1101px) and (max-width:1350px){.layout{grid-template-columns:minmax(600px,1fr) 360px;gap:18px}.tabs{margin-right:378px}.contract-section-link{grid-template-columns:34px minmax(0,1fr) 24px;min-height:70px;column-gap:10px;padding:10px 9px}.section-link-icon{width:34px;height:34px;min-width:34px;min-height:34px}.section-link-icon .icon{width:20px;height:20px;min-width:20px;min-height:20px}.section-link-copy b{font-size:13px}.section-link-copy small{font-size:11.5px}}
.password-field{position:relative;display:block}.password-field input{padding-right:50px}.password-field [data-toggle-password]{position:absolute;right:5px;top:calc(50% + 4px);transform:translateY(-50%);display:grid;place-items:center;width:38px!important;min-width:38px;min-height:36px;height:36px;margin:0!important;padding:0;border:0;background:transparent;color:#60716A;border-radius:8px}.password-field [data-toggle-password]:hover{background:#EEF3F0}.password-field [data-toggle-password]:active{transform:translateY(-50%)}.password-field [data-toggle-password] svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.password-field [data-toggle-password] .eye-slash{display:none}.password-field [data-toggle-password].is-visible .eye-slash{display:block}
/* Larger, strictly left-aligned stage navigation. */
.summary .contract-section-link{display:grid;justify-content:stretch;justify-items:stretch;text-align:left}
.summary .contract-section-link .section-link-icon{justify-self:start;flex:none}
.summary .contract-section-link .section-link-copy{justify-self:stretch;text-align:left}
.summary .contract-section-link .section-link-state{justify-self:end;flex:none}
.section-link-copy b{font-size:15px;line-height:1.4}.section-link-copy small{margin-top:5px;font-size:14px;line-height:1.55}
@media(min-width:1351px){.layout{grid-template-columns:minmax(700px,1fr) 480px}.tabs{margin-right:502px}.summary .contract-section-link{grid-template-columns:42px minmax(0,1fr) 28px;column-gap:14px;min-height:84px;padding:13px 12px}.section-link-icon{width:42px;height:42px;min-width:42px;min-height:42px}.section-link-icon .icon{width:24px;height:24px;min-width:24px;min-height:24px}}
@media(min-width:1101px) and (max-width:1350px){.layout{grid-template-columns:minmax(580px,1fr) 380px}.tabs{margin-right:398px}.summary .contract-section-link{grid-template-columns:36px minmax(0,1fr) 26px;column-gap:11px;min-height:76px}.section-link-copy b{font-size:14px}.section-link-copy small{font-size:13px}}
.summary-row b{min-width:92px;text-align:right;font-variant-numeric:tabular-nums}.amount{font-variant-numeric:tabular-nums}
.cost-breakdown-title{margin-top:18px;color:#59655F;font-size:12px;font-weight:600}.cost-breakdown{margin:7px 0 4px;padding:4px 0;border-top:1px solid #E8ECE9;border-bottom:1px solid #E8ECE9}.cost-breakdown-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #EEF1EF}.cost-breakdown-row:last-child{border-bottom:0}.cost-breakdown-row span{display:block;min-width:0}.cost-breakdown-row b{display:block;color:#344039;font-size:12.5px;font-weight:600;line-height:1.4}.cost-breakdown-row small{display:block;margin-top:3px;color:#7B8680;font-size:11px;line-height:1.45}.cost-breakdown-row strong{color:#344039;font-size:13px;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.cost-breakdown-empty{padding:12px 0;color:#7B8680;font-size:11.5px;line-height:1.5}
.once-price-intro{margin-bottom:14px}.once-price-intro h3{margin-bottom:4px}.once-price-intro p{margin:0;font-size:12px}.once-price-groups{display:grid;gap:9px}.once-price-group{margin:0;border:1px solid #E1E6E2;border-radius:12px;overflow:hidden;background:#FFF}.once-price-group>summary{display:flex;justify-content:space-between;align-items:center;min-height:48px;padding:12px 15px;color:#344039;font-size:13px;font-weight:600;background:#F8FAF8}.once-price-group>summary:before{content:'›';margin-right:9px}.once-price-group[open]>summary:before{transform:rotate(90deg)}.once-price-group>summary small{margin-left:auto;color:#7B8680;font-size:11px;font-weight:400}.once-price-list{padding:0 14px}.once-price-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:center;padding:13px 0;border-top:1px solid #E8ECE9}.once-price-row.is-selected{margin:0 -8px;padding-left:8px;padding-right:8px;background:#F1F7F4}.once-price-choice{display:flex;align-items:flex-start;gap:10px;margin:0;color:#344039}.once-price-choice input{margin-top:2px}.once-price-choice b{display:block;font-size:13px;line-height:1.4}.once-price-choice small{display:block;margin-top:3px;color:#7B8680;font-size:11px;font-weight:400;line-height:1.4}.once-price-row>strong{font-size:12.5px;white-space:nowrap;font-variant-numeric:tabular-nums}.once-quantity{grid-column:1/-1;display:grid;grid-template-columns:minmax(170px,1fr) 120px;align-items:center;gap:12px;margin-left:27px}.once-quantity[hidden]{display:none}.once-quantity span{font-size:12px}.once-quantity input{margin:0;min-height:38px}.once-auto-quantity{grid-column:1/-1;margin-left:27px;padding:9px 12px;border-radius:8px;background:#F7FAF8;color:#435249;font-size:12px}.once-auto-quantity b{margin-left:4px;color:#17221C}.once-auto-quantity span{display:block;margin-top:2px;color:#78847D;font-size:11px}.categories-card:has(+.grant-card + .specification-card .once-price-groups){display:none}@media(max-width:640px){.once-price-row{grid-template-columns:1fr}.once-price-row>strong{margin-left:27px}.once-quantity{grid-template-columns:1fr;margin-left:27px}}

.once-addon-catalog{margin-top:22px;padding-top:20px;border-top:1px solid #E1E6E2}.once-addon-catalog>h3{margin:0 0 5px;font-size:17px}.once-addon-catalog>.hint{margin:0 0 16px}.once-addon-catalog .once-price-intro{display:none}

/* Smart Service Catalog */
.smart-service-catalog{margin-top:12px}.service-catalog-toolbar{position:sticky;top:64px;z-index:4;display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:10px;align-items:center;padding:10px 0;background:var(--surface,#fff)}.service-search{position:relative;margin:0}.service-search>span{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:20px;color:#66736c;pointer-events:none}.service-search input{width:100%;min-height:42px;padding-left:38px;background:#fff}.service-filter{display:flex;padding:3px;border:1px solid #dfe5e1;border-radius:9px;background:#f7f9f7}.service-filter button{min-height:32px;padding:5px 12px;border:0;border-radius:7px;background:transparent;color:#5b6861;font-size:12px}.service-filter button.is-active{background:#fff;color:#173f35;box-shadow:0 1px 3px #183f3320}.service-selected-count{color:#59675f;font-size:12px;white-space:nowrap}.service-search-empty{padding:28px 12px;text-align:center;color:#758078}.service-catalog-groups{display:grid;gap:22px}.service-catalog-category{min-width:0}.service-category-heading{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:7px;border-bottom:1px solid #e5e9e6}.service-category-heading h4{margin:0;color:#27372f;font-size:13px;font-weight:600}.service-category-heading span{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:20px;padding:0 6px;border-radius:10px;background:#f0f3f1;color:#758078;font-size:10px}.service-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:7px 10px}.service-catalog-card{min-width:0;border:1px solid #e3e8e5;border-radius:10px;background:#fff;transition:border-color .12s,box-shadow .12s}.service-catalog-card:hover{border-color:#cbd7d1}.service-catalog-card.is-selected{border-color:#78aa9d;box-shadow:inset 3px 0 #2e8e77}.service-card-choice{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:9px;align-items:start;margin:0;padding:11px;cursor:pointer}.service-card-choice>input{position:absolute;opacity:0;pointer-events:none}.service-checkmark{display:flex;align-items:center;justify-content:center;width:18px;height:18px;margin-top:1px;border:1px solid #bcc8c2;border-radius:5px;color:transparent;font-size:11px}.service-catalog-card.is-selected .service-checkmark{border-color:#2e8e77;background:#2e8e77;color:#fff}.service-card-copy{min-width:0}.service-card-copy b{display:block;color:#24342c;font-size:12.5px;line-height:1.3}.service-card-copy small{display:block;margin-top:3px;color:#78847d;font-size:10.5px;line-height:1.35}.service-card-choice>strong{color:#25372f;font-size:12px;white-space:nowrap}.service-parameters{display:grid;grid-template-columns:minmax(0,1fr) 104px;align-items:center;gap:10px;margin:0 10px 10px 37px;padding:9px 10px;border-top:1px solid #e6ebe8;background:#f8faf9;border-radius:7px}.service-parameters>span{font-size:11.5px}.service-parameters small{display:block;margin-top:2px;color:#7b8680;font-size:10px}.service-parameters input{min-height:34px;margin:0}.service-parameters.once-auto-quantity{display:block}.service-parameters.once-auto-quantity>small{display:block}.service-catalog-card[hidden],.service-catalog-category[hidden]{display:none!important}.once-addon-catalog .smart-service-catalog{margin-top:4px}
@media(max-width:860px){.service-catalog-toolbar{grid-template-columns:1fr auto}.service-selected-count{grid-column:1/-1}.service-card-grid{grid-template-columns:1fr}}
@media(max-width:520px){.service-catalog-toolbar{position:static;grid-template-columns:1fr}.service-filter{width:max-content}.service-selected-count{grid-column:auto}.service-card-choice{grid-template-columns:18px minmax(0,1fr)}.service-card-choice>strong{grid-column:2;margin-top:2px}.service-parameters{grid-template-columns:1fr;margin-left:38px}}

/* Service catalog list presentation */
.smart-service-catalog{width:100%;min-width:0;margin-top:14px}.once-addon-catalog{margin-top:24px;padding-top:22px;border-top:1px solid #e1e5e2}.once-addon-catalog>h3{margin:0 0 8px;font-size:21px;line-height:1.25;font-weight:600}.once-addon-catalog>.hint{margin:0 0 18px;font-size:13px;line-height:1.5}.service-catalog-toolbar{grid-template-columns:minmax(280px,1fr) auto auto;gap:12px;padding:12px 0 16px}.service-search input{min-height:44px;font-size:14px}.service-filter button{font-size:13px}.service-selected-count{font-size:13px}.service-search-empty{font-size:14px}.service-catalog-groups{display:grid;gap:26px}.service-catalog-category{margin:0;padding:0;background:transparent;border:0;border-radius:0}.service-category-heading{margin:0 0 2px;padding:0 0 10px;border-bottom:1px solid #dfe3e0}.service-category-heading h4{font-size:16px;line-height:1.35;font-weight:600}.service-category-heading span{min-width:26px;height:22px;font-size:12px}.service-card-grid{display:block;columns:2;column-gap:28px}.service-catalog-card{position:relative;display:inline-block;width:100%;min-width:0;margin:0;vertical-align:top;break-inside:avoid-column;border:0;border-top:1px solid #E8EAEE;border-radius:0;background:transparent;box-shadow:none;transition:none}.service-catalog-card:hover{border-color:#E8EAEE;background:transparent}.service-catalog-card.is-selected{border-color:#E8EAEE;background:transparent;box-shadow:none}.service-catalog-card.is-selected:before{content:'';position:absolute;z-index:1;left:0;top:12px;bottom:12px;width:2px;border-radius:2px;background:#2e8e77}.service-card-choice{grid-template-columns:20px minmax(0,1fr) auto;gap:11px;align-items:start;padding:14px 4px 14px 7px}.service-checkmark{width:20px;height:20px;margin-top:0;border-radius:5px;font-size:12px}.service-card-copy b{font-size:15px;line-height:1.35;font-weight:600}.service-catalog-card.is-selected .service-card-copy b{color:#176b58}.service-card-copy small{margin-top:4px;color:#68756e;font-size:13px;line-height:1.45}.service-card-choice>strong{padding-left:8px;color:#26372f;font-size:15px;line-height:1.35;font-weight:600}.service-parameters,.service-parameters.once-auto-quantity{display:grid;grid-template-columns:minmax(0,1fr) minmax(96px,120px);align-items:center;gap:12px;margin:0 4px 14px 38px;padding:0;border:0;border-radius:0;background:transparent}.service-parameters>span,.service-parameters.once-auto-quantity>span{font-size:14px;line-height:1.4}.service-parameters small,.service-parameters.once-auto-quantity>small{margin-top:2px;color:#68756e;font-size:12px;line-height:1.4}.service-parameters input{min-height:38px;padding:7px 10px;font-size:14px}.service-parameters.once-auto-quantity{grid-template-columns:1fr}.service-catalog-card[hidden],.service-catalog-category[hidden]{display:none!important}
@media(max-width:860px){.service-catalog-toolbar{grid-template-columns:1fr auto}.service-selected-count{grid-column:1/-1}.service-card-grid{columns:1}.service-catalog-card{display:block}.service-category-heading h4{font-size:15px}}
@media(max-width:520px){.service-catalog-toolbar{position:static;grid-template-columns:1fr}.service-filter{width:max-content}.service-selected-count{grid-column:auto}.service-card-choice{grid-template-columns:20px minmax(0,1fr);padding-left:3px}.service-card-choice>strong{grid-column:2;padding-left:0}.service-parameters,.service-parameters.once-auto-quantity{grid-template-columns:1fr;margin-left:31px}.once-addon-catalog>h3{font-size:20px}}
.core-service-catalog{width:100%;min-width:0;margin-top:14px}.core-service-catalog .service-catalog-toolbar{position:static}.core-service-row.is-required:before{content:'';position:absolute;z-index:1;left:0;top:12px;bottom:12px;width:2px;border-radius:2px;background:#2e8e77}.core-required-note{color:#39715b!important;font-size:12px!important;font-weight:600}.core-service-parameters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 4px 16px 38px}.core-service-parameters[hidden]{display:none}.core-service-parameters label{margin:0;color:#526159;font-size:13px;font-weight:600}.core-service-parameters label span{display:block;margin-bottom:6px}.core-service-parameters input{width:100%;min-height:40px;margin:0;font-size:14px}.core-service-row .service-card-choice{grid-template-columns:20px minmax(0,1fr)}
@media(max-width:520px){.core-service-parameters{grid-template-columns:1fr;margin-left:31px}}

.specification-card:has(.smart-service-catalog)>.card-head h2{font-size:21px;line-height:1.25}


.spec-header,.spec-row{grid-template-columns:minmax(320px,1.6fr) minmax(220px,1fr) minmax(220px,1fr)}.spec-header{font-size:12px}.spec-header span:nth-child(2){text-align:left}.spec-service{font-size:14px}.spec-row>input{font-size:14px}

/* Larger readable service catalog */
.specification-card:has(.smart-service-catalog)>.card-head h2{font-size:24px}.once-addon-catalog>h3{font-size:24px}.once-addon-catalog>.hint{font-size:14px}.service-search input{font-size:15px}.service-filter button,.service-selected-count{font-size:14px}.service-category-heading{padding-bottom:12px}.service-category-heading h4{font-size:18px}.service-category-heading span{font-size:13px}.service-card-choice{padding-top:16px;padding-bottom:16px}.service-card-copy b{font-size:17px;line-height:1.4}.service-card-copy small{font-size:14px;line-height:1.5}.service-card-choice>strong{font-size:16px;line-height:1.4}.service-parameters>span,.service-parameters.once-auto-quantity>span{font-size:15px}.service-parameters small,.service-parameters.once-auto-quantity>small{font-size:13px}.service-parameters input{font-size:15px}
@media(max-width:860px){.service-category-heading h4{font-size:17px}}
@media(max-width:520px){.specification-card:has(.smart-service-catalog)>.card-head h2,.once-addon-catalog>h3{font-size:22px}.service-card-copy b{font-size:16px}.service-card-copy small{font-size:14px}}

.categories-card .choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.categories-card .choice-check{font-size:14px}@media(max-width:720px){.categories-card .choice-grid{grid-template-columns:1fr}}

/* Unified contract builder surface. The service catalogs keep their own list presentation. */
.tabs{display:flex;gap:28px;margin:0 0 18px;padding:0;border-bottom:1px solid #DDE3DF;border-radius:0;background:transparent}
.tab{position:relative;flex:0 0 auto;justify-content:flex-start;min-height:48px;padding:10px 1px 12px;border-radius:0;background:transparent;color:#68746E;font-size:14px}
.tab:hover{background:transparent;color:#2D3B34}
.tab[aria-selected=true]{background:transparent;color:#235D4C;box-shadow:none}
.tab[aria-selected=true]:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:#2E8E77}
.tab-icon,.tab-number{display:none}.tab-marker{margin-left:2px}

.builder-form{border-radius:14px;border-color:#DDE4E0;box-shadow:0 6px 22px rgba(37,43,40,.045)}
#panel-1{padding:0 30px;background:#FFF}
#panel-1 .section-workspace{min-width:0}
#panel-1 .contract-section-editor>.form-section{margin:0;padding:30px 0 32px;border:0;border-bottom:1px solid #E3E8E5;border-radius:0;background:transparent;box-shadow:none}
#panel-1 .contract-section-editor>.form-section:last-child{border-bottom:0}
#panel-1 .form-section>.card-head{margin:0 0 18px}
#panel-1 .form-section>.card-head h2{font-size:20px;line-height:1.35;color:#1E2B25}
#panel-1 .form-section .section-icon{width:32px;height:32px;border-radius:9px}
#panel-1 .card-description{margin:-8px 0 20px;font-size:13px;line-height:1.55}

/* Tariff parameters: readable label/value editor instead of a field-card grid. */
#panel-1 .profile-main{display:grid;gap:0}
#panel-1 .profile-main>label{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(260px,1.3fr);align-items:center;gap:18px;min-height:62px;margin:0;padding:10px 0;border-bottom:1px solid #E8ECE9;color:#45534C;font-size:14px}
#panel-1 .profile-main>label:last-child{border-bottom:0}
#panel-1 .profile-main>label>input,#panel-1 .profile-main>label>select{grid-column:2;margin:0;font-size:14px}
#panel-1 .employee-row{display:grid;grid-template-columns:1fr;gap:0;margin:0;border-bottom:1px solid #E8ECE9}
#panel-1 .employee-row>label,#panel-1 .employee-row>div>label{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(260px,1.3fr);align-items:center;gap:18px;min-height:62px;padding:10px 0;color:#45534C;font-size:14px}
#panel-1 .employee-row label>input,#panel-1 .employee-row label>select{grid-column:2;margin:0;font-size:14px}
#panel-1 .employee-count{margin:0}

/* Category choices are rows in two independent lists. */
#panel-1 .categories-card .choice-grid{gap:0 30px;margin-top:4px}
#panel-1 .categories-card .choice-check{min-height:50px;margin:0;padding:13px 2px;border:0;border-bottom:1px solid #E8ECE9;border-radius:0;background:transparent;color:#33423A;font-size:14px;line-height:1.45}
#panel-1 .categories-card .choice-check:has(input:checked){border-color:#E8ECE9;background:transparent;color:#176B58;font-weight:600}

/* The optional terms remain part of the same flat canvas. */
#panel-1 .conditions-card>.grid{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(260px,1.3fr);gap:18px;align-items:center;margin-bottom:8px}
#panel-1 .conditions-card>.grid>label{display:contents;font-size:14px}
#panel-1 .conditions-card>.grid input{grid-column:2;margin:0;font-size:14px}
#panel-1 .conditions-card>.check{min-height:46px;margin:0;padding:12px 2px;border-top:1px solid #E8ECE9;font-size:14px}
#panel-1 .conditions-card>.hint{margin:13px 0 0;font-size:13px}
#panel-1 .past-details{padding:14px 0;border-top:1px solid #E8ECE9}

/* One right rail surface with simple section separators. */
.summary{padding:0 24px;border:1px solid #DDE4E0;border-radius:14px;background:#FFF;box-shadow:0 6px 22px rgba(37,43,40,.045)}
.summary>.contract-section-nav{margin:0;padding:18px 0;border:0;border-bottom:1px solid #E3E8E5;border-radius:0;background:transparent;box-shadow:none}
.summary>.card{margin:0;padding:24px 0;border:0;border-bottom:1px solid #E3E8E5;border-radius:0;background:transparent;box-shadow:none}
.summary>.card:last-of-type{border-bottom:0}
.summary-help{margin:0;padding:18px 0;border-top:1px solid #E3E8E5;border-radius:0;background:transparent;font-size:12px}
.summary .contract-section-link{min-height:58px;padding:9px 7px;border:0;border-radius:8px}
.summary .contract-section-link:hover{border:0}.summary .contract-section-link.is-active{border:0}
.summary h2{font-size:20px}.summary-row{font-size:13px}.summary-row b{font-size:14px}.cost-breakdown-title{font-size:13px}.amount{font-size:34px}

@media(min-width:1351px){.layout{grid-template-columns:minmax(720px,1fr) 420px;gap:24px}.tabs{margin-right:444px}}
@media(min-width:1101px) and (max-width:1350px){.layout{grid-template-columns:minmax(580px,1fr) 350px;gap:18px}.tabs{margin-right:368px}}
@media(max-width:1100px){.tabs{margin-right:0}.summary{padding:0 22px}.summary>.contract-section-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.tabs{display:flex;gap:20px;overflow-x:auto;margin-bottom:16px;padding:0}.tab{min-width:max-content;min-height:45px;padding:9px 0 11px;flex-direction:row;font-size:13px}.tab-label{font-size:13px;white-space:nowrap}.tab-marker{position:static}#panel-1{padding:0 18px}#panel-1 .contract-section-editor>.form-section{padding:24px 0 26px}#panel-1 .profile-main>label,#panel-1 .employee-row>label,#panel-1 .employee-row>div>label{grid-template-columns:1fr;gap:7px;padding:12px 0}#panel-1 .profile-main>label>input,#panel-1 .profile-main>label>select,#panel-1 .employee-row label>input,#panel-1 .employee-row label>select{grid-column:1}#panel-1 .conditions-card>.grid{grid-template-columns:1fr;gap:7px}#panel-1 .conditions-card>.grid>label{display:block}#panel-1 .conditions-card>.grid input{grid-column:1;margin-top:7px}.summary{padding:0 18px}.summary>.contract-section-nav{grid-template-columns:1fr}}

/* Full contract preview */
#preview{width:min(1500px,calc(100vw - 28px));max-width:none;height:calc(100vh - 28px);max-height:none;margin:auto;padding:0;overflow:hidden;border:1px solid #D9DFDB;border-radius:16px;background:#EEF1EF}
#preview>#closePreview{position:absolute;z-index:3;top:16px;right:22px;min-height:40px;padding:8px 16px;background:#FFF;box-shadow:0 2px 8px rgba(27,38,32,.08)}
#previewBody{height:100%;overflow:auto;padding:34px 24px 70px;scrollbar-gutter:stable both-edges}
.contract-preview-document{width:min(100%,920px);min-height:calc(100vh - 96px);margin:0 auto;padding:64px 72px 80px;background:#FFF;box-shadow:0 5px 24px rgba(27,38,32,.08);color:#202824;font-family:"Times New Roman",serif;font-size:15px;line-height:1.65}
.contract-preview-document h1{margin:12px 0 4px;font-family:"Times New Roman",serif;font-size:28px;text-align:center;letter-spacing:0}
.contract-preview-document h2{margin:30px 0 12px;font-size:18px;line-height:1.4;text-transform:uppercase}
.contract-preview-document h3{font-size:16px}.contract-preview-document p{margin:8px 0 12px;color:#202824;line-height:1.65}
.preview-watermark{color:#77817B!important;font:600 11px/1.4 Inter,"Segoe UI",sans-serif!important;letter-spacing:.08em;text-align:center}.preview-contract-meta{text-align:center}
.preview-recommendation{padding:10px 0;border-top:1px solid #E1E5E2;border-bottom:1px solid #E1E5E2;color:#66716B!important;font-family:Inter,"Segoe UI",sans-serif;font-size:12px}
.preview-contract-section{break-inside:avoid}.preview-table-wrap{width:100%;overflow-x:auto}.contract-preview-document table{min-width:720px;font-family:Inter,"Segoe UI",sans-serif;font-size:12px}.contract-preview-document th{background:#F4F6F4;color:#4F5B54}.contract-preview-document th,.contract-preview-document td{padding:10px 8px;border:1px solid #DDE3DF}
.preview-parties{display:grid;grid-template-columns:1fr 1fr;gap:28px}.preview-parties>div{min-width:0}.contract-preview-document pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.65 Inter,"Segoe UI",sans-serif;color:#303A35}
@media(max-width:760px){#preview{width:100vw;height:100vh;border:0;border-radius:0}#preview>#closePreview{top:10px;right:12px}#previewBody{padding:58px 0 30px}.contract-preview-document{width:100%;min-height:100%;padding:34px 20px 60px;box-shadow:none;font-size:14px}.contract-preview-document h1{font-size:24px}.preview-parties{grid-template-columns:1fr}.contract-preview-document table{min-width:650px}}

/* Customer and provider stage: the same flat split editor as the tariff stage. */
#panel-0{padding:0 30px;background:#FFF}
#panel-0 .section-workspace,#panel-0 .contract-section-editor{min-width:0}
#panel-0 .contract-section-editor>.form-section{display:grid;grid-template-columns:minmax(180px,26%) minmax(0,1fr);column-gap:34px;row-gap:12px;margin:0;padding:30px 0 32px;border:0;border-bottom:1px solid #E3E8E5;border-radius:0;background:transparent;box-shadow:none}
#panel-0 .contract-section-editor>.form-section:last-child{border-bottom:0}
#panel-0 .form-section>.card-head{grid-column:1;grid-row:1/-1;display:block;align-self:start;margin:0;padding:0}
#panel-0 .form-section>.card-head h2{display:block;margin:0;color:#1F2C26;font-size:17px;line-height:1.4;font-weight:600}
#panel-0 .form-section>.card-head .section-icon,#panel-0 .form-section>.card-head .section-summary,#panel-0 .form-section>.card-head .optional-badge{display:none}
#panel-0 .form-section>.card-head .section-state{display:inline-flex;margin:9px 0 0;padding:0;border:0;background:transparent;color:#6D7972;font-size:12.5px;font-weight:500;line-height:1.4}
#panel-0 .form-section>.card-head .section-state.is-complete{color:#24765E}
#panel-0 .form-section>.card-head .section-state.has-error{color:#B8593B}
#panel-0 .form-section>.grid,#panel-0 .form-section>fieldset,#panel-0 .form-section>.recommendation,#panel-0 .form-section>details,#panel-0 .form-section>.hint{grid-column:2;min-width:0}
#panel-0 .form-section>.grid{gap:17px 16px}
#panel-0 .form-section label,#panel-0 .messenger-choice legend{color:#4D5A53;font-size:13.5px;line-height:1.45}
#panel-0 .form-section input,#panel-0 .form-section select,#panel-0 .form-section textarea{margin-top:7px;font-size:14px}
#panel-0 .form-section .hint{font-size:13px;line-height:1.6}
#panel-0 .form-section .inline{align-items:flex-end}
#panel-0 .form-section .inline .lookup-button{min-height:39px;font-size:13px}
#panel-0 .form-section .recommendation{margin:4px 0 0;padding:12px 0;border:0;border-top:1px solid #E7EBE8;border-radius:0;background:transparent;color:#65716A;font-size:13px}

/* Compact contact channel selector without nested cards. */
#panel-0 .messenger-choice{margin:2px 0 0;padding:16px 0 0;border:0;border-top:1px solid #E7EBE8}
#panel-0 .messenger-choice .hint{margin:4px 0 10px}
#panel-0 .messenger-options{display:flex;flex-wrap:wrap;gap:7px 22px}
#panel-0 .messenger-option{display:flex;align-items:center;gap:8px;min-height:34px;margin:0;padding:4px 0;border:0;border-radius:0;background:transparent;color:#34423B;font-size:13.5px}
#panel-0 .messenger-option:has(input:checked){border:0;background:transparent;color:#176B58;font-weight:600}
#panel-0 .messenger-symbol{display:grid;place-items:center;width:18px;height:18px;flex:0 0 18px}
#panel-0 .messenger-symbol img{width:16px;height:16px;object-fit:contain}
#panel-0 .messenger-symbol .icon{width:16px;height:16px;color:#397563;stroke-width:1.8}
#panel-0 .messenger-option input{position:static;width:18px;height:18px;min-height:18px;margin:0;opacity:1;accent-color:#2E8E77}
#panel-0 .messenger-check{display:none}

/* Banking and provider fields keep paired grids and use the full editor width. */
#panel-0 .optional-section>.grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#panel-0 .optional-section>.grid label:first-child{grid-column:1/-1}
#panel-0 .form-section>details{margin:4px 0 0;padding-top:12px;border-top:1px solid #E7EBE8}

/* The contextual navigation keeps section names without repeating entered data. */
.contract-section-nav[data-panel="panel-0"] .section-link-copy small{font-size:0;margin-top:3px}
.contract-section-nav[data-panel="panel-0"] .section-link-copy small:after{content:"Требует заполнения";font-size:12.5px;color:#758079}
.contract-section-nav[data-panel="panel-0"] .contract-section-link.is-complete .section-link-copy small:after{content:"Заполнено";color:#24765E}
.contract-section-nav[data-panel="panel-0"] .contract-section-link.has-error .section-link-copy small:after{content:"Ошибка";color:#B8593B}

@media(max-width:880px){#panel-0 .contract-section-editor>.form-section{grid-template-columns:1fr;gap:18px;padding:25px 0 27px}#panel-0 .form-section>.card-head{grid-column:1;grid-row:auto}#panel-0 .form-section>.grid,#panel-0 .form-section>fieldset,#panel-0 .form-section>.recommendation,#panel-0 .form-section>details,#panel-0 .form-section>.hint{grid-column:1}}
@media(max-width:760px){#panel-0{padding:0 18px}#panel-0 .form-section>.grid,#panel-0 .optional-section>.grid{grid-template-columns:1fr}#panel-0 .optional-section>.grid label:first-child{grid-column:1}#panel-0 .messenger-options{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px}}

/* A single separator below category titles and a proper search icon. */
.service-category-heading{border-bottom:0}
.service-search>span{display:grid;place-items:center;width:20px;height:20px;font-size:0}
.service-search>span .icon{width:19px;height:19px;stroke-width:1.8}
.service-category-heading{width:100%;min-height:0;padding:0 0 12px;border:0;border-bottom:1px solid #E8EAEE;border-radius:0;background:transparent;color:inherit;text-align:left;box-shadow:none}
.service-category-heading:hover{background:transparent;color:inherit;transform:none}
.service-category-heading h4{flex:0 1 auto}.service-category-heading i{margin-left:auto;color:#718079;font-size:16px;font-style:normal;transition:transform .18s ease}
.service-catalog-category.is-collapsed>.service-card-grid{display:none}
.service-catalog-category.is-collapsed>.service-category-heading i{transform:rotate(-90deg)}

/* In subscription contracts, selected one-time categories stay above the long core list. */
.specification-card>#onceAddons:not(:empty){margin:4px 0 30px;padding:0 0 28px;border-bottom:1px solid #E3E8E5}
.specification-card>#onceAddons .once-addon-catalog{margin:0;padding:0;border-top:0}

/* Compact contract identity and linear stage navigation. */
.builder-view .shell>header .breadcrumbs,.builder-view .shell>header #status{visibility:hidden}
.contract-header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:0 0 20px;padding:0 0 18px;border-bottom:1px solid #DDE3DF}
.contract-header-main{min-width:0;flex:1}
.contract-header-breadcrumbs{display:flex;align-items:center;gap:7px;margin-bottom:9px;color:#7A847F;font-size:13px;line-height:1.3}
.contract-header-breadcrumbs b{color:#B0B8B3;font-weight:400}
.contract-title-row{display:flex;align-items:center;gap:14px;min-width:0}
.contract-title-row>div{min-width:0}
.contract-title-row h1{margin:0;color:#1E2924;font-size:24px;font-weight:600;line-height:1.22;letter-spacing:-.025em;overflow-wrap:anywhere}
.contract-meta{margin:5px 0 0;color:#68746E;font-size:14px;line-height:1.4}
.contract-header-status{flex:0 0 auto;display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:999px;background:#F2EDE3;color:#7A5B27;font-size:12px;font-weight:600;white-space:nowrap}
.contract-header-status.is-approved{background:#E5F2EC;color:#247159}
.contract-header .page-actions{flex:0 0 auto;margin:0}

.tabs{justify-content:flex-start;gap:38px;margin:0 0 18px;border-bottom:1px solid #DDE3DF}
.tab{flex:0 0 auto;gap:10px;min-width:0;min-height:54px;margin:0;padding:12px 2px 14px;border:0!important;border-radius:0;background:transparent;color:#77817C;font-size:16px;font-weight:500;box-shadow:none!important}
.tab::before{display:none!important}
.tab:first-child{padding-left:1px}
.tab:hover{background:transparent;color:#35423C;transform:none}
.tab[aria-selected=true]{background:transparent;color:#1F5F4D;box-shadow:none;font-weight:600}
.tab[aria-selected=true]:after{right:10px;left:10px;bottom:-1px;height:2px;background:#2E8E77}
.tab:first-child[aria-selected=true]:after{left:0}
.tab-icon{display:none!important}
.tab-number{display:grid;place-items:center;width:23px;height:23px;min-width:23px;border:1px solid #CDD4D0;border-radius:50%;color:#7B8580;font-size:12px;font-weight:600;line-height:1}
.tab-marker{display:none;order:-1;margin:0;color:#2E8E77;background:transparent!important;font-size:14px;font-weight:600}
.tab-marker.complete{display:inline-flex;width:23px;height:23px;align-items:center;justify-content:center;color:#2E8E77;font-size:15px}
.tab:has(.tab-marker.complete) .tab-number{display:none}
.tab-label{min-width:0;white-space:normal;text-align:left;line-height:1.35}

@media(max-width:760px){
 .builder-view .shell>header .breadcrumbs{display:none}.builder-view .shell>header .header-right{margin-left:auto}
 .contract-header{align-items:flex-start;gap:14px;margin-bottom:16px;padding-bottom:15px}.contract-title-row{align-items:flex-start;flex-wrap:wrap;gap:9px}.contract-title-row h1{font-size:22px}.contract-meta{font-size:13px}.contract-header-breadcrumbs{font-size:12px}.contract-header .page-actions{display:flex;gap:6px}.contract-header .page-actions button{min-width:40px;padding:9px;font-size:0}.contract-header .page-actions button:last-child:after{content:"+";font-size:20px}.contract-header .page-actions button:first-child:after{content:"×";font-size:19px}
 .tabs{display:flex;gap:24px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{flex:0 0 auto;min-width:max-content;padding:11px 0 12px;font-size:14px}.tab[aria-selected=true]:after{right:0;left:0}.tab-label{white-space:nowrap}
}
.specification-card>.shared-catalog-toolbar{margin-top:6px}.once-addon-catalog[hidden],[data-core-category][hidden]{display:none!important}
#preview .contract-preview-document{padding:76px 80px 88px}@media(max-width:760px){#preview .contract-preview-document{padding:34px 22px 60px}}
/* Правая панель: компактная иерархия (25.10.2026) */
.contract-section-nav[hidden]{display:none!important}
.summary.summary-compact{position:sticky;top:16px;display:flex;flex-direction:column;max-height:calc(100vh - 32px);overflow:hidden;padding:0}
.summary.summary-compact>.summary-surface{display:flex;flex-direction:column;min-height:0;margin:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 6px 22px rgba(45,55,49,.045)}
.summary-compact .summary-top{flex:none;padding:16px 18px 14px;border-bottom:1px solid var(--line);background:#fff}
.summary-compact .total-label{color:var(--muted);font-size:13px;line-height:1.3}
.summary-compact .summary-total{margin:2px 0 0;color:var(--text);font-size:28px;line-height:1.2;font-weight:600;letter-spacing:-.01em}
.summary-compact .total-note{margin-top:4px;color:#8A6A2E;font-size:12.5px;line-height:1.4}
.summary-compact .total-note[hidden]{display:none}
.summary-compact .summary-top>.primary{margin-top:12px;min-height:42px;font-size:14px}
.summary-compact .summary-secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.summary-compact .summary-secondary-actions button{margin:0;min-height:36px;padding:6px 8px;font-size:13px;color:#46534C;background:#fff;border:1px solid var(--line)}
.summary-compact .summary-secondary-actions button:hover{background:#F6F8F6}
.summary-compact .summary-secondary-actions .icon{width:15px;height:15px}
.summary-compact #saveState{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.45}
.summary-compact .summary-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:0 18px}
.summary-compact .summary-block{padding:12px 0;border-bottom:1px solid var(--line)}
.summary-compact .summary-block:last-child{border-bottom:0}
.summary-compact .summary-row{margin:0;padding:4px 0;font-size:14px;color:var(--muted)}
.summary-compact .summary-row b{font-size:14px;color:var(--text)}
.summary-compact .details-toggle,.summary-compact .readiness-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:32px;margin:4px 0 0;padding:4px 0;border:0;background:transparent;box-shadow:none;color:var(--accent);font-size:13.5px;font-weight:500;text-align:left}
.summary-compact .details-toggle i,.summary-compact .readiness-toggle i{font-style:normal;transition:transform .15s}
.summary-compact [aria-expanded="true"]>i{transform:rotate(180deg)}
.summary-compact .cost-details{padding-top:6px}
.summary-compact .cost-details[hidden],.summary-compact .readiness-details[hidden]{display:none}
.summary-compact .cost-breakdown-title{margin:4px 0;font-size:13px;font-weight:600}
.summary-compact .period-note{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.45}
.summary.summary-compact .contract-section-nav{display:block;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.summary.summary-compact .contract-section-nav[hidden]{display:none!important}
.summary.summary-compact .contract-section-nav-row+.contract-section-nav-row{border-top:0}
.summary.summary-compact .contract-section-link{display:flex;align-items:center;gap:8px;width:100%;min-height:34px;margin:0;padding:6px 8px;border:0;border-radius:7px;background:transparent;box-shadow:none;text-align:left}
.summary.summary-compact .contract-section-link:hover{background:#F4F6F4}
.summary.summary-compact .contract-section-link.is-active{background:#EEF3F0}
.summary.summary-compact .section-link-icon{display:none}
.summary.summary-compact .section-link-copy{flex:1;min-width:0}
.summary.summary-compact .section-link-copy b{display:block;overflow:hidden;color:var(--text);font-size:13.5px;font-weight:500;line-height:1.3;white-space:nowrap;text-overflow:ellipsis}
.summary.summary-compact .section-link-copy small{display:none}
.summary.summary-compact .section-link-state{display:inline-flex;align-items:center;justify-content:center;flex:none;width:16px;height:16px;min-width:16px;border:1.5px solid #C9D2CD;border-radius:50%;background:transparent;color:transparent;font-size:0}
.summary.summary-compact .contract-section-link.is-complete .section-link-state{border-color:#2E8E77;background:#2E8E77;color:#fff;font-size:10px}
.summary.summary-compact .contract-section-link.has-error .section-link-state{border-color:#B8593B;background:#B8593B;color:#fff;font-size:10px}
.summary-compact .readiness-toggle{color:var(--text);font-weight:500;font-size:14px}
.summary-compact .readiness-toggle>span:first-child{flex:1;min-width:0}
.summary-compact .readiness-toggle b{font-weight:600}
.summary-compact .readiness-status{flex:none;padding:2px 8px;border-radius:10px;background:#E8F3EE;color:#24765E;font-size:12px;font-weight:500}
.summary-compact .readiness-status.has-issues{background:#FBEFE8;color:#A5502F}
.summary-compact .readiness-details{padding-top:6px;font-size:13px;line-height:1.45;color:var(--muted)}
.summary-compact .readiness-details .required-summary{display:flex;gap:6px;align-items:baseline;margin:6px 0}
.summary-compact .problem-links{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.summary-compact .problem-links button{display:inline-flex;gap:6px;width:auto;min-height:28px;margin:0;padding:3px 9px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:12.5px}
.summary-compact .readiness-issues{margin:6px 0 0;padding:0;list-style:none}
.summary-compact .readiness-issues button{display:block;width:100%;min-height:0;margin:0;padding:5px 0;border:0;border-top:1px solid #EEF1EE;border-radius:0;background:transparent;color:#4C5852;font-size:12.5px;line-height:1.4;text-align:left;justify-content:flex-start}
.summary-compact .readiness-issues button:hover{color:var(--accent)}
.summary-compact #goToCheck{width:auto;min-height:32px;margin:6px 0 0;padding:4px 0;border:0;background:transparent;color:var(--accent);font-size:13px;justify-content:flex-start}
.summary-compact .summary-help{display:block;margin:0;padding:10px 0 14px;color:var(--muted);font-size:12px;line-height:1.45}
@media(min-width:1101px) and (max-width:1350px){.layout{grid-template-columns:minmax(0,1fr) 320px}}
@media(min-width:1351px){.layout{grid-template-columns:minmax(0,1fr) 360px}}
@media(min-width:1700px){.layout{grid-template-columns:minmax(0,1fr) 380px}}
@media(max-width:1100px){.summary.summary-compact{position:static;display:block;max-height:none;overflow:visible}.summary.summary-compact>.summary-surface{overflow:visible}.summary-compact .summary-body{overflow:visible}}
.summary-compact .summary-secondary-actions button{white-space:nowrap}
.summary-compact .readiness-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto;row-gap:4px}.summary-compact .readiness-toggle>span:first-child{grid-column:1;grid-row:1}.summary-compact .readiness-toggle>i{grid-column:2;grid-row:1}.summary-compact .readiness-status{grid-column:1;grid-row:2;justify-self:start}
.summary.summary-compact .contract-section-link .section-link-state{flex:0 0 16px;width:16px!important;height:16px!important;min-height:0!important;padding:0;box-sizing:border-box}
/* Предпросмотр Word-файла: страницы как в документе (25.10.2026) */
#previewBody .docx-preview-host{min-width:0}#previewBody .docx-wrapper{padding:24px 0 40px;background:transparent}#previewBody .docx-wrapper>section.docx{margin:0 auto 24px;box-shadow:0 5px 24px rgba(27,38,32,.12)}#previewBody .docx a{color:#0563C1}
@media(max-width:900px){#previewBody .docx-preview-host{overflow-x:auto}}

/* Sidebar 25.10.2026: одна переменная ширины для меню и контента, 272 / 64 px, всё в пределах высоты экрана. */
:root{--sidebar-expanded:272px;--sidebar-collapsed:64px;--sidebar-width:var(--sidebar-expanded)}
body.sidebar-collapsed{--sidebar-width:var(--sidebar-collapsed)}
@media(min-width:761px){:root{--sidebar-width:var(--sidebar-expanded)}body.sidebar-collapsed{--sidebar-width:var(--sidebar-collapsed)}}
aside{box-sizing:border-box;width:var(--sidebar-width);height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding:18px 14px 14px}
.shell{margin-left:var(--sidebar-width)}
.brand-row{flex:none;min-height:64px;padding:0 4px 14px}
.brand img{width:140px;max-width:calc(100% - 8px);max-height:64px}
aside nav{flex:0 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.aside-bottom{flex:none;margin-top:auto}
.nav{min-height:42px;font-size:14px}
.profile{grid-template-columns:32px minmax(0,1fr);min-height:50px}
#identity{display:grid;gap:1px;min-width:0;line-height:1.3}
#identity b,#identity small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#identity b{color:#25332D;font-size:13px;font-weight:600}
#identity small{color:#69736D;font-size:12px}
.sidebar-collapsed aside{padding:14px 8px 10px}
.sidebar-collapsed .brand-row{min-height:auto;padding:0 0 10px}
.sidebar-collapsed .brand img{width:40px;max-height:36px}
.sidebar-collapsed #identity{display:none}
@media(max-height:700px) and (min-width:761px){.brand-row{min-height:52px;padding-bottom:8px}.brand img{max-height:46px}.nav{min-height:36px;padding-top:7px;padding-bottom:7px}.profile{min-height:42px;padding-top:4px;padding-bottom:4px}}
@media(max-width:760px){:root,body.sidebar-collapsed{--sidebar-width:0px}aside,.sidebar-collapsed aside{width:var(--sidebar-expanded);padding:18px 14px 14px}.shell{margin-left:0}.sidebar-collapsed .brand img{width:132px;max-height:60px}.sidebar-collapsed #identity{display:grid}}

/* ===== Настройки администратора 25.10.2026: одна рабочая поверхность, Split Layout, без вложенных карточек ===== */
#adminSettings{--adm-accent:#0F7F79;--adm-accent-hover:#0B6863;--adm-accent-soft:#E6F4F1;--adm-line:#E3E8E5;--adm-text:#1F2A25;--adm-muted:#66736D;width:auto;max-width:none;margin:0;padding:8px 0 48px;color:var(--adm-text);font-size:14px}
#adminSettings .admin-workspace-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 24px;align-items:center;margin:8px 0 18px}
#adminSettings .admin-workspace-header h1{margin:0;font-size:24px;line-height:1.25;font-weight:600;letter-spacing:-.01em}
#adminSettings .admin-workspace-header>p{margin:0;color:var(--adm-muted);font-size:14px}
#adminSettings .admin-workspace-header .settings-close{grid-column:2;grid-row:1/3;min-height:38px;margin:0;padding:8px 14px;border:1px solid var(--adm-line);border-radius:8px;background:#fff;color:var(--adm-text);font-size:14px;font-weight:500;box-shadow:none}
#adminSettings .admin-workspace-header .settings-close:hover{background:#F3F6F4}
/* Вкладки с нижним подчёркиванием */
#adminSettings .admin-tabs{display:flex;gap:28px;margin:0 0 4px;padding:0;background:transparent;border:0;border-bottom:1px solid var(--adm-line);border-radius:0;overflow-x:auto;scrollbar-width:thin}
#adminSettings .admin-tabs a{flex:none;min-height:44px;padding:10px 0 11px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;box-shadow:none;color:var(--adm-muted);font-size:14px;font-weight:500;white-space:nowrap}
#adminSettings .admin-tabs a:hover{background:transparent;color:var(--adm-text)}
#adminSettings .admin-tabs a.is-active{background:transparent;box-shadow:none;color:var(--adm-text);font-weight:600;border-bottom-color:var(--adm-accent)}
#adminSettings .admin-tabs a:focus-visible{outline:2px solid var(--adm-accent);outline-offset:2px}
/* Раздел: слева описание (≈25%), справа содержимое (≈75%) */
#adminSettings .admin-block{margin:0;padding:28px 0;background:transparent;border:0;border-bottom:1px solid var(--adm-line);border-radius:0;box-shadow:none}
#adminSettings .admin-block.audit-block{padding:28px 0}
#adminSettings .admin-split{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,3fr);gap:16px 48px;align-items:start}
#adminSettings .admin-split-aside h2{margin:0 0 6px;font-size:17px;line-height:1.35;font-weight:600}
#adminSettings .admin-split-aside .hint{margin:0;color:var(--adm-muted);font-size:13px;line-height:1.55}
#adminSettings .admin-split-main{min-width:0;display:grid;gap:16px}
#adminSettings label{color:#3A4741;font-size:13px;font-weight:500}
#adminSettings input:not([type=checkbox]):not([type=radio]),#adminSettings select{min-height:38px;font-size:14px;border-radius:8px}
#adminSettings .check{display:flex;align-items:center;gap:9px;min-height:36px;margin:0;color:var(--adm-text);font-size:14px;font-weight:400}
#adminSettings .admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
#adminSettings .admin-form-grid.four{grid-template-columns:repeat(4,minmax(0,160px))}
#adminSettings .admin-form-grid.two{grid-template-columns:repeat(2,minmax(0,280px))}
#adminSettings .admin-form-grid label,#adminSettings .admin-short-field,#adminSettings .admin-wide-field{display:grid;gap:6px;margin:0}
#adminSettings .admin-short-field{max-width:240px}
#adminSettings .admin-inline-controls{display:flex;flex-wrap:wrap;align-items:end;gap:14px 24px}
#adminSettings .admin-inline-controls .primary{margin:0}
#adminSettings .admin-fieldset{min-width:0;margin:0;padding:0;border:0;border-radius:0;background:transparent}
#adminSettings .admin-fieldset legend{margin:0 0 6px;padding:0;color:#3A4741;font-size:13px;font-weight:600}
#adminSettings .permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 24px;max-width:720px}
#adminSettings .permission-grid .check{padding:4px 6px;border-radius:6px}
#adminSettings .permission-grid .check:hover{background:#F3F6F4}
/* Кнопки */
#adminSettings button{min-height:38px;margin:0;padding:8px 14px;border:1px solid var(--adm-line);border-radius:8px;background:#fff;color:var(--adm-text);font-size:14px;font-weight:500;box-shadow:none;transform:none}
#adminSettings button:hover{background:#F3F6F4;border-color:#D3DBD6}
#adminSettings button.primary{background:var(--adm-accent);border-color:var(--adm-accent);color:#fff;font-weight:600}
#adminSettings button.primary:hover{background:var(--adm-accent-hover);border-color:var(--adm-accent-hover)}
#adminSettings button.danger-action{color:#A33B3B;border-color:#EBCACA;background:#fff}
#adminSettings button.danger-action:hover{background:#FDF3F3}
#adminSettings button.ghost-action{border-color:transparent;background:transparent;color:var(--adm-muted)}
#adminSettings button.ghost-action:hover{color:var(--adm-text);background:#F3F6F4}
#adminSettings button:disabled{opacity:.45;cursor:not-allowed}
#adminSettings .admin-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0;padding:0}
/* Списки с разделителями вместо карточек */
#adminSettings .admin-list{display:grid;border-top:1px solid var(--adm-line)}
#adminSettings .admin-list-row{margin:0;border:0;border-bottom:1px solid var(--adm-line);border-radius:0;background:transparent;overflow:visible}
#adminSettings .admin-list-row>summary{display:flex;align-items:center;gap:14px;min-height:56px;padding:10px 4px;background:transparent;border:0;list-style:none;cursor:pointer}
#adminSettings .admin-list-row>summary::-webkit-details-marker{display:none}
#adminSettings .admin-list-row>summary:before,#adminSettings .admin-list-row>summary:after{content:none}
#adminSettings .admin-list-row>summary:hover{background:#F7F9F8}
#adminSettings .admin-list-row[open]>summary{background:transparent;border:0}
#adminSettings .admin-row-title{display:grid;gap:2px;min-width:0;flex:1}
#adminSettings .admin-row-title b{font-size:14px;font-weight:600;overflow-wrap:anywhere}
#adminSettings .admin-row-title small{color:var(--adm-muted);font-size:13px;font-weight:400}
#adminSettings .admin-row-meta{color:#3A4741;font-size:13px;white-space:nowrap}
#adminSettings .admin-row-open{color:var(--adm-accent);font-size:13px;font-weight:500;white-space:nowrap}
#adminSettings .admin-row-open:after{content:' ›'}
#adminSettings .admin-list-row[open] .admin-row-open:after{content:' ˅'}
#adminSettings .admin-row-body{display:grid;gap:18px;padding:6px 4px 24px}
#adminSettings .status-pill{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:2px 9px;border-radius:999px;background:#EEF1EF;color:#55625C;font-size:12px;font-weight:500;white-space:nowrap}
#adminSettings .status-pill.is-ok{background:var(--adm-accent-soft);color:#0B6863}
#adminSettings .status-pill.is-warn{background:#FFF3E6;color:#9A5410}
#adminSettings .status-pill.is-muted{background:#F1F2F1;color:#7A837E}
#adminSettings .status-pill i{width:6px;height:6px;border-radius:50%;background:currentColor}
/* Таблицы */
#adminSettings .admin-table{display:grid;border-top:1px solid var(--adm-line)}
#adminSettings .admin-table-head{display:grid;gap:14px;align-items:center;min-height:38px;padding:6px 4px;border-bottom:1px solid var(--adm-line);color:var(--adm-muted);font-size:13px;font-weight:500;background:transparent}
#adminSettings .admin-table-row,#adminSettings .admin-price{display:grid;gap:14px;align-items:center;min-height:56px;margin:0;padding:8px 4px;border:0;border-bottom:1px solid var(--adm-line);border-radius:0;background:transparent;box-shadow:none}
#adminSettings .numbering-table .admin-table-head,#adminSettings .numbering-table .admin-table-row{grid-template-columns:minmax(120px,1fr) 110px 150px minmax(220px,2fr)}
#adminSettings .number-preview-list{display:flex;flex-wrap:wrap;gap:6px}
#adminSettings .number-preview-list span{display:inline-flex;align-items:baseline;gap:5px;padding:3px 8px;border-radius:6px;background:#F3F6F4;font-size:13px;font-variant-numeric:tabular-nums}
#adminSettings .number-preview-list small{color:var(--adm-muted);font-size:12px}
#adminSettings .tariff-head,#adminSettings .base-tariff-row{grid-template-columns:minmax(200px,2fr) minmax(110px,1fr) minmax(110px,1fr) minmax(110px,1fr) 44px}
#adminSettings .service-head,#adminSettings .service-price-row{grid-template-columns:minmax(220px,3fr) minmax(110px,1fr) minmax(110px,1fr) 44px}
#adminSettings .admin-price>span{display:grid;gap:2px;min-width:0}
#adminSettings .admin-price>span b{font-size:14px;font-weight:600}
#adminSettings .admin-price>span small{color:var(--adm-muted);font-size:13px}
#adminSettings .admin-price label{display:block;margin:0}
#adminSettings .admin-price label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
#adminSettings .admin-price.is-dirty{background:#FFFBF2}
#adminSettings .admin-price.is-saved{background:var(--adm-accent-soft)}
#adminSettings .row-save{width:40px;min-width:40px;padding:0;justify-content:center;font-size:16px}
#adminSettings .admin-price.is-dirty .row-save{background:var(--adm-accent);border-color:var(--adm-accent);color:#fff}
#adminSettings .admin-search{max-width:420px}
#adminSettings .admin-table-empty{padding:18px 4px;color:var(--adm-muted)}
/* Приглашения, сотрудники, журнал */
#adminSettings .invite-builder{display:grid;grid-template-columns:none;gap:18px;padding:0;background:transparent;border:0;border-radius:0}
#adminSettings .invite-builder>*{grid-column:auto;grid-row:auto}
#adminSettings .invite-row{grid-template-columns:minmax(0,1fr) auto 110px}
#adminSettings .invite-row button{justify-self:end}
#adminSettings .inactive-employees,#adminSettings .audit-details{margin:0;border:0;border-radius:0;background:transparent;overflow:visible}
#adminSettings .inactive-employees>summary,#adminSettings .audit-details>summary{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 4px;color:var(--adm-accent);list-style:none;cursor:pointer}
#adminSettings .inactive-employees>summary:after,#adminSettings .audit-details>summary:after{content:'›';margin-left:0;font-size:16px}
#adminSettings .inactive-employees>summary b,#adminSettings .audit-details>summary b{color:var(--adm-accent);font-weight:500}
#adminSettings .inactive-employees>summary small{display:inline;color:var(--adm-muted)}
#adminSettings .inactive-employees>summary .admin-row-title{display:flex;gap:8px;flex:none}
#adminSettings .audit-list{padding:0}
#adminSettings .audit-list>div{display:grid;grid-template-columns:180px minmax(0,1fr) 170px;gap:12px;padding:10px 4px;border-top:1px solid var(--adm-line);font-size:13px}
#adminSettings .audit-list time{text-align:right;color:var(--adm-muted);font-variant-numeric:tabular-nums}
#adminSettings .employee-actions{padding:0}
#adminSettings #inviteResult label,#adminSettings .password-reset-result label{display:grid;gap:6px}
#adminSettings #inviteResult .inline,#adminSettings .password-reset-result .inline{display:flex;gap:8px}
/* Исполнители и правила */
#adminSettings .provider-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#adminSettings .provider-field-group{padding:0;border:0;background:transparent}
#adminSettings .rule-index{display:grid;place-items:center;width:26px;height:26px;min-width:26px;border-radius:50%;background:#F1F4F2;color:#3A4741;font-size:13px;font-weight:600}
#adminSettings .rule-checks{display:flex;flex-wrap:wrap;gap:2px 20px}
#adminSettings .rule-checks .check{min-height:34px}
/* Шаблон договора */
#adminSettings .template-section-editor>summary .template-delete-icon{width:34px;min-width:34px;min-height:34px;padding:0;justify-content:center;border-color:transparent;background:transparent;color:#8A6262}
#adminSettings .template-section-editor>summary .template-delete-icon:hover{background:#FDF3F3}
#adminSettings .template-delete-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#adminSettings .template-section-editor .admin-row-body>label:not(.check){display:grid;gap:6px;margin:0;max-width:640px}
/* Ссылки на положения */
#adminSettings .link-row{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(260px,1.6fr) auto;gap:14px;align-items:center;min-height:60px;padding:8px 4px;border-bottom:1px solid var(--adm-line)}
#adminSettings .link-row input{min-width:0;font-size:13px}
#adminSettings .link-open{color:var(--adm-accent);font-size:13px;font-weight:500;text-decoration:none;white-space:nowrap}
#adminSettings .link-open:hover{text-decoration:underline}
/* Адаптивность */
@media(max-width:1280px){#adminSettings .admin-split{grid-template-columns:minmax(180px,1fr) minmax(0,3fr);gap:16px 32px}}
@media(max-width:1100px){#adminSettings .admin-split{grid-template-columns:1fr;gap:14px}#adminSettings .admin-split-aside .hint{max-width:720px}}
@media(max-width:760px){#adminSettings .admin-workspace-header{grid-template-columns:1fr}#adminSettings .admin-workspace-header .settings-close{grid-column:1;grid-row:auto;justify-self:start}#adminSettings .admin-tabs{gap:20px}
 #adminSettings .admin-form-grid,#adminSettings .admin-form-grid.two,#adminSettings .admin-form-grid.four,#adminSettings .permission-grid{grid-template-columns:1fr}
 #adminSettings .admin-table-head{display:none}
 #adminSettings .numbering-table .admin-table-row{grid-template-columns:1fr 1fr}#adminSettings .numbering-table .admin-row-title,#adminSettings .number-preview-list{grid-column:1/-1}
 #adminSettings .base-tariff-row,#adminSettings .service-price-row{grid-template-columns:1fr 1fr}#adminSettings .admin-price>span:first-child{grid-column:1/-1}#adminSettings .admin-price label>span{position:static;width:auto;height:auto;clip:auto;display:block;margin-bottom:4px;color:var(--adm-muted);font-size:13px}
 #adminSettings .link-row{grid-template-columns:1fr}#adminSettings .invite-row{grid-template-columns:1fr auto}#adminSettings .invite-row>:last-child{grid-column:1/-1;justify-self:start}
 #adminSettings .audit-list>div{grid-template-columns:1fr;gap:2px}#adminSettings .audit-list time{text-align:left}
 #adminSettings .admin-list-row>summary{flex-wrap:wrap}#adminSettings .admin-row-meta{white-space:normal}}
#adminSettings .admin-form-grid.four{align-items:end}
#adminSettings .admin-list-row>summary b{color:var(--adm-text)}
#adminSettings .invite-list{padding:0}
#adminSettings .inactive-employees>summary:after{margin-left:2px}
#adminSettings .template-section-editor .admin-row-body{padding-left:4px}
#adminSettings .admin-search,#adminSettings .admin-search::placeholder{font-size:14px}
#adminSettings .contract-editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 0;border-bottom:1px solid var(--adm-line);background:transparent}
#adminSettings .contract-editor-toolbar select{width:auto;min-width:0;max-width:200px;min-height:34px;flex:none}
#adminSettings .contract-editor-toolbar button{min-width:34px;min-height:34px;padding:4px 8px;justify-content:center}
#adminSettings .contract-editor-field{display:grid;gap:6px;max-width:900px}
#adminSettings .contract-editor-field .editor-label{color:#3A4741;font-size:13px;font-weight:600}
#adminSettings .contract-rich-editor{min-height:160px;padding:12px 2px;font-size:14px;line-height:1.6}
#adminSettings .rule-row .admin-row-body{padding-left:44px}
@media(max-width:760px){#adminSettings .rule-row .admin-row-body{padding-left:4px}}
.once-addons-card #onceAddons:not(:empty)~.once-addons-empty{display:none}
.subscription-services-card>.card-head{cursor:pointer;position:relative;padding-right:30px}
.subscription-services-card>.card-head:after{content:'⌄';position:absolute;right:4px;top:50%;color:#60716A;font-size:18px;line-height:1;transform:translateY(-60%);transition:transform .15s}
.subscription-services-card.is-collapsed>.card-head:after{transform:translateY(-50%) rotate(-90deg)}
.subscription-services-card.is-collapsed .core-service-catalog,.subscription-services-card.is-collapsed .card-description{display:none!important}
#adminSettings .admin-warning{margin:0;padding:10px 12px;border-left:3px solid #C96D26;background:#FFF4E9;color:#7A4310;font-size:14px}
/* Template editor toolbar: light, icon-first. */
#adminSettings .contract-editor-toolbar{position:sticky;top:0;z-index:2;gap:4px 14px;padding:6px 0 8px;border-bottom:1px solid #EDF0EE;background:var(--adm-bg,#F7F8F6)}
#adminSettings .contract-editor-toolbar .editor-group{display:inline-flex;align-items:center;gap:2px}
#adminSettings .contract-editor-toolbar .editor-group+.editor-group{padding-left:14px;border-left:1px solid #E6EAE7}
#adminSettings .contract-editor-toolbar .editor-fonts{gap:6px}
#adminSettings .contract-editor-toolbar select{min-height:36px;padding:4px 28px 4px 10px;border:1px solid transparent;border-radius:8px;background-color:transparent;color:#2B3530;font-size:14px;box-shadow:none}
#adminSettings .contract-editor-toolbar select:hover,#adminSettings .contract-editor-toolbar select:focus{border-color:#E1E6E2;background-color:#FFF}
#adminSettings .contract-editor-toolbar button{width:38px;min-width:38px;height:38px;min-height:38px;padding:0;border:0;border-radius:8px;background:transparent;color:#4A5751;box-shadow:none}
#adminSettings .contract-editor-toolbar button svg{width:22px;height:22px;display:block}
#adminSettings .contract-editor-toolbar button:hover{background:#EEF3F1;color:#1F2A25}
#adminSettings .contract-editor-toolbar button.is-active{background:#E3F1EF;color:var(--adm-accent,#0F7F79)}
#adminSettings .contract-editor-toolbar button:focus-visible{outline:2px solid var(--adm-accent,#0F7F79);outline-offset:1px}
#adminSettings .admin-more{margin-top:6px}
#adminSettings .admin-more>summary{display:inline-flex;align-items:center;gap:6px;padding:8px 0;color:var(--adm-accent,#0F7F79);font-size:13px;font-weight:600;cursor:pointer;list-style:none}
#adminSettings .admin-more>summary::-webkit-details-marker{display:none}
#adminSettings .admin-more>summary:after{content:'›';font-size:18px;transition:transform .15s}
#adminSettings .admin-more[open]>summary:after{transform:rotate(90deg)}
#adminSettings .contract-editor-toolbar{gap:4px 8px}
#adminSettings .contract-editor-toolbar .editor-group+.editor-group{padding-left:8px}
#adminSettings .contract-editor-toolbar .editor-fonts select[data-editor-font]{max-width:170px}
#adminSettings .admin-more>summary:before{content:none;display:none}
/* Прайс дополнительных услуг: блоки как в конструкторе. */
#adminSettings .admin-price-groups{display:grid;gap:0;margin-top:12px;border-top:1px solid var(--adm-line,#E3E8E5)}
#adminSettings .admin-price-group{border-bottom:1px solid var(--adm-line,#E3E8E5)}
#adminSettings .admin-price-group>summary{display:flex;align-items:center;gap:10px;padding:14px 4px;cursor:pointer;list-style:none;color:#1F2A25;font-size:15px}
#adminSettings .admin-price-group>summary::-webkit-details-marker{display:none}
#adminSettings .admin-price-group>summary:before{content:none;display:none}
#adminSettings .admin-price-group>summary>span{min-width:26px;padding:1px 8px;border-radius:999px;background:#EEF3F1;color:#56635C;font-size:12px;text-align:center}
#adminSettings .admin-price-group>summary:after{content:'›';margin-left:auto;color:#718078;font-size:20px;transition:transform .15s}
#adminSettings .admin-price-group[open]>summary:after{transform:rotate(90deg)}
#adminSettings .admin-price-group>.admin-table{padding:0 0 14px}
/* Правило выбора исполнителя: читается как фраза «Если … то исполнитель …». */
#adminSettings .rule-body{display:grid;gap:14px;padding:6px 0 18px 44px}
#adminSettings .rule-sentence{display:grid;gap:10px}
#adminSettings .rule-line{display:grid;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:12px}
#adminSettings .rule-word{color:#56635C;font-size:14px}
#adminSettings .rule-then .rule-word{color:#1F2A25;font-weight:600}
#adminSettings .rule-then select{max-width:360px}
#adminSettings .rule-checks{display:flex;flex-wrap:wrap;gap:6px}
#adminSettings .rule-chip{position:relative;display:inline-flex;align-items:center;min-height:34px;padding:6px 14px;border:1px solid #DDE3DF;border-radius:999px;background:#FFF;color:#3A4741;font-size:13px;font-weight:500;cursor:pointer;user-select:none;transition:background .12s,border-color .12s}
#adminSettings .rule-chip input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
#adminSettings .rule-chip:hover{border-color:#B9C8C1}
#adminSettings .rule-chip:has(input:checked){border-color:var(--adm-accent,#0F7F79);background:#E3F1EF;color:var(--adm-accent,#0F7F79)}
#adminSettings .rule-chip:has(input:focus-visible){outline:2px solid var(--adm-accent,#0F7F79);outline-offset:1px}
#adminSettings .rule-tip{margin:0 0 0 182px;color:#7A857F;font-size:12px}
#adminSettings .rule-extra>summary{display:inline-flex;align-items:center;gap:6px;color:var(--adm-accent,#0F7F79);font-size:13px;font-weight:600;cursor:pointer;list-style:none}
#adminSettings .rule-extra>summary::-webkit-details-marker{display:none}
#adminSettings .rule-extra>summary:before{content:none;display:none}
#adminSettings .rule-extra>summary:after{content:'›';font-size:18px;transition:transform .15s}
#adminSettings .rule-extra[open]>summary:after{transform:rotate(90deg)}
#adminSettings .rule-extra-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:12px;margin-top:10px}
#adminSettings .rule-extra-body label{display:grid;gap:6px;font-size:13px;color:#3A4741}
#adminSettings .rule-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid #EDF0EE}
#adminSettings .rule-switch{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:#2B3530;cursor:pointer}
#adminSettings .rule-switch input{position:absolute;opacity:0;width:1px;height:1px}
#adminSettings .rule-switch span{position:relative;width:36px;height:20px;border-radius:999px;background:#CBD3CE;transition:background .15s}
#adminSettings .rule-switch span:after{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#FFF;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .15s}
#adminSettings .rule-switch input:checked+span{background:var(--adm-accent,#0F7F79)}
#adminSettings .rule-switch input:checked+span:after{transform:translateX(16px)}
#adminSettings .rule-switch input:focus-visible+span{outline:2px solid var(--adm-accent,#0F7F79);outline-offset:2px}
#adminSettings .rule-tools{display:inline-flex;gap:2px}
#adminSettings .icon-tool{width:40px;min-width:40px;height:40px;min-height:40px;padding:0;justify-content:center;border:0;border-radius:8px;background:transparent;color:#4A5751;box-shadow:none}
#adminSettings .icon-tool svg{width:22px;height:22px;display:block}
#adminSettings .icon-tool:hover:not(:disabled){background:#EEF3F1;color:#1F2A25}
#adminSettings .icon-tool:disabled{opacity:.3;cursor:default}
#adminSettings .icon-tool.is-danger{color:#A24A4A}
#adminSettings .icon-tool.is-danger:hover{background:#FDF3F3;color:#8A2F2F}
@media(max-width:760px){#adminSettings .rule-body{padding-left:0}#adminSettings .rule-line{grid-template-columns:1fr;gap:6px}#adminSettings .rule-tip{margin-left:0}#adminSettings .rule-extra-body{grid-template-columns:1fr}}
#adminSettings .rule-line{align-items:start}#adminSettings .rule-word{padding-top:7px}#adminSettings .rule-then .rule-word{padding-top:10px}
#adminSettings .admin-price-group>summary{min-height:0;padding:12px 4px}
/* Шапка договора */
#adminSettings .contract-header-editor{display:grid;gap:14px;max-width:900px}
#adminSettings .header-field{display:grid;gap:6px;color:#3A4741;font-size:13px;font-weight:600}
#adminSettings .header-field textarea{min-height:96px;font-weight:400;line-height:1.5;resize:vertical}
#adminSettings .header-field input{font-weight:400}
#adminSettings .header-tokens{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:#7A857F;font-size:12px}
#adminSettings .header-token{min-height:30px;padding:3px 10px;border:1px dashed #B9C8C1;border-radius:999px;background:transparent;color:var(--adm-accent,#0F7F79);font-size:12px;font-weight:600;box-shadow:none}
#adminSettings .header-token:hover{background:#E3F1EF;border-style:solid}
#adminSettings .header-preview{padding:16px 20px;border:1px solid #E6EAE7;border-radius:10px;background:#FFF;font-family:Arial,sans-serif;font-size:13px;color:#1F2A25}
#adminSettings .header-preview>small{display:block;margin-bottom:8px;color:#7A857F;font-family:inherit;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
#adminSettings .header-preview p{margin:0 0 8px}
#adminSettings .header-preview .hp-title{text-align:center;font-weight:600}
#adminSettings .header-preview .hp-row{display:flex;justify-content:space-between}
#adminSettings .header-preview .hp-text{text-align:justify;line-height:1.5}
#adminSettings .header-preview mark{background:#EEF6F3;color:inherit;border-radius:3px;padding:0 2px}
/* Одна линия под заголовком блока услуг: верхние границы карточек её уже рисуют. */
.service-catalog-category>.service-category-heading[aria-expanded="true"]{border-bottom-color:transparent}
.service-expand-all{min-height:36px;padding:6px 12px;border:1px solid #D7DFDA;border-radius:8px;background:#FFF;color:#0F7F79;font-size:13px;font-weight:600;white-space:nowrap;box-shadow:none}
.service-expand-all:hover{background:#EEF6F3}
.service-expand-all[aria-pressed="true"]{border-color:#0F7F79;background:#E3F1EF}
#adminSettings .price-list-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
#adminSettings .price-list-tools .admin-search{flex:1 1 280px;max-width:420px;margin:0}
#adminSettings .new-service-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.4fr) minmax(0,1fr) minmax(0,.8fr);gap:12px;align-items:end;margin-top:12px;padding:16px;border:1px solid #E1E6E2;border-radius:10px;background:#FFF}
#adminSettings .new-service-form label{display:grid;gap:6px;font-size:13px;color:#3A4741}
#adminSettings .new-service-form label.check{display:flex;align-items:center;grid-column:1/-1}
#adminSettings .new-service-form .admin-actions{grid-column:1/-1;margin:0}
#adminSettings .row-remove{width:34px;min-width:34px;min-height:34px;padding:0;justify-content:center;border:0;background:transparent;color:#A24A4A;font-size:20px;box-shadow:none}
#adminSettings .row-remove:hover{background:#FDF3F3}
@media(min-width:761px){#adminSettings .service-price-row:has(.row-remove){grid-template-columns:minmax(220px,3fr) minmax(110px,1fr) minmax(110px,1fr) 44px 34px}}
@media(max-width:760px){#adminSettings .new-service-form{grid-template-columns:1fr}}
/* Шаг «Итог и согласование» */
.final-summary{display:grid;gap:18px;margin-top:6px}
.final-block h3{margin:0 0 6px;color:#56635C;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}
.final-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #EDF0EE}
.final-row>span{display:grid;gap:2px}.final-row b{font-weight:500;color:#1F2A25}.final-row small{color:#7A857F;font-size:12px}
.final-row strong{white-space:nowrap;font-weight:600;color:#1F2A25}
.final-row.final-discount strong{color:#0F7F79}
.final-row.final-total{border-bottom:0}.final-row.final-total b{font-weight:600}.final-row.final-total strong{font-size:16px;font-weight:600}
.final-grand{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 16px;border-radius:10px;background:#EEF6F3;font-weight:600}
.final-grand strong{font-size:22px;color:#0F5E59}
.final-note{margin:0}
.final-kit{margin:16px 0 0;color:#56635C;font-size:13px}.final-kit b{color:#1F2A25}
.final-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.final-actions #agreeContract:disabled{opacity:1;background:#E3F1EF;color:#0F7F79;border-color:#BFDCD5;cursor:default}
.final-agree-state{margin:10px 0 0;padding:10px 14px;border-left:3px solid #0F7F79;background:#F3F8F6;color:#2B3530;font-size:13px}
.final-included{margin:0;padding:9px 0;border-bottom:1px solid #EDF0EE;color:#56635C;font-size:13px;line-height:1.5}.final-included b{color:#1F2A25;font-weight:500}
.final-terms{margin:0;color:#56635C;font-size:13px}.final-terms b{color:#1F2A25;font-weight:500}#issues li.issue-note{color:#6B5A2E;background:#FBF6EA;border-color:#F0E2BF;list-style:none}
/* Статусы разделов убраны; отметка «готово» только на шагах вверху. */
.form-section>.card-head .section-state{display:none!important}
.form-section>.card-head h2{position:relative}
.summary.summary-compact .contract-section-link .section-link-state{flex:0 0 22px;width:22px!important;height:22px!important;min-width:22px;border:2px solid #C9D2CD;font-size:0}
.summary.summary-compact .contract-section-link.is-complete .section-link-state{border-color:#1F8A70;background:#1F8A70;color:#fff;font-size:13px;font-weight:600}
.summary.summary-compact .contract-section-link.has-error .section-link-state{border-color:#B8593B;background:#B8593B;color:#fff;font-size:13px;font-weight:600}
.summary.summary-compact .contract-section-link.is-complete{color:#1F2A25}
.final-row{display:grid;grid-template-columns:minmax(0,1fr) 70px 120px 120px;align-items:baseline;gap:12px}
.final-row .fr-qty,.final-row .fr-price{color:#3A4741;text-align:right;white-space:nowrap;font-size:14px}
.final-row>strong{text-align:right}
.final-row.final-head{padding:6px 0;color:#7A857F;font-size:12px;border-bottom:1px solid #DDE3DF}
.final-row.final-head>span,.final-row.final-head>strong{color:#7A857F;font-size:12px;font-weight:500}
@media(max-width:640px){.final-row{grid-template-columns:minmax(0,1fr) 90px}.final-row .fr-qty,.final-row .fr-price{display:none}}
.server-outdated{position:sticky;top:0;z-index:50;padding:10px 20px;background:#B8593B;color:#fff;font-size:14px;font-weight:600;text-align:center}
#adminSettings .contract-rich-editor a.provision-link{color:#0563C1;text-decoration:underline;cursor:text}
/* Шаги договора: современный степпер — готово / текущий / впереди. */
.tabs{display:flex!important;align-items:center!important;gap:0!important;margin:0 0 20px!important;padding:6px 0 14px!important;border-bottom:1px solid #E3E8E5!important;background:transparent!important;overflow-x:auto}
.tabs .tab{display:flex!important;flex:1 1 0;align-items:center;gap:10px;min-height:0!important;min-width:max-content;margin:0!important;padding:6px 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#7A857F;font-size:14px;font-weight:500;cursor:pointer}
.tabs .tab:last-child{flex:0 0 auto}
.tabs .tab::before,.tabs .tab .tab-icon,.tabs .tab .tab-number{display:none!important}
.tabs .tab .tab-marker{display:inline-flex!important;order:0;flex:none;width:22px!important;height:22px!important;min-width:22px;margin:0!important;border:1.5px solid #CBD3CE;border-radius:50%;background:#FFF!important;font-size:0!important;position:static!important;box-sizing:border-box}
.tabs .tab .tab-label{order:1;font-size:14px;white-space:nowrap}
.tabs .tab:not(:last-child)::after{content:'';order:2;flex:1 1 auto;min-width:24px;height:1.5px;margin:0 14px 0 4px;border-radius:2px;background:#E1E6E2}
.tabs .tab.is-done .tab-marker{border-color:#1F8A70;background:#1F8A70 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/13px no-repeat!important}
.tabs .tab.is-done{color:#2B3530}
.tabs .tab.is-done:not(:last-child)::after{background:#1F8A70}
.tabs .tab[aria-selected="true"]{color:#14201B;font-weight:600}
.tabs .tab[aria-selected="true"] .tab-marker{border:2px solid #1F8A70;box-shadow:0 0 0 4px rgba(31,138,112,.14)}
.tabs .tab[aria-selected="true"]:not(.is-done) .tab-marker{background:#FFF radial-gradient(circle,#1F8A70 0 4px,transparent 4.5px)!important}
.tabs .tab.has-error:not(.is-done) .tab-marker{border-color:#C0563A;background:#C0563A url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 6v8M12 18h.01'/%3E%3C/svg%3E") center/13px no-repeat!important}
.tabs .tab:hover:not([aria-selected="true"]){color:#2B3530}
.tabs .tab:focus-visible{outline:2px solid #1F8A70;outline-offset:4px;border-radius:6px!important}
@media(max-width:760px){.tabs .tab{flex:0 0 auto}.tabs .tab:not(:last-child)::after{min-width:16px;margin:0 8px 0 2px}.tabs .tab .tab-label{font-size:13px}}
.recurring-tag{display:inline-block;margin-top:4px;padding:1px 8px;border-radius:999px;background:#E3F1EF;color:#0F7F79;font-size:11px;font-style:normal;font-weight:600}
.tabs .tab:not(:last-child)::after{position:static!important;display:block!important;inset:auto!important;width:auto!important;transform:none!important;opacity:1!important}
.tabs .tab:last-child::after{display:none!important}
.move-service{justify-self:start;margin-top:4px;padding:2px 0;min-height:0;border:0;background:none;color:#0F7F79;font-size:12px;font-weight:600;cursor:pointer;box-shadow:none}.move-service:hover{text-decoration:underline}

/* Замечания на шаге «Итог и согласование» */
.final-issues{margin:18px 0 4px;padding:14px 16px;border:1px solid #f3d9a4;background:#fff8ea;border-radius:14px}
.final-issues-title{margin:0 0 8px;font-weight:600;color:#7a4d00}
.final-issues ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.final-issues li{padding:8px 12px;border-radius:10px;background:#fff;border:1px solid #f0e2c4;cursor:pointer}
.final-issues li:hover{border-color:#e0a63a;color:#7a4d00}
.final-issues li:not(.issue-note):not(.validation-success)::after{content:' →';color:#b07a12}
.final-issues li.issue-note,.final-issues li.validation-success{cursor:default;background:#f6f8fb;border-color:#e3e8ef;color:#556}
.final-issues ul{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.final-issues li{position:relative;padding:8px 12px 8px 38px;margin:0;line-height:1.35}
.final-issues li::before{left:12px!important;top:50%!important;transform:translateY(-50%)}
.final-issues li.issue-note::before,.final-issues li.validation-success::before{left:12px!important}
/* Отметки «готово» у разделов в боковой навигации убраны: остаются только у шагов вверху. */
.contract-section-link .section-link-state{display:none!important}
.contract-section-link.has-error .section-link-state{display:inline-flex!important}
/* Шаг «Итог и согласование» оформлен так же, как шаги 1–2: разделы без вложенных карточек. */
#panel-2{padding:0 30px;background:#FFF}
#panel-2 .section-workspace{min-width:0}
#panel-2 .contract-section-editor>.form-section{margin:0;padding:30px 0 32px;border:0;border-bottom:1px solid #E3E8E5;border-radius:0;background:transparent;box-shadow:none}
#panel-2 .contract-section-editor>.form-section:last-child{border-bottom:0}
#panel-2 .contract-section-editor>.form-section[hidden]{display:none}
#panel-2 .form-section>.card-head{margin:0 0 18px}
#panel-2 .form-section>.card-head h2{font-size:20px;line-height:1.35;color:#1E2B25}
#panel-2 .form-section .section-icon{width:32px;height:32px;border-radius:9px}
#panel-2 .card-description{margin:-8px 0 20px;font-size:13px;line-height:1.55}
@media (max-width:760px){#panel-2{padding:0 18px}#panel-2 .contract-section-editor>.form-section{padding:24px 0 26px}}
/* Итоговый расчёт: шрифт крупнее, чтобы таблицы читались легко. */
#panel-2 .card-description{font-size:14.5px}
#panel-2 .final-row{font-size:15.5px;padding:12px 0}
#panel-2 .final-row .fr-name b{font-size:15.5px;font-weight:500}
#panel-2 .final-row small{font-size:13.5px;margin-top:3px}
#panel-2 .final-row.final-head{font-size:13.5px;padding:8px 0}
#panel-2 .final-row.final-total{font-size:17px}
#panel-2 .final-row.final-total strong{font-size:19px}
#panel-2 .final-included,#panel-2 .final-terms,#panel-2 .final-kit{font-size:14.5px}
#panel-2 .move-service{font-size:14px}
#panel-2 .final-grand span{font-size:17px}
#panel-2 .final-grand strong{font-size:26px}
#panel-2 .final-issues li,#panel-2 .final-issues-title{font-size:14.5px}
#panel-2 .final-row.final-total .fr-name b{font-weight:600}
#panel-2 .final-agree-state{margin:16px 0 0;padding:14px 16px;border:1px solid #BFDCD5;border-left:4px solid #1F8A70;border-radius:12px;background:#EEF7F3;font-size:14.5px;line-height:1.5}
#panel-2 .final-agree-state b{color:#176B58}
/* Логотип «КРЦ · 20 лет» в боковой панели; в свёрнутой панели — знак КРЦ. */
.brand img.brand-full{width:200px;max-width:100%}
.brand img.brand-mark{display:none}
.sidebar-collapsed .brand img.brand-full{display:none}
.sidebar-collapsed .brand img.brand-mark{display:block;width:56px}
/* Крупный логотип в развёрнутой боковой панели. */
.brand-row{align-items:center}
.brand img.brand-full{width:100%;max-width:204px;max-height:120px;height:auto;object-fit:contain;object-position:left center}
@media(max-height:700px) and (min-width:761px){.brand img.brand-full{max-width:150px}}
.brand-row .icon-button{margin-top:0;align-self:flex-start}
/* Реестр договоров: в стиле остальных страниц, крупный шрифт. */
.registry-page .page-lead{margin:6px 0 22px;color:#56635C;font-size:15px;line-height:1.55;max-width:860px}
.registry-card{padding:8px 26px 14px}
.registry-table{width:100%;border-collapse:collapse;font-size:15px}
.registry-table thead th{padding:16px 12px 12px;background:transparent;color:#7A857F;font-size:13px;font-weight:500;text-align:left;border-bottom:1px solid #DDE3DF;white-space:nowrap}
.registry-table td{padding:16px 12px;border-bottom:1px solid #EDF0EE;vertical-align:top;color:#1F2A25;line-height:1.4}
.registry-table td small{display:block;margin-top:3px;color:#7A857F;font-size:13px}
.registry-table td b{font-weight:600}
.registry-status{display:inline-block;padding:3px 10px;border-radius:999px;background:#F6EEDC;color:#7A5A12;font-size:13px;font-weight:500;white-space:nowrap}
.registry-status.is-approved{background:#E3F1EC;color:#176B58}
.registry-actions{white-space:nowrap;text-align:right}
.registry-actions button{margin-left:6px;padding:8px 14px;font-size:14px}
.registry-actions button.is-active{background:#EEF6F3;border-color:#BFDCD5;color:#176B58}
.registry-history>td{padding:0 12px 18px;background:#FAFBFA}
.history-list{margin:0;padding:6px 0 0;list-style:none;display:grid;gap:8px}
.history-list li{padding:12px 16px;border:1px solid #E3E8E5;border-radius:12px;background:#fff}
.history-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:14.5px}
.history-head span{color:#56635C}
.history-list p{margin:6px 0 0;color:#56635C;font-size:14px}
.history-list .link-button{margin-top:8px;padding:0;border:0;background:none;color:#0F7F79;font-size:14px;cursor:pointer}
@media (max-width:1000px){.registry-card{padding:6px 12px;overflow-x:auto}.registry-table{min-width:900px}}
/* Прайс и исполнители: компактные сворачиваемые блоки. */
.page-lead{margin:6px 0 22px;color:#56635C;font-size:15px;line-height:1.55;max-width:860px}
.page-subtitle{margin:34px 0 0;font-size:24px}
.provider-list{padding:6px 26px}
.provider-item{border-bottom:1px solid #EDF0EE}
.provider-item:last-child{border-bottom:0}
.provider-item>summary{display:flex;align-items:center;gap:14px;padding:16px 0;cursor:pointer;list-style:none}
.provider-item>summary::-webkit-details-marker{display:none}
.provider-mark{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#F1EEFA;color:#6B5BB5}
.provider-mark .icon{width:18px;height:18px}
.provider-title{flex:1;min-width:0}
.provider-title b{display:block;font-size:16.5px;color:#1E2B25}
.provider-title small{display:block;margin-top:2px;color:#7A857F;font-size:13.5px}
.provider-item>summary button{flex:none;font-size:14px;padding:8px 14px}
.provider-chevron,.price-block summary i{flex:none;font-style:normal;color:#7A857F;transition:transform .2s}
.provider-item[open] .provider-chevron,.price-block[open] summary i{transform:rotate(180deg)}
.provider-details{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px 28px;margin:0 0 18px 50px;padding:0}
.provider-details div{padding:8px 0;border-bottom:1px solid #F0F2F1}
.provider-details dt{color:#7A857F;font-size:13px}
.provider-details dd{margin:2px 0 0;font-size:15px;color:#1F2A25;word-break:break-word}
.catalog-search{width:100%;max-width:520px;margin:0 0 16px;font-size:15px}
.price-blocks{display:grid;gap:12px}
.price-block{border:1px solid #E6EAE7;border-radius:16px;background:#fff;box-shadow:var(--shadow)}
.price-block>summary{display:flex;align-items:center;gap:12px;padding:18px 22px;cursor:pointer;list-style:none}
.price-block>summary::-webkit-details-marker{display:none}
.price-block>summary b{flex:1;font-size:17px;color:#1E2B25}
.price-block>summary span{color:#7A857F;font-size:14px}
.price-block-body{padding:0 22px 14px}
.price-block .catalog-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid #EDF0EE;font-size:15px}
.price-block .catalog-row small{display:block;margin-top:2px;color:#7A857F;font-size:13px;font-weight:400}
.price-block .catalog-row b{text-align:right;white-space:nowrap;font-weight:600}
.tariff-group h4{margin:14px 0 4px;color:#56635C;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}
@media (max-width:700px){.provider-item>summary{flex-wrap:wrap}.provider-details{margin-left:0}}
/* Реестр: номер договора не переносится. */
.registry-table td:first-child b{white-space:nowrap}
.registry-page .registry-block{margin-bottom:14px}
.registry-block .price-block-body{padding:0 22px 8px;overflow-x:auto}
.registry-block .registry-table thead th{padding-top:8px}
.registry-empty{margin:4px 0 12px}
.price-block>summary::before,.price-block>summary::after{content:none!important;display:none!important}
.tariff-grid{display:grid;gap:10px;padding-top:6px}
.tariff-group{padding:12px 0;border-top:1px solid #EDF0EE}
.tariff-group h4{margin:0 0 8px}
.tariff-plans{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.tariff-plan{padding:10px 12px;border:1px solid #E6EAE7;border-radius:10px;background:#FAFBFA}
.tariff-plan span{display:block;color:#56635C;font-size:13.5px}
.tariff-plan b{display:block;margin-top:2px;font-size:16px;color:#1E2B25}
.tariff-plan small{color:#7A857F;font-size:12.5px}
.provider-item>summary::before,.provider-item>summary::after{content:none!important;display:none!important}
.tariff-grid{grid-template-columns:repeat(auto-fill,minmax(440px,1fr));column-gap:28px}
.tariff-plans{grid-template-columns:repeat(4,minmax(0,1fr))}
.tariff-plan{padding:8px 10px}
.tariff-plan b{font-size:15px}
@media (max-width:700px){.tariff-grid{grid-template-columns:1fr}.tariff-plans{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Полужирный вместо тяжёлого: на Windows так текст остаётся чётким. */
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.registry-table td b,.price-block>summary b,.provider-title b,.history-head b{font-weight:600}
/* Во всём портале полужирный 600 вместо 700: на Windows он не «расплывается». */
b,strong,h2,h3,h4,h5,th,summary b,legend{font-weight:600}
h1{font-weight:700}
/* Прайс: одна поверхность с тонкими разделителями, без карточек внутри карточки. */
#catalogRows.price-blocks{display:block;gap:0;padding:4px 26px;border-radius:18px;background:#fff;box-shadow:var(--shadow)}
#catalogRows .price-block{border:0;border-bottom:1px solid #EDF0EE;border-radius:0;background:transparent;box-shadow:none}
#catalogRows .price-block:last-child{border-bottom:0}
#catalogRows .price-block>summary{padding:18px 0}
#catalogRows .price-block-body{padding:0 0 16px}
.provider-list.card{padding:6px 26px}
.tariff-plan em{display:block;margin-top:4px;color:#56635C;font-size:12.5px;font-style:normal}
/* Услуги внутри блока: крупнее и в две колонки на широком экране. */
#catalogRows .price-block-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
#catalogRows .price-block-body>.tariff-grid{grid-column:1/-1}
#catalogRows .catalog-row{font-size:16px;padding:14px 0;align-items:baseline}
#catalogRows .catalog-row small{font-size:14px}
#catalogRows .catalog-row b{font-size:16px}
@media (max-width:1100px){#catalogRows .price-block-body{grid-template-columns:1fr}}
.tariff-grid{grid-template-columns:1fr!important}
.tariff-plan small{display:block}
.tariff-plan{padding:10px 14px}
.tariff-plan span{font-size:14.5px}
.tariff-plan b{font-size:17px}
.tariff-plan small,.tariff-plan em{font-size:13.5px}
#catalogRows .catalog-row>span{font-size:16px;color:#1F2A25}#catalogRows .catalog-row>b small{font-weight:400}
/* Настройки → Оформление: загрузка логотипа портала. Превью повторяет размеры логотипа в меню. */
#adminSettings .logo-editor{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px 24px;align-items:start}
#adminSettings .logo-preview{display:flex;align-items:center;width:240px;min-height:150px;padding:18px;border:1px solid #E3E8E5;border-radius:10px;background:#F7F8F7;box-sizing:border-box}
#adminSettings .logo-preview img{display:block;width:204px;max-height:120px;height:auto;object-fit:contain;object-position:left center}
#adminSettings .logo-guide{font-size:14px;line-height:1.55;color:#3B4842}
#adminSettings .logo-guide ul{margin:6px 0 0;padding-left:18px}
#adminSettings .logo-guide li{margin:3px 0}
#adminSettings .logo-file-state,#adminSettings .logo-editor .admin-actions{grid-column:1/-1;margin:0}
@media(max-width:760px){#adminSettings .logo-editor{grid-template-columns:1fr}}
/* Единый вид пунктов в «Категориях услуг» и «Составе абонентских услуг»: 15 px, обычное начертание; отмеченный пункт — полужирный зелёный. */
#panel-1 .categories-card label.choice-check,.subscription-services-card .core-service-row .service-card-copy b{font-size:15px;font-weight:400;line-height:1.45;color:#33423A}
#panel-1 .categories-card label.choice-check:has(input:checked),.subscription-services-card .core-service-row.is-selected .service-card-copy b,.subscription-services-card .core-service-row:has(input:checked) .service-card-copy b{font-weight:600;color:#176B58}
/* Окна входа, регистрации и смены пароля 26.10.2026: компактная карточка в стиле портала (светлый фон, бирюзовый акцент). */
dialog.auth-dialog{width:min(420px,calc(100vw - 32px));max-width:none;padding:0;border:1px solid #E3E8E5;border-radius:18px;background:#fff;box-shadow:0 24px 64px rgba(24,40,33,.16),0 2px 6px rgba(24,40,33,.06);overflow:auto}
dialog.auth-dialog.auth-wide{width:min(560px,calc(100vw - 32px))}
dialog.auth-dialog::backdrop{background:rgba(30,45,38,.28);backdrop-filter:blur(6px)}
dialog.auth-dialog form{display:grid;gap:16px;padding:32px 32px 28px}
dialog.auth-dialog .login-brand{display:block;width:132px;height:auto;margin:0 0 4px}
dialog.auth-dialog h2{margin:0;color:#1F2A25;font-size:22px;font-weight:600;letter-spacing:-.3px;line-height:1.3}
dialog.auth-dialog h2+p{margin:-8px 0 4px;color:#66736D;font-size:14px;line-height:1.5}
dialog.auth-dialog label,dialog#login.auth-dialog label{display:grid;gap:6px;margin:0;color:#3B4842;font-size:13px;font-weight:500}
dialog.auth-dialog input{min-height:46px;margin:0;padding:11px 14px;border:1px solid #D8DFDB;border-radius:10px;background:#FBFCFB;color:#1F2A25;font-size:15px}
dialog.auth-dialog input:hover{border-color:#B9C6C0}
dialog.auth-dialog input:focus{border-color:#0F7F79;background:#fff;box-shadow:0 0 0 3px rgba(15,127,121,.14)}
dialog.auth-dialog .password-field input{padding-right:50px}
dialog.auth-dialog .password-field [data-toggle-password]{top:50%}
dialog.auth-dialog .grid{gap:16px}
dialog.auth-dialog button[type=submit],dialog#login.auth-dialog button[type=submit]{width:100%;min-height:48px;margin:8px 0 0;border:0;border-radius:10px;background:#0F7F79;color:#fff;font-size:15px;font-weight:600;box-shadow:0 6px 16px rgba(15,127,121,.22)}
dialog.auth-dialog button[type=submit]:hover{background:#0B6863}
dialog.auth-dialog button[type=submit]:focus-visible{outline:3px solid rgba(15,127,121,.35);outline-offset:2px}
dialog.auth-dialog .hint{margin:0;color:#66736D;font-size:13px;line-height:1.5;text-align:center}
dialog.auth-dialog [role=alert]{margin:0;color:#C24848;font-size:13px;line-height:1.45}
dialog.auth-dialog [role=alert]:empty{display:none}
@media(max-width:480px){dialog.auth-dialog form{padding:24px 20px 20px}dialog.auth-dialog .grid{grid-template-columns:1fr}}
/* Боковое меню 26.10.2026: крупнее пункты, больше воздуха под логотипом, ФИО целиком в две строки. */
aside .brand-row{padding-bottom:28px}
aside nav{gap:4px}
aside .nav{min-height:46px;padding:10px 12px;font-size:16px}
aside .nav .icon{width:20px;height:20px;min-width:20px}
aside .aside-bottom .nav{font-size:15px}
aside .profile{align-items:center;min-height:56px}
aside .avatar{width:36px;height:36px;font-size:13px;font-weight:600}
aside .profile{grid-template-columns:36px minmax(0,1fr)}
aside #identity{gap:3px;line-height:1.3}
aside #identity b{font-size:14.5px;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
aside #identity small{font-size:13px;white-space:normal;overflow:visible;text-overflow:clip}
.sidebar-collapsed aside .brand-row{padding-bottom:12px}
.sidebar-collapsed aside .nav{padding:10px}
/* Меню шире (300 px), чтобы «Настройки администратора» не упирались в край. */
:root{--sidebar-expanded:300px}
aside{padding-left:16px;padding-right:16px}
