:root{
  --bg:#070a0f;--bg2:#0b1017;--surface:#10151d;--surface2:#151c26;--surface3:#1a2230;
  --line:#273242;--line-soft:#1d2633;--text:#f5f7fb;--muted:#98a6b8;
  --champagne:#e7c98a;--champagne2:#ffe9b7;--champagne3:#8b6f3e;
  --cyan:#55d7ff;--teal:#4be0c1;--green:#75e49a;--amber:#ffc86b;--orange:#ff9b65;
  --red:#ff737c;--rose:#ff79ad;--blue:#7ba9ff;--violet:#ad8bff;--slate:#a9b6c8;
  --shadow:0 20px 58px rgba(0,0,0,.42);--radius:17px;
}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif}button,input,select,textarea{font:inherit}.hidden{display:none!important}

/* Login */
.login-screen{position:fixed;inset:0;display:grid;place-items:center;overflow:hidden;background:#05070a}.login-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.login-shade{position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,rgba(91,62,20,.10),rgba(3,5,8,.83) 72%),linear-gradient(90deg,rgba(0,0,0,.4),rgba(0,0,0,.12),rgba(0,0,0,.42))}.glass{background:linear-gradient(145deg,rgba(10,14,20,.82),rgba(20,24,31,.70));border:1px solid rgba(231,201,138,.27);box-shadow:0 26px 90px rgba(0,0,0,.66),inset 0 1px rgba(255,255,255,.07);backdrop-filter:blur(18px)}.login-panel{position:relative;width:min(440px,92vw);padding:26px 38px 24px;border-radius:28px;text-align:center;animation:rise .7s ease}.login-logo{width:220px;height:220px;object-fit:contain;margin:-28px auto -18px;filter:drop-shadow(0 16px 20px rgba(0,0,0,.72)) drop-shadow(0 0 8px rgba(255,255,255,.95)) drop-shadow(0 0 24px rgba(85,215,255,.44))}.login-panel h1{font-family:Georgia,serif;font-weight:500;letter-spacing:.06em;font-size:30px;margin:0;color:var(--champagne2);text-shadow:0 0 14px rgba(231,201,138,.24)}.login-panel>p{color:#d7dde8;margin:8px 0 22px}.login-panel form{display:grid;gap:14px;text-align:left}.login-panel label{display:grid;gap:7px;font-size:12px;color:#d5dce7;text-transform:uppercase;letter-spacing:.08em}.login-panel input{height:46px;border-radius:11px;border:1px solid #344155;background:rgba(6,9,14,.82);color:white;padding:0 14px;outline:none}.login-panel input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(85,215,255,.11),0 0 20px rgba(85,215,255,.10)}.login-demo{display:grid;gap:4px;margin-top:14px;color:#aab5c4;font-size:11px}.form-error{min-height:18px;color:#ff9fa5;font-size:12px;text-align:center}.text-button{margin-top:8px;background:none;border:0;color:var(--champagne2);cursor:pointer}.wide{width:100%}

/* Shell */
.app-shell{height:100%;display:grid;grid-template-columns:260px 1fr;background:radial-gradient(circle at 83% -6%,rgba(65,110,148,.12),transparent 38%),radial-gradient(circle at 55% 105%,rgba(102,65,128,.08),transparent 34%),linear-gradient(145deg,var(--bg),var(--bg2))}.sidebar{display:flex;flex-direction:column;background:linear-gradient(180deg,#0d1219,#080b10);border-right:1px solid var(--line-soft);padding:18px 14px;min-width:0}.brand{display:flex;align-items:center;gap:7px;padding:0 4px 18px;border-bottom:1px solid rgba(231,201,138,.15)}.brand img{width:74px;height:74px;object-fit:contain;margin:-12px -4px -12px -9px;filter:drop-shadow(0 0 5px rgba(255,255,255,.78)) drop-shadow(0 0 14px rgba(85,215,255,.25))}.brand div{display:grid}.brand strong{font-family:Georgia,serif;color:var(--champagne2);font-size:20px;letter-spacing:.04em;text-shadow:0 0 12px rgba(231,201,138,.18)}.brand span{color:var(--muted);font-size:12px}.sidebar nav{display:grid;gap:5px;padding-top:18px;overflow:auto}.nav-item{--tone:var(--slate);display:flex;align-items:center;gap:12px;width:100%;height:46px;padding:0 14px;border:1px solid transparent;border-radius:12px;background:transparent;color:#d1d8e2;cursor:pointer;text-align:left;transition:.18s ease}.nav-item[data-tone="cyan"]{--tone:var(--cyan)}.nav-item[data-tone="violet"]{--tone:var(--violet)}.nav-item[data-tone="blue"]{--tone:var(--blue)}.nav-item[data-tone="rose"]{--tone:var(--rose)}.nav-item[data-tone="amber"]{--tone:var(--amber)}.nav-item[data-tone="green"]{--tone:var(--green)}.nav-item[data-tone="teal"]{--tone:var(--teal)}.nav-item[data-tone="orange"]{--tone:var(--orange)}.nav-item[data-tone="slate"]{--tone:var(--slate)}.nav-icon{width:21px;height:21px;flex:0 0 21px;fill:currentColor;color:var(--tone);filter:drop-shadow(0 0 6px color-mix(in srgb,var(--tone) 45%,transparent))}.nav-item b{font-size:13px}.nav-item:hover{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.045);transform:translateX(2px)}.nav-item.active{background:linear-gradient(90deg,color-mix(in srgb,var(--tone) 15%,transparent),rgba(255,255,255,.025));border-color:color-mix(in srgb,var(--tone) 35%,transparent);color:#fff;box-shadow:inset 3px 0 var(--tone),0 0 18px color-mix(in srgb,var(--tone) 9%,transparent)}.nav-item.active b{text-shadow:0 0 10px color-mix(in srgb,var(--tone) 32%,transparent)}.sidebar-footer{margin-top:auto;padding:18px 9px 2px;color:#778395;font-size:11px;display:flex;align-items:center;gap:8px}.sidebar-footer>span:last-child{display:grid;gap:3px}.version-mark{display:block;color:#627185}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 9px var(--green)}
.workspace{min-width:0;display:flex;flex-direction:column;height:100vh}.topbar{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--line-soft);background:rgba(8,12,17,.86);backdrop-filter:blur(13px)}.topbar h2{margin:0;font-size:24px;font-family:Georgia,serif;color:#f8fbff;text-shadow:0 0 14px rgba(85,215,255,.13)}.topbar p{margin:5px 0 0;color:var(--muted);font-size:12px}.top-actions{display:flex;align-items:center;gap:12px}.user-chip{display:flex;align-items:center;gap:10px;padding:6px 12px 6px 7px;border:1px solid var(--line);background:#101721;border-radius:13px}.user-chip div{display:grid}.user-chip strong{font-size:12px;text-shadow:0 0 9px rgba(255,255,255,.15)}.user-chip small{color:var(--muted);font-size:10px}.avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(145deg,var(--champagne2),#9b7138);color:#21170b;font-weight:800;box-shadow:0 0 17px rgba(231,201,138,.2)}.view{flex:1;min-height:0;overflow:auto;padding:25px 28px 40px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.section-head h3{margin:0;font-family:Georgia,serif;font-size:20px;color:#f4f8ff;text-shadow:0 0 12px rgba(123,169,255,.12)}.section-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.button-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}

/* Buttons and inputs */
button{border:0}.primary,.secondary,.soft-button,.danger,.icon-button{height:38px;border-radius:10px;padding:0 14px;cursor:pointer;font-weight:650;font-size:12px;transition:.18s ease}.primary{background:linear-gradient(135deg,var(--champagne2),#c59a50);color:#1c160c;box-shadow:0 8px 22px rgba(197,154,80,.16),0 0 12px rgba(231,201,138,.08)}.primary:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 10px 25px rgba(197,154,80,.22),0 0 18px rgba(231,201,138,.14)}.secondary{background:#16202c;color:#cce8ff;border:1px solid #2d455d}.secondary:hover,.soft-button:hover{background:#1a2634}.soft-button{background:#111821;color:#e1e7ef;border:1px solid var(--line)}.danger{background:rgba(255,115,124,.10);color:#ff9da4;border:1px solid rgba(255,115,124,.3)}.danger-text{color:#ff9da4}.icon-button{height:30px;padding:0 9px;background:#151d28;color:#d9e6f7;border:1px solid #304056}.icon-button:hover{border-color:var(--cyan);box-shadow:0 0 11px rgba(85,215,255,.09)}button:disabled{opacity:.46;cursor:not-allowed;transform:none!important}
.toolbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:13px;padding:12px;background:rgba(14,20,28,.88);border:1px solid var(--line);border-radius:14px}.toolbar .spacer{flex:1}.field{display:grid;gap:6px}.field label,.field>span{color:#aeb9c8;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.toolbar input,.toolbar select,.form-grid input,.form-grid select,.form-grid textarea,.settings-form input,.settings-form select{height:38px;border:1px solid #334256;border-radius:9px;background:#090e14;color:#f6f8fb;padding:0 11px;outline:none}.toolbar input:focus,.toolbar select:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.settings-form input:focus,.settings-form select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(85,215,255,.08),0 0 17px rgba(85,215,255,.07)}.toolbar input{min-width:220px}.form-grid textarea{height:92px;padding-top:10px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field.full{grid-column:1/-1}.check-row{display:flex!important;align-items:center;gap:8px}.check-row input{width:17px;height:17px}

/* Dashboard cards */
.cards{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:13px;margin-bottom:20px}.metric-card{--tone:var(--blue);position:relative;overflow:hidden;min-height:116px;padding:17px;border-radius:16px;background:linear-gradient(145deg,#151d28,#0d131b);border:1px solid color-mix(in srgb,var(--tone) 26%,var(--line));box-shadow:0 9px 28px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.025)}.metric-card:nth-child(5n+1){--tone:var(--cyan)}.metric-card:nth-child(5n+2){--tone:var(--violet)}.metric-card:nth-child(5n+3){--tone:var(--blue)}.metric-card:nth-child(5n+4){--tone:var(--teal)}.metric-card:nth-child(5n){--tone:var(--amber)}.metric-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--tone);box-shadow:0 0 13px var(--tone)}.metric-card::after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;right:-36px;top:-42px;background:radial-gradient(circle,color-mix(in srgb,var(--tone) 17%,transparent),transparent 70%)}.metric-card .label{display:block;color:#b7c2d0;font-size:11px;min-height:28px;text-shadow:0 0 8px color-mix(in srgb,var(--tone) 18%,transparent)}.metric-card strong{display:block;font-size:25px;margin-top:10px;color:#f8fbff;text-shadow:0 0 14px color-mix(in srgb,var(--tone) 28%,transparent)}.metric-card small{display:block;margin-top:7px;color:#78879a;font-size:10px}.metric-card.good{--tone:var(--green)}.metric-card.warn{--tone:var(--amber);animation:softPulse 2.6s ease-in-out infinite}.metric-card.alert{--tone:var(--red);animation:alertPulse 2.2s ease-in-out infinite}.metric-card.clickable{cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.metric-card.clickable:hover,.metric-card.clickable:focus{transform:translateY(-3px);border-color:color-mix(in srgb,var(--tone) 55%,transparent);box-shadow:0 15px 40px rgba(0,0,0,.34),0 0 22px color-mix(in srgb,var(--tone) 13%,transparent);outline:none}.metric-card.clickable:active{transform:translateY(-1px)}

/* Panels, lists, cards */
.grid-2{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}.panel{background:linear-gradient(145deg,#111923,#0c1219);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 12px 35px rgba(0,0,0,.20);overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line-soft)}.panel-header h3,.panel-header h4{margin:0;font-family:Georgia,serif;color:#f6f9ff;text-shadow:0 0 12px rgba(123,169,255,.13)}.panel-body{padding:17px}.list{display:grid;gap:9px}.list-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-radius:12px;background:#131b25;border:1px solid #253143}.list-item strong{font-size:13px;text-shadow:0 0 8px rgba(255,255,255,.08)}.list-item small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.amount{font-weight:800;color:var(--green);text-shadow:0 0 10px rgba(117,228,154,.22)}
.tabs{display:flex;gap:7px;margin-bottom:14px}.tab-button{height:38px;padding:0 15px;border-radius:10px;background:#111821;border:1px solid var(--line);color:var(--muted);cursor:pointer}.tab-button.active{background:rgba(85,215,255,.10);border-color:rgba(85,215,255,.35);color:#bceeff;box-shadow:0 0 15px rgba(85,215,255,.07);text-shadow:0 0 9px rgba(85,215,255,.25)}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:13px}.service-card{padding:16px;border:1px solid #2a3749;border-radius:15px;background:linear-gradient(145deg,#131c27,#0c121a);box-shadow:inset 0 1px rgba(255,255,255,.02)}.service-card h4{margin:0 0 5px;font-family:Georgia,serif;color:#f4f8ff;text-shadow:0 0 11px rgba(255,121,173,.14)}.service-card p{margin:0;color:var(--muted);font-size:11px}.service-card .service-meta{display:flex;justify-content:space-between;margin:14px 0 12px;color:#c5d0de;font-size:11px}.service-card .service-price{font-size:20px;color:var(--champagne2);font-weight:800}.service-card .actions{margin-top:12px}.subscription-card{border-left:3px solid var(--green)}

/* Tables */
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#0c1219}table{width:100%;border-collapse:collapse;min-width:820px}th{position:sticky;top:0;background:#151e29;color:#bfe9ff;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.07em;padding:12px;border-bottom:1px solid #334256;z-index:1;text-shadow:0 0 8px rgba(85,215,255,.15)}td{padding:12px;border-bottom:1px solid #1d2937;color:#e6ebf2;font-size:12px;vertical-align:top}tr:hover td{background:rgba(85,215,255,.025)}td strong{text-shadow:0 0 8px rgba(255,255,255,.07)}td small{display:block;color:#8290a2;margin-top:3px}.actions{display:flex;gap:6px;white-space:nowrap}.calendar-row.priority-high td:first-child,.calendar-row.priority-urgent td:first-child{border-left:3px solid var(--amber)}.calendar-row.priority-urgent td:first-child{border-left-color:var(--red);box-shadow:inset 7px 0 15px rgba(255,115,124,.05)}.calendar-row.source-appointment td:first-child{border-left:3px solid var(--cyan)}.row-overdue td{background:rgba(255,115,124,.025)}.row-overdue td:first-child{border-left:3px solid var(--red)}
.badge{display:inline-flex;align-items:center;height:24px;border-radius:999px;padding:0 9px;font-size:10px;font-weight:700;border:1px solid #3b4859;background:#18212c;color:#dce5ef;text-shadow:0 0 8px currentColor}.badge.green{background:rgba(117,228,154,.09);border-color:rgba(117,228,154,.32);color:#a6f2bc}.badge.red{background:rgba(255,115,124,.09);border-color:rgba(255,115,124,.34);color:#ff9ea5}.badge.blue{background:rgba(123,169,255,.10);border-color:rgba(123,169,255,.33);color:#b8d0ff}.badge.gold{background:rgba(231,201,138,.09);border-color:rgba(231,201,138,.34);color:#ffe3a5}.badge.amber{background:rgba(255,200,107,.09);border-color:rgba(255,200,107,.34);color:#ffda99}.badge.violet{background:rgba(173,139,255,.09);border-color:rgba(173,139,255,.34);color:#cab5ff}.badge.rose{background:rgba(255,121,173,.09);border-color:rgba(255,121,173,.34);color:#ffacd0}.empty{padding:40px;text-align:center;color:#728094}.file-list{display:grid;gap:7px;margin-top:10px}.file-row{display:flex;justify-content:space-between;align-items:center;padding:9px 11px;border-radius:10px;background:#111923;border:1px solid #273446}.file-row a{color:#bceeff;text-decoration:none;font-size:12px;text-shadow:0 0 8px rgba(85,215,255,.15)}

/* Reports, settings and feedback */
.report-summary{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:11px;margin-bottom:15px}.mini-card{--tone:var(--blue);position:relative;overflow:hidden;padding:13px;border:1px solid color-mix(in srgb,var(--tone) 25%,var(--line));background:#111923;border-radius:13px}.mini-card:nth-child(2){--tone:var(--green)}.mini-card:nth-child(3){--tone:var(--cyan)}.mini-card:nth-child(4){--tone:var(--orange)}.mini-card:nth-child(5){--tone:var(--teal)}.mini-card:nth-child(6){--tone:var(--violet)}.mini-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--tone);box-shadow:0 0 10px var(--tone)}.mini-card span{font-size:10px;color:#a9b6c6;text-shadow:0 0 7px color-mix(in srgb,var(--tone) 20%,transparent)}.mini-card strong{display:block;margin-top:7px;font-size:19px;color:#f5f9ff;text-shadow:0 0 12px color-mix(in srgb,var(--tone) 28%,transparent)}.chart-box{height:310px;padding:15px}.chart-box canvas{width:100%;height:100%}.settings-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:16px}.settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-card{padding:17px}.note{color:#95a3b4;font-size:11px;line-height:1.5}.warning-box{padding:12px;border-radius:10px;background:rgba(255,200,107,.07);border:1px solid rgba(255,200,107,.23);color:#ffdba0;font-size:11px}.viewer-banner{padding:10px 14px;margin-bottom:14px;border-radius:11px;background:rgba(123,169,255,.08);border:1px solid rgba(123,169,255,.22);color:#bfd2ff;font-size:12px}.notification-box{padding:12px 14px;border:1px solid rgba(85,215,255,.27);border-radius:12px;background:linear-gradient(90deg,rgba(85,215,255,.07),rgba(85,215,255,.02));color:#c7f1ff!important;box-shadow:inset 0 0 18px rgba(85,215,255,.025)}.notification-box span{font-size:12px!important;text-transform:none!important;letter-spacing:0!important;color:#c7f1ff!important}.compact-check{display:flex;align-items:center;gap:7px;height:38px;padding:0 11px;border:1px solid #334256;border-radius:9px;background:#111821;color:#d7e0eb;font-size:11px;white-space:nowrap}.compact-check input{min-width:auto!important;width:16px;height:16px}.dashboard-detail-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px;padding:12px 14px;border-radius:12px;background:#111923;border:1px solid var(--line)}.dashboard-detail-head p{margin:0;color:#b7c2d0;font-size:12px;line-height:1.5}.dashboard-detail-table{max-height:62vh}.dashboard-detail-table table{min-width:760px}

/* Modal and toasts */
.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.74);display:grid;place-items:center;padding:25px;backdrop-filter:blur(7px)}.modal{width:min(760px,96vw);max-height:92vh;overflow:auto;border-radius:20px;background:#0f161f;border:1px solid #33465d;box-shadow:0 28px 100px rgba(0,0,0,.72),0 0 26px rgba(85,215,255,.04)}.modal.large{width:min(1050px,97vw)}.modal-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:16px 19px;background:#151e29;border-bottom:1px solid var(--line)}.modal-head h3{margin:0;font-family:Georgia,serif;color:#f7fbff;text-shadow:0 0 12px rgba(85,215,255,.13)}.modal-close{width:34px;height:34px;border-radius:9px;background:#202b39;color:#fff;cursor:pointer}.modal-body{padding:19px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;padding:14px 19px;border-top:1px solid var(--line);background:#0c1219}.toast-host{position:fixed;z-index:200;right:22px;bottom:22px;display:grid;gap:9px}.toast{min-width:280px;max-width:440px;padding:13px 15px;border-radius:12px;background:#151e29;border:1px solid #35475d;box-shadow:var(--shadow);font-size:12px;animation:toastIn .25s ease}.toast.success{border-color:rgba(117,228,154,.55);box-shadow:var(--shadow),0 0 18px rgba(117,228,154,.08)}.toast.error{border-color:rgba(255,115,124,.58);box-shadow:var(--shadow),0 0 18px rgba(255,115,124,.08)}

@keyframes rise{from{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:none}}@keyframes toastIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes softPulse{0%,100%{box-shadow:0 9px 28px rgba(0,0,0,.24)}50%{box-shadow:0 9px 28px rgba(0,0,0,.24),0 0 20px rgba(255,200,107,.10)}}@keyframes alertPulse{0%,100%{box-shadow:0 9px 28px rgba(0,0,0,.24)}50%{box-shadow:0 9px 28px rgba(0,0,0,.24),0 0 22px rgba(255,115,124,.13)}}
@media(max-width:1350px){.cards{grid-template-columns:repeat(4,1fr)}.service-grid{grid-template-columns:repeat(3,1fr)}.report-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1050px){.app-shell{grid-template-columns:85px 1fr}.brand div,.nav-item b,.sidebar-footer span:not(.status-dot){display:none}.brand img{width:68px}.nav-item{justify-content:center;padding:0}.nav-icon{width:22px;height:22px}.grid-2,.settings-grid{grid-template-columns:1fr}.cards{grid-template-columns:repeat(3,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;z-index:50;bottom:0;left:0;right:0;height:65px;display:block;padding:6px;background:#080c11;border-top:1px solid var(--line);border-right:0}.brand,.sidebar-footer{display:none}.sidebar nav{display:flex;padding:0;overflow:auto}.nav-item{min-width:64px;height:52px}.workspace{height:calc(100vh - 65px)}.topbar{height:auto;min-height:76px;padding:12px 15px}.topbar p,.user-chip div,.danger-text{display:none}.view{padding:15px}.cards{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:1fr}.form-grid,.settings-form{grid-template-columns:1fr}.field.full{grid-column:auto}.report-summary{grid-template-columns:repeat(2,1fr)}}


/* Daily login overview v2.6 */
.daily-brief-screen{position:fixed;inset:0;z-index:90;display:grid;place-items:center;overflow:auto;padding:28px;background:radial-gradient(circle at 18% 12%,rgba(85,215,255,.14),transparent 34%),radial-gradient(circle at 86% 88%,rgba(255,121,173,.12),transparent 36%),linear-gradient(145deg,#05080d,#0a1018 56%,#080b11)}
.daily-brief-orb{position:fixed;border-radius:50%;filter:blur(2px);pointer-events:none}.daily-brief-orb.orb-one{width:380px;height:380px;left:-120px;top:-120px;background:radial-gradient(circle,rgba(85,215,255,.12),transparent 69%)}.daily-brief-orb.orb-two{width:440px;height:440px;right:-150px;bottom:-160px;background:radial-gradient(circle,rgba(255,121,173,.10),transparent 70%)}
.daily-brief-shell{position:relative;width:min(1220px,96vw);min-height:min(760px,92vh);border:1px solid #2d3c50;border-radius:27px;overflow:hidden;background:linear-gradient(155deg,rgba(17,24,34,.98),rgba(8,12,18,.98));box-shadow:0 38px 120px rgba(0,0,0,.62),0 0 42px rgba(85,215,255,.06)}
.daily-brief-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 26px;border-bottom:1px solid #263345;background:linear-gradient(90deg,rgba(85,215,255,.055),rgba(255,121,173,.035))}.daily-brand{display:flex;align-items:center;gap:17px}.daily-brand img{width:96px;height:96px;object-fit:contain;margin:-14px 0;filter:drop-shadow(0 0 7px rgba(255,255,255,.95)) drop-shadow(0 0 20px rgba(85,215,255,.38))}.daily-brand div{display:grid;gap:4px}.daily-brand span{color:var(--champagne2);font:700 11px/1 Georgia,serif;letter-spacing:.17em;text-shadow:0 0 12px rgba(231,201,138,.25)}.daily-brand strong{font:500 29px/1.16 Georgia,serif;color:#f7fbff;text-shadow:0 0 17px rgba(85,215,255,.18)}.daily-brand small{color:#99a9bb;font-size:12px}.daily-head-actions{display:flex;align-items:center;gap:10px}.daily-date{padding:10px 14px;border:1px solid #33465d;border-radius:11px;background:#0c131c;color:#caeefe;font-size:12px;text-shadow:0 0 9px rgba(85,215,255,.23)}
.daily-brief-loading{min-height:560px;display:grid;place-items:center;color:#b8c6d8;font-size:14px}.daily-brief-content{padding:22px 26px 26px}.daily-summary-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:37px;margin-bottom:16px}.daily-smtp-warning{margin:0;color:#ffd5a0;font-size:11px;padding:9px 12px;border-radius:10px;border:1px solid rgba(255,200,107,.28);background:rgba(255,200,107,.07)}
.daily-columns{display:grid;grid-template-columns:1.35fr 1fr;gap:17px}.daily-section{min-height:450px;padding:18px;border:1px solid #2b394c;border-radius:19px;background:linear-gradient(145deg,#101722,#0b1119);box-shadow:inset 0 1px rgba(255,255,255,.025)}.daily-section.appointment-section{border-top:2px solid var(--cyan)}.daily-section.birthday-section{border-top:2px solid var(--rose)}.daily-section-title{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid #222f3f}.daily-section-title>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#172232;font-size:22px;box-shadow:0 0 18px rgba(85,215,255,.08)}.birthday-section .daily-section-title>span{box-shadow:0 0 18px rgba(255,121,173,.10)}.daily-section-title h2{margin:0;font:500 19px/1.2 Georgia,serif;color:#f7fbff;text-shadow:0 0 13px rgba(85,215,255,.15)}.birthday-section .daily-section-title h2{text-shadow:0 0 13px rgba(255,121,173,.18)}.daily-section-title p{margin:4px 0 0;color:#8393a7;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.daily-list{display:grid;gap:10px;margin-top:14px;max-height:410px;overflow:auto;padding-right:3px}.daily-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #263447;border-radius:14px;background:#0d141e;transition:.18s ease}.daily-item:hover{transform:translateY(-1px);border-color:#3a506b;background:#111a26}.daily-item.appointment{box-shadow:inset 3px 0 var(--cyan)}.daily-item.birthday{box-shadow:inset 3px 0 var(--rose)}.daily-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#172231;font-size:19px}.daily-copy{min-width:0;display:grid;gap:4px}.daily-copy strong{color:#f5f9ff;font-size:12px;text-shadow:0 0 9px rgba(255,255,255,.08)}.daily-copy span{color:#bdc9d7;font-size:11px}.daily-copy small{color:#78889b;font-size:10px}.daily-email-state{white-space:nowrap}.daily-empty{min-height:150px;display:grid;place-items:center;text-align:center;color:#718196;border:1px dashed #2a394c;border-radius:14px;background:rgba(255,255,255,.012);font-size:12px}
.daily-brief-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:15px 17px;border:1px solid #2d3e52;border-radius:15px;background:linear-gradient(90deg,rgba(85,215,255,.055),rgba(255,121,173,.035))}.daily-brief-footer>div{display:grid;gap:3px}.daily-brief-footer strong{font-size:12px;color:#dff7ff;text-shadow:0 0 10px rgba(85,215,255,.18)}.daily-brief-footer span{color:#8393a7;font-size:10px}.daily-confirm{min-width:230px;height:44px}.birthday-email-option{padding:12px 14px;border:1px solid rgba(255,121,173,.28);border-radius:12px;background:rgba(255,121,173,.055);color:#ffd2e5!important}.birthday-email-option span{color:#ffd2e5!important;text-transform:none!important;font-size:12px!important;letter-spacing:0!important;text-shadow:0 0 9px rgba(255,121,173,.18)}
@media(max-width:900px){.daily-columns{grid-template-columns:1fr}.daily-brief-shell{min-height:auto}.daily-section{min-height:320px}.daily-brand strong{font-size:23px}.daily-brand small{display:none}.daily-brief-head{align-items:flex-start}.daily-head-actions{flex-direction:column;align-items:flex-end}.daily-brief-footer{align-items:stretch;flex-direction:column}.daily-confirm{width:100%}}
@media(max-width:600px){.daily-brief-screen{padding:0}.daily-brief-shell{width:100%;min-height:100vh;border-radius:0;border:0}.daily-brief-head,.daily-brief-content{padding-left:14px;padding-right:14px}.daily-brand img{width:72px;height:72px}.daily-brand strong{font-size:19px}.daily-date{display:none}.daily-item{grid-template-columns:38px minmax(0,1fr)}.daily-email-state{grid-column:2}.daily-columns{gap:12px}}


/* v2.7 daily birthday center and luminous white logo */
.daily-email-state{display:grid;justify-items:end;gap:8px;white-space:nowrap}
.birthday-send-button{height:32px;padding:0 12px;border:1px solid rgba(255,121,173,.62);border-radius:9px;background:linear-gradient(135deg,rgba(255,121,173,.20),rgba(173,139,255,.18));color:#fff0f7;cursor:pointer;font-size:10px;font-weight:700;box-shadow:0 0 14px rgba(255,121,173,.14);text-shadow:0 0 8px rgba(255,255,255,.24)}
.birthday-send-button:hover{transform:translateY(-1px);border-color:#ff9ac3;box-shadow:0 0 22px rgba(255,121,173,.28)}
.birthday-send-button:disabled{opacity:.55;cursor:wait;transform:none}
.daily-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
#dailyAppointmentPolicy{white-space:normal;text-align:center}
.login-logo,.brand img,.daily-brand img{border-radius:50%}
@media(max-width:900px){.daily-footer-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.daily-footer-actions .daily-confirm{min-width:0;width:100%}}
@media(max-width:600px){.daily-summary-bar{align-items:stretch;flex-direction:column}.daily-footer-actions{grid-template-columns:1fr}.daily-email-state{justify-items:start}}


/* v2.8 Finances, invoices, subscriptions and professional exports */
.luminous-heading{color:#f9fcff;text-shadow:0 0 8px rgba(255,255,255,.7),0 0 22px rgba(174,116,255,.58)}
.luminous-button{border-color:rgba(198,135,255,.72)!important;box-shadow:0 0 15px rgba(180,102,255,.2),inset 0 0 14px rgba(180,102,255,.06);color:#f3ddff!important;text-shadow:0 0 10px rgba(218,172,255,.68)}
.finance-toolbar{grid-template-columns:minmax(190px,1.4fr) repeat(2,minmax(135px,.7fr)) repeat(5,minmax(150px,1fr)) auto;align-items:end}
.finance-summary{grid-template-columns:repeat(8,minmax(140px,1fr))}
.finance-summary .mini-card{position:relative;overflow:hidden;border-color:rgba(116,156,211,.28)}
.finance-summary .mini-card:after{content:"";position:absolute;inset:auto -25% -65% 25%;height:90px;border-radius:50%;background:radial-gradient(circle,var(--metric-glow,rgba(118,211,255,.24)),transparent 70%);pointer-events:none}
.finance-summary .tone-blue{--metric-glow:rgba(82,171,255,.4)}.finance-summary .tone-violet{--metric-glow:rgba(179,101,255,.42)}.finance-summary .tone-green{--metric-glow:rgba(75,224,159,.4)}.finance-summary .tone-amber{--metric-glow:rgba(255,188,84,.42)}.finance-summary .tone-rose{--metric-glow:rgba(255,93,146,.4)}.finance-summary .tone-cyan{--metric-glow:rgba(70,229,236,.42)}
.finance-table table{min-width:1680px}.invoice-glow{color:#e9d8ff;text-shadow:0 0 10px rgba(191,126,255,.7)}.profit-glow{color:#8fffd0;text-shadow:0 0 10px rgba(85,255,187,.5)}
.finance-row.status-paid{box-shadow:inset 3px 0 #3fe39b}.finance-row.status-pending{box-shadow:inset 3px 0 #ffbd66}.finance-row.status-refunded{box-shadow:inset 3px 0 #bc82ff}.finance-row.status-void{opacity:.68;box-shadow:inset 3px 0 #ff6b7d}
@media(max-width:1500px){.finance-toolbar{grid-template-columns:repeat(4,minmax(150px,1fr))}.finance-summary{grid-template-columns:repeat(4,minmax(145px,1fr))}}
@media(max-width:900px){.finance-toolbar{grid-template-columns:1fr 1fr}.finance-summary{grid-template-columns:1fr 1fr}}

/* v3.0 Finance and Reports professional analysis center */
.analysis-launcher,.comparison-launcher{margin-bottom:16px;padding:17px;border:1px solid #2c3b4e;border-radius:18px;background:linear-gradient(145deg,rgba(17,24,34,.96),rgba(9,14,21,.97));box-shadow:0 14px 34px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.025)}
.analysis-launcher-head,.comparison-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.analysis-launcher-head h3,.comparison-title h3{margin:0;color:#f4f9ff;font:500 19px/1.2 Georgia,serif;text-shadow:0 0 13px rgba(85,215,255,.18)}.analysis-launcher-head p,.comparison-title p{margin:5px 0 0;color:#8f9fb2;font-size:11px;line-height:1.45}
.analysis-option-grid{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:10px}.analysis-option{--option-tone:var(--cyan);position:relative;display:flex;align-items:center;gap:11px;min-height:78px;padding:12px 13px;border:1px solid color-mix(in srgb,var(--option-tone) 24%,#2a3749);border-radius:14px;background:linear-gradient(145deg,#111923,#0b1119);color:#dce7f4;text-align:left;cursor:pointer;overflow:hidden;transition:.18s ease}.analysis-option:nth-child(8n+1){--option-tone:var(--cyan)}.analysis-option:nth-child(8n+2){--option-tone:var(--violet)}.analysis-option:nth-child(8n+3){--option-tone:var(--blue)}.analysis-option:nth-child(8n+4){--option-tone:var(--teal)}.analysis-option:nth-child(8n+5){--option-tone:var(--amber)}.analysis-option:nth-child(8n+6){--option-tone:var(--rose)}.analysis-option:nth-child(8n+7){--option-tone:var(--green)}.analysis-option:nth-child(8n){--option-tone:var(--orange)}.analysis-option:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--option-tone);box-shadow:0 0 13px var(--option-tone)}.analysis-option:after{content:"";position:absolute;right:-24px;top:-28px;width:78px;height:78px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--option-tone) 17%,transparent),transparent 70%)}.analysis-option:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--option-tone) 52%,#314257);box-shadow:0 10px 25px rgba(0,0,0,.24),0 0 19px color-mix(in srgb,var(--option-tone) 9%,transparent)}.analysis-option.active{border-color:var(--option-tone);background:linear-gradient(145deg,color-mix(in srgb,var(--option-tone) 14%,#121a24),#0b1119);box-shadow:0 0 0 1px color-mix(in srgb,var(--option-tone) 25%,transparent),0 0 24px color-mix(in srgb,var(--option-tone) 15%,transparent)}.analysis-option-icon{position:relative;z-index:1;width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--option-tone) 13%,#121b26);border:1px solid color-mix(in srgb,var(--option-tone) 30%,#263548);color:var(--option-tone);font-size:19px;font-weight:800;text-shadow:0 0 11px var(--option-tone);box-shadow:0 0 15px color-mix(in srgb,var(--option-tone) 10%,transparent)}.analysis-option>span:last-child{position:relative;z-index:1;display:grid;gap:4px;min-width:0}.analysis-option strong{font-size:12px;color:#f5f9ff;text-shadow:0 0 9px color-mix(in srgb,var(--option-tone) 24%,transparent)}.analysis-option small{color:#8494a8;font-size:9px;line-height:1.35}
.comparison-launcher{border-color:#30394f;background:radial-gradient(circle at 88% 10%,rgba(173,139,255,.09),transparent 35%),linear-gradient(145deg,#111722,#0a1018)}.comparison-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.compare-button{display:flex;align-items:center;gap:12px;min-height:62px;padding:10px 13px;border:1px solid #344055;border-radius:13px;background:#0d141e;color:#dfe8f4;cursor:pointer;text-align:left;transition:.18s ease}.compare-button span{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#172131;color:var(--violet);font-weight:800;font-size:11px;text-shadow:0 0 10px rgba(173,139,255,.75);box-shadow:0 0 13px rgba(173,139,255,.10)}.compare-button strong{font-size:11px}.compare-button:hover,.compare-button.active{transform:translateY(-1px);border-color:var(--violet);background:linear-gradient(145deg,rgba(173,139,255,.11),#0d141e);box-shadow:0 0 20px rgba(173,139,255,.13)}
.period-shortcuts{display:flex;align-items:center;gap:7px;margin:0 0 10px;padding:9px 12px;border:1px solid #293648;border-radius:12px;background:#0c121a}.period-shortcuts>span{margin-right:5px;color:#8e9caf;font-size:10px;text-transform:uppercase;letter-spacing:.07em}.period-shortcuts button{height:30px;padding:0 13px;border:1px solid #334156;border-radius:8px;background:#121a24;color:#c5d1df;cursor:pointer;font-size:10px;font-weight:700}.period-shortcuts button:hover,.period-shortcuts button.active{border-color:var(--cyan);color:#e8fbff;background:rgba(85,215,255,.09);box-shadow:0 0 13px rgba(85,215,255,.10);text-shadow:0 0 8px rgba(85,215,255,.35)}
.report-toolbar{position:sticky;top:-1px;z-index:8;box-shadow:0 10px 26px rgba(0,0,0,.24)}.expanded-summary,.analytics-summary{grid-template-columns:repeat(6,minmax(140px,1fr))}.expanded-summary .mini-card,.analytics-summary .mini-card{min-height:96px;position:relative;overflow:hidden}.summary-icon{position:absolute;right:12px;top:9px;font-size:17px;color:var(--cyan);opacity:.65;text-shadow:0 0 11px currentColor}.expanded-summary .mini-card strong,.analytics-summary .mini-card strong{text-shadow:0 0 11px rgba(255,255,255,.12)}
.selected-analysis{margin:14px 0 12px;border-left:3px solid var(--violet)}.selected-analysis .panel-header>div,.analytics-panel .panel-header>div{display:grid;gap:4px}.selected-analysis .panel-header p,.analytics-panel .panel-header p{margin:0;color:#8190a3;font-size:10px}.analytics-panel{margin-top:14px;border-color:#2d4053}.advanced-chart{height:360px;background:radial-gradient(circle at 50% 100%,rgba(85,215,255,.05),transparent 55%),#0a1017}
.comparison-results{margin:14px 0;padding:15px;border:1px solid #2e3c50;border-radius:17px;background:linear-gradient(145deg,#101722,#0a1018)}.comparison-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.comparison-result-head h3{margin:0;color:#f3f7fd;font:500 17px/1.2 Georgia,serif;text-shadow:0 0 11px rgba(173,139,255,.20)}.comparison-result-head h3 span{color:#708094;font:600 10px/1 sans-serif;text-transform:uppercase}.comparison-result-head p{margin:5px 0 0;color:#75869a;font-size:9px}.comparison-metric-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.comparison-metric{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px;border:1px solid #29374a;border-radius:13px;background:#0c131c}.comparison-metric-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#162130;color:var(--cyan);font-weight:800;text-shadow:0 0 10px rgba(85,215,255,.65)}.comparison-metric>div{display:grid;gap:2px}.comparison-metric small{color:#8998aa;font-size:9px}.comparison-metric strong{color:#f3f8ff;font-size:15px;text-shadow:0 0 9px rgba(255,255,255,.10)}.comparison-metric em{font-style:normal;color:#657589;font-size:8px}.comparison-delta{font-size:9px;font-weight:800;white-space:nowrap}.comparison-delta.positive{color:var(--green);text-shadow:0 0 8px rgba(117,228,154,.38)}.comparison-delta.negative{color:var(--red);text-shadow:0 0 8px rgba(255,115,124,.35)}.comparison-delta.neutral{color:var(--slate)}
.analytics-table table{min-width:1350px}.analytics-label{color:#dff8ff;text-shadow:0 0 9px rgba(85,215,255,.22)}
@media(max-width:1550px){.analysis-option-grid{grid-template-columns:repeat(4,minmax(175px,1fr))}.expanded-summary,.analytics-summary{grid-template-columns:repeat(4,minmax(140px,1fr))}.comparison-metric-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1150px){.analysis-option-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}.comparison-buttons{grid-template-columns:repeat(2,1fr)}.expanded-summary,.analytics-summary{grid-template-columns:repeat(3,minmax(135px,1fr))}.comparison-metric-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.analysis-option-grid{grid-template-columns:1fr 1fr}.analysis-option{min-height:72px}.comparison-buttons{grid-template-columns:1fr}.expanded-summary,.analytics-summary{grid-template-columns:1fr 1fr}.comparison-metric-grid{grid-template-columns:1fr}.period-shortcuts{overflow:auto}.analysis-launcher-head{flex-direction:column}}

/* v3.0 Services financial matching + monthly subscription recognition */
.badge.teal{color:#b9fff2;background:rgba(75,224,193,.10);border-color:rgba(75,224,193,.32);box-shadow:0 0 11px rgba(75,224,193,.08)}
.tone-teal{--metric-glow:rgba(75,224,193,.42);border-color:rgba(75,224,193,.28)!important}
.service-finance-note,.recognition-explainer{margin:0 0 13px;padding:11px 13px;border:1px solid rgba(75,224,193,.28);border-radius:12px;background:linear-gradient(135deg,rgba(75,224,193,.08),rgba(85,215,255,.035));color:#c9fff5;font-size:11px;line-height:1.45;text-shadow:0 0 9px rgba(75,224,193,.18)}
.appointment-toolbar{position:sticky;top:-1px;z-index:7;box-shadow:0 10px 25px rgba(0,0,0,.23)}
.appointments-finance-table table{min-width:2180px}.subscriptions-finance-table table{min-width:1760px}.finance-table table{min-width:1960px}
.appointment-finance-row.has-refund{box-shadow:inset 3px 0 var(--violet)}.appointment-finance-row.has-loss,.finance-row.has-loss{box-shadow:inset 3px 0 var(--red);background:linear-gradient(90deg,rgba(255,115,124,.055),transparent 18%)}
.refund-glow{color:#dcbaff;text-shadow:0 0 10px rgba(173,139,255,.62)}.loss-glow{color:#ff9199;text-shadow:0 0 10px rgba(255,115,124,.56)}.net-glow{color:#a9ebff;text-shadow:0 0 10px rgba(85,215,255,.45)}
.recognition-note{color:#79ead1!important;text-shadow:0 0 8px rgba(75,224,193,.38)}.financial-form-section{padding:11px;border:1px solid rgba(85,215,255,.20);border-radius:12px;background:rgba(85,215,255,.025)}
.finance-row.status-recognized{box-shadow:inset 3px 0 var(--teal);background:linear-gradient(90deg,rgba(75,224,193,.055),transparent 18%)}
@media(max-width:1200px){.appointment-toolbar{position:static}.appointments-finance-table table{min-width:2100px}.subscriptions-finance-table table{min-width:1680px}}


/* v3.1 Professional PDF invoices per appointment/service */
.invoice-button{display:inline-flex!important;align-items:center;gap:6px;min-width:88px;border-color:rgba(203,169,255,.42)!important;background:linear-gradient(135deg,rgba(124,58,237,.16),rgba(85,215,255,.08))!important;color:#f3eaff!important;box-shadow:inset 0 0 14px rgba(203,169,255,.05),0 0 14px rgba(124,58,237,.08);text-shadow:0 0 9px rgba(203,169,255,.48)}
.invoice-button:hover{border-color:#cba9ff!important;transform:translateY(-1px);box-shadow:0 0 19px rgba(203,169,255,.18),inset 0 0 16px rgba(85,215,255,.06)}
.invoice-pdf-icon{display:inline-grid;place-items:center;min-width:27px;height:20px;padding:0 4px;border-radius:5px;background:#f4edff;color:#5b21b6;font-size:8px;font-weight:900;letter-spacing:.06em;text-shadow:none;box-shadow:0 0 10px rgba(255,255,255,.42)}
.appointments-finance-table .actions{min-width:260px;align-items:center}.calendar-row .invoice-button{min-width:82px}

/* --- Fullscreen & Extend TV display additions --- */
.top-action-button{min-width:118px}
.top-action-button.is-active{border-color:rgba(85,215,255,.55);box-shadow:0 0 0 1px rgba(85,215,255,.18),0 0 18px rgba(85,215,255,.12);color:#d8f8ff}
.extend-head .button-row{flex-wrap:wrap}
.extend-panel-body{display:grid;gap:16px}
.display-session-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:14px}
.display-status-card{padding:16px 18px;border-radius:16px;border:1px solid #2a394d;background:linear-gradient(145deg,#0f1822,#0b1118);display:grid;gap:8px;box-shadow:inset 0 0 22px rgba(255,255,255,.02)}
.display-status-card span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#8ea1b6}
.display-status-card strong{font-size:16px;color:#f5f9ff;word-break:break-word}
.display-status-card small{font-size:11px;color:#95a3b4;line-height:1.55}
.display-status-card.emphasis{border-color:rgba(255,200,107,.35);background:linear-gradient(145deg,rgba(255,200,107,.08),#0b1118)}
.display-status-card.empty-card{border-style:dashed}
.pair-code{font-size:34px;letter-spacing:.18em;color:#ffd894;text-shadow:0 0 16px rgba(255,200,107,.18)}
.extend-actions{display:flex;gap:10px;flex-wrap:wrap}
.display-thumb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.display-thumb-card{overflow:hidden;border-radius:16px;border:1px solid #223040;background:#0f1721;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.thumb-image-wrap{aspect-ratio:2/3;background:#0a0f15}
.thumb-image-wrap img{width:100%;height:100%;object-fit:cover;display:block}
.thumb-meta{padding:12px 12px 14px;display:grid;gap:6px}
.thumb-meta strong{font-size:13px;color:#f6faff}
.thumb-meta small{font-size:10px;line-height:1.5;color:#97a7b8}
@media(max-width:1180px){.display-thumb-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.display-session-grid{grid-template-columns:1fr}}
@media(max-width:760px){.display-thumb-grid{grid-template-columns:1fr 1fr}.top-action-button{min-width:auto;padding-inline:12px}.pair-code{font-size:26px}}

/* v3.2.9 Extend configuration: DNS URL, service-price lines, custom TV photos */
.display-url-config{display:grid;grid-template-columns:minmax(300px,1.2fr) minmax(300px,1fr) auto;gap:14px;align-items:end}
.display-url-config input{height:42px;border:1px solid #334256;border-radius:10px;background:#090e14;color:#f6f8fb;padding:0 12px;outline:none}
.display-url-config input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(85,215,255,.08)}
.display-url-preview{display:grid;grid-template-columns:auto 1fr;gap:7px 12px;padding:12px 14px;border-radius:13px;background:#0b121a;border:1px solid #253448;min-width:0}
.display-url-preview span{color:#8393a6;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.display-url-preview strong{min-width:0;color:#dceaf5;font-size:11px;word-break:break-all}
.display-service-editor{display:grid;gap:9px}.display-service-edit-row{display:grid;grid-template-columns:34px minmax(220px,1fr) minmax(110px,180px) 110px 34px;gap:9px;align-items:center;padding:10px;border-radius:13px;background:#0d151e;border:1px solid #28374a}
.service-line-number{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:rgba(85,215,255,.08);border:1px solid rgba(85,215,255,.2);color:#bdefff;font-size:11px;font-weight:800}
.display-service-edit-row input[type="text"],.display-service-edit-row input:not([type]),.display-service-title,.display-service-price{height:38px;border:1px solid #334256;border-radius:9px;background:#090e14;color:#f6f8fb;padding:0 11px;outline:none}.display-service-edit-row input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(85,215,255,.07)}
.display-service-enabled{height:38px;display:flex;align-items:center;gap:7px;padding:0 10px;border-radius:9px;border:1px solid #303e51;background:#101822;color:#b7c4d3;font-size:10px}.display-service-enabled input{width:16px;height:16px}.display-service-save-row{margin-top:14px}
.display-upload-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px;padding:12px;border:1px solid #29394c;border-radius:13px;background:#0c131c}.display-upload-bar input[type="file"]{max-width:440px;color:#b8c6d5;font-size:11px}.display-upload-bar input::file-selector-button{height:34px;margin-right:10px;border:1px solid #33465c;border-radius:8px;background:#172231;color:#d9e8f5;padding:0 12px;cursor:pointer}
.display-thumb-card.custom-photo{border-color:rgba(173,139,255,.34);box-shadow:0 10px 24px rgba(0,0,0,.18),0 0 18px rgba(173,139,255,.07)}.thumb-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.thumb-actions .badge{margin-right:auto}.thumb-actions .icon-button{height:27px;font-size:9px}
@media(max-width:1250px){.display-url-config{grid-template-columns:1fr 1fr}.display-url-config>button{grid-column:1/-1;width:max-content}.display-service-edit-row{grid-template-columns:34px 1fr 150px 100px 34px}}
@media(max-width:820px){.display-url-config{grid-template-columns:1fr}.display-url-config>button{grid-column:auto}.display-service-edit-row{grid-template-columns:30px 1fr 110px 32px}.display-service-enabled{grid-column:2/4}.display-thumb-grid{grid-template-columns:1fr 1fr}}

/* v3.2.10 Responsive phone/tablet website + installable PWA */
.mobile-menu-button,.mobile-nav-close,.mobile-nav-overlay{display:none}
.pwa-install-box{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(231,201,138,.14)}
.pwa-install-button{height:auto;min-height:52px;display:flex;align-items:center;justify-content:center;gap:11px;padding:9px 14px;text-align:left}
.pwa-install-button>span:last-child{display:grid;gap:2px}.pwa-install-button strong{font-size:12px;color:#eef7ff}.pwa-install-button small{font-size:9px;color:#98acbe;font-weight:500}
.pwa-install-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:rgba(85,215,255,.10);border:1px solid rgba(85,215,255,.28);color:#c9f4ff;font-size:15px}
.pwa-install-button.installed{border-color:rgba(117,228,154,.32);background:rgba(117,228,154,.07)}
.pwa-install-box>p{margin:0;color:#8494a7;font-size:9px;line-height:1.45;text-align:center}
.install-instruction-card{display:grid;gap:14px}.install-instruction-card>p{margin:0;color:#b6c2d0;line-height:1.65}.install-device-icons{text-align:center;font-size:34px;letter-spacing:.12em}
html{min-height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-height:100%;overscroll-behavior-y:none}
button,input,select,textarea{touch-action:manipulation}
.table-wrap{-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}

@media(max-width:1024px){
  body.mobile-nav-open{overflow:hidden}
  .app-shell{grid-template-columns:1fr;height:100dvh;min-height:100dvh}
  .sidebar{position:fixed;z-index:80;inset:0 auto 0 0;width:min(86vw,330px);height:100dvh;transform:translateX(-105%);transition:transform .24s ease;box-shadow:22px 0 60px rgba(0,0,0,.52);padding-top:max(14px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}
  body.mobile-nav-open .sidebar{transform:translateX(0)}
  .mobile-nav-overlay{display:block;position:fixed;z-index:70;inset:0;border:0;background:rgba(1,4,8,.68);opacity:0;visibility:hidden;pointer-events:none;transition:.22s ease;backdrop-filter:blur(3px)}
  body.mobile-nav-open .mobile-nav-overlay{opacity:1;visibility:visible;pointer-events:auto}
  .mobile-nav-close{display:grid;place-items:center;width:38px;height:38px;min-width:38px;padding:0;margin-left:auto;font-size:24px;line-height:1}
  .brand{padding-right:0}.brand div{min-width:0}.brand strong,.brand span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .workspace{height:100dvh;min-height:100dvh;width:100%;overflow:hidden}
  .topbar{position:sticky;z-index:35;top:0;height:auto;min-height:70px;padding:max(9px,env(safe-area-inset-top)) 13px 9px;gap:10px;align-items:center;background:rgba(7,11,16,.96)}
  .mobile-menu-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-width:72px;height:42px;padding:0 11px}
  .mobile-menu-button>span:first-child{font-size:19px}.mobile-menu-label{font-size:10px}
  .topbar>div:first-of-type{min-width:0;flex:1}.topbar h2{font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar p{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .top-actions{max-width:48%;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;padding:2px 0;scrollbar-width:none}.top-actions::-webkit-scrollbar{display:none}
  .top-actions button{flex:0 0 auto;height:40px;padding:0 11px;font-size:10px}.top-action-button{min-width:auto}
  .user-chip{flex:0 0 auto;padding:4px}.user-chip div{display:none}.avatar{width:32px;height:32px}
  .view{padding:15px 14px calc(28px + env(safe-area-inset-bottom));overscroll-behavior:contain}
  .cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.metric-card{min-height:106px;padding:14px}.metric-card strong{font-size:21px}
  .grid-2,.grid-3,.settings-grid,.daily-columns{grid-template-columns:1fr!important}
  .section-head{align-items:flex-start}.section-head>.button-row,.section-head>button{flex:0 0 auto}
  .toolbar{align-items:stretch}.toolbar input,.toolbar select{min-width:160px;flex:1 1 220px}
  .form-grid,.settings-form{grid-template-columns:1fr}.field.full{grid-column:1}.modal.large .form-grid{grid-template-columns:1fr}
  .analysis-option-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.unified-kpi-grid,.expanded-summary,.analytics-summary{grid-template-columns:repeat(3,minmax(130px,1fr))!important}
  .display-thumb-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.display-service-edit-row{grid-template-columns:32px minmax(160px,1fr) 120px 34px}.display-service-enabled{grid-column:2/4}
  .table-wrap{max-width:calc(100vw - 28px);border-radius:12px}.table-wrap table{font-size:10px}.table-wrap th,.table-wrap td{padding:10px 9px}
  .actions{flex-wrap:nowrap}.actions button{min-height:34px;white-space:nowrap}
  .panel-header{gap:10px;align-items:flex-start}.panel-header .button-row{justify-content:flex-end}
  .daily-brief-screen{overflow:auto}.daily-brief-shell{width:100%;min-height:100dvh;padding:14px}.daily-brief-head{align-items:flex-start}.daily-brand img{width:66px;height:66px}.daily-brand strong{font-size:19px}.daily-head-actions{flex-wrap:wrap;justify-content:flex-end}
  .daily-brief-footer{position:static;flex-direction:column;align-items:stretch}.daily-footer-actions{width:100%}.daily-footer-actions button{flex:1}
  .chart-box{height:270px}.advanced-chart{height:300px}
}

@media(max-width:720px){
  .login-screen{position:fixed;display:block;overflow:auto;padding:max(14px,env(safe-area-inset-top)) 10px max(18px,env(safe-area-inset-bottom))}
  .login-panel{width:min(100%,440px);margin:0 auto;padding:18px 20px 20px;border-radius:22px;min-height:auto}
  .login-logo{width:158px;height:158px;margin:-20px auto -17px}.login-panel h1{font-size:25px}.login-panel>p{font-size:12px;margin-bottom:16px}.login-panel input{height:48px;font-size:16px}.login-panel form{gap:11px}
  .topbar{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:'menu title' 'actions actions';gap:7px 9px}
  .mobile-menu-button{grid-area:menu}.topbar>div:first-of-type{grid-area:title}.top-actions{grid-area:actions;max-width:none;width:100%;justify-content:flex-start;padding-bottom:1px}
  .top-actions button{height:38px}.user-chip{margin-left:auto}.topbar h2{font-size:18px}
  .view{padding:12px 10px calc(24px + env(safe-area-inset-bottom))}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric-card{min-height:100px;padding:12px}.metric-card .label{font-size:10px}.metric-card strong{font-size:19px}.metric-card small{font-size:8px}
  .section-head{flex-direction:column;align-items:stretch;gap:10px}.section-head .button-row{width:100%}.section-head .button-row button,.section-head>button{flex:1;min-width:120px}
  .toolbar{display:grid;grid-template-columns:1fr;gap:8px;padding:10px}.toolbar input,.toolbar select,.toolbar button{width:100%;min-width:0!important;max-width:none}.toolbar .spacer{display:none}
  .button-row{width:100%}.button-row button{flex:1 1 120px;min-height:42px}
  .primary,.secondary,.soft-button,.danger{min-height:42px}.icon-button{min-height:34px}
  .panel{border-radius:14px}.panel-header{padding:13px;flex-direction:column}.panel-body{padding:13px}
  .analysis-option-grid,.unified-report-grid{grid-template-columns:1fr 1fr}.analysis-option{min-height:70px;padding:10px}.analysis-option-icon{width:34px;height:34px;flex-basis:34px}.analysis-option strong{font-size:10px}.analysis-option small{font-size:8px}
  .unified-kpi-grid,.expanded-summary,.analytics-summary,.report-summary{grid-template-columns:1fr 1fr!important}.unified-kpi{min-height:91px;padding:12px}.unified-kpi strong{font-size:17px}
  .comparison-buttons,.comparison-metric-grid{grid-template-columns:1fr!important}.period-shortcuts{overflow:auto;flex-wrap:nowrap}.period-shortcuts button{flex:0 0 auto}
  .table-wrap{max-width:calc(100vw - 20px)}.table-wrap::after{content:'↔';position:sticky;right:7px;bottom:7px;float:right;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:rgba(8,13,19,.88);border:1px solid #314156;color:#a9dff0;font-size:12px;pointer-events:none}
  table{min-width:720px}.appointments-finance-table table,.subscriptions-finance-table table,.finance-table table,.analytics-table table{min-width:1450px!important}
  .modal-backdrop{padding:0;align-items:stretch}.modal,.modal.large{width:100%;max-width:none;height:100dvh;max-height:none;border-radius:0;display:flex;flex-direction:column}.modal-head{padding:max(13px,env(safe-area-inset-top)) 14px 12px}.modal-body{flex:1;overflow:auto;padding:13px 12px}.modal-footer{position:sticky;bottom:0;padding:10px 12px max(10px,env(safe-area-inset-bottom));background:#0d131b}.modal-footer button{flex:1;min-height:46px}
  .display-session-grid,.display-url-config{grid-template-columns:1fr}.display-thumb-grid{grid-template-columns:1fr 1fr;gap:9px}.display-status-card{padding:13px}.pair-code{font-size:25px}.display-upload-bar{align-items:stretch}.display-upload-bar>*{width:100%;max-width:none!important}.display-service-edit-row{grid-template-columns:28px minmax(0,1fr) 92px 32px;padding:8px;gap:6px}.display-service-enabled{grid-column:2/4}.display-service-edit-row input{min-width:0;padding-inline:8px}.thumb-meta{padding:10px}.thumb-meta strong{font-size:11px}.thumb-meta small{font-size:9px}
  .daily-brief-shell{padding:9px}.daily-brief-head{flex-direction:column}.daily-head-actions{width:100%;justify-content:space-between}.daily-columns{gap:10px}.daily-section{padding:12px}.daily-item{grid-template-columns:1fr}.daily-item-actions{justify-content:flex-start}.daily-summary-bar{align-items:flex-start;flex-direction:column}
  .settings-grid{gap:10px}.settings-form{grid-template-columns:1fr}.settings-card{padding:13px}
  .toast-host{left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom))}.toast{width:100%;max-width:none}
}

@media(max-width:430px){
  .login-panel{padding-inline:15px}.login-logo{width:142px;height:142px}.login-panel h1{font-size:22px}
  .mobile-menu-label{display:none}.mobile-menu-button{min-width:44px;width:44px;padding:0}
  .top-actions .top-action-button{max-width:106px;overflow:hidden;text-overflow:ellipsis}.top-actions #closeAppButton{display:none}
  .cards{grid-template-columns:1fr 1fr}.metric-card{min-height:95px}.metric-card strong{font-size:18px}
  .analysis-option-grid,.unified-report-grid{grid-template-columns:1fr}.unified-kpi-grid,.expanded-summary,.analytics-summary,.report-summary{grid-template-columns:1fr 1fr!important}
  .display-thumb-grid{grid-template-columns:1fr}.display-service-edit-row{grid-template-columns:26px minmax(0,1fr) 32px}.display-service-price{grid-column:2/3}.display-service-enabled{grid-column:2/3}.display-service-remove{grid-column:3;grid-row:1}
  .user-chip{display:none}.top-actions{padding-right:2px}.top-actions #logoutButton{margin-left:auto}
}

@media(orientation:landscape) and (max-height:600px) and (max-width:1024px){
  .topbar{min-height:58px;padding-top:6px;padding-bottom:6px}.view{padding-top:10px}.login-logo{width:110px;height:110px;margin:-18px auto -16px}.login-panel{padding-top:12px}.login-panel>p{margin-bottom:10px}.login-panel form{gap:8px}
}

/* v3.2.11 Mobile navigation: vertical tabs with visible names */
@media(max-width:1024px){
  .sidebar{
    display:flex!important;
    flex-direction:column!important;
    top:0!important;
    bottom:0!important;
    left:0!important;
    right:auto!important;
    height:100dvh!important;
    width:min(88vw,340px)!important;
    padding:14px 12px max(12px,env(safe-area-inset-bottom))!important;
    overflow:hidden!important;
  }
  .sidebar .brand{
    display:flex!important;
    flex:0 0 auto;
    align-items:center;
    min-height:74px;
    padding:0 4px 14px!important;
  }
  .sidebar .brand div{
    display:grid!important;
    min-width:0;
  }
  .sidebar .brand strong,
  .sidebar .brand span{
    display:block!important;
  }
  .sidebar nav,
  #mainNav{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-content:start!important;
    gap:6px!important;
    width:100%!important;
    padding:14px 2px 10px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
  }
  .sidebar .nav-item{
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    height:48px!important;
    padding:0 14px!important;
    gap:12px!important;
    text-align:left!important;
    flex:0 0 auto!important;
  }
  .sidebar .nav-item .nav-icon{
    width:22px!important;
    height:22px!important;
    flex:0 0 22px!important;
  }
  .sidebar .nav-item b{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    flex:1 1 auto!important;
    min-width:0!important;
    font-size:13px!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  .sidebar-footer{
    display:flex!important;
    flex:0 0 auto;
    margin-top:auto!important;
    padding:12px 8px 2px!important;
  }
  .sidebar-footer span:not(.status-dot){display:grid!important}
}

@media(max-width:430px){
  .sidebar{width:min(91vw,330px)!important}
  .sidebar .nav-item{height:47px!important;padding-inline:12px!important}
  .sidebar .nav-item b{font-size:12px!important}
}
.pwa-install-icon.app-icon-preview{overflow:hidden;padding:0;background:#090e14}
.pwa-install-icon.app-icon-preview img{width:100%;height:100%;object-fit:cover;display:block;border-radius:8px}

/* v3.2.12 Sales & Reports KPI cards */
#financeSummary{margin:16px 0 18px}
.unified-kpi-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(150px,1fr));
  gap:12px;
}
.unified-kpi{
  --kpi-tone:var(--cyan);
  position:relative;
  overflow:hidden;
  min-height:112px;
  padding:16px 17px;
  border-radius:16px;
  border:1px solid color-mix(in srgb,var(--kpi-tone) 30%,var(--line));
  background:linear-gradient(145deg,#151d28,#0c121a);
  box-shadow:0 10px 28px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.035);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
}
.unified-kpi::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:var(--kpi-tone);
  box-shadow:0 0 14px var(--kpi-tone);
}
.unified-kpi::after{
  content:"";
  position:absolute;
  width:105px;
  height:105px;
  right:-44px;
  top:-45px;
  border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--kpi-tone) 20%,transparent),transparent 70%);
  pointer-events:none;
}
.unified-kpi .summary-icon{
  position:absolute;
  right:14px;
  top:12px;
  font-size:20px;
  line-height:1;
  color:var(--kpi-tone);
  opacity:.9;
  text-shadow:0 0 14px color-mix(in srgb,var(--kpi-tone) 55%,transparent);
}
.unified-kpi small{
  position:relative;
  z-index:1;
  display:block;
  max-width:82%;
  color:#aebac9;
  font-size:10px;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
  line-height:1.35;
}
.unified-kpi strong{
  position:relative;
  z-index:1;
  display:block;
  color:#f8fbff;
  font-size:23px;
  line-height:1.15;
  word-break:break-word;
  text-shadow:0 0 14px color-mix(in srgb,var(--kpi-tone) 30%,transparent);
}
.unified-kpi.tone-cyan{--kpi-tone:var(--cyan)}
.unified-kpi.tone-green{--kpi-tone:var(--green)}
.unified-kpi.tone-rose{--kpi-tone:var(--rose)}
.unified-kpi.tone-teal{--kpi-tone:var(--teal)}
.unified-kpi.tone-amber{--kpi-tone:var(--amber)}
.unified-kpi.tone-violet{--kpi-tone:var(--violet)}
.unified-kpi.tone-blue{--kpi-tone:var(--blue)}

@media(max-width:1450px){
  .unified-kpi-grid{grid-template-columns:repeat(4,minmax(145px,1fr))}
}
@media(max-width:1024px){
  .unified-kpi-grid{grid-template-columns:repeat(3,minmax(130px,1fr))!important}
}
@media(max-width:720px){
  .unified-kpi-grid{grid-template-columns:1fr 1fr!important;gap:9px}
  .unified-kpi{min-height:96px;padding:13px 14px}
  .unified-kpi strong{font-size:18px}
  .unified-kpi small{font-size:9px}
}
@media(max-width:390px){
  .unified-kpi-grid{grid-template-columns:1fr!important}
}
