:root{--bg: #f4efe7;--panel: rgba(255, 252, 247, .94);--text: #1f2937;--ink: #0f172a;--muted: #5b6472;--line: rgba(31, 41, 55, .12);--brand: #0f766e;--brand-dark: #115e59;--brand-soft: rgba(15, 118, 110, .12);--warm-soft: rgba(180, 83, 9, .12);--danger: #b91c1c;--shadow: 0 20px 50px rgba(15, 23, 42, .08);--shadow-soft: 0 10px 24px rgba(15, 23, 42, .06);font-family:Trebuchet MS,Segoe UI,Tahoma,Geneva,Verdana,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--text);background:radial-gradient(circle at top left,rgba(245,158,11,.18),transparent 28%),radial-gradient(circle at top right,rgba(15,118,110,.12),transparent 24%),linear-gradient(180deg,#f5f1ea,#efe7da)}button,input{font:inherit}button{border:0;border-radius:16px;padding:12px 16px;background:var(--brand);color:#fff;font-weight:700;cursor:pointer;transition:transform .14s ease,opacity .14s ease,box-shadow .14s ease;box-shadow:0 10px 20px #0f766e2e}button:hover{transform:translateY(-1px);opacity:.97;box-shadow:0 14px 24px #0f766e38}button:disabled{cursor:wait;opacity:.7;transform:none;box-shadow:none}button.ghost{background:#ffffffd1;color:var(--brand-dark);box-shadow:none;border:1px solid rgba(15,118,110,.12)}button.danger{background:#b91c1c1f;color:var(--danger)}button.danger-fill{background:linear-gradient(180deg,#dc2626,#b91c1c);color:#fff;box-shadow:0 12px 24px #b91c1c38}button.danger-fill:disabled{cursor:not-allowed;opacity:.45;background:#9ca3af}input{width:100%;border-radius:14px;border:1px solid var(--line);padding:12px 14px;background:#ffffffe6}input:focus{outline:none;border-color:#0f766e59;box-shadow:0 0 0 4px #0f766e1a;background:#fff}label{display:grid;gap:6px;font-weight:600}fieldset{min-width:0;margin:0;padding:0;border:0}legend{padding:0;margin-bottom:10px;font-weight:800;color:var(--ink)}.app-shell,.detail-shell{width:min(1180px,calc(100% - 24px));margin:0 auto}.app-shell{padding:20px 0 48px}.topbar,.detail-header{margin-bottom:20px}.topbar-hero{position:relative;display:grid;justify-items:center;gap:18px;padding:28px;border-radius:32px;background:radial-gradient(circle at top left,rgba(245,158,11,.18),transparent 28%),linear-gradient(135deg,#fffffff2,#f6faf9e6);border:1px solid rgba(255,255,255,.76);box-shadow:var(--shadow)}.hero-copy{max-width:900px;margin:0 auto;text-align:center}.topbar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center;width:100%}.mobile-menu-toggle{display:none;align-items:center;justify-content:space-between;gap:12px;width:100%;height:52px;padding:0 16px}.mobile-menu-label{color:var(--brand-dark);font-weight:800;letter-spacing:.02em}.mobile-menu-icon{display:inline-grid;gap:4px}.mobile-menu-icon span{display:block;width:18px;height:2px;border-radius:999px;background:var(--brand-dark);transition:transform .14s ease,opacity .14s ease}.mobile-menu-toggle.is-open .mobile-menu-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}.mobile-menu-toggle.is-open .mobile-menu-icon span:nth-child(2){opacity:0}.mobile-menu-toggle.is-open .mobile-menu-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.topbar-actions button{min-width:124px;min-height:48px}.topbar-actions .icon-button{min-width:48px;width:48px;min-height:48px;height:48px;padding:0;font-size:0;color:transparent;position:relative;flex:0 0 48px}.topbar-actions .icon-button:before{content:"↻";color:var(--brand-dark);position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:1.3rem}.topbar-actions .icon-button.is-refreshing:before{animation:refresh-spin .8s linear infinite}@keyframes refresh-spin{to{transform:rotate(360deg)}}.update-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding:14px 16px;border-radius:20px;background:linear-gradient(135deg,#0f766e1f,#ffffffeb);border:1px solid rgba(15,118,110,.18);color:var(--brand-dark);font-weight:700}.update-banner span{min-width:0}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;color:var(--brand-dark);font-weight:700}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2rem,4vw,3.8rem);line-height:1.02;margin-bottom:10px}.subtitle,.hint,.client-card p,.result-card,.mini-history{color:var(--muted)}.subtitle.compact{margin-bottom:0}.panel{background:var(--panel);border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:28px;padding:24px}.hidden{display:none!important}body.modal-open{overflow:hidden}.overlay-modal,.admin-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:18px}.admin-modal{z-index:25}.overlay-backdrop,.admin-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a7a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.admin-modal-backdrop{background:#0f172a70;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.overlay-dialog,.admin-dialog{position:relative;width:min(920px,100%);max-height:min(92vh,900px);overflow:auto;padding:24px;border-radius:28px;background:#fffcf7fa;border:1px solid rgba(255,255,255,.85);box-shadow:var(--shadow)}.admin-dialog{width:min(1120px,100%)}.overlay-dialog{width:min(540px,100%)}.overlay-header{margin-bottom:18px}.auth-dialog,.confirm-dialog{background:radial-gradient(circle at top right,rgba(15,118,110,.1),transparent 28%),linear-gradient(180deg,#fffffff7,#f8fafcf2)}.auth-summary{display:grid;gap:10px;margin-bottom:18px;padding:14px 16px;border-radius:20px;background:linear-gradient(180deg,#f8fafcf5,#f1f5f9e0);border:1px solid rgba(148,163,184,.18)}.auth-status-pill{display:inline-flex;align-items:center;width:fit-content;padding:7px 12px;border-radius:999px;font-size:.8rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.auth-status-pill.online{background:#0f766e1f;color:var(--brand-dark)}.auth-status-pill.local{background:#b4530924;color:#9a3412}.auth-summary-text{margin:0;color:var(--muted);line-height:1.5}.auth-demo-note{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;background:#0f766e14;border:1px solid rgba(15,118,110,.14);color:var(--brand-dark);line-height:1.45}.auth-demo-note span{font-weight:700}.auth-demo-actions{display:flex;gap:10px;flex-wrap:wrap}.auth-demo-button{min-width:156px;min-height:44px}.auth-feedback{margin-bottom:16px;padding:12px 14px;border-radius:16px;font-weight:700}.auth-feedback.error{background:#b91c1c1a;border:1px solid rgba(185,28,28,.18);color:var(--danger)}.auth-field{align-content:start}.password-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.password-toggle{min-width:92px;min-height:48px;border-radius:14px;padding-inline:14px}.auth-helper-copy{grid-column:1 / -1;margin-top:-2px;color:var(--muted);font-size:.92rem;line-height:1.5}.auth-actions,.confirm-actions,.report-actions{grid-column:1 / -1}.confirm-name-field{margin-bottom:18px}.confirm-required-text{width:fit-content;max-width:100%;padding:8px 12px;overflow-wrap:anywhere;border-radius:12px;background:#b91c1c1a;color:var(--danger)}.toast-container{position:fixed;right:18px;bottom:18px;z-index:55;display:grid;gap:10px;width:min(360px,calc(100vw - 36px))}.toast{padding:14px 16px;border-radius:18px;background:#141d27f2;color:#fff;box-shadow:0 16px 32px #0f172a40;border:1px solid rgba(255,255,255,.08)}.toast.prominent{position:fixed;top:50%;left:50%;width:min(460px,calc(100vw - 32px));padding:26px 24px;border:2px solid rgba(255,255,255,.7);border-radius:26px;background:linear-gradient(135deg,#0f766e,#115e59);box-shadow:0 24px 70px #0f172a61;text-align:center;font-size:clamp(1.15rem,4vw,1.5rem);font-weight:900;line-height:1.25;animation:prominent-toast-in .18s ease-out both}.toast.prominent:before{content:"✓";display:grid;place-items:center;width:48px;height:48px;margin:0 auto 12px;border-radius:50%;background:#ffffff2e;font-size:1.8rem}@keyframes prominent-toast-in{0%{opacity:0;transform:translate(-50%,-44%) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.admin-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:8px}.admin-separator{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.admin-sections{display:grid;gap:18px;margin-top:18px}.admin-section{min-width:0}.admin-panel{padding:22px;border-radius:24px;background:radial-gradient(circle at top right,rgba(15,118,110,.08),transparent 30%),linear-gradient(180deg,#fffffff5,#f8fafce6);border:1px solid rgba(148,163,184,.16);box-shadow:var(--shadow-soft)}.grid-form{display:grid;gap:14px}.simple-form{max-width:520px;width:100%;margin:0 auto}.split-form{grid-template-columns:repeat(2,minmax(0,1fr))}.actions,.card-actions{display:flex;gap:10px;flex-wrap:wrap}.actions>*{flex-shrink:0}.client-import{display:grid;gap:18px;margin:20px 0 28px;padding:22px;border:1px solid rgba(15,118,110,.18);border-radius:22px;background:linear-gradient(145deg,#ecfdf5b8,#fffffff0)}.import-dialog{width:min(1220px,100%);max-height:94vh}.import-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0}.import-mode-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center;min-height:106px;padding:18px;border:1px solid rgba(148,163,184,.24);border-radius:20px;background:#ffffffd1;color:var(--text);text-align:left}.import-mode-card:hover{border-color:#0f766e5c}.import-mode-card.is-active{border-color:#0f766e94;background:linear-gradient(145deg,#ccfbf1a3,#fffffff0);box-shadow:0 10px 24px #0f766e1a}.import-mode-step{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#0f766e1a;color:var(--brand-dark);font-size:1.05rem;font-weight:900}.import-mode-card.is-active .import-mode-step{background:var(--brand);color:#fff}.import-mode-card strong,.import-mode-card small{display:block}.import-mode-card strong{margin-bottom:6px;font-size:1.08rem}.import-mode-card small{color:var(--muted);font-size:.9rem;line-height:1.4}.import-workspace{margin:0}.import-workspace h3{margin-bottom:8px;font-size:1.35rem}.import-safety-note{padding:13px 15px;border:1px solid rgba(180,83,9,.2);border-radius:14px;background:#fff7ede6;color:#9a3412;font-weight:700;line-height:1.45}.history-import-table{min-width:1050px}.client-import-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.client-import-head h4,.manual-client-heading h4{margin:0 0 6px;font-size:1.25rem}.client-import-head p:not(.eyebrow){max-width:650px;margin:0;color:var(--muted);line-height:1.5}.client-import-top-actions{justify-content:flex-end}.button-like{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 16px;border-radius:14px;background:var(--brand);color:#fff;font-weight:800;cursor:pointer}.button-like input{display:none}.client-import-columns{overflow-x:auto;padding:12px 14px;border-radius:14px;background:#0f172a0f;color:var(--brand-dark);white-space:nowrap}.client-import-textarea{width:100%;min-height:150px;resize:vertical;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.92rem;line-height:1.55}.client-import-actions{align-items:center;justify-content:space-between}.import-error,.import-ready{display:inline-flex;align-items:center;min-height:42px;padding:9px 13px;border-radius:12px;font-weight:800}.import-error{background:#b91c1c1a;color:var(--danger)}.import-ready{background:#0f766e1a;color:var(--brand-dark)}.client-import-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.client-import-summary span{padding:12px 14px;border:1px solid rgba(15,118,110,.12);border-radius:14px;background:#ffffffc7;color:var(--muted)}.client-import-summary strong{margin-right:4px;color:var(--text);font-size:1.1rem}.client-import-table-wrap{max-width:100%;overflow-x:auto;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:#fff}.client-import-table{width:100%;min-width:780px;border-collapse:collapse;font-size:.9rem}.client-import-table th,.client-import-table td{padding:12px;border-bottom:1px solid rgba(148,163,184,.16);text-align:left;vertical-align:top}.client-import-table th{position:sticky;top:0;background:#f1f5f4;color:var(--brand-dark);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}.client-import-table tr:last-child td{border-bottom:0}.client-import-table tr.has-error td{background:#fee2e29e;color:#991b1b}.client-import-confirm{justify-content:flex-end}.manual-client-heading{grid-column:1 / -1;margin-top:0}.simple-form>label,.simple-form>.reading-status,.simple-form>.actions{justify-self:center;width:100%}.simple-form>.actions{justify-content:center}.section-head{margin-bottom:16px}.section-head-spread{display:flex;justify-content:space-between;gap:16px;align-items:end}.dashboard-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.dashboard-card{display:grid;align-content:center;justify-items:center;padding:18px 20px;min-height:112px;border-radius:24px;background:linear-gradient(180deg,#fffffff2,#f8f5eee6),linear-gradient(135deg,rgba(15,118,110,.12),transparent 70%);border:1px solid rgba(15,118,110,.1);box-shadow:var(--shadow-soft);text-align:center}.dashboard-label{display:block;color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-weight:700}.dashboard-card strong{display:block;font-size:clamp(1.2rem,2vw,1.8rem);line-height:1.05}.dashboard-card-pending{background:linear-gradient(180deg,#fffaf0,#fff2d8);border:2px solid rgba(217,119,6,.38);box-shadow:0 12px 28px #b453091f}.dashboard-card-pending .dashboard-label,.dashboard-card-pending strong{color:#9a3412}.dashboard-card-button{width:100%;text-align:center;color:inherit;cursor:pointer}.dashboard-card-button small{margin-top:8px;color:#9a3412;font-size:.78rem;font-weight:800}.pending-invoices-dialog{width:min(620px,100%)}.pending-invoices-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.modal-close-button{flex:0 0 auto}.pending-invoices-summary{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:14px 16px;border-radius:18px;background:#fff2d8;border:1px solid rgba(217,119,6,.32);color:#9a3412}.pending-invoices-summary span{font-size:.88rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.pending-invoices-summary strong{font-size:1.25rem}.pending-invoices-list{display:grid;gap:10px}.pending-invoice-item{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:16px;text-align:left;color:var(--ink);background:linear-gradient(135deg,#fffaf0,#fff);border:1px solid rgba(217,119,6,.25);box-shadow:none}.pending-invoice-item-copy,.pending-invoice-item-action{display:grid;gap:4px}.pending-invoice-item-copy>span{color:var(--muted);font-size:.9rem}.pending-invoice-item-action{justify-items:end;color:#9a3412;white-space:nowrap}.pending-invoice-item-action>span{font-size:.82rem;font-weight:800}.searchbox{min-width:min(100%,320px);max-width:360px}.searchbox span{color:var(--muted);font-size:.85rem}.client-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px;align-items:stretch}.client-card{min-height:230px;border-radius:28px;padding:20px;background:radial-gradient(circle at top right,rgba(15,118,110,.14),transparent 30%),linear-gradient(180deg,#fffffff2,#faf5ede6);border:1px solid rgba(15,118,110,.14);display:grid;grid-template-rows:1fr auto;gap:16px;box-shadow:var(--shadow-soft)}.client-card.has-pending{background:radial-gradient(circle at top right,rgba(245,158,11,.24),transparent 34%),linear-gradient(180deg,#fffdf8,#fff3dc);border:2px solid rgba(217,119,6,.48);box-shadow:0 14px 30px #b4530924}.client-card.is-paid{background:radial-gradient(circle at top right,rgba(16,185,129,.18),transparent 34%),linear-gradient(180deg,#fbfffd,#eaf8f2);border:2px solid rgba(5,150,105,.32)}.client-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.client-card-body{display:grid;gap:10px}.client-card h3{font-size:1.4rem;line-height:1.08;margin-bottom:10px}.client-order{display:inline-flex;align-items:center;width:fit-content;margin-bottom:12px;padding:9px 15px;border-radius:16px;background:#0f766e1c;color:var(--brand-dark);font-size:clamp(1.55rem,3vw,2rem);line-height:1;font-weight:900;letter-spacing:.01em}.card-status{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;padding:9px 12px;border-radius:999px;font-size:.82rem;font-weight:900;border:1px solid transparent}.card-status:before{font-size:1rem;line-height:1}.card-status.pending{background:#ffedd5;color:#9a3412;border-color:#c2410c52}.card-status.pending:before{content:"!";display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#c2410c;color:#fff}.card-status.paid{background:#d1fae5;color:#065f46;border-color:#0596694d}.card-status.paid:before{content:"✓";font-weight:900}.client-card .card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.client-card .card-actions button[data-action=open],.client-card .card-actions button:first-child{grid-column:1 / -1;min-height:52px;font-size:1rem}.reorder-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.client-card.ordering{border-color:#0f766e52}.drag-hint{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:18px;background:#0f766e0f;border:1px dashed rgba(15,118,110,.18);color:var(--muted);font-size:.9rem}.drag-handle{min-height:42px;padding-inline:14px;cursor:grab}.client-card.drop-before{box-shadow:inset 0 4px #0f766ed9,var(--shadow)}.client-card.drop-after{box-shadow:inset 0 -4px #0f766ed9,var(--shadow)}.service-selector{display:grid;gap:10px;grid-column:1 / -1}.service-card{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border-radius:18px;border:1px solid rgba(15,118,110,.18);background:linear-gradient(180deg,#ffffffeb,#f5fbfae0),linear-gradient(135deg,rgba(15,118,110,.12),transparent 65%);cursor:pointer}.service-card.subtle{border-style:dashed;background:linear-gradient(180deg,#ffffffeb,#f8f7f3eb),linear-gradient(135deg,rgba(180,83,9,.08),transparent 65%)}.service-card input{width:20px;height:20px;margin-top:2px;accent-color:var(--brand);flex:0 0 auto}.service-card span{color:var(--muted);font-size:.94rem}.detail-view{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;background:#f4efe7fa;padding:18px 0 32px;z-index:20}.back-button{margin-bottom:16px}.detail-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;background:radial-gradient(circle at top right,rgba(245,158,11,.14),transparent 24%),linear-gradient(135deg,#0f766e1f,#ffffffe0);border-radius:32px;padding:26px;margin-bottom:18px;box-shadow:var(--shadow)}.detail-header-main{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:14px}.detail-title-block{text-align:center}.detail-title-block h2{overflow-wrap:anywhere}.detail-nav-button{width:56px;min-width:56px;height:56px;min-height:56px;padding:0;border-radius:18px;font-size:2rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.detail-meta{display:grid;gap:14px;min-width:220px}.detail-meta-card{padding:14px 16px;border-radius:18px;background:#ffffffc7;border:1px solid rgba(15,118,110,.12)}.detail-meta strong{display:block;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.reading-status{margin:0;color:var(--muted)}.detail-panel{display:grid;gap:18px}.remaining-helper{display:grid;gap:12px;margin-top:14px}.remaining-helper-card{display:grid;gap:10px;padding:16px 18px;border-radius:20px;border:1px solid rgba(15,118,110,.18);background:linear-gradient(180deg,#fffffff5,#eff8f7f0),linear-gradient(135deg,rgba(15,118,110,.08),transparent 65%)}.remaining-helper-card h4{margin:0;font-size:1rem;color:var(--ink)}.remaining-helper-card div{display:flex;justify-content:space-between;gap:14px;color:var(--muted)}.remaining-helper-card strong{color:var(--ink)}.remaining-helper-note{margin:0;color:var(--muted);font-size:.92rem}.result-card{border-radius:24px;border:1px dashed rgba(31,41,55,.16);padding:20px;background:#ffffffb3}.result-card.empty{color:var(--muted)}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}.result-grid strong{display:block;font-size:.78rem;color:var(--muted);margin-bottom:2px;text-transform:uppercase;letter-spacing:.08em}.history-panel{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.history-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.history-card{display:grid;gap:18px;padding:20px;border-radius:24px;border:1px solid rgba(148,163,184,.18);background:radial-gradient(circle at top right,rgba(15,118,110,.08),transparent 28%),linear-gradient(180deg,#fffffff5,#f8fafce6);box-shadow:var(--shadow-soft)}.history-card.is-pending{border:3px solid #d97706;background:radial-gradient(circle at top right,rgba(245,158,11,.25),transparent 32%),linear-gradient(180deg,#fffdf8,#fff3dc);box-shadow:0 16px 34px #b453092e}.history-card.is-paid{border:3px solid #059669;background:radial-gradient(circle at top right,rgba(16,185,129,.2),transparent 32%),linear-gradient(180deg,#fbfffd,#e7f7f0);box-shadow:0 16px 34px #05966924}.history-card.receipt-expanded{grid-column:1 / -1}.invoice-summary-toggle{display:grid;gap:14px;width:100%;min-height:164px;padding:16px 18px;color:#0f172a;text-align:left;background:#ffffffe0;border:1px solid rgba(51,65,85,.14);border-radius:18px;box-shadow:none}.invoice-summary-toggle:hover{opacity:1;border-color:#0f766e57;box-shadow:0 8px 18px #0f172a14}.invoice-summary-header{display:grid;grid-template-columns:minmax(0,1fr) auto 34px;align-items:center;gap:12px}.invoice-summary-stall{color:#0f172a;font-size:1.14rem;line-height:1.15}.invoice-summary-client{display:grid;gap:3px;padding:12px 0;border-block:1px solid rgba(51,65,85,.1)}.invoice-summary-client small,.invoice-summary-field small{color:#64748b;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.invoice-summary-client strong{color:#0f172a;font-size:1.08rem;line-height:1.2;overflow-wrap:anywhere}.invoice-summary-details{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:end;gap:14px}.invoice-summary-field{display:grid;gap:3px;min-width:0}.invoice-summary-field strong{color:#0f172a;font-size:.92rem;line-height:1.2;overflow-wrap:anywhere}.invoice-summary-total{min-width:88px;text-align:right}.invoice-summary-total strong{color:#0f766e;font-size:1.16rem}.invoice-summary-header .history-status{justify-self:end}.invoice-summary-header .history-status{gap:6px;padding:8px 10px;font-size:.76rem}.invoice-summary-header .history-status.pending:before{width:18px;height:18px}.invoice-summary-chevron{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#0f766e1a;color:#115e59;font-size:1.35rem;line-height:1;transform:rotate(0);transition:transform .16s ease}.invoice-summary-chevron.is-open{transform:rotate(180deg)}.invoice-receipt{width:min(100%,680px);margin:0 auto;padding:clamp(24px,5vw,48px);overflow:hidden;color:#0f172a;background:#fff;border:1px solid rgba(51,65,85,.2);border-radius:8px;box-shadow:0 12px 28px #0f172a1a;font-family:Arial,Helvetica,sans-serif}.invoice-receipt p,.invoice-receipt h4,.invoice-receipt h5{margin:0;color:inherit}.invoice-receipt-header{display:grid;gap:7px}.invoice-receipt-market{font-size:clamp(1.2rem,4vw,1.65rem);font-weight:800;overflow-wrap:anywhere}.invoice-receipt-header h4{font-size:clamp(1.55rem,5vw,2.15rem);line-height:1.06}.invoice-receipt-status{width:fit-content;margin-top:8px!important;font-size:clamp(1rem,3vw,1.2rem);font-weight:900}.invoice-receipt-status.pending{color:#c2410c}.invoice-receipt-status.paid{color:#047857}.invoice-receipt-identity{display:grid;gap:7px;margin-top:34px;font-size:clamp(.96rem,2.5vw,1.12rem);line-height:1.35}.invoice-receipt-identity p{overflow-wrap:anywhere}.invoice-receipt-section,.invoice-receipt-summary{margin-top:26px;padding-top:18px;border-top:1px dashed #475569}.invoice-receipt-section h5{margin-bottom:14px;font-size:clamp(1.2rem,3vw,1.45rem)}.invoice-receipt-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:4px 0;font-family:Courier New,Courier,monospace;font-size:clamp(.88rem,2.5vw,1.02rem);line-height:1.35}.invoice-receipt-row span:last-child{text-align:right;white-space:nowrap}.invoice-receipt-row.strong{font-family:Arial,Helvetica,sans-serif;font-weight:800}.invoice-receipt-total{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:12px!important;font-size:clamp(1.05rem,4vw,1.75rem);font-weight:900}.invoice-receipt-total span,.invoice-receipt-total strong{white-space:nowrap}.invoice-receipt-generated{margin-top:42px!important;color:#475569!important;font-size:.8rem}.history-card-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.history-card-topline h4{margin-bottom:0;overflow-wrap:anywhere}.history-status{display:inline-flex;align-items:center;gap:9px;font-weight:900;padding:10px 14px;border-radius:999px;font-size:.86rem;text-transform:uppercase;letter-spacing:.035em;border:1px solid transparent}.history-status:before{font-size:1.05rem;line-height:1}.history-status.pending{background:#c2410c;color:#fff;border-color:#9a3412;box-shadow:0 8px 16px #9a341233}.history-status.pending:before{content:"!";display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#fff;color:#c2410c}.history-status.paid{background:#047857;color:#fff;border-color:#065f46;box-shadow:0 8px 16px #065f462e}.history-status.paid:before{content:"✓";font-weight:900}.history-card-head{display:grid;gap:12px;justify-items:center;text-align:center}.history-meta{color:var(--muted);line-height:1.5}.history-total{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:12px 18px;border-radius:16px;color:#0f172a;font-size:1.2rem;font-weight:900}.history-card.is-pending .history-total{background:#ffedd5;color:#9a3412;border:1px solid rgba(194,65,12,.28)}.history-card.is-paid .history-total{background:#d1fae5;color:#065f46;border:1px solid rgba(5,150,105,.26)}.history-actions{display:grid;gap:12px;width:100%;max-width:860px;margin:0 auto;padding:14px;border-radius:20px;background:linear-gradient(180deg,#f8fafcf5,#f1f5f9e0);border:1px solid rgba(148,163,184,.18)}.history-actions-main{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.history-card:not(.receipt-expanded) .history-actions-main{grid-template-columns:repeat(2,minmax(0,1fr))}.history-actions-danger{display:grid;grid-template-columns:1fr;gap:10px;padding-top:12px;border-top:1px dashed rgba(185,28,28,.14)}.history-action-button{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:12px 14px;border-radius:14px;font-size:.94rem}.history-editor{display:grid;gap:14px;margin-top:6px;padding-top:14px;border-top:1px dashed rgba(15,23,42,.14);justify-items:center;width:100%}.history-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;max-width:860px}.history-save-button{min-height:50px;min-width:220px;width:min(100%,320px);border-radius:16px;background:linear-gradient(135deg,#0f766e,#115e59)}.report-shell{padding-bottom:24px;min-height:calc(100vh - 50px)}.report-header-side{display:grid;gap:12px;justify-items:end}.report-nav{display:flex;gap:10px;flex-wrap:wrap}.report-panel{display:grid;gap:18px}.report-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}.report-toolbar-actions{justify-content:flex-end}.report-summary-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.report-toolbar>*,.report-header-side>*,.report-summary-strip>*{min-width:0}.report-table-wrap{overflow-x:auto;border-radius:24px;border:1px solid rgba(15,118,110,.18);background:#fffffffa}.report-table{width:100%;border-collapse:collapse;min-width:1680px;color:#14212b;table-layout:fixed}.report-table th,.report-table td{padding:12px 14px;border-bottom:1px solid rgba(15,23,42,.12);text-align:left;white-space:nowrap}.report-table th{position:sticky;top:0;background:linear-gradient(180deg,#eef7f5,#e4f1ed);color:#0f3f3c;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.report-table tbody tr:nth-child(odd){background:#fff}.report-table tbody tr:nth-child(2n){background:#f3f8f6}.report-table tbody tr:hover{background:#edf5f2}.report-table td{font-size:clamp(.62rem,.2vw + .56rem,.88rem);line-height:1.15}.report-table .money-cell,.report-table .center-cell,.report-table .order-cell{text-align:center}.report-signature{display:inline-flex;align-items:center;justify-content:center;min-width:110px;padding:8px 12px;border-radius:999px;font-weight:700}.report-signature.paid{background:#0f766e1f;color:var(--brand-dark)}.report-signature.pending{background:#b4530924;color:#9a3412}.report-signature.empty{background:#94a3b824;color:#475569}.report-service-empty{color:#64748b;font-weight:700}.service-breakdown-cell{font-size:clamp(.56rem,.16vw + .5rem,.78rem)}.service-breakdown-cell span{display:block;color:#182531;line-height:1.05;white-space:nowrap}.report-export-options,.report-export-range,.report-export-picker-block,.report-month-quick-block{display:grid;gap:12px}.report-export-range{padding:16px;border-radius:20px;background:linear-gradient(180deg,#f8fafcf5,#f1f5f9e0);border:1px solid rgba(148,163,184,.18)}.report-export-picker-label{color:var(--muted);font-size:.92rem;font-weight:700}.report-year-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px}.report-year-nav-button{min-width:44px;width:44px;min-height:44px;height:44px;padding:0;border-radius:14px;font-size:1.5rem;line-height:1}.report-year-label{display:block;text-align:center;font-size:1rem;color:var(--text)}.report-export-month-list{display:flex;flex-wrap:wrap;gap:8px}.report-export-month-chip{min-width:88px;min-height:42px;padding:10px 14px;border-radius:999px;font-weight:700}.report-export-month-chip.is-active{background:linear-gradient(135deg,#0f766e,#115e59);color:#fff;border-color:transparent}@media (max-width: 1180px){.app-shell,.detail-shell{width:min(100% - 28px,1180px)}.report-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.report-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.report-toolbar-actions{grid-column:1 / -1;justify-content:flex-start}}@media (max-width: 1024px){.topbar-hero{padding:24px}.section-head-spread{align-items:stretch}.searchbox{width:100%;max-width:none}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-header{grid-template-columns:1fr}.detail-meta{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;width:100%}.history-actions-main,.history-editor-grid,.report-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.split-form,.admin-header,.detail-header{grid-template-columns:1fr;display:grid}.detail-meta,.result-grid,.report-summary-strip{grid-template-columns:1fr}.topbar-hero{padding:18px;border-radius:24px}.topbar-hero h1{font-size:clamp(1.75rem,7vw,2.6rem)}.mobile-menu-toggle{display:inline-flex;border-radius:18px;background:#ffffffe6;border:1px solid rgba(15,118,110,.14)}.topbar-actions{display:none;grid-template-columns:1fr;gap:10px;margin-top:-4px;padding:14px;border-radius:22px;background:#f8fcfbfa}.topbar-actions.mobile-open{display:grid}.dashboard-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar-actions button{width:100%;justify-content:center}.update-banner{align-items:flex-start;text-align:left}.section-head-spread{display:grid;gap:12px}.searchbox{min-width:0}.client-card{min-height:0}.client-card-top{display:grid;grid-template-columns:1fr}.card-status{justify-self:start}.drag-hint{display:grid;justify-items:start}.admin-dialog{padding:20px}.admin-header{justify-items:start}.client-import-head{display:grid}.client-import-top-actions{justify-content:flex-start}.import-mode-grid{grid-template-columns:1fr}.detail-header-main{grid-template-columns:48px minmax(0,1fr) 48px}.detail-nav-button{width:48px;min-width:48px;height:48px;min-height:48px;border-radius:16px}.remaining-helper-card div{display:grid;gap:4px}.history-card-topline{display:grid;justify-items:center;text-align:center}.history-list{grid-template-columns:1fr}.history-actions-main,.history-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-header-side{justify-items:stretch}.report-nav{width:100%}.report-nav button{flex:1 1 0;min-width:0}.report-toolbar{grid-template-columns:1fr}.report-toolbar-actions{justify-content:stretch}.report-toolbar-actions button{width:100%}.report-export-range{padding:14px}}@media (max-width: 760px){.overlay-modal,.admin-modal{padding:12px;align-items:end}.overlay-dialog,.admin-dialog{width:min(100%,720px);max-height:min(88vh,900px);padding:18px;border-radius:24px 24px 18px 18px}.dashboard-strip,.client-grid,.history-actions-main,.history-editor-grid,.history-actions-danger,.report-summary-strip{grid-template-columns:1fr}.detail-view{padding:12px 0 24px}.detail-header{padding:20px 18px;border-radius:24px}.detail-header-main{gap:10px}.detail-meta{grid-template-columns:1fr}.history-actions{padding:12px}.history-card:not(.receipt-expanded) .history-actions-main{grid-template-columns:1fr}.history-action-button{min-height:46px}.report-year-nav{grid-template-columns:40px minmax(0,1fr) 40px}.report-year-nav-button{min-width:40px;width:40px;min-height:40px;height:40px}}@media (max-width: 680px){.app-shell,.detail-shell{width:min(100% - 16px,1180px)}.panel,.admin-panel{padding:18px;border-radius:22px}.client-import{margin-inline:-4px;padding:16px;border-radius:18px}.client-import-summary{grid-template-columns:1fr}.dashboard-card{display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:14px 16px;border-radius:18px;text-align:left}.dashboard-card-button{display:flex;text-align:left}.dashboard-card-button small{margin-top:0}.client-card .card-actions{grid-template-columns:1fr}.pending-invoices-header{display:grid}.modal-close-button{width:100%}.pending-invoice-item{align-items:flex-start}.pending-invoice-item-action{white-space:normal}.history-actions{padding:12px}.password-field{grid-template-columns:1fr}.password-toggle{width:100%}.auth-demo-note,.auth-demo-actions{display:grid}.auth-demo-button{width:100%;min-width:0}.detail-title-block{text-align:left}.detail-header-main{grid-template-columns:40px minmax(0,1fr) 40px}.detail-nav-button{width:40px;min-width:40px;height:40px;min-height:40px;font-size:1.45rem}.detail-title-block h2{font-size:1.45rem}.result-card,.remaining-helper-card,.history-card,.report-export-range{border-radius:18px}.report-export-month-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.report-export-month-chip{width:100%;min-width:0}}@media (max-width: 520px){.app-shell{padding-top:12px;padding-bottom:28px}.topbar-hero{gap:14px;padding:16px;border-radius:20px}.topbar-actions{padding:10px;border-radius:18px}.update-banner{padding:12px 14px;border-radius:16px;font-size:.95rem}.panel,.admin-panel,.overlay-dialog,.admin-dialog{padding:16px}.client-card,.history-card{padding:16px;border-radius:20px}.invoice-summary-toggle{gap:12px;min-height:0;padding:14px}.invoice-summary-header,.invoice-summary-details{gap:8px}.client-order,.history-status,.card-status,.report-signature{white-space:normal;text-align:center}.actions,.card-actions{display:grid;grid-template-columns:1fr}.actions>*,.card-actions>*{width:100%}.client-import-textarea{min-height:190px;font-size:.84rem}.import-mode-card{grid-template-columns:38px minmax(0,1fr);min-height:0;padding:14px}.import-mode-step{width:36px;height:36px;border-radius:12px}.history-total{width:100%}.auth-summary,.auth-feedback{border-radius:14px}.report-nav{display:grid;grid-template-columns:1fr}.report-table-wrap{border-radius:18px}}
