/* ThinkStore V15.44 · Shared application polish. Business controls keep their own logic. */
body[data-ts-surface]{--ts-accent:#0878f9;--ts-accent-soft:#edf5ff;--ts-ink:#17253e;--ts-ease:cubic-bezier(.2,.65,.3,1);background-color:#f5f7fb;background-image:radial-gradient(ellipse at 95% 0%,rgba(22,119,255,.075),transparent 42%);background-attachment:fixed}
body[data-ts-surface] :is(button,a,input,select,textarea):focus-visible{outline:3px solid #2785ef;outline-offset:3px}
body[data-ts-surface] :is(button,.btn,.mini-action){transition:transform .18s var(--ts-ease),box-shadow .18s var(--ts-ease),background-color .18s var(--ts-ease),border-color .18s var(--ts-ease)}
body[data-ts-surface] button:disabled{cursor:not-allowed}
body[data-ts-surface] :is(.panel,.metric-card,.kpi,.ts-premium-panel,.ts-client-panel,.en-panel,.order-box){border-color:#e1e8f2;box-shadow:0 6px 24px rgba(32,67,114,.035)}
body[data-ts-surface] :is(.metric-card,.kpi,.exec-kpi-grid>article,.en-stat,.ts-role-kpi){position:relative;overflow:hidden;border:1px solid #dfe8f5;border-radius:20px;background:linear-gradient(140deg,#fff,#f7faff);transition:transform .22s var(--ts-ease),box-shadow .22s var(--ts-ease)}
body[data-ts-surface] :is(.metric-card,.kpi,.exec-kpi-grid>article,.en-stat,.ts-role-kpi)::before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:3px;border-radius:0 4px 4px 0;background:var(--ts-accent)}
body[data-ts-surface] :is(.metric-card,.kpi,.exec-kpi-grid>article,.ts-role-kpi) strong{font-variant-numeric:tabular-nums;letter-spacing:-.035em}
body[data-ts-surface] :is(.home-hero,.finance-hero,.ts-welcome-card,.hero){border:1px solid rgba(148,192,255,.18);border-radius:25px;background:radial-gradient(ellipse at 95% 0%,rgba(0,170,255,.32),transparent 48%),linear-gradient(120deg,#101f38,#153762);color:#fff;box-shadow:0 16px 34px rgba(18,48,90,.12)}
body[data-ts-surface] :is(.home-hero,.finance-hero,.ts-welcome-card,.hero) :is(h1,h2,h3,b,strong){color:#fff}
body[data-ts-surface] :is(.home-hero,.finance-hero,.ts-welcome-card,.hero) :is(p,small,.eyebrow){color:#c5d7ee}
body[data-ts-surface] :is(.sidebar nav button,.sidebar nav a,.side-nav button,.nav button){border-radius:13px;transition:background .18s ease,transform .18s ease}
body[data-ts-surface] :is(.sidebar button.active,.sidebar a.active,.side-nav button.active){background:#e8f2ff;color:#0758b9;box-shadow:inset 3px 0 #147cf2}
body[data-ts-surface] :is(.app-header,.topbar,.ts-premium-top){border-bottom-color:#e0e8f4}
body[data-ts-surface] :is(input,select,textarea){transition:border-color .18s ease,box-shadow .18s ease}
body[data-ts-surface] :is(input,select,textarea):focus{border-color:#72aef5;box-shadow:0 0 0 3px rgba(20,124,242,.10)}
body[data-ts-surface] :is(.tag.ok,.en-tag.ok,.pill.ok,.badge.success){background:#e6f7ee;color:#146a46;border-color:#bfe7d1}
body[data-ts-surface] :is(.tag.warn,.en-tag.warn){background:#fff5df;color:#815500;border-color:#f3dfac}
body[data-ts-surface] :is(.repair-part-result,.repair-part-selected){border-radius:18px;border-color:#dce7f5;transition:border-color .18s ease,box-shadow .18s ease}
body[data-ts-surface] .repair-part-result.is-selected{border-color:#2584f5;box-shadow:0 0 0 2px rgba(37,132,245,.12);background:#f2f8ff}
body[data-ts-surface] .repair-part-stock{background:#edf6ff;color:#125db6;border-radius:13px;padding:8px 12px}
body[data-ts-surface] .repair-part-result.is-empty .repair-part-stock{background:#f2f3f6;color:#69778a}
body[data-ts-surface] :is(.empty,.fin-empty,.repair-part-empty){border-radius:17px;background:linear-gradient(130deg,#f7faff,#f2f5fa);color:#61738b}
@media(hover:hover){body[data-ts-surface] :is(button,.btn,.mini-action):enabled:hover{transform:translateY(-1px);box-shadow:0 6px 15px rgba(30,89,163,.13)}body[data-ts-surface] :is(.metric-card,.kpi,.exec-kpi-grid>article):hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(32,79,136,.10)}body[data-ts-surface] :is(.repair-part-result):enabled:hover{border-color:#7ab4f5;background:#f6faff}}
body[data-ts-surface] button:enabled:active{transform:translateY(1px) scale(.99)}
/* Enterprise-only: no cost or partner breakdown is inserted into Support or Staff. */
.service-breakdown{font-family:inherit;color:#23344b;background:#fff;border:1px solid #e0e9f4;border-radius:21px;padding:24px;margin-top:12px;box-shadow:0 12px 32px rgba(22,61,106,.055);min-width:0;animation:ts-detail-enter .22s var(--ts-ease)}
.sb-heading,.sb-share-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.sb-heading small{font-size:10px;letter-spacing:.14em;font-weight:800;color:#6e829e}.sb-heading h4{font-size:23px;letter-spacing:-.03em;margin:6px 0 18px}.sb-state{font-size:11px;font-weight:750;padding:8px 12px;border-radius:99px;white-space:nowrap}.sb-state.ok{background:#e6f7ee;color:#176746}.sb-state.warn{background:#fff2d7;color:#865d0c}.sb-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sb-metric{border:1px solid #e4eaf2;background:#f8faff;border-radius:15px;padding:17px;min-width:0}.sb-metric span{display:block;font-size:11px;color:#5a6c85;margin-bottom:10px}.sb-metric strong{font-size:24px;letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.sb-metric.blue{background:#eaf4ff;border-color:#cce3ff;color:#065dbb}.sb-metric.amber{background:#fff7e9;border-color:#f4e5c8;color:#875b12}.sb-ledger{padding:20px 0 12px}.service-breakdown h5{font-size:14px;margin:0 0 13px;letter-spacing:-.01em}.sb-ledger>div{display:flex;justify-content:space-between;gap:18px;font-size:13px;border-bottom:1px solid #edf1f6;padding:11px 0}.sb-ledger>div span{color:#586a83}.sb-ledger b{font-variant-numeric:tabular-nums;white-space:nowrap}.sb-profit{display:flex;justify-content:space-between;align-items:center;gap:28px;background:linear-gradient(120deg,#11385d,#0e624f);color:white;border-radius:17px;padding:23px;margin:8px 0 23px}.sb-profit small{display:block;font-size:10px;letter-spacing:.1em;color:#c1e3e3}.sb-profit strong{display:block;font-size:38px;letter-spacing:-.045em;margin-top:6px;font-variant-numeric:tabular-nums;white-space:nowrap}.sb-profit p{font-size:12px;line-height:1.65;color:#d8ecea;max-width:290px;margin:0}.sb-profit.loss{background:linear-gradient(120deg,#532e39,#963b49)}.sb-share-heading{margin-bottom:12px}.sb-share-heading h5{margin:0}.sb-share-heading>span{font-size:11px;color:#697c94}.sb-shares{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sb-shares>div{background:#f4f7fc;border:1px solid #e4ebf5;border-radius:14px;padding:15px;min-width:0}.sb-shares span{font-size:11px;color:#647891;display:block;margin-bottom:9px}.sb-shares b{font-size:20px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.sb-note{font-size:11px!important;line-height:1.7;color:#71829a!important;margin:15px 0 0!important}.sb-warnings{background:#fff6e4;border:1px solid #f1dfb9;color:#795819;border-radius:13px;padding:13px 16px 13px 29px;font-size:12px;line-height:1.6}.sb-warnings li+li{margin-top:6px}.ts-credit-inline{grid-column:1/-1;min-width:0}.service-profit-row>[data-ts-credit-detail]{color:#0863ce;background:#edf5ff;border-color:#d6e8ff;white-space:normal}.service-profit-row{min-width:0}
@keyframes ts-detail-enter{from{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:640px){.service-breakdown{padding:16px;border-radius:17px}.sb-metrics{gap:7px}.sb-metric{padding:11px 8px}.sb-metric span{font-size:10px;line-height:1.5}.sb-metric strong{font-size:19px}.sb-profit{align-items:flex-start;flex-direction:column;gap:12px;padding:19px}.sb-profit strong{font-size:34px}.sb-profit p{max-width:none}.sb-shares{gap:6px}.sb-shares>div{padding:12px 8px}.sb-shares b{font-size:16px}.sb-shares span{font-size:10px}.sb-ledger>div{font-size:12px;gap:10px}body[data-ts-surface]{background-attachment:scroll}}
@media(prefers-reduced-motion:reduce){body[data-ts-surface] *,body[data-ts-surface] *::before,body[data-ts-surface] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body[data-ts-surface] :is(button,.metric-card,.kpi,.exec-kpi-grid>article):hover{transform:none!important}}
@media print{.service-breakdown{box-shadow:none;break-inside:avoid}.sb-profit{background:#fff;color:#111;border:1px solid #999}.sb-profit :is(p,small){color:#333}body[data-ts-surface]{background:white}}

body[data-ts-surface] :is(.home-hero,.finance-hero,.ts-welcome-card,.hero) :is(button,.btn,.hero-action):not(.danger){background:#fff;color:#164574;border-color:#d1e3fb}
body[data-ts-surface] :is(.home-hero,.finance-hero,.ts-welcome-card,.hero) :is(button,.btn,.hero-action):not(.danger) :is(b,strong,small,p,span){color:inherit}
body[data-ts-surface] .is-loading{cursor:wait}
