:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-synthesis:none;color:#19283e;background:#f5f7fb;--accent:#2563eb;--accent-dark:#1d4ed8;--shadow-color:rgba(37,99,235,0.4);--shadow-light:rgba(37,99,235,0.2);--blue:var(--accent);--accent-soft:#eff4ff;--accent-border:#c7d7fc;--focus:#2563eb;--page-bg:#f5f7fb;--bottom:env(safe-area-inset-bottom,0px);--border:#e2e8f0;--muted:#57677d;--radius:12px}
*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:var(--page-bg)}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:1px solid transparent;border-radius:8px;padding:12px 16px;font-size:14px;font-weight:650;cursor:pointer;text-decoration:none;transition:background .15s,box-shadow .15s}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button:active,.button:active{transform:translateY(1px)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}h1,h2,h3,p{overflow-wrap:anywhere}h1{font-size:28px;line-height:1.2;letter-spacing:-.8px;margin:8px 0}h2{font-size:18px;line-height:1.35;letter-spacing:-.3px;margin:0 0 20px}p{line-height:1.6}.muted{color:var(--muted)}.small{font-size:13px}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:750;text-transform:uppercase}.icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex-shrink:0;pointer-events:none}.primary{background:var(--accent);color:#fff;box-shadow:0 3px 6px #142b5b0c}.primary:hover{filter:brightness(.94)}.secondary{background:var(--accent-soft);color:var(--accent)}.danger{background:#be123c;color:#fff}.light{background:#fff;color:#475569;border-color:var(--border)}
label{display:block;font-size:13px;font-weight:600;color:#46556b;margin-bottom:20px}label>.icon{width:16px;height:16px;margin-right:6px;vertical-align:-3px;color:var(--muted)}input,select,textarea{display:block;width:100%;min-height:50px;margin-top:8px;padding:13px 14px;border:1px solid #c5cfdd;border-radius:8px;background:#fff;color:#19283e;font-size:16px;font-weight:400;line-height:1.4}input::placeholder,textarea::placeholder{color:#6b788b}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent)}input:user-invalid,textarea:user-invalid,select:user-invalid{border-color:#be123c;background:#fffafb}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check-label{display:flex;align-items:center;gap:12px;line-height:1.6;min-height:48px}.check-label input{width:22px;height:22px;min-height:22px;margin:0;flex-shrink:0;accent-color:var(--accent)}
.login{max-width:440px;margin:5vh auto;margin:0 auto;padding:clamp(36px,9vh,100px) 28px 40px}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:62px}.brand{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:#1d4ed8;color:#fff;font-size:21px;letter-spacing:-1px;font-weight:800;box-shadow:0 7px 18px #1d4ed81f}.login-brand strong{display:block;font-size:23px;letter-spacing:-.6px}.login-brand span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.login-intro{margin-bottom:32px}.login-intro .eyebrow{color:var(--accent)}.login h1{font-size:34px;margin:12px 0}.login-intro p:last-child{font-size:15px;margin-top:12px}.login .primary{width:100%;margin-top:10px;min-height:54px}.password-field{position:relative}.password-field input{padding-right:58px}.password-field button{position:absolute;right:2px;bottom:2px;min-width:48px;height:46px;background:transparent;color:var(--muted);padding:12px}
header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;padding:calc(40px + env(safe-area-inset-top,0px)) 24px 24px;background:linear-gradient(135deg, var(--accent) 0%, var(--accent-dark, var(--accent)) 100%);color:white;box-shadow:0 4px 6px -1px rgba(0,0,0,0.1);position:relative;z-index:10}.portal-heading{display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-width:0;flex:1;overflow-wrap:anywhere;}.portal-heading>div{min-width:0;max-width:100%}.portal-symbol{display:none;place-items:center;width:48px;height:48px;flex-shrink:0;border-radius:16px;background:#fff;color:#1d4ed8}.portal-symbol>.icon{width:24px;height:24px}header .eyebrow{color:#dbeafe;font-size:9px;letter-spacing:1.2px}header h1{font-size:24px;margin:6px 0;color:white;font-weight:800;letter-spacing:-0.5px}#user-name{font-size:13px;color:#dbeafe;font-weight:500}#logout{position:static;flex-shrink:0;width:48px;height:48px;font-size:0;padding:8px;background:transparent;color:white;border:none;} #logout:hover{background:rgba(255,255,255,0.3)}#logout>.icon{width:17px;height:17px}main{max-width:760px;margin:auto;padding:24px max(20px,env(safe-area-inset-right,0px)) calc(122px + var(--bottom))}.card{padding:22px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;box-shadow:0 2px 8px #17243a03;overflow-wrap:anywhere}.card label:last-child{margin-bottom:0}.form-heading{display:flex;align-items:center;gap:12px;margin-bottom:24px}.form-heading h2{margin:0;font-size:17px}.form-heading p{margin:4px 0 0;font-size:12px;color:var(--muted)}.step-number{display:grid;place-items:center;min-width:34px;height:34px;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-weight:750;font-size:12px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 16px}.section-heading h2,.section-heading .form-heading{margin:0}.section-heading>p{margin:0;font-size:13px}h2[data-icon]{display:flex;align-items:center;gap:10px}h2[data-icon]>.icon{color:var(--accent);width:22px;height:22px}.actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.actions .primary{flex:1}.submit-actions>.primary{min-height:54px}.request-estimate{padding:20px 0;margin:8px 0 12px;border-top:1px solid var(--border)}.request-estimate>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.request-estimate span{font-size:14px;font-weight:600}.request-estimate strong{font-size:25px;letter-spacing:-.6px;color:var(--accent)}.request-estimate p{font-size:12px;color:var(--muted);margin:8px 0 0}
.workspace-summary{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:16px;background:#fff;margin-bottom:24px;padding:18px 0}.overview-item{padding:0 16px;border-right:1px solid var(--border)}.overview-item:last-child{border:0}.overview-item>span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:11px}.overview-item .icon{width:14px;height:14px}.overview-item strong{display:block;font-size:22px;font-weight:750;letter-spacing:-.5px;margin-top:10px}.list-controls{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:10px;margin-bottom:20px}.list-controls label{margin:0}.list-controls input,.list-controls select{margin:0;font-size:13px;min-height:48px;padding:12px}.request-card{position:relative}.card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.card-top>div:first-child{min-width:0}.card-top h2{font-size:17px;margin:8px 0 0}.card-top .eyebrow{font-size:10px;font-variant-numeric:tabular-nums;letter-spacing:1px}.badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.badge{display:inline-flex;align-items:center;gap:4px;padding:6px 9px;border-radius:8px;font-size:10px;font-weight:700;background:#edf1f6;white-space:nowrap}.badge>.icon{width:12px;height:12px}.badge.High,.badge.returned{background:#fff0f2;color:#a51236}.badge.Medium,.badge.pending{background:#fff7df;color:#855300}.badge.approved{background:#e9f8ee;color:#166534}.badge.Normal{color:#475569}.request-card>.small{font-size:12px;line-height:1.8}.details{margin:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:13px}.details summary,.billing-summary summary{padding:14px 0;min-height:48px;cursor:pointer;color:var(--accent);font-weight:600;font-size:13px}.details summary>.icon{width:16px;height:16px;margin-right:7px}.details p{line-height:1.9}.worker-summary{padding:14px 0;border-top:1px solid var(--border);line-height:1.8;font-size:13px}.worker-summary strong{display:block;font-size:14px}.request-card>.secondary{margin-top:12px}.return-action{background:#fff1f2;color:#a51236}.billing-summary{padding:18px;border:1px solid var(--accent-border);background:var(--accent-soft);border-radius:14px;margin:16px 0 20px}.billing-summary h3{display:flex;gap:8px;align-items:center;font-size:14px;margin:0}.billing-summary p{font-size:12px;color:var(--muted);line-height:1.7}.billing-summary dl{display:grid;grid-template-columns:1fr auto;gap:10px;font-size:13px;margin:20px 0 0}.billing-summary dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.billing-summary .grand{border-top:1px solid var(--accent-border);padding-top:14px;font-weight:750;color:var(--accent);font-size:16px}.billing-summary details{margin-top:10px}.billing-summary summary{padding-bottom:0}.total-preview{font-size:18px;font-weight:750;color:var(--accent)}
.notice,#connection{border:1px solid #e6c781;background:#fff8e8;color:#7a4b0b;border-radius:8px;padding:15px;font-size:13px;line-height:1.65;white-space:pre-wrap;margin-bottom:18px}.empty{text-align:center;padding:42px 24px;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.empty-icon{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:20px;background:var(--accent-soft);color:var(--accent);margin-bottom:22px}.empty-icon>.icon{width:28px;height:28px}.empty h2{font-size:18px;margin-bottom:10px}.empty p{font-size:13px;margin:0}.file-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;padding:16px;background:#fff;border:1px solid var(--border);border-radius:16px}.file-tools p{width:100%;margin:4px 0 0}.file-tools .button,.file-tools button{font-size:12px}#settings-view>.section-heading{margin-top:0;flex-wrap:wrap}#company-list .card>p{font-size:13px;color:var(--muted);line-height:1.8}#company-list button{margin:6px 8px 0 0}
nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;justify-content:center;gap:6px;background:#fffffff7;border-top:1px solid var(--border);padding:9px max(12px,env(safe-area-inset-right,0px)) calc(9px + var(--bottom));box-shadow:0 -4px 20px #17243a04}nav button{flex:1;min-width:0;max-width:180px;min-height:64px;padding:8px 5px;flex-direction:column;gap:6px;background:transparent;color:#596a80;font-size:11px;font-weight:600;border-radius:14px}nav button>.icon{width:22px;height:22px}nav button[aria-current=page]{background:var(--accent-soft);color:var(--accent)}nav button[aria-current=page]>.icon{stroke-width:2.2}body.keyboard-open nav{display:none}dialog{border:1px solid var(--border);border-radius:22px;padding:26px;width:calc(100% - 32px);max-width:580px;max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 80px #17243a33}dialog::backdrop{background:#13223f80;backdrop-filter:blur(3px)}dialog h2{font-size:21px;margin-bottom:24px}dialog form>p{font-size:13px;color:var(--muted)}dialog .actions{padding-top:16px;border-top:1px solid var(--border);margin-top:24px}#message{position:fixed;left:16px;right:16px;bottom:calc(98px + var(--bottom));z-index:50;max-width:700px;margin:auto;display:flex;align-items:center;gap:12px;padding:8px 8px 8px 18px;background:#19283e;color:#fff;border-radius:14px;box-shadow:0 6px 30px #17243a26;font-size:13px;line-height:1.6}#message-text{flex:1;min-width:0;overflow-wrap:anywhere}#dismiss-message{background:transparent;color:#fff;width:48px;padding:12px;flex-shrink:0}#message[data-kind=error]{background:#8f1735}body.keyboard-open #message{bottom:16px}
@media(min-width:600px){.login{margin:5vh auto;background:#fff;border:1px solid var(--border);border-radius:26px;padding:40px;max-width:440px;box-shadow:0 20px 60px #17243a08}.login-brand{margin-bottom:40px} #new-view, #settings-view, #list-view, #workspace-summary, #file-tools, #connection { max-width: 800px; margin-left: auto; margin-right: auto; }}
    #request-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 20px; }
@media(min-width:900px){.login{margin-top:5vh;background:#fff;border:1px solid var(--border);border-radius:26px;padding:40px;width:440px;margin:5vh auto;box-shadow:0 20px 60px #17243a08}.login-brand{margin-bottom:40px}.form-section{padding:28px}}
@media(max-width:420px){.portal-symbol{width:38px;height:42px;border-radius:8px}.portal-heading{gap:10px}header h1{font-size:18px}#logout{width:48px;padding:12px;font-size:0;gap:0}#logout>.icon{width:19px;height:19px}main{padding-left:16px;padding-right:16px}.card{padding:20px}.card-top{flex-direction:column}.badges{justify-content:flex-start}.overview-item{padding:0 12px}.overview-item>span{font-size:10px;gap:4px}.overview-item strong{font-size:20px}.list-controls{grid-template-columns:minmax(0,1fr) 120px}.list-controls input,.list-controls select{font-size:12px}.actions{gap:8px}.actions>button,.actions>.button{font-size:13px;padding-left:12px;padding-right:12px}}
@media(max-width:480px){.row{grid-template-columns:1fr;gap:0}.card{padding:16px}.portal-heading{gap:8px}header .eyebrow{font-size:8px}header h1{font-size:17px}.overview-item{padding:0 9px}.overview-item .icon{display:none}.list-controls{grid-template-columns:1fr}.login{padding-left:22px;padding-right:22px}dialog{padding:20px}.billing-summary{padding:14px}.section-heading{gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

/* Worker editor */
#workers{display:grid;gap:12px;margin-bottom:16px}
.card.worker{padding:0;margin:0;border-radius:16px;box-shadow:0 2px 8px #17243a05;overflow:hidden;border-color:#dfe6ef}
.worker-heading{display:flex;align-items:center;gap:4px;padding:8px 10px 8px 14px;background:#fff}
.worker-heading h2{display:block;margin:0;flex:1;min-width:0}
.worker-toggle{width:100%;padding:6px 0;gap:12px;justify-content:flex-start;text-align:left;background:transparent;color:#17243a;min-height:56px;border-radius:8px}
.worker-number{display:grid;place-items:center;width:36px;height:40px;border-radius:8px;background:var(--accent-soft);color:var(--accent);font-size:13px;font-weight:750;flex-shrink:0;font-variant-numeric:tabular-nums}
.worker-copy{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}
.worker-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;line-height:1.35}
.worker-meta{display:block;color:#64748b;font-size:11px;font-weight:450;line-height:1.5;overflow-wrap:anywhere}
.worker-chevron{width:20px;height:20px;flex-shrink:0;color:#94a3b8;transition:transform .15s}
.worker-toggle[aria-expanded="true"] .worker-chevron{transform:rotate(180deg);color:var(--accent)}
.worker .remove-worker{background:transparent;color:#94a3b8;width:44px;height:44px;min-height:44px;padding:12px;border-radius:10px;flex-shrink:0}
.worker .remove-worker>.icon{width:18px;height:18px}
.worker .remove-worker:hover,.worker .remove-worker:focus-visible{background:#fff1f2;color:#be123c}
.worker-fields{padding:20px;border-top:1px solid #edf1f6;background:linear-gradient(#fafcff,#fff 90px)}
.worker-fields label{font-size:12px;letter-spacing:.1px;color:#475569}
.worker-fields input,.worker-fields select{border-color:#dce3ed;border-radius:10px}
.worker:has(.worker-toggle[aria-expanded="true"]){border-color:var(--accent-border);box-shadow:0 3px 12px #1d4ed808}
#add-worker{font-size:13px;border:1px solid var(--accent-border);background:#fff;padding:10px 13px}
#worker-undo{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#eef2f7;color:#475569;border-radius:8px;padding:4px 12px 4px 16px;margin-bottom:16px;font-size:13px}
#undo-worker{background:transparent;color:var(--accent);font-size:13px}
@media(max-width:360px){.worker-fields{padding:16px}.worker-heading{padding-left:10px;padding-right:6px}.worker-toggle{gap:8px}.worker-number{width:30px;height:36px}.worker-title{font-size:14px}}
@media(prefers-reduced-motion:reduce){.worker-chevron{transition:none}}

.worker .remove-worker{width:48px;height:48px;min-height:48px;color:#64748b}.worker-meta{color:#57677d}.worker-chevron{color:#64748b}.worker-fields input,.worker-fields select{border-color:#c5cfdd}.worker-toggle:focus-visible{outline-offset:-3px}

.form-hint{font-size:12px;color:var(--muted);margin:0 0 18px}.field-error{display:block;color:#a51236;font-size:12px;font-weight:500;line-height:1.5;margin-top:7px}.password-field:has(.field-error) button{bottom:auto;top:27px}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#a51236}

dialog{color:#19283e}dialog h2{padding-right:40px}.dialog-close{position:absolute;top:12px;right:12px;width:48px;padding:12px;background:transparent;color:var(--muted)}.dialog-close:hover{background:var(--accent-soft)}

@media(min-width:900px){
    #new-view, #settings-view, #list-view { max-width: 800px; margin: 0 auto; }
    body {
        background-color: var(--page-bg);
    }
    #app-view {
        max-width: 1600px;
        margin: 0 auto;
        display: grid;
        grid-template-columns: 240px 1fr;
        grid-template-rows: auto 1fr;
        min-height: 100vh;
        align-items: start;
    }
    header {
        grid-column: 1 / 3;
        grid-row: 1;
        border-radius: 0;
        margin: 0;
    }
    nav {
        grid-column: 1;
        grid-row: 2;
        flex-direction: column;
        justify-content: flex-start;
        position: sticky;
        top: 0;
        border-top: none;
        border-right: 1px solid var(--border);
        padding: 20px;
        background: transparent !important;
        backdrop-filter: none;
        align-self: start; height: auto; top: 24px; bottom: auto; left: auto; right: auto;
    }
    nav button {
        flex: none;
        width: 100%;
        padding: 12px 16px;
        flex-direction: row;
        justify-content: flex-start;
        gap: 12px;
        font-size: 15px;
        border-radius: 8px;
        margin-bottom: 4px;
    }
    nav button .icon {
        margin-bottom: 0;
    }
    main {
        max-width: 100%;
        grid-column: 2;
        grid-row: 2;
        padding: 32px 40px;
        overflow-y: visible;
        padding-bottom: 100px;
    }
    #request-list {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
        gap: 20px;
    }
    .card {
        margin-bottom: 0;
    }
    .row {
        grid-template-columns: repeat(2, 1fr);
    }
}

.card {
    transition: transform 0.2s, box-shadow 0.2s;
}
.card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 12px -2px rgba(23, 36, 58, 0.08);
}
nav {
    backdrop-filter: blur(12px);
    background: rgba(255, 255, 255, 0.85) !important;
}
.badge {
    border-radius: 9999px; /* full rounded like tailwind */
    padding: 4px 10px;
    font-size: 11px;
}
.badge.Medium, .badge.pending {
    background: #fef3c7; /* tailwind yellow-100 */
    color: #92400e; /* tailwind yellow-800 */
}
.badge.High, .badge.returned {
    background: #fee2e2; /* tailwind red-100 */
    color: #991b1b; /* tailwind red-800 */
}
.badge.approved {
    background: #dcfce7; /* tailwind green-100 */
    color: #166534; /* tailwind green-800 */
}
.badge.Normal {
    background: #f3f4f6; /* tailwind gray-100 */
    color: #374151; /* tailwind gray-700 */
}
input, select, textarea {
    background: #f9fafb;
    border-color: #e5e7eb;
    transition: all 0.2s;
}
input:focus, select:focus, textarea:focus {
    background: #ffffff;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px var(--shadow-light, rgba(37, 99, 235, 0.2));
    outline: none;
}
.primary {
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%) !important;
    color: white !important;
    box-shadow: 0 4px 6px -1px var(--shadow-color, rgba(37, 99, 235, 0.4)), 0 2px 4px -1px var(--shadow-light, rgba(37, 99, 235, 0.2)) !important;
    border: none;
}
.primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 8px -1px var(--shadow-color, rgba(37, 99, 235, 0.5)), 0 4px 6px -1px var(--shadow-light, rgba(37, 99, 235, 0.3)) !important;
}
.secondary {
    background: #f3f4f6 !important;
    color: #374151 !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.secondary:hover {
    background: #e5e7eb !important;
    color: #111827 !important;
}

/* Finance completion stays within the existing mobile visual system. */
#billing-form fieldset{min-width:0;margin:22px 0;padding:16px;border:1px solid var(--line,#dbe3ee);border-radius:14px}
#billing-form legend{padding:0 6px;font-weight:700;color:var(--accent)}
#billing-error{overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}.card:hover,.primary:hover{transform:none}}
#billing-form legend{color:var(--accent-dark)}
#billing-form .row{grid-template-columns:repeat(2,minmax(0,1fr))}
#billing-form .row>label,#billing-form input{min-width:0}
@media(max-width:520px){#billing-form .row{grid-template-columns:1fr}}
/* Keep the green identity with readable text on light surfaces. */




/* Finance reviews a prepared invoice; only gaps and exceptions need input. */
#billing-dialog{max-width:580px}
#billing-review{padding:18px;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:14px;margin:20px 0}
#billing-review dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;margin:0;font-size:13px}
#billing-review dt{color:#475569}#billing-review dd{margin:0;text-align:right;overflow-wrap:anywhere;font-weight:600}
#review-total{font-size:18px;color:var(--accent-dark)}.review-total-label{align-self:center;font-weight:700}
#billing-missing{padding:16px;border:1px solid #dbe3ee;border-radius:12px;margin:18px 0}
#billing-missing h3{margin:0;font-size:16px}
#billing-missing-fields label:last-child{margin-bottom:0}
.billing-options{border-top:1px solid #e2e8f0;padding:4px 0}
.billing-options>summary{padding:14px 0;min-height:48px;font-size:14px;font-weight:600;cursor:pointer}
.billing-options-body{padding:8px 0}
#billing-form fieldset{padding:0;border:0;margin:18px 0}
#billing-form legend{margin-bottom:18px;padding:0;font-size:16px}

.invoice-send-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
.invoice-send-actions button{min-width:0}
.whatsapp-action{color:var(--accent-dark)!important;background:#ecfdf5!important;border-color:#bbf7d0!important}
#email-error{overflow-wrap:anywhere}

/* New Request Details Grid CSS */
.details-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 12px; margin-bottom: 20px; background: #f8fafc; padding: 16px; border-radius: 12px; border: 1px solid #e2e8f0; }
.detail-group { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.detail-label { font-size: 11px; color: #64748b; text-transform: uppercase; letter-spacing: 0.5px; white-space: nowrap; }
.detail-value { font-size: 13px; color: #0f172a; font-weight: 600; overflow-wrap: anywhere; }
.worker-card { border: 1px solid #e2e8f0; border-radius: 10px; padding: 14px; margin-bottom: 10px; background: #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.02); }
.worker-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; gap: 8px; }
.worker-name { font-weight: 700; color: #1e293b; font-size: 13px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.worker-tax { font-size: 10px; background: #f1f5f9; padding: 3px 8px; border-radius: 6px; color: #475569; font-weight: 750; letter-spacing: 0.5px; }
.worker-stats { display: flex; gap: 16px; font-size: 12px; color: #64748b; flex-wrap: wrap; }
.worker-stats span { display: flex; align-items: center; gap: 6px; font-weight: 500; }
.worker-stats .icon { width: 14px; height: 14px; stroke-width: 2.2; }
.workers-heading { font-size: 11px; color: #64748b; margin: 0 0 10px 4px; text-transform: uppercase; letter-spacing: 1px; font-weight: 700; }

/* Custom Scrollbar for better UI/UX on Desktop */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }
