@charset "UTF-8";
:root{--ink:#192338;--muted:#737f93;--brand:#2563EB;--brand-hover:#1d4ed8;--brand-soft:#eff6ff;--brand-ink:#1e40af;--brand-on:#fff;--brand-focus:#93c5fd;--blue:var(--brand);--line:#e7ebf2;--bg:#f5f7fb;--nav:#121c2e;--radius:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,summary,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}input,select{width:100%;border:1px solid #dce2ec;border-radius:8px;background:#fff;padding:12px;color:var(--ink);min-width:0}input:focus,select:focus{border-color:var(--blue);outline:3px solid var(--brand-soft)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--brand-focus);outline-offset:4px}label{display:block;font-weight:600;font-size:13px;margin:0 0 8px}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1px;line-height:1.25;font-weight:700}h2{font-size:16px;letter-spacing:-.3px}h3{font-size:14px}.muted{color:var(--muted);line-height:1.6}.icon{width:20px;height:20px;flex-shrink:0}.workspace{background:var(--bg)}.skip-link{position:fixed;z-index:100;left:20px;top:-80px;background:white;padding:14px;border:1px solid var(--blue)}.skip-link:focus{top:12px}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width,260px);background:var(--nav);color:#aab5ca;padding:30px 17px 20px;display:flex;flex-direction:column;z-index:30;overflow-y:auto;overflow-x:hidden}.brand{display:flex;align-items:center;gap:12px;color:white;font-size:25px;font-weight:800;letter-spacing:1px;padding:0 13px}.brand-symbol{display:block;position:relative;background:var(--brand);color:var(--brand-on);border-radius:11px;width:42px;height:44px;padding-left:10px;line-height:44px;font-size:31px;font-weight:800;letter-spacing:-3px;flex-shrink:0}.brand-symbol span{position:absolute;width:7px;height:7px;border-radius:2px;background:var(--brand-focus);top:9px;right:9px}.brand-subtitle{display:flex;align-items:center;gap:7px;font-weight:500;font-size:8px;letter-spacing:1.8px;color:#8997b3;margin-top:2px}.brand-subtitle b{font-weight:600;font-size:9px;letter-spacing:0;border:1px solid #43516c;border-radius:3px;padding:1px 3px}.workspace-label{font-size:11px;background:#1b273c;border:1px solid #2a374d;border-radius:7px;margin:28px 8px 26px;padding:11px 9px;display:flex;gap:8px;align-items:center;color:#c3cce0}.workspace-dot{width:7px;height:7px;border-radius:50%;background:var(--brand-focus)}.tiny-chevron{margin-left:auto}.nav-heading{color:#6f809f;letter-spacing:1.7px;font-weight:700;font-size:9px;padding:0 15px;margin-bottom:10px}.nav-second{margin-top:25px}.nav-item{padding:10px 13px;min-height:41px;display:flex;gap:12px;align-items:center;margin:3px 0;border-radius:8px;font-size:12px;transition:background .15s,color .15s}.nav-item .icon{width:18px;height:18px}.nav-item:hover{color:#fff;background:#1b2940}.nav-item.active{background:var(--brand);color:var(--brand-on);box-shadow:0 3px 10px #0002}.nav-active-dot{background:var(--brand-focus);border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding:28px 10px 0}.sidebar-note{border:1px solid #29364d;border-radius:9px;padding:13px 11px;font-size:11px;color:#cad4e7}.status-light{display:inline-block;width:6px;height:6px;border-radius:50%;background:#48bd9b;margin-right:5px;vertical-align:middle}.sidebar-note>span:last-child{display:block;margin:6px 0 0 12px;font-size:10px;color:#7e8fae}.sidebar-version{font-size:10px;color:#9aaac6;margin-top:18px}.sidebar-version span{display:block;color:#637591;margin-top:4px;font-size:9px}.main-shell{margin-left:var(--sidebar-width,260px);min-width:0}.topbar{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 36px;gap:20px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:18px}.breadcrumb{display:flex;align-items:center;gap:12px;color:#9099aa;font-size:12px}.breadcrumb .icon{width:12px;height:12px;color:#aab2c0}.breadcrumb strong{color:#3c465a;font-weight:500}.topbar-divider{height:28px;width:1px;background:var(--line)}.account{display:flex;align-items:center;gap:10px}.avatar{width:35px;height:35px;border-radius:11px;background:var(--brand-soft);color:var(--brand-ink);display:grid;place-items:center;font-size:14px;font-weight:700}.account strong{display:block;font-size:12px;font-weight:600}.account small{display:block;color:#8b95a8;font-size:10px;margin-top:3px}.icon-button{display:grid;place-items:center;background:transparent;border:0;border-radius:8px;padding:8px;color:#77829a}.icon-button:hover{background:var(--bg)}.sidebar-toggle{display:grid;flex-shrink:0}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:5px;font-size:10px;font-weight:600;padding:5px 8px;white-space:nowrap}.sandbox{color:#8a6414;background:#fff6db;border:1px solid #f5e8b7}.sandbox:before{content:'';width:5px;height:5px;border-radius:50%;background:#d4a53b}.neutral{background:#f0f3f8;color:#65728a}.development{background:#edf1ff;color:#556ac1}.good{background:#e8f6f0;color:#2c8369}main{padding:34px 36px 0;max-width:1680px;margin:auto;outline:none}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.eyebrow{font-size:9px;letter-spacing:1.6px;font-weight:700;color:#7f8ba0;margin-bottom:10px}.page-heading p{margin-top:9px;font-size:12px}.date-chip{font-size:11px;display:flex;align-items:center;gap:9px;background:white;border:1px solid var(--line);padding:10px 13px;border-radius:8px;color:#758198;white-space:nowrap}.date-chip .icon{width:15px;height:15px}.notice{padding:17px 19px;display:flex;align-items:center;gap:14px;background:#edf2ff;border:1px solid #dce5ff;border-radius:10px;margin-bottom:25px;color:#556994}.notice-icon{border-radius:9px;background:#e0e8ff;color:#4766ca;padding:9px;display:flex}.notice strong{font-size:12px;font-weight:600;color:#354b7b}.notice p{font-size:11px;line-height:1.6;margin-top:4px}.notice .badge{margin-left:auto;background:#e0e8ff;color:#667bb4}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:25px}.metric-card{border:1px solid var(--line);background:white;border-radius:var(--radius);padding:19px 20px 17px;box-shadow:0 3px 7px #152b4c02}.metric-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;color:#63728b}.metric-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;flex-shrink:0}.metric-icon .icon{width:17px;height:17px}.blue{background:#edf1ff;color:#5874e3}.amber{background:#fff4df;color:#cd9c3c}.green{background:#eaf7f1;color:#3f9b7a}.purple{background:#f1edff;color:#9575d4}.metric-value{display:block;font-size:34px;line-height:1.4;font-weight:600;color:#33415c;margin-top:9px}.metric-detail{color:#79879c;font-size:10px;margin:3px 0 13px}.metric-state{color:#9aa4b6;font-size:9px;border-top:1px solid #f0f2f7;display:block;padding-top:12px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(315px,1fr);gap:22px}.panel{border-radius:var(--radius);background:#fff;border:1px solid var(--line);overflow:hidden;box-shadow:0 3px 8px #152b4c02}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:23px 23px 19px}.panel-heading p{font-size:11px;color:var(--muted);margin-top:6px;line-height:1.6}.text-link{color:#5670cc;font-size:11px;font-weight:500;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.text-link .icon{width:14px;height:14px}.text-link:hover{color:#233fe0}.search-form{display:flex;align-items:center;gap:10px;border:1px solid var(--line);margin:0 23px 22px;padding:5px 5px 5px 12px;border-radius:8px;color:#9aa6bb}.search-form input{border:none;outline:none;background:transparent;padding:7px 0;font-size:11px}.search-form input:focus{outline:none}.search-form:focus-within{outline:2px solid var(--brand-focus)}.search-form .icon{width:16px;height:16px}.button{display:inline-flex;justify-content:center;align-items:center;gap:9px;border:1px solid transparent;border-radius:7px;padding:11px 15px;font-size:11px;font-weight:600;line-height:1.4;white-space:nowrap}.button .icon{width:15px;height:15px}.primary{background:var(--brand);color:var(--brand-on)}.primary:hover{background:var(--brand-hover)}.secondary{background:white;color:#5e6d87;border-color:#dee4ef}.secondary:hover{background:#f6f8fd}.small{padding:8px 12px;font-size:10px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}thead{background:#f9fafc;border-top:1px solid #eff2f7;border-bottom:1px solid #eff2f7}th{font-size:9px;color:#8b97aa;font-weight:600;letter-spacing:.6px;padding:13px 23px;white-space:nowrap}td{padding:16px 23px;border-bottom:1px solid #f0f2f7;line-height:1.5;vertical-align:middle}tbody tr:last-child td{border-bottom:0}.empty-state{display:flex;align-items:center;justify-content:center;text-align:center;flex-direction:column;padding:35px 20px 37px;min-height:250px}.empty-icon{width:51px;height:51px;display:grid;place-items:center;background:#f2f5fb;color:#8da0c3;border-radius:15px;margin-bottom:15px}.empty-icon .icon{width:23px;height:23px}.empty-state h3,.empty-state h2{margin-bottom:9px;color:#53637d;font-size:14px}.empty-state p{color:#929db0;line-height:1.8;font-size:11px;max-width:450px}.empty-state .button{margin-top:20px}.empty-state .badge{margin-bottom:15px}.spacious{min-height:340px}.cycle-panel .panel-heading{padding-bottom:20px}.cycle-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f6f8fc;border:1px solid var(--line);border-radius:7px;margin:0 23px 17px;padding:9px 10px;text-align:center;gap:12px;color:#7183b6;font-size:9px;letter-spacing:1px;font-weight:600}.cycle-list{padding:0 23px}.cycle-row{border-bottom:1px solid #f0f2f7;padding:12px 0;display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:10px;color:#7b889e}.cycle-row div{display:flex;gap:20px}.cycle-row strong{font-weight:500;color:#53637e;min-width:37px;text-align:right}.cycle-note{font-size:9px;background:#f6f8fc;color:#7d8c9e;border-radius:6px;padding:10px;margin:18px 23px 17px}.cycle-note .status-light{background:#9dacc4;width:5px;height:5px}.cycle-panel>.text-link{margin:0 23px 23px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:29px 0 16px}.section-heading h2{font-size:14px}.section-heading span{font-size:10px;color:#8c98ac}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.quick-card{border:1px solid var(--line);background:white;padding:20px 18px;border-radius:11px;display:flex;align-items:center;gap:12px;transition:border-color .15s,transform .15s}.quick-card:hover{border-color:#bac8fa;transform:translateY(-2px)}.quick-icon{background:#f3f6fc;color:#8495bb;border-radius:10px;display:grid;place-items:center;width:37px;height:37px;flex-shrink:0}.quick-icon .icon{width:18px;height:18px}.quick-card h3{font-size:11px;margin-bottom:5px;color:#52637e}.quick-card p{font-size:9px;color:#95a1b4;line-height:1.6}.quick-card>.icon{width:14px;height:14px;color:#a9b5ca;margin-left:auto}.page-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:34px;padding:20px 0;color:#9aa5b8;font-size:9px}.footer-dot{padding:0 6px}.below{margin-top:22px}.standalone{margin:0 0 22px;background:white;max-width:600px}.settings-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:22px}.setting-list{margin:0;padding:0 23px 14px}.setting-list>div{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);gap:12px}.setting-list>div:last-child{border-bottom:0}.setting-list dt{font-size:11px;color:#7d8a9f}.setting-list dd{margin:0;font-size:11px}.panel-footnote{padding:16px 23px;color:#929db0;font-size:10px}.series-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 23px 23px;gap:25px}.series-grid code{display:block;color:var(--blue);font-size:17px;margin-bottom:13px}.series-grid h3{font-size:12px;margin-bottom:8px}.series-grid p{font-size:10px;color:#8b97aa;line-height:1.7}.alert{border:1px solid;border-radius:8px;padding:14px 16px;margin-bottom:22px;font-size:12px;line-height:1.6}.alert.success{color:#28735b;background:#ecf9f2;border-color:#d1edde;display:flex;gap:10px;align-items:center}.alert.error{background:#fff0f0;color:#a04444;border-color:#f3d5d5}.alert ul{margin:7px 0 0;padding-left:20px}.count-chip{border-radius:7px;padding:6px 10px;background:#f1f4fa;color:#77849b}.admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:23px}.form-help{font-size:11px;color:#8a96aa;line-height:1.6;grid-column:1/-1}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end}summary{display:flex;align-items:center;justify-content:space-between;padding:20px 23px;cursor:pointer;font-size:13px;font-weight:600}details[open]>summary{border-bottom:1px solid var(--line)}.sidebar-backdrop{display:none}.login-page{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:#fff}.login-story{background:#111e35;color:white;padding:42px 48px 28px;display:flex;flex-direction:column;position:relative;overflow:hidden}.login-story:before{content:'';position:absolute;inset:20% -60% -50% -70%;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--brand) 30%,transparent) 0,transparent 60%);pointer-events:none}.login-story .brand{padding:0;z-index:1}.login-story-body{margin:auto 0;position:relative;padding:40px 0 20px}.login-story h1{font-size:52px;line-height:1.2;letter-spacing:-1.7px;font-weight:650}.network-art{position:relative;height:270px;margin-top:42px;max-width:440px}.orbit{border:1px solid color-mix(in srgb,var(--brand) 25%,transparent);border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-one{width:140px;height:140px}.orbit-two{width:240px;height:240px}.orbit-three{width:340px;height:340px}.network-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:66px;height:66px;background:var(--brand-ink);border:1px solid var(--brand);border-radius:18px;box-shadow:0 0 80px color-mix(in srgb,var(--brand) 20%,transparent);display:grid;place-items:center;color:var(--brand-focus)}.network-center .icon{width:32px;height:32px}.network-node{position:absolute;width:13px;height:13px;border-radius:50%;background:var(--brand-focus);box-shadow:0 0 0 7px color-mix(in srgb,var(--brand) 20%,transparent)}.node-a{left:28%;top:15%}.node-b{left:76%;top:65%;background:#66bfae}.node-c{left:9%;top:72%;width:8px;height:8px}.login-story-footer{display:flex;justify-content:space-between;color:#7086ad;font-size:10px;position:relative;gap:15px}.login-panel{padding:44px 10%;display:flex;flex-direction:column;align-items:center;max-width:none;margin:0;justify-content:center}.login-form-wrap{width:100%;max-width:450px;margin:auto}.login-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:34px}.login-meta>span:last-child{font-size:10px;letter-spacing:1.4px;color:#8996ac}.login-mark{width:43px;height:43px;border-radius:12px;background:#edf1ff;color:#5c73c8;display:grid;place-items:center;margin-bottom:23px}.login-panel h2{font-size:33px;letter-spacing:-.8px;margin-bottom:12px}.login-panel .muted{font-size:16px}.login-form{margin-top:35px}.login-form label{font-size:14px;margin-top:23px}.login-form input{height:54px;font-size:16px}.password-field{position:relative}.password-field input{padding-right:85px}.password-toggle{position:absolute;right:12px;top:15px;border:0;background:transparent;color:#8390a6;font-size:13px;padding:4px}.login-submit{width:100%;margin-top:30px;height:56px;font-size:15px;justify-content:center;padding:0 18px}.login-panel .alert{margin-top:20px;margin-bottom:0}
@media(min-width:1600px){main{padding-top:42px}.metric-card{padding:24px}.empty-state{min-height:300px}.cycle-row{padding:16px 0}}
@media(max-width:1200px){.sidebar{width:var(--sidebar-width,260px);padding-left:12px;padding-right:12px}.main-shell{margin-left:var(--sidebar-width,260px)}main{padding:28px 24px 0}.topbar{padding:0 24px}.metric-grid{gap:12px}.metric-card{padding:16px}.metric-top{font-size:10px}.metric-detail{min-height:24px;line-height:1.6}.dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(295px,1fr);gap:16px}.quick-grid{gap:12px}.quick-card{padding:16px 12px;gap:9px}.quick-card>.icon{display:none}.login-story{padding:35px}.login-story h1{font-size:38px}.login-panel{padding:35px 8%}.series-grid{gap:16px}}
@media(max-width:1000px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-detail{min-height:0}.dashboard-grid{grid-template-columns:1fr}.cycle-panel .cycle-row div{gap:70px}.quick-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.series-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.breadcrumb>strong{display:none}.breadcrumb .icon{display:none}.topbar-right{gap:12px}.login-story h1{font-size:34px}.login-story{padding:30px}.login-panel{padding:35px 8%}.login-form-wrap{max-width:450px}.network-art{height:220px}.orbit-three{width:270px;height:270px}.login-story-footer{flex-direction:column}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);visibility:hidden;width:min(290px,calc(100vw - 48px))}.sidebar-open .sidebar{transform:translateX(0);visibility:visible}.sidebar-open .sidebar-backdrop{display:block;position:fixed;inset:0;background:#0f1c3466;z-index:29}.main-shell{margin-left:0}.sidebar-toggle{display:grid}.topbar{height:70px;padding:0 18px}.topbar-left,.topbar-right{gap:10px}.breadcrumb{font-size:11px}.account>span:last-child{display:none}.topbar-divider{display:none}.topbar .sandbox{font-size:9px}.topbar .avatar{width:30px;height:30px;border-radius:9px}main{padding:25px 18px 0}.page-heading{align-items:flex-start;gap:12px}h1{font-size:25px}.page-heading .date-chip{font-size:9px;padding:8px;gap:6px}.date-chip .icon{width:12px;height:12px}.eyebrow{font-size:8px}.notice{align-items:flex-start;padding:14px;gap:10px}.notice .badge{display:none}.notice-icon{padding:7px}.notice p{font-size:10px}.metric-grid{gap:11px}.metric-card{padding:16px 14px}.metric-value{font-size:30px}.metric-top{font-size:10px;align-items:flex-start}.metric-icon{width:28px;height:28px;border-radius:8px}.metric-detail{font-size:9px;line-height:1.6;min-height:26px}.metric-state{font-size:8px}.panel-heading{padding:19px 17px 16px}.panel-heading h2{font-size:14px}.panel-heading>.text-link{font-size:10px}.search-form{margin:0 17px 18px}.standalone{margin:0 0 18px}.search-form input{font-size:10px}th{padding:12px 17px;font-size:8px}td{padding:14px 17px;font-size:11px}.empty-state{padding:30px 16px;min-height:240px}.cycle-tabs{margin-left:17px;margin-right:17px}.cycle-list{padding:0 17px}.cycle-note{margin-left:17px;margin-right:17px}.section-heading span{display:none}.quick-card{padding:18px}.quick-card>.icon{display:block}.page-footer{font-size:8px;line-height:1.8}.page-footer>span:first-child{max-width:65%}.admin-form{grid-template-columns:1fr;padding:18px}.form-help{grid-column:1}.series-grid{padding:0 18px 20px}.login-page{display:block}.login-story{display:none}.login-panel{min-height:100vh;padding:36px 25px}.login-form-wrap{max-width:450px;margin:auto}.login-meta{margin-bottom:32px}.login-panel h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Align the process and both billing-cycle date columns. */
.cycle-tabs{grid-template-columns:minmax(0,1fr) 65px 65px;gap:8px;font-size:8px;letter-spacing:.4px;padding:9px 0}.cycle-tabs>span:first-child{text-align:left;padding-left:10px}.cycle-row{display:grid;grid-template-columns:minmax(0,1fr) 65px 65px;gap:8px}.cycle-row>div{display:contents}.cycle-row strong{text-align:center;min-width:0}.service-legend{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:10px;color:#8591a6;padding:15px 20px;border-top:1px solid var(--line)}.suspended{background:#fff0ec;color:#a66c52}

/* Customer administration uses the existing palette and components. */
.customer-form{padding:24px}.customer-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:20px 0}.customer-fields label{display:flex;flex-direction:column;gap:8px;font-weight:600;min-width:0}.customer-fields input,.customer-fields select{width:100%;min-width:0;padding:11px;border:1px solid #d9e1ec;border-radius:8px;background:#fff;color:#26344a;font:inherit}.customer-fields small{font-size:12px;font-weight:400;color:#64748b}.customer-form-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.customer-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.customer-actions .text-link{white-space:nowrap}details pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:600px}@media(max-width:640px){.customer-fields{grid-template-columns:1fr}.customer-form{padding:16px}.customer-form-footer .button{width:100%}}

.customer-fields .field-error,.field-error{color:#b42318;font-size:13px;font-weight:500;display:block;margin-top:4px}.customer-fields [aria-invalid=true]{border-color:#b42318}

/* Shared compact GET filters. Scope avoids changing create/edit forms. */
.filter-panel{margin:0 0 14px;overflow:visible}
.filter-panel>.filter-toggle{display:none}
.filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:4px 8px;padding:8px;margin:0;min-width:0}
.filter-grid>label{display:grid;gap:4px;margin:0;min-width:0;font-size:10px;font-weight:600;line-height:12px;color:#65748b}
.filter-grid input,.filter-grid select{display:block;width:100%;min-width:0;max-width:100%;height:30px;padding:4px 8px;border-radius:6px;font-family:inherit;font-size:12px;line-height:20px;color:var(--ink);box-sizing:border-box}
.filter-grid select{padding-right:20px;text-overflow:ellipsis}
.filter-grid input[type=date]{font-size:11px;padding-right:4px}
.filter-search{grid-column:span 2}
.filter-actions{grid-column:span 2;display:flex;gap:6px;align-items:center;min-width:0}
.filter-actions .button{height:30px;min-height:30px;padding:0 12px;border-radius:6px;font-size:11px;line-height:1;white-space:nowrap}
.filter-grid input:focus-visible,.filter-grid select:focus-visible,.filter-toggle:focus-visible{outline:2px solid #4865e8;outline-offset:2px}
.filter-panel--search{margin:0 23px 18px}
.filter-panel--search .filter-grid{grid-template-columns:minmax(0,1fr) auto}
.filter-panel--search .filter-search,.filter-panel--search .filter-actions{grid-column:auto}
@media(min-width:1700px){.filter-grid{grid-template-columns:repeat(11,minmax(0,1fr))}}
@media(max-width:900px){
 .filter-panel>.filter-toggle{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;min-height:44px;box-sizing:border-box;font-size:12px;line-height:18px;list-style:none;border:0}
 .filter-toggle::-webkit-details-marker{display:none}
 .filter-toggle-hint{display:flex;align-items:center;gap:8px;color:#7b879b;font-size:10px;font-weight:400}
 .filter-toggle-hint .icon{width:14px;height:14px;transition:transform .15s}
 .filter-panel[open]>.filter-toggle{border-bottom:1px solid var(--line)}
 .filter-panel[open] .filter-toggle-hint .icon{transform:rotate(90deg)}
 .filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}
 .filter-grid>label{font-size:11px;line-height:14px}
 .filter-grid input,.filter-grid select{height:36px;font-size:13px;padding:6px 8px}
 .filter-search,.filter-actions{grid-column:1/-1}
 .filter-actions .button{height:36px;min-height:36px;flex:1;font-size:12px}
 .filter-panel--search{margin:0 17px 18px}
 .filter-panel--search .filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .filter-panel--search .filter-search,.filter-panel--search .filter-actions{grid-column:1/-1}
}

/* Historical package review shares the compact filter disclosure. */
.equivalence-progress{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:18px}.equivalence-progress progress{max-width:100%}.equivalence-note{display:block;margin-top:6px;font-size:12px;overflow-wrap:anywhere}.equivalence-table td{vertical-align:top}.equivalence-table select{min-width:210px;max-width:280px}.equivalence-table .button{margin-top:8px}

.equivalence-table input[type=checkbox]{width:18px;height:18px;padding:0}.equivalence-table details summary{padding:8px 0;font-size:11px;white-space:nowrap}

.operation-panel{padding:18px}.operation-panel h2{margin-bottom:12px}.operation-audit{max-width:360px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}.operation-panel summary{padding:6px}

.operation-heading-actions{display:flex;flex-wrap:wrap;gap:8px}.icmp-status{display:inline-flex;align-items:center;gap:7px;font-weight:600;white-space:nowrap}.icmp-status:before{content:"";width:9px;height:9px;border-radius:50%;background:#8993a4;flex-shrink:0}.icmp-status[data-state=up]:before{background:#16804a}.icmp-status[data-state=no_response]:before{background:#c83d3d}.icmp-line{display:block;font-size:11px;margin-top:5px;max-width:260px;min-width:160px;overflow-wrap:anywhere}

/* Router details render saved reads; syncing is always explicit. */
.router-address{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.router-heading .operation-heading-actions{justify-content:flex-end}.router-sync-progress{font-size:11px;max-width:180px;line-height:1.5;margin-top:6px}.router-sync-progress:not([hidden]){display:block}.router-overview,.router-device{padding:20px}.router-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 28px;margin:0}.router-primary-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.router-facts>div{min-width:0}.router-facts dt{font-size:10px;color:var(--muted);margin-bottom:8px}.router-facts dd{margin:0;font-size:15px;font-weight:600;overflow-wrap:anywhere;line-height:1.5}.router-facts dd small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:4px}.router-section-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:22px}.router-section-heading h2{font-size:16px}.router-section-heading p{font-size:11px}.router-snapshot-note{font-size:12px;margin-top:20px}.router-sync-warning{display:block}.router-sync-warning p{margin:6px 0}.router-sync-warning small{font-size:11px}.router-heading [aria-busy=true] [data-sync-icon]{display:inline-block;animation:router-spin 1s linear infinite}@keyframes router-spin{to{transform:rotate(360deg)}}
@media(max-width:760px){.router-heading{flex-direction:column}.router-heading .operation-heading-actions{justify-content:flex-start;width:100%}.router-overview,.router-device{padding:18px}.router-facts,.router-primary-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.router-facts dd{font-size:13px}.router-section-heading{align-items:flex-start;flex-direction:column;gap:7px;margin-bottom:20px}.router-sync-progress{max-width:155px}}
@media(prefers-reduced-motion:reduce){.router-heading [aria-busy=true] [data-sync-icon]{animation:none}}

.icmp-status[data-state=checking]:before{background:#be8613}.icmp-status[data-state=error]:before{background:#b45309}

[data-icmp-progress]{padding:12px 16px 0}[data-icmp-bar]{display:block;width:calc(100% - 32px);margin:8px 16px 12px;height:8px}

.customer-sync-warning{margin:12px 0;padding:10px 12px;border:1px solid #e5bd68;border-radius:8px;background:#fff8e8;color:#785314;font-size:12px}

.queues-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.queues-heading h2{margin:0 0 8px}.queues-heading p{margin:0}.queues-heading form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.queues-table{min-width:720px}.queues-table td{vertical-align:top}.queue-rate{white-space:nowrap}.queue-target{max-width:300px;overflow-wrap:anywhere}.queue-comment{max-width:360px;white-space:pre-wrap;overflow-wrap:anywhere}.queues-note{padding:0 24px 16px;font-size:12px}.simple-queues>.alert{margin:0 24px 16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:640px){.queues-heading{align-items:flex-start}.queues-heading form{width:100%}.queues-heading button{width:100%}.queues-note{padding:0 16px 16px}.simple-queues>.alert{margin:0 16px 16px}}

.simple-queues .queues-heading{padding:20px 24px}.queues-table td:first-child{min-width:140px;max-width:240px;overflow-wrap:anywhere}.queues-table .badge.active{background:#e9f7ef;color:#16804a}@media(max-width:640px){.simple-queues .queues-heading{padding:16px}}

/* Compact customer list; mobile rows retain every field as labeled cards. */
.customer-list-table th,.customer-list-table td{padding:12px 10px;overflow-wrap:anywhere}.customer-list-table th{white-space:normal}.customer-list-table th:nth-child(2){width:22%}.customer-list-table .text-link{white-space:normal;overflow-wrap:anywhere}.customer-list-table .customer-list-actions{width:90px;white-space:nowrap}.customer-list-table .customer-list-actions a{white-space:nowrap}
@media(max-width:760px){
 .customer-list-table{display:block}.customer-list-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
 .customer-list-table tbody{display:grid;gap:12px;padding:12px}.customer-list-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;padding:6px}
 .customer-list-table td{display:block;min-width:0;padding:8px;border:0}.customer-list-table td[data-label]::before{content:attr(data-label);display:block;font-size:9px;font-weight:600;color:var(--muted);margin-bottom:4px}
 .customer-list-table .customer-list-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;width:auto;grid-column:1/-1;border-top:1px solid var(--line);margin-top:4px}
 .customer-list-table td[colspan]{grid-column:1/-1}.customer-list-table .customer-list-actions a{padding:6px 0}
}

.queues-table .queue-client{min-width:130px;max-width:230px;overflow-wrap:anywhere}.queue-client .text-link{white-space:normal}.queue-client-warning{display:block;color:#9a580b;font-size:11px;line-height:1.5;margin-top:5px}

.queues-table .queue-target{min-width:170px}

.customer-queue-panel .panel-heading{flex-wrap:wrap}.customer-queue-panel>.alert{margin:12px 20px}.customer-queue-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 20px;margin:0}.customer-queue-facts dt{color:var(--muted);font-size:11px;margin-bottom:5px}.customer-queue-facts dd{margin:0;font-size:13px;overflow-wrap:anywhere}.queue-panel-note{font-size:12px;padding:12px 20px;line-height:1.6}.customer-queue-panel>form{padding:12px 20px;display:flex;align-items:end;gap:12px;flex-wrap:wrap}.customer-queue-panel>form label{max-width:300px}.customer-queue-panel td{overflow-wrap:anywhere;max-width:360px}.customer-queue-panel [data-queue-submit-progress]{font-size:12px;max-width:350px}@media(max-width:640px){.customer-queue-facts{grid-template-columns:1fr}.customer-queue-panel>form{align-items:stretch;flex-direction:column}.customer-queue-panel>form label{max-width:none}.customer-queue-panel th,.customer-queue-panel td{padding:12px 10px}}

.customer-queue-panel details>summary{cursor:pointer;padding:12px 20px;font-weight:600}.customer-queue-panel details>form{padding:12px 20px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.customer-queue-panel details>.alert{margin:12px 20px}.customer-queue-panel .queue-adoption-form{flex-direction:column;align-items:stretch}.queue-adoption-form label{font-size:13px;overflow-wrap:anywhere}.queue-adoption-form input:not([type=checkbox]){display:block;max-width:100%;padding:8px;margin-top:6px}.customer-queue-panel .panel-heading>div{min-width:0}.customer-queue-panel .panel-heading p{overflow-wrap:anywhere}@media(max-width:640px){.customer-queue-panel details>form{align-items:stretch;flex-direction:column}.customer-queue-panel .customer-actions{gap:8px}}

.customer-package-field{min-width:0}.customer-package-field>label:first-child{margin-bottom:8px}.customer-package-field>small{display:block;margin-top:8px}.customer-fields .package-confirmation{flex-direction:row;align-items:flex-start;font-size:12px;font-weight:400;line-height:1.6;margin-top:10px}.customer-fields .package-confirmation input[type=checkbox]{width:auto;min-width:16px;margin:4px 0 0;padding:0}.package-confirmation[hidden]{display:none}

/* Billing condition presentation. */
.customer-fields [data-billing-condition-reason][hidden]{display:none}.billing-condition-badge{white-space:nowrap}.billing-condition-reason{display:block;margin-top:4px;color:var(--muted);font-size:11px;overflow-wrap:anywhere}

/* Customer header separates administration from service without extra cards. */
.customer-heading-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;margin-bottom:20px}.customer-action-group{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.customer-service-actions{border-left:1px solid var(--line);padding-left:20px}.customer-heading-actions .customer-service-notice{flex-basis:100%;margin:0;overflow-wrap:anywhere}.customer-service-notice[hidden]{display:none}.customer-service-dialog{width:440px;max-width:calc(100% - 32px);border:1px solid var(--line);border-radius:var(--radius);padding:24px;color:var(--ink);box-shadow:0 20px 70px #19233833}.customer-service-dialog::backdrop{background:#121c2e80}.customer-service-dialog form{margin:0}.customer-service-dialog p{margin:0;font-size:16px;line-height:1.6;overflow-wrap:anywhere}.customer-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
@media(max-width:760px){.customer-heading-actions{align-items:stretch;gap:14px}.customer-action-group{width:100%}.customer-service-actions{border-left:0;border-top:1px solid var(--line);padding:14px 0 0}.customer-service-dialog{padding:20px}.customer-dialog-actions .button{flex:1}.customer-heading-actions .badge{margin-right:auto}}

.mikrotik-write-controls{padding:0 24px}.mikrotik-write-control{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;border-top:1px solid var(--line)}.mikrotik-write-control>div{min-width:0}.mikrotik-write-control h3{margin:0 0 12px}.mikrotik-control-statuses{display:flex;flex-wrap:wrap;gap:8px}.mikrotik-write-control p{font-size:12px;color:var(--muted);line-height:1.6;margin:10px 0 0;overflow-wrap:anywhere}.mikrotik-write-control form{flex-shrink:0}.mikrotik-write-control button{min-width:120px}@media(max-width:640px){.mikrotik-write-controls{padding:0 16px}.mikrotik-write-control{align-items:stretch;flex-direction:column;gap:16px}.mikrotik-write-control button{width:100%}}

.badge.service-stopped{background:#fdebec;color:#b4232e}.customer-service-difference{font-size:11px;color:#975a16;background:#fff6e3;border-radius:6px;padding:5px 8px}.customer-service-time{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.customer-service-difference[hidden],.customer-service-time[hidden]{display:none}

[data-service-review][hidden]{display:none}

[data-link-retry][hidden],[data-link-confirm][hidden]{display:none}

/* Compact queue summary only; management/preview and pending-job pages keep their layouts. */
[data-customer-queue] .panel-heading{padding:16px 20px 12px}
[data-customer-queue] .customer-queue-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:8px}
[data-customer-queue] .queue-management-differences{padding:0 20px 12px}
@media(max-width:1100px){[data-customer-queue] .customer-queue-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){[data-customer-queue] .customer-queue-facts{grid-template-columns:1fr}}

.task-counts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.task-router{display:block}.task-detail{padding:20px;display:grid;gap:14px}.task-detail pre,.task-detail+section pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:650px;font-size:12px}.task-management{display:grid;gap:12px;max-width:560px}.task-management textarea{display:block;width:100%;min-height:85px;border:1px solid var(--line);border-radius:8px;padding:10px;font:inherit}

/* Keep closed queue management hidden even when form rules set display:flex. */
#customer-queue-technical:not([open])>:not(summary){display:none}
.queue-adoption-actions{display:flex;gap:8px;flex-wrap:wrap}

.finance-panel{padding:20px;display:grid;gap:14px}.finance-search{padding:16px;display:flex;gap:12px;align-items:end}.finance-search label{margin:0;flex:1;max-width:500px}.finance-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:end}.finance-fields label{margin:0}.finance-fields small{display:block;font-weight:400;color:var(--muted);margin-top:5px}.finance-fields button{justify-self:start}.finance-wide{grid-column:1/-1}.finance-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.finance-totals>div{padding:16px}.finance-totals small,.finance-totals strong{display:block}.finance-totals strong{margin-top:9px;font-size:19px;overflow-wrap:anywhere}.finance-note{padding:12px 0;font-size:12px}.finance-panel input[type=checkbox]{width:auto}.finance-panel summary{cursor:pointer;font-weight:600}@media(max-width:700px){.finance-fields,.finance-totals{grid-template-columns:1fr}.finance-search{align-items:stretch;flex-direction:column}}

.cash-table{table-layout:fixed;width:100%}.cash-table th,.cash-table td{padding:10px 7px;overflow-wrap:anywhere}.cash-table .cash-client{width:15%}.cash-table .cash-id{width:7%}.cash-table .cash-operation,.cash-table .cash-type,.cash-table .cash-number{width:9%}.cash-detail[hidden]{display:none}.cash-detail td{padding:10px 14px;background:#f8fafc}.cash-detail dl{display:flex;gap:8px 20px;flex-wrap:wrap;margin:0}.cash-detail dt{font-weight:600}.cash-detail dd{margin:0}.cash-detail .cash-mobile-field{display:none}.cash-detail-button{white-space:nowrap;cursor:pointer}
@media(max-width:760px){.cash-table{table-layout:auto}.cash-table .cash-extra{display:none}.cash-table th,.cash-table td{padding:8px 5px;font-size:10px}.cash-detail .cash-mobile-field{display:block}.cash-detail dl{gap:5px 12px}.cash-detail-button{white-space:nowrap}}

.cash-pagination{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0}

.cash-table .cash-id-cell,.cash-table .cash-action{padding-left:4px;padding-right:4px;white-space:nowrap;overflow-wrap:normal}

/* Pagos: keep search actions equal, form fields compact, and selection beside its invoice table. */
.payments-search>.button{height:42px;min-height:42px;margin:0;padding:0 16px;align-self:flex-end}
.payments-search .payment-operation-filter{flex:0 1 250px;min-width:180px;max-width:280px}.payments-search .payment-search-query{flex:1 1 320px;min-width:240px;max-width:520px}.payments-search select{height:42px;padding:8px 10px}
.payment-invoice-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:-6px}
.payment-invoice-heading [data-payment-selection]{margin:0;color:var(--muted);font-size:12px;text-align:right;font-variant-numeric:tabular-nums}
.payment-form-fields{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px 12px}
.payment-form-fields .payment-field-total,.payment-form-fields .payment-field-method,.payment-form-fields .payment-field-date{grid-column:span 2}
.payment-form-fields .payment-field-external,.payment-form-fields .payment-field-reference{grid-column:span 3}
.payment-form-fields input,.payment-form-fields select{height:38px;padding:8px 10px}
.payment-form-fields small{margin-top:3px;font-size:10px;line-height:1.4}
.payment-customer-form{gap:11px}
.receipt-panel{gap:12px}
.receipt-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 20px;margin:0}
.receipt-facts>div{min-width:0}
.receipt-facts dt{margin-bottom:4px;color:var(--muted);font-size:10px}
.receipt-facts dd{margin:0;font-size:12px;overflow-wrap:anywhere}
.receipt-total{font-size:17px}
.receipt-panel .table-wrap{min-width:0;max-width:100%}
@media(max-width:700px){
 .payment-invoice-heading{align-items:flex-start;flex-direction:column;gap:5px;margin-bottom:-4px}
 .payment-invoice-heading [data-payment-selection]{text-align:left;font-size:11px}
 .payments-search>.button{align-self:stretch;width:100%}
 .payments-search label,.payments-search .payment-operation-filter,.payments-search .payment-search-query{width:100%;max-width:none;min-width:0;flex:initial}
 .payment-form-fields{grid-template-columns:minmax(0,1fr);gap:8px}
 .payment-form-fields .payment-field-total,.payment-form-fields .payment-field-method,.payment-form-fields .payment-field-date,.payment-form-fields .payment-field-external,.payment-form-fields .payment-field-reference{grid-column:1}
 .payment-form-fields input,.payment-form-fields select{height:38px}
 .payment-customer-form{padding:16px;gap:9px}
 .receipt-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
 .receipt-heading{align-items:flex-start;flex-direction:column;gap:10px}
 .receipt-heading>.button{max-width:100%;white-space:normal;text-align:center}
}

/* Caja overview: actions, four metrics and an always-visible collection summary. */
.cash-page-heading{align-items:center}
.cash-heading-actions{display:flex;justify-content:flex-end;align-items:center;gap:9px;flex-wrap:wrap}
.cash-action-income{background:#20845e;border-color:#20845e;color:#fff}
.cash-action-income:hover{background:#176c4c}
.cash-action-expense{background:#b94747;border-color:#b94747;color:#fff}
.cash-action-expense:hover{background:#963838}
.cash-metrics .metric-card{min-width:0}
.cash-metrics .metric-value{font-size:clamp(22px,2.2vw,34px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.cash-revenue-heading{align-items:center}
.cash-revenue-heading>div p{margin-top:6px;font-size:11px;color:var(--muted);line-height:1.6}
.cash-month-form{display:grid;grid-template-columns:auto minmax(135px,175px) auto;align-items:center;gap:8px}
.cash-month-form label{margin:0;font-size:11px;color:var(--muted)}
.cash-month-form input{height:38px;padding:7px 9px}
.cash-revenue-table tfoot{background:#f9fafc;border-top:1px solid var(--line)}
.cash-revenue-table tfoot th{font-size:11px;color:#52617a;letter-spacing:0}
.cash-revenue-table td:last-child,.cash-revenue-table th:last-child{white-space:nowrap}
@media(max-width:1200px){.cash-metrics .metric-value{font-size:25px}}
@media(max-width:760px){
 .cash-page-heading{align-items:flex-start;flex-direction:column}
 .cash-heading-actions{justify-content:flex-start;width:100%;gap:7px}
 .cash-heading-actions .button{flex:1;padding:10px 8px;font-size:10px}
 .cash-revenue-heading{align-items:flex-start;flex-direction:column;gap:14px}
 .cash-month-form{width:100%;grid-template-columns:auto minmax(0,1fr) auto}
 .cash-month-form .button{padding-left:10px;padding-right:10px}
 .cash-revenue-table{min-width:620px}
}

/* Collapsible per-operation collection summary and consistent Caja section spacing. */
.cash-metrics{margin-bottom:22px}
.payments-metrics{grid-template-columns:repeat(5,minmax(0,1fr));width:100%}
.payments-metrics .metric-card{min-width:0;height:100%}
.payments-metrics .metric-top,.payments-metrics .metric-detail{min-width:0;overflow-wrap:anywhere}
@media(max-width:1200px){.payments-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.payments-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.payments-metrics{grid-template-columns:minmax(0,1fr)}}
.cash-overview-metrics{grid-template-columns:repeat(5,minmax(0,1fr));width:100%}
.cash-overview-metrics .metric-card{min-width:0;height:100%}
.cash-overview-metrics .metric-top,.cash-overview-metrics .metric-detail{min-width:0;overflow-wrap:anywhere}
@media(max-width:1200px){.cash-overview-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.cash-overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.cash-overview-metrics{grid-template-columns:minmax(0,1fr)}}
.promise-candidate{padding:20px;margin-bottom:14px}.promise-candidate.selected{border-color:#c8d4fb}.promise-candidate-heading,.recovery-summary-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.promise-candidate-heading .muted{font-size:11px;margin-top:5px}.promise-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.promise-facts>div{padding:13px;background:#f8f9fc;border-radius:8px;min-width:0}.promise-facts small,.promise-facts strong{display:block}.promise-facts small{color:var(--muted);font-size:10px}.promise-facts strong{margin-top:7px;font-size:13px;overflow-wrap:anywhere}.promise-request-form{display:grid;gap:14px}.promise-request-form>label:first-child{display:grid;gap:7px}.promise-request-form textarea{width:100%;resize:vertical;border:1px solid #dce2ec;border-radius:8px;padding:11px;font:inherit}.promise-confirm{display:flex;align-items:flex-start;gap:9px}.promise-confirm input{width:auto;margin:2px 0 0}.promise-actions{display:flex;gap:9px;flex-wrap:wrap}.promise-available{background:#eff9f3;color:#2f7357;border:1px solid #d8eee1}.promise-blocks{margin-bottom:12px}.promise-reason{display:block;color:#7f899b;max-width:150px;overflow-wrap:anywhere;font-size:10px;margin-top:4px}.recovery-summary{padding:0}.recovery-summary-row{padding:18px 22px}.recovery-summary-row .eyebrow{margin-bottom:6px}.recovery-summary-row strong,.recovery-summary-row small{display:block}.recovery-summary-row small{color:var(--muted);margin-top:6px;font-size:11px}.recovery-summary-details{border-top:1px solid var(--line)}.recovery-summary-details>summary{padding:12px 22px;font-size:11px;color:#63728b}.recovery-summary-content{padding:0 22px 18px}.recovery-summary-content dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.recovery-summary-content dl>div{padding:11px;background:#f8f9fc;border-radius:7px}.recovery-summary-content dt{font-size:10px;color:var(--muted)}.recovery-summary-content dd{margin:5px 0 0;font-size:11px}.recovery-summary-content h3{font-size:12px;margin:16px 0 7px}.recovery-summary-content ul{padding-left:20px;font-size:10px;color:var(--muted);line-height:1.7}.cash-pagination{display:flex;gap:14px;justify-content:flex-end;align-items:center;padding:15px 20px;color:var(--muted);font-size:10px}.cash-pagination .text-link{padding:5px}
@media(max-width:700px){.promise-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.promise-candidate{padding:15px}.promise-actions .button{flex:1}.recovery-summary-row{padding:15px}.recovery-summary-content{padding:0 15px 15px}.recovery-summary-content dl{grid-template-columns:1fr}.cash-pagination{justify-content:center;flex-wrap:wrap}}
.cash-revenue.below{margin:0 0 22px}
.cash-revenue-summary{padding:17px 22px;gap:14px;list-style:none}
.cash-revenue-summary::-webkit-details-marker{display:none}
.cash-revenue-summary>span:first-child{min-width:0;flex:1}
.cash-revenue-summary strong,.cash-revenue-summary small{display:block}
.cash-revenue-summary strong{font-size:14px;color:var(--ink)}
.cash-revenue-summary small{margin-top:5px;font-size:10px;font-weight:400;color:var(--muted)}
.cash-revenue-chevron{color:#73809a;transition:transform .15s ease}
.cash-revenue[open] .cash-revenue-chevron{transform:rotate(180deg)}
.cash-revenue-content{padding:0 22px 18px}
.cash-revenue-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.cash-revenue-note{font-size:11px;color:var(--muted);line-height:1.5}
.cash-revenue-table{min-width:0}
.cash-revenue-table th,.cash-revenue-table td{padding:12px 14px}
.cash-revenue-table td:last-child,.cash-revenue-table th:last-child{white-space:nowrap}
.cash-revenue-table tfoot th{font-size:11px;color:#52617a;letter-spacing:0}
.cash-filters{margin-bottom:22px}
.cash-history-panel{margin-top:0}
@media(max-width:760px){
 .cash-revenue-summary{padding:16px 17px}
 .cash-revenue-content{padding:0 12px 14px}
 .cash-revenue-toolbar{align-items:flex-start;flex-direction:column;gap:10px}
 .cash-revenue-note{font-size:10px}
 .cash-revenue-table{min-width:590px}
 .cash-revenue-table th,.cash-revenue-table td{padding:10px 9px}
}

/* Direct cash form: five equal primary fields and a 50/25/25 detail row. */
.direct-fields{grid-template-columns:minmax(0,1fr);gap:14px;align-items:start;min-width:0;box-sizing:border-box}
.direct-row{display:grid;gap:14px;align-items:start;min-width:0;box-sizing:border-box}
.direct-row>*{min-width:0;max-width:100%;box-sizing:border-box;align-self:start}
.direct-primary{grid-template-columns:repeat(5,minmax(0,1fr))}
.direct-secondary{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr)}
.direct-fields label,.direct-concept>label{margin:0;min-width:0}
.direct-concept{display:grid;gap:9px;min-width:0}
.direct-fields input,.direct-fields select{min-width:0;max-width:100%;box-sizing:border-box}
.direct-description textarea{display:block;width:100%;height:90px;min-height:90px;box-sizing:border-box;resize:vertical;margin-top:6px}
.direct-fields [data-cash-custom][hidden]{display:none}
@media(max-width:1000px){.direct-primary{grid-template-columns:repeat(3,minmax(0,1fr))}.direct-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.direct-description{grid-column:1/-1}}
@media(max-width:700px){.direct-primary,.direct-secondary{grid-template-columns:minmax(0,1fr)}.direct-description{grid-column:1}}

/* Invoice catalogue and detail. */
.invoice-search{display:grid;grid-template-columns:minmax(155px,1.1fr) minmax(125px,1.15fr) minmax(115px,.85fr) minmax(145px,1.1fr) minmax(115px,.8fr) auto auto;align-items:end;gap:10px}
.invoice-search>label{margin:0;min-width:0}
.invoice-search input,.invoice-search select{height:42px;min-height:42px;padding:8px 10px}
.invoice-search .button{height:42px;min-height:42px;margin:0;padding:0 14px;white-space:nowrap}
.invoice-reference{display:block;margin-top:4px;color:var(--muted);font-size:10px}
.invoice-table td{vertical-align:top}
.invoice-heading-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.invoice-detail-panel{margin-top:20px}
.invoice-facts{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}
.invoice-facts .invoice-hash{grid-column:span 2;min-width:0}
.invoice-hash code{font-size:10px;overflow-wrap:anywhere}
@media(max-width:1200px){.invoice-search{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.invoice-search label:first-child{grid-column:span 2}}
@media(max-width:700px){.invoice-search{grid-template-columns:minmax(0,1fr);gap:9px}.invoice-search label:first-child{grid-column:1}.invoice-search .button{width:100%}.invoice-heading-actions{justify-content:flex-start;width:100%}.invoice-heading-actions .button{flex:1}.invoice-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.invoice-facts .invoice-hash{grid-column:1/-1}}
.invoice-annul-form{padding:20px;display:grid;gap:12px}
.invoice-annul-form h2{margin:0}
.invoice-annul-form p{margin:0}
.invoice-annul-form label{margin:0}
.invoice-annul-form>.button{background:#b94747;border-color:#b94747;color:#fff;justify-self:start}
.invoice-annul-form>.button:hover{background:#963838}
.invoice-annul-form textarea{width:100%;min-height:90px;resize:vertical;padding:11px;border:1px solid #dce2ec;border-radius:8px;font:inherit;color:var(--ink)}
.invoice-annul-confirm{display:flex;align-items:center;gap:8px}
.invoice-annul-confirm input{width:auto}
.invoice-annulled{padding:20px;border-left:3px solid #8794a7}
.invoice-annulled h2{margin-bottom:12px}
.invoice-facts .invoice-annulment-reason{grid-column:span 2}
.invoice-annulment-reason dd{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:700px){.invoice-annul-form{padding:16px}.invoice-annulled{padding:16px}.invoice-facts .invoice-annulment-reason{grid-column:1/-1}}

/* Administrative billing and messaging rules. */
.billing-settings-panel{margin-top:20px}
.billing-settings-form{display:grid;gap:20px;padding:0 22px 22px}
.billing-cycle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.billing-cycle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px;border:1px solid var(--line);border-radius:10px;min-width:0}
.billing-cycle legend{padding:0 7px;font-size:13px;font-weight:650}
.billing-cycle label,.billing-global-grid label{margin:0;min-width:0;font-size:11px}
.billing-cycle input,.billing-cycle select,.billing-global-grid input,.billing-global-grid select{display:block;width:100%;min-width:0;margin-top:6px}
.billing-global-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.billing-timezone{grid-column:1/-1;margin:0;font-size:11px;color:var(--muted);line-height:1.6}
.billing-settings-actions{display:flex;justify-content:flex-end}
@media(max-width:1000px){.billing-cycle-grid{grid-template-columns:minmax(0,1fr)}.billing-global-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.billing-settings-form{padding:0 16px 17px;gap:15px}.billing-cycle{grid-template-columns:minmax(0,1fr);gap:10px;padding:13px}.billing-global-grid{grid-template-columns:minmax(0,1fr);gap:11px}.billing-timezone{grid-column:1}.billing-settings-actions,.billing-settings-actions .button{width:100%}}

.billing-simulation-filters{grid-template-columns:repeat(4,minmax(0,1fr))}
.billing-simulation-schedule{padding:0 20px 12px}
.billing-simulation-schedule .panel-heading{padding:14px 0 8px}
.billing-simulation-schedule .panel-heading p{margin-top:3px;line-height:1.4}
.billing-schedule-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0}
.billing-schedule-facts>div{min-width:0}
.billing-schedule-facts dt{margin:0 0 2px}
.billing-schedule-facts dd{font-size:13px;font-weight:600;line-height:1.35}
.billing-simulation-warning{padding:14px 18px}
.billing-simulation-metrics{margin-top:20px}
.billing-simulation-limits{margin-bottom:22px}
.billing-simulation-limits ul{margin:0;padding:0 24px 18px 42px;color:var(--muted);font-size:11px;line-height:1.7}
@media(max-width:1000px){.billing-simulation-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.billing-simulation-filters{grid-template-columns:minmax(0,1fr)}.billing-simulation-schedule{padding:0 16px 12px}.billing-schedule-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}}

/* Appearance tokens: semantic error/warning/success colors remain independent. */
[data-palette="blue"]{--brand:#2563EB;--brand-hover:#1d4ed8;--brand-soft:#eff6ff;--brand-ink:#1e40af;--brand-on:#fff;--brand-focus:#93c5fd;--blue:var(--brand)}
[data-palette="green"]{--brand:#15803d;--brand-hover:#166534;--brand-soft:#f0fdf4;--brand-ink:#166534;--brand-on:#fff;--brand-focus:#86efac;--blue:var(--brand)}
[data-palette="purple"]{--brand:#7C3AED;--brand-hover:#6d28d9;--brand-soft:#f5f3ff;--brand-ink:#5b21b6;--brand-on:#fff;--brand-focus:#c4b5fd;--blue:var(--brand)}
[data-palette="orange"]{--brand:#c2410c;--brand-hover:#9a3412;--brand-soft:#fff7ed;--brand-ink:#9a3412;--brand-on:#fff;--brand-focus:#fdba74;--blue:var(--brand)}
.brand-name{min-width:0;overflow-wrap:anywhere;letter-spacing:.3px}.brand-logo{width:44px;height:44px;object-fit:contain;flex-shrink:0;border-radius:8px;background:#fff}.login-identity{display:flex;align-items:center;gap:15px;color:var(--ink);font-size:30px;font-weight:800;margin-bottom:29px}.login-page .brand-subtitle{display:none}.login-identity{gap:22px;font-size:45px}.login-page .brand-logo{width:84px;height:84px}.login-page .brand-symbol{width:84px;height:84px;line-height:84px;padding-left:20px;font-size:58px;border-radius:21px}.login-story>.brand{font-size:30px}
.appearance-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.appearance-form{padding:24px}.appearance-form>label,.appearance-form>fieldset{margin-top:20px}.appearance-form>label:first-child{margin-top:0}.appearance-form small{display:block;font-weight:400;color:var(--muted);line-height:1.6;margin:7px 0 14px}.appearance-palettes{border:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.appearance-palettes legend{font-size:13px;font-weight:600;margin-bottom:10px}.appearance-palettes label{display:flex;align-items:center;gap:9px;padding:13px;border:1px solid var(--line);border-radius:8px;margin:0}.appearance-palettes input,.appearance-reset input{width:auto;flex-shrink:0}.appearance-swatch{display:inline-block;width:18px;height:18px;border-radius:50%;background:var(--brand);flex-shrink:0}.appearance-reset{display:flex;gap:10px;align-items:center}.appearance-preview{padding:24px;background:var(--brand-soft);border:1px solid var(--line);border-radius:14px;overflow-wrap:anywhere}.appearance-preview .brand{background:var(--nav);border-radius:10px;padding:20px;margin:20px 0}.appearance-preview h2{color:var(--brand-ink)}.appearance-preview .primary{border:0}.appearance-preview .muted{margin:15px 0}.appearance-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.appearance-audit{padding:18px 24px;border-top:1px solid var(--line);font-size:12px;overflow-wrap:anywhere;line-height:1.7}.appearance-preview [hidden]{display:none}.appearance-audit small{display:block;color:var(--muted)}
@media(max-width:900px){.appearance-grid{grid-template-columns:1fr}.appearance-form,.appearance-preview{padding:18px}.appearance-palettes{grid-template-columns:1fr}.brand{font-size:23px}}

/* Shared navigation: saved desktop rail and independent mobile drawer. */
.sidebar-header{display:flex;align-items:center;gap:6px;min-width:0}.sidebar-header .brand{flex:1;min-width:0}.sidebar-header .brand-subtitle{font-size:7px;letter-spacing:1px;gap:5px;white-space:nowrap}.sidebar-header .brand-subtitle b{flex-shrink:0}.sidebar-close{display:none;color:#d5deed;flex-shrink:0}.main-shell>main{max-width:none;min-width:0}.sidebar-tooltip{position:fixed;z-index:60;max-width:min(250px,calc(100vw - 100px));padding:9px 12px;border:1px solid #475569;border-radius:8px;background:var(--nav);color:#fff;font-size:12px;line-height:1.4;pointer-events:auto;box-shadow:0 4px 16px #0003;overflow-wrap:anywhere}.sidebar-tooltip[hidden]{display:none}.sidebar-ready .sidebar{transition:width .18s ease,transform .18s ease,visibility .18s}.sidebar-ready .main-shell{transition:margin-left .18s ease}
@media(min-width:761px){
 html[data-sidebar-state="expanded"]{--sidebar-width:260px}
 html[data-sidebar-state="collapsed"]{--sidebar-width:64px}
 [data-sidebar-state="collapsed"] .sidebar{padding:30px 10px 20px;scrollbar-width:none}
 [data-sidebar-state="collapsed"] .sidebar-header .brand{padding:0;justify-content:center}
 [data-sidebar-state="collapsed"] .sidebar .brand-name,[data-sidebar-state="collapsed"] .sidebar .workspace-label,[data-sidebar-state="collapsed"] .sidebar .nav-heading,[data-sidebar-state="collapsed"] .sidebar .sidebar-bottom,[data-sidebar-state="collapsed"] .sidebar .nav-label,[data-sidebar-state="collapsed"] .sidebar .nav-active-dot{display:none}
 [data-sidebar-state="collapsed"] .sidebar nav{margin-top:26px}
 [data-sidebar-state="collapsed"] .sidebar .nav-item{justify-content:center;min-height:44px;padding:12px 0}
 [data-sidebar-state="collapsed"] .sidebar .brand-symbol{width:44px}
}
@media(max-width:760px){
 .sidebar-close{display:grid}
 .sidebar-header .brand{padding:0;font-size:23px;gap:9px}
 .sidebar-header .brand-logo,.sidebar-header .brand-symbol{width:38px;height:40px}
 .sidebar-header .brand-symbol{line-height:40px;font-size:28px}
 .sidebar-open{overflow:hidden}
 .sidebar-tooltip{display:none}
}
@media(prefers-reduced-motion:reduce){.sidebar-ready .sidebar,.sidebar-ready .main-shell{transition:none}}

.recovery-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.recovery-facts>div{padding:16px;background:var(--surface-alt,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:12px}.recovery-facts span,.recovery-facts small{display:block;color:var(--muted,#64748b);font-size:.85rem}.recovery-facts strong{display:block;font-size:1.15rem;margin:8px 0}.recovery-active{border-left:4px solid var(--primary,#2563eb);background:var(--surface-alt,#f8fafc);padding:16px;margin:16px 0}.recovery-form fieldset{border:0;padding:0;margin:16px 0}.recovery-form legend{font-weight:600;margin-bottom:12px}.recovery-form textarea{display:block;width:100%;box-sizing:border-box;margin:8px 0 12px;padding:12px;border:1px solid var(--border,#cbd5e1);border-radius:8px;font:inherit}.recovery-form fieldset:disabled{opacity:.65}.recovery-confirm{display:flex;align-items:flex-start;gap:8px}.recovery-confirm input{width:auto;margin-top:4px}.recovery-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.recovery-history{margin-top:24px}.recovery-history summary{cursor:pointer;font-weight:600;margin-bottom:16px}.recovery-policy{font-weight:500}@media(max-width:1000px){.recovery-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.recovery-facts{grid-template-columns:1fr}.recovery-buttons{flex-direction:column}.recovery-buttons .button{width:100%}}
.recovery-panel>.recovery-facts,.recovery-panel>.recovery-policy,.recovery-panel>.recovery-active,.recovery-panel>.recovery-form,.recovery-panel>p,.recovery-panel>.alert{margin-left:24px;margin-right:24px}

/* Ficha de cliente: encabezados y divulgación uniformes. */
.customer-heading .customer-heading-actions{display:block;margin-bottom:16px}
.customer-heading .customer-service-actions{display:block;border:0;padding:0;width:100%}
.customer-status-row,.customer-unified-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:flex-start}
.customer-unified-actions [data-service-reconnect][hidden],.customer-unified-actions [data-service-reconnect-status][hidden]{display:none}
.customer-reconnect-not-needed{white-space:normal;line-height:1.4}
.customer-status-row{margin-bottom:12px}.customer-heading .badge{margin-right:0}
.customer-heading .badge.good{background:#dcfce7;color:#166534}
.customer-heading .customer-action-warning{--action-ink:#854d0e;--action-border:#cca340;--action-bg:#fff6cf;--action-hover:#ffedaa}
.customer-heading .customer-action-danger{--action-ink:#b42318;--action-border:#e99d97;--action-bg:#ffe7e5;--action-hover:#ffd7d3}
.customer-heading .customer-action-positive{--action-ink:#166534;--action-border:#7abb92;--action-bg:#e5f9eb;--action-hover:#cef1d9}
.customer-card{min-width:0;margin-top:12px;overflow:hidden}
.customer-card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;cursor:pointer;list-style:none}
.customer-card-heading::-webkit-details-marker{display:none}
.customer-card-heading::after{content:'';width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);flex-shrink:0;margin:0 4px 4px 0}
[open]>.customer-card-heading::after{transform:rotate(225deg);margin-bottom:0}
.customer-card-heading:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:-3px}
.customer-card-title,.customer-card-description,.customer-card-summary{display:block;overflow-wrap:anywhere}
.customer-card-title{font-size:16px;font-weight:600;color:var(--ink);line-height:1.4}
.customer-card-description{font-size:12px;color:var(--muted);margin-top:3px;line-height:1.5}
.customer-card-summary{font-size:12px;margin-top:6px;line-height:1.5;color:var(--ink)}
.customer-card-content{border-top:1px solid var(--line);min-width:0}
.customer-card .table-wrap{max-width:100%;overflow-x:auto}
.customer-card-note{font-size:12px;color:var(--muted);margin:12px 20px}
.customer-financial-card table{min-width:850px}
.customer-data-card table{table-layout:fixed;width:100%}.customer-data-card th{width:36%;white-space:normal}
.customer-data-card td,.customer-data-card th{overflow-wrap:anywhere;padding:12px 20px}
.customer-card-footer{padding:0 20px 14px}.customer-queue-status{padding:12px 20px}
.customer-queue-panel .customer-queue-disclosure>.customer-card-heading{padding:16px 20px;font-weight:400}
.customer-card .recovery-summary-content{border-top:1px solid var(--line);padding:14px 20px}
@media(max-width:640px){.customer-card-heading,.customer-queue-panel .customer-queue-disclosure>.customer-card-heading{padding:14px 16px}.customer-data-card th,.customer-data-card td{padding:10px 16px}.customer-unified-actions{gap:8px}.customer-unified-actions .button{flex:1 1 auto;justify-content:center}.customer-status-row{gap:6px}.customer-service-last-known{flex-basis:100%}.customer-heading .page-heading{gap:12px;flex-wrap:wrap}.customer-heading h1{overflow-wrap:anywhere}}
.customer-card .customer-card-heading{font-weight:400}
.customer-data-card tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.customer-data-card tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);border-bottom:1px solid var(--line)}
.customer-data-card th{width:auto;font-size:12px;font-weight:500;letter-spacing:normal;text-transform:none;color:var(--muted)}
.customer-data-card td,.customer-data-card th{border:0;padding:12px 16px}
.customer-data-card tr:first-child{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,3.8fr)}
.customer-card .customer-card-summary{font-weight:400}
.customer-heading .customer-service-notice{margin-top:10px}
@media(max-width:640px){.customer-data-card tbody{grid-template-columns:1fr}.customer-data-card tr:first-child{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}}

/* Ajustes finales: tonos de acción y encabezados de tres líneas. */
.customer-heading .customer-action-edit{--action-ink:#1e40af;--action-border:#93b8ed;--action-bg:#e0edff;--action-hover:#cdddff}
.customer-heading .customer-action-administrative{--action-ink:#92400e;--action-border:#e6ad58;--action-bg:#ffedcf;--action-hover:#ffdfac}
.customer-heading .customer-unified-actions .button{color:var(--action-ink,#5e6d87);border-color:var(--action-border,#dee4ef);background:var(--action-bg,#fff);transition:background-color .15s,border-color .15s}
.customer-heading .customer-unified-actions .button:hover:not(:disabled):not([aria-disabled=true]){background:var(--action-hover,#f6f8fd);border-color:var(--action-ink,#5e6d87)}
.customer-heading .customer-back{background:var(--brand);border-color:var(--brand);color:var(--brand-on)}
.customer-heading .customer-back:hover:not(:disabled):not([aria-disabled=true]){background:var(--brand-hover);border-color:var(--brand-hover)}
.customer-heading .button:is(:disabled,[aria-disabled=true]){opacity:.55;cursor:not-allowed}
.customer-heading .button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.customer-card .customer-card-heading>span:first-child{flex:1;min-width:0}
.customer-card .customer-card-heading{min-height:102px}
.customer-card .customer-card-heading>.button{flex-shrink:0}
@media(max-width:640px){.customer-card .customer-card-heading{min-height:98px;gap:10px}.recovery-summary .customer-card-heading>.button{padding:8px}}
@media(max-width:640px){.customer-card .customer-card-heading{min-height:114px}}
@media(max-width:360px){.customer-card .customer-card-heading{min-height:132px}}

/* Actions stay inside the expanded customer cards. */
.customer-card .customer-luna-primary{background:var(--brand);border-color:var(--brand);color:var(--brand-on)}
.customer-card .customer-luna-primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--brand-hover);border-color:var(--brand-hover)}
.customer-card .customer-luna-primary:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.customer-card .button:is(:disabled,[aria-disabled=true]){opacity:.55;cursor:not-allowed}
.customer-promise-actions{display:flex;justify-content:flex-start;margin-top:16px}
.customer-queue-panel #customer-queue-technical{padding:4px 20px 16px}
.customer-queue-panel #customer-queue-technical>summary{display:inline-flex;justify-content:center;padding:11px 15px;font-size:11px;font-weight:600;list-style:none}
.customer-queue-panel #customer-queue-technical>summary::-webkit-details-marker{display:none}
.customer-queue-action-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;margin-top:12px}
.customer-queue-action-row>form{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:0;min-width:0;max-width:100%}
.customer-queue-action-row [data-queue-submit-progress]{max-width:260px}
@media(max-width:640px){.customer-queue-panel #customer-queue-technical{padding:4px 16px 14px}}

/* Header controls only for the customer list. */
.customer-list-heading{gap:16px;flex-wrap:wrap}
.customer-list-heading-controls{display:flex;flex-direction:column;align-items:flex-end;gap:10px;margin-left:auto;max-width:100%}
.customer-list-heading-buttons{display:flex;justify-content:flex-end;align-items:center;gap:8px;max-width:100%}
.customer-list-heading-buttons .button{min-height:36px;padding:9px 12px}


.customer-list-heading-buttons .button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.customer-list-heading-buttons .button:is(:disabled,[aria-disabled=true]){opacity:.55;cursor:not-allowed}
@media(max-width:640px){.customer-list-heading-controls{width:100%}}

/* Customer form: keep package help, historical notice and confirmation in flow. */
.customer-form .customer-package-field{display:flex;flex-direction:column;align-items:stretch;gap:8px}
.customer-form .customer-package-field>label:first-child,.customer-form .customer-package-field>small{margin:0}
.customer-form .customer-package-history{display:block;position:static;margin:0;padding:12px;font-size:12px;line-height:1.6;overflow-wrap:anywhere;border-color:#e6d8b5;background:#fffbeb;color:#785314}
.customer-form .customer-package-field .package-confirmation{margin:0;gap:8px}
.customer-form .customer-package-field>select{flex-shrink:0}
.customer-form [data-agreement-reason][hidden]{display:none}
.customer-agreement-record{min-width:0;align-self:start;border:1px solid var(--line);border-radius:8px}
.customer-agreement-record>summary{padding:12px;font-size:12px;line-height:1.5}
.customer-agreement-record>p{padding:12px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.6}
.customer-form-heading .customer-form-cancel{background:#f3f0ff;border-color:#c4b5e3;color:#5b437e;min-height:40px}
.customer-form-heading .customer-form-cancel:hover{background:#e9e2fa;border-color:#a78bce}
.customer-form-heading .customer-form-cancel:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
@media(max-width:640px){.customer-form-heading{flex-wrap:wrap;gap:12px}}

/* Administrative customer actions; technical controls keep their existing flow. */
.customer-confirm-heading{align-items:flex-start;flex-wrap:wrap;gap:16px}
.customer-confirm-heading>.button{margin-left:auto;background:#f3f0ff;border-color:#c4b5e3;color:#5b437e}
.customer-confirm-heading>.button:hover{background:#e9e2fa;border-color:#a78bce}
.customer-confirm-panel .customer-action-primary,.customer-manual-reconnect .customer-action-primary{background:var(--brand);border-color:var(--brand);color:var(--brand-on)}
.customer-confirm-panel .customer-action-primary:hover,.customer-manual-reconnect .customer-action-primary:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover)}
.customer-manual-reconnect .recovery-form{margin:20px 0 0}
.customer-manual-reconnect .button:disabled{opacity:.55;cursor:not-allowed}
.manual-reconnect-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}
.manual-reconnect-facts dt{font-size:12px;color:var(--muted)}
.manual-reconnect-facts dd{margin:6px 0 0;overflow-wrap:anywhere}
.customer-manual-reconnect .panel-heading{padding:0 0 16px;flex-wrap:wrap;gap:12px}
.customer-manual-reconnect .muted{line-height:1.6}
@media(max-width:640px){.manual-reconnect-facts{grid-template-columns:1fr}.customer-manual-reconnect .recovery-buttons .button{white-space:normal}}

/* Dashboard: shortcuts stay inside the calendar; pagination is bounded and wraps. */
.calendar-shortcuts{border-top:1px solid var(--line);margin:4px 23px 23px;padding-top:18px;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}
.calendar-shortcuts .quick-card{padding:13px 11px;gap:10px;min-width:0;max-width:100%}
.calendar-shortcuts .quick-card>div{min-width:0;overflow-wrap:anywhere}
.calendar-shortcuts .quick-card>.icon{flex-shrink:0}
.activity-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:16px;border-top:1px solid var(--line);font-size:11px}
.activity-pagination [aria-disabled="true"]{color:var(--muted);opacity:.65}
@media(max-width:760px){.calendar-shortcuts{margin-left:17px;margin-right:17px}.activity-pagination{gap:10px}}

.calendar-shortcuts>.calendar-shortcuts-heading{padding:0 0 6px;align-items:flex-start}

.tools-summary{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}
.tools-content{padding:0 23px 23px;line-height:1.7}.tools-content p{margin-bottom:14px}
.tools-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0 23px 20px;align-items:end}
.tools-detail pre{max-width:340px;white-space:pre-wrap;overflow-wrap:anywhere;padding:12px}
.tools-detail summary{padding:12px 0;font-size:11px}
@media(max-width:640px){.tools-form{grid-template-columns:1fr;padding:0 17px 17px}}

.cut-results td{vertical-align:top;padding-top:12px;padding-bottom:12px}
.cut-results small{display:block;margin-top:4px}
.cut-reason{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:160px;max-width:260px;line-height:1.5}
.cut-results .tools-detail summary{padding:6px 0;font-size:10px}
.tools-review-groups ul{padding:14px 28px;line-height:1.8;font-size:12px}

/* Herramientas: navigation and tab content must remain separate flow containers. */
.tools-tab-content,.tools-tab-content .panel,.tools-tab-content .panel-heading>div{min-width:0;max-width:100%}
.tools-tab-content>.below:first-child{margin-top:0}
.tools-tab-content .tools-content,.tools-tab-content .panel-heading p,.tools-tab-content .panel-footnote{overflow-wrap:anywhere}
.tools-form>label{display:grid;gap:7px;min-width:0;margin:0;align-self:start}
.tools-form input,.tools-form select{max-width:100%;min-width:0}
.pilot-panel>.panel-heading{align-items:flex-start;flex-wrap:wrap}
.pilot-intro{padding-bottom:12px}
.pilot-client-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.pilot-client-facts dt{font-size:11px;color:var(--muted)}
.pilot-client-facts dd{margin:4px 0 0;font-size:12px;overflow-wrap:anywhere}
.pilot-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:0 23px 20px}
.pilot-search label{display:grid;gap:7px;margin:0;min-width:0}
.pilot-search>p{grid-column:1/-1;font-size:12px;overflow-wrap:anywhere}
.pilot-form-heading{grid-column:1/-1;padding-top:4px}
.pilot-form small{font-size:11px;font-weight:400;color:var(--muted);line-height:1.5}
.pilot-actions{display:flex;flex-wrap:wrap;gap:10px;padding:0 23px 23px}
.pilot-actions .button{white-space:normal;max-width:100%;text-align:center}
.pilot-timeline{border-top:1px solid var(--line)}
.pilot-timeline>h3{padding:20px 23px 12px}
.pilot-timeline .table-wrap{max-width:100%;overflow-x:auto}
.pilot-timeline table{width:100%;min-width:540px}
.pilot-timeline td{white-space:normal;overflow-wrap:anywhere;max-width:280px}
.pilot-notes{padding-top:16px;font-size:12px}
.pilot-storage summary{cursor:pointer;font-weight:600}
.pilot-storage code{display:block;margin-top:8px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-size:11px;max-width:100%}
@media(max-width:760px){.pilot-client-facts{grid-template-columns:1fr}.pilot-search{padding-inline:17px}.pilot-actions{padding-inline:17px}.pilot-timeline>h3{padding-inline:17px}}
@media(max-width:640px){.pilot-search{grid-template-columns:minmax(0,1fr)}.pilot-search .button,.pilot-actions .button{width:100%}.pilot-panel>.panel-heading{padding:17px}.pilot-panel .tools-content{padding-inline:17px}}

.module-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 20px;min-width:0}
.module-tab{display:inline-flex;align-items:center;justify-content:center;min-height:40px;box-sizing:border-box;padding:9px 15px;border:1px solid #cdd6e3;border-radius:7px;background:#fff;color:var(--brand);font-size:12px;font-weight:600;line-height:1.4;text-align:center;text-decoration:none;white-space:normal;transition:background-color .15s,border-color .15s,color .15s}
.module-tab:hover{background:#f3f7fc;border-color:var(--brand);color:var(--brand-ink)}
.module-tab.active,.module-tab.active:hover{background:var(--brand);border-color:var(--brand);color:#fff}
.module-tab:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
@media(max-width:640px){.module-tabs{gap:6px}.module-tab{flex:1 1 auto;padding:9px 11px;font-size:12px}}

/* Administration · notification supervisor */
.notification-event-table{min-width:1040px}
.notification-check{text-align:center;vertical-align:middle}
.notification-toggle{display:grid;place-items:center;margin:0;min-height:38px}
.notification-toggle input[type=checkbox]{appearance:auto;width:17px;height:17px;margin:0;padding:0;accent-color:var(--brand);cursor:pointer}
.notification-event{min-width:245px}
.notification-event-code{display:block;font-size:10px;overflow-wrap:anywhere}
.notification-event-description{display:block;margin-top:5px;color:var(--muted);font-size:11px;font-weight:400;line-height:1.45;max-width:330px}
.notification-dispatch-control{margin-bottom:22px}
.notification-dispatch-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;padding:17px 19px;cursor:pointer;list-style:none}
.notification-dispatch-summary::-webkit-details-marker{display:none}
.notification-dispatch-summary::after{content:'⌄';flex:0 0 auto;color:var(--muted);font-size:18px;line-height:1;transition:transform .15s ease}
.notification-dispatch-control[open]>.notification-dispatch-summary::after{transform:rotate(180deg)}
.notification-dispatch-summary-copy{display:grid;gap:4px;min-width:0}
.notification-dispatch-summary-copy strong{color:var(--ink);font-size:14px}
.notification-dispatch-summary-copy small{color:var(--muted);font-size:11px;line-height:1.45}
.notification-dispatch-summary:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:8px}
.notification-dispatch-details{padding:0 19px 18px}
.notification-dispatch-details>.panel-heading{padding:10px 0 14px;border-top:1px solid var(--line)}
.notification-dispatch-control .form-actions{justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:16px;margin-top:16px}
.notification-enable-confirm{display:flex;align-items:flex-start;gap:9px;max-width:560px;margin:0;font-size:12px;font-weight:500;line-height:1.5}
.notification-enable-confirm input[type=checkbox]{appearance:auto;flex:0 0 16px;width:16px;height:16px;margin:2px 0 0;padding:0;accent-color:var(--brand)}
.notification-dispatch-control .form-help ul{margin:8px 0 0;padding-left:20px}
.recipient-events{display:grid;gap:7px;min-width:210px}
.recipient-events label{display:flex;align-items:flex-start;gap:7px;margin:0;font-size:11px;font-weight:500}
.recipient-events input[type=checkbox]{appearance:auto;flex:0 0 15px;width:15px;height:15px;margin:1px 0 0;padding:0;accent-color:var(--brand)}
@media(max-width:700px){.notification-event-description{max-width:250px}}
@media(max-width:700px){.notification-dispatch-summary{padding:15px;gap:10px}.notification-dispatch-details{padding:0 15px 16px}.notification-dispatch-control .form-actions{align-items:stretch}.notification-enable-confirm{max-width:none}.notification-dispatch-control .button{width:100%}}

.recipient-settings-table tbody td{vertical-align:top}
.recipient-settings-table .recipient-control{display:grid;align-content:start;align-items:start;min-width:0}
.recipient-name-field{grid-template-columns:minmax(0,1fr);gap:10px}
.recipient-name-field>.recipient-delete{display:flex;align-items:center;justify-self:start;gap:7px;min-width:0;max-width:100%;margin:0;color:#a33;font-size:10px;font-weight:500;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.recipient-name-field>.recipient-delete input[type=checkbox]{appearance:auto;flex:0 0 14px;width:14px;height:14px;margin:0;padding:0;accent-color:#b94747}
.recipient-settings-table .recipient-events{align-self:start;align-content:start}
.recipient-test-list{display:grid;gap:10px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}
.recipient-test-list h3{margin:0}
.recipient-test-form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(200px,auto) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff}
.recipient-test-form>span{display:grid;gap:4px}.recipient-test-form small{color:var(--muted);font-size:11px;overflow-wrap:anywhere}
.recipient-test-confirm{display:flex;align-items:center;gap:7px;margin:0;font-size:11px;font-weight:500}
.recipient-test-confirm input[type=checkbox]{appearance:auto;width:15px;height:15px;margin:0;padding:0;accent-color:var(--brand)}
@media(max-width:700px){.recipient-test-form{grid-template-columns:1fr;align-items:start}.recipient-test-form .button{width:100%}}

/* Read-only API reference inside Administration. */
.api-doc-body{padding:0 23px 20px;min-width:0;overflow-wrap:anywhere}
.api-doc-body>code{display:inline-block;color:var(--brand-ink);background:var(--brand-soft);border-radius:6px;padding:7px 9px;margin-bottom:12px}
.api-doc-body p{font-size:12px;line-height:1.7;margin:0 0 13px}
.api-doc-body pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;overflow:auto;padding:15px;border:1px solid var(--line);border-radius:8px;background:#f7f9fc;color:var(--ink);font-size:11px;line-height:1.6;margin:0 0 15px}
.api-doc-endpoint .panel-heading{align-items:flex-start}
@media(max-width:640px){.api-doc-body{padding:0 16px 17px}.api-doc-body pre{font-size:10px;padding:12px}}
