:root{--bg:#f4f6f8;--panel:#fff;--text:#18212b;--muted:#6c7886;--line:#e2e7ec;--accent:#f2b705;--accent-dark:#c99400;--sidebar:#111820;--danger:#b42318;--success:#087443;--radius:10px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text)}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-size:14px}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr)}.sidebar{background:var(--sidebar);color:#dbe3eb;padding:22px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand,.login-brand{display:flex;align-items:center;gap:12px}.brand{padding:0 8px 24px}.brand strong,.login-brand strong{display:block;color:#fff;font-size:18px;letter-spacing:.08em}.brand span,.login-brand span{display:block;font-size:11px;color:#8f9dab;margin-top:2px}.brand-mark{width:34px;height:34px;background:var(--accent);color:#151515;border-radius:8px;display:grid;place-items:center;font-weight:900;font-size:20px}.brand-mark.large{width:44px;height:44px;font-size:26px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{padding:11px 12px;border-radius:7px;color:#aeb9c5;font-weight:600}.sidebar nav a:hover,.sidebar nav a.active{background:#202a35;color:#fff}.sidebar nav a.active{box-shadow:inset 3px 0 0 var(--accent)}.sidebar-user{margin-top:auto;border-top:1px solid #27313b;padding:18px 6px 0;display:grid;grid-template-columns:36px 1fr;gap:9px;align-items:center}.avatar{width:36px;height:36px;border-radius:50%;background:#27313b;display:grid;place-items:center;font-weight:800}.user-meta strong,.user-meta span{display:block}.user-meta span{font-size:11px;color:#8f9dab}.link-button{background:none;border:0;color:#95a3b1;padding:0;font:inherit;cursor:pointer;font-size:12px}.sidebar-user form{grid-column:2}.main{min-width:0}.topbar{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.topbar h1{margin:0;font-size:21px}.topbar p{margin:4px 0 0;color:var(--muted);font-size:12px}.account-link{padding:8px 12px;border:1px solid var(--line);border-radius:7px;background:#fff}.content{padding:24px 28px 48px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.stat span{display:block;color:var(--muted);font-size:12px}.stat strong{font-size:28px;display:block;margin-top:8px}.two-col{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(260px,.7fr);gap:18px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.ticket-detail{grid-template-columns:minmax(0,2fr) minmax(280px,.75fr)}.stack{display:grid;gap:18px;align-content:start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.panel.narrow{max-width:620px;padding:22px}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:17px 18px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:15px;margin:0}.panel-head p{margin:3px 0 0;color:var(--muted);font-size:11px}.panel-head a{color:#786000;font-weight:700;font-size:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;padding:11px 14px;background:#f8fafb;border-bottom:1px solid var(--line);color:#66717d;font-size:11px;text-transform:uppercase;letter-spacing:.04em}td{padding:12px 14px;border-bottom:1px solid #edf0f2;vertical-align:middle}tbody tr:hover{background:#fbfcfd}td small{display:block;color:var(--muted);margin-top:3px}.ticket-link{font-weight:600}.ticket-link:hover{color:#8b6900}.badge{display:inline-flex;align-items:center;background:#edf1f4;color:#4b5864;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;text-transform:capitalize;white-space:nowrap}.status-open,.status-new{background:#e7f0ff;color:#245ca8}.status-resolved,.status-completed,.status-closed{background:#e6f6ee;color:#18714b}.status-ready-to-collect,.status-ready-to-dispatch{background:#fff5d6;color:#8a6300}.status-pending-client-feedback,.status-pending-client-quote-approval{background:#f4eefe;color:#6a48a8}.badge.subtle{font-size:10px}.empty{padding:24px!important;text-align:center;color:var(--muted)}.status-list{display:grid}.status-list a{display:flex;justify-content:space-between;padding:11px 18px;border-bottom:1px solid var(--line);text-transform:capitalize}.status-list a:hover{background:#fafbfc}.toolbar{display:flex;gap:9px;padding:14px;border-bottom:1px solid var(--line)}input,select{width:100%;border:1px solid #ccd4dc;border-radius:7px;padding:10px 11px;background:#fff;font:inherit;color:var(--text);outline:none}input:focus,select:focus{border-color:#8e9ba8;box-shadow:0 0 0 3px rgba(70,85,100,.08)}.toolbar input{max-width:430px}.toolbar select{max-width:220px}.button{border:1px solid #ccd4dc;border-radius:7px;background:#fff;padding:9px 14px;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}.button.primary{background:var(--accent);border-color:var(--accent-dark);color:#151515}.button.ghost{color:var(--muted)}.button.wide{width:100%}.pagination{padding:14px}.pagination nav>div:first-child{display:none}.pagination nav>div:last-child{display:flex!important;justify-content:space-between;align-items:center;gap:8px}.pagination svg{width:18px}.pagination span,.pagination a{font-size:12px}.details-list{display:grid}.details-list>div{display:grid;grid-template-columns:150px 1fr;gap:14px;padding:12px 18px;border-bottom:1px solid var(--line)}.details-list span{color:var(--muted)}.details-list strong{font-weight:600}.details-list.compact>div{grid-template-columns:125px 1fr}.note-block,.rich-text{padding:17px 18px;line-height:1.55}.note-block h3{font-size:12px;margin:0 0 8px;text-transform:uppercase;color:var(--muted)}.note-block p{margin:0;white-space:pre-wrap}.ticket-summary{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px;color:var(--muted)}.ticket-summary strong{color:var(--text)}.timeline{padding:8px 18px 18px}.timeline article{border-left:2px solid #d9dfe5;padding:14px 0 14px 17px;position:relative}.timeline article:before{content:"";position:absolute;left:-5px;top:20px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.timeline-head{display:flex;justify-content:space-between;gap:20px}.timeline-head span{font-size:11px;color:var(--muted)}.timeline .rich-text{padding:8px 0 0}.comment-meta{margin-top:5px}.client-card{display:grid;gap:5px;padding:18px}.client-card span{color:var(--muted);font-size:12px}.item-list>div{display:flex;justify-content:space-between;gap:16px;padding:12px 18px;border-bottom:1px solid var(--line)}.item-list span strong,.item-list span small{display:block}.item-list small{color:var(--muted);margin-top:4px}.alert{border-radius:8px;padding:11px 13px;margin-bottom:16px;border:1px solid}.alert.warning{background:#fff8df;border-color:#ead68d}.alert.success{background:#ecf8f1;border-color:#a9dac0;color:var(--success)}.alert.danger{background:#fff0ef;border-color:#edb2ad;color:var(--danger)}.alert a{text-decoration:underline;font-weight:700}.form-stack{display:grid;gap:15px}.form-stack label{font-weight:700;font-size:12px}.form-stack label input{display:block;margin-top:7px}.form-stack label small{display:block;color:var(--muted);font-weight:400;margin-top:5px}.checkbox{display:flex!important;align-items:center;gap:8px}.checkbox input{width:auto!important;margin:0!important}.login-page{min-height:100vh;background:#101820;display:grid;place-items:center;padding:20px}.login-card{width:min(430px,100%);background:#fff;border-radius:14px;padding:30px;box-shadow:0 20px 60px rgba(0,0,0,.28)}.login-brand{margin-bottom:30px}.login-brand strong{color:#17202a}.login-card h1{font-size:25px;margin:0 0 5px}.muted{color:var(--muted);margin:0 0 22px}@media(max-width:1050px){.stats-grid{grid-template-columns:repeat(2,1fr)}.two-col,.ticket-detail{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}}@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative;padding:12px}.brand{padding:4px 5px 12px}.sidebar nav{grid-template-columns:repeat(3,1fr)}.sidebar nav a{text-align:center}.sidebar-user{display:none}.topbar{padding:0 16px}.content{padding:16px}.stats-grid{grid-template-columns:1fr 1fr}.toolbar{flex-wrap:wrap}.toolbar input,.toolbar select{max-width:none}.details-list>div{grid-template-columns:1fr;gap:4px}}
.top-actions{display:flex;align-items:center;gap:9px}.nav-divider{height:1px;background:#27313b;margin:10px 8px}.form-panel{padding:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid label{font-weight:700;font-size:12px;color:#465361}.form-grid label input,.form-grid label select,.form-grid label textarea{display:block;margin-top:7px}.form-grid textarea{width:100%;border:1px solid #ccd4dc;border-radius:7px;padding:10px 11px;background:#fff;font:inherit;color:var(--text);outline:none;resize:vertical}.form-grid textarea:focus{border-color:#8e9ba8;box-shadow:0 0 0 3px rgba(70,85,100,.08)}.form-grid small{display:block;font-weight:400;color:var(--muted);margin-top:5px}.span-2{grid-column:span 2}.form-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center;border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.compact-actions{border:0;margin:10px 0 0;padding:0;justify-content:space-between}.comment-form{padding:16px 18px}.comment-form textarea{width:100%;border:1px solid #ccd4dc;border-radius:7px;padding:11px;font:inherit;resize:vertical}.button.small{padding:6px 10px;font-size:12px}.alert ul{margin:7px 0 0;padding-left:20px}.alert li+li{margin-top:3px}@media(max-width:760px){.top-actions{gap:5px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.form-actions{flex-wrap:wrap}}
.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.settings-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:grid;gap:7px}.settings-card:hover{border-color:#c5ced7;box-shadow:0 5px 18px rgba(20,35,50,.06)}.settings-card strong{font-size:16px}.settings-card span{color:var(--muted);line-height:1.45}.inline-form{display:flex;gap:9px;align-items:center;padding:14px 18px}.inline-form input,.inline-form select{max-width:360px}.workflow-form select{max-width:300px}.quick-status{margin-bottom:16px}.catalog-add{display:grid;grid-template-columns:minmax(150px,1.8fr) 100px minmax(120px,1fr) auto;border-top:1px solid var(--line)}.catalog-add input,.catalog-add select{max-width:none}.item-actions{display:flex!important;gap:10px;align-items:flex-end}.link-danger{border:0;background:none;color:var(--danger);padding:0;font:inherit;font-size:11px;cursor:pointer}.device-list{display:grid}.device-card{display:flex;justify-content:space-between;gap:15px;padding:14px 18px;border-bottom:1px solid var(--line);align-items:center}.device-card strong,.device-card small{display:block}.device-card small{color:var(--muted);margin-top:4px}.device-actions{display:flex;align-items:center;gap:7px}.device-add{border-top:1px solid var(--line)}.condition-list{display:grid}.condition-row{display:grid;grid-template-columns:minmax(140px,1fr) 120px minmax(150px,1.4fr);gap:10px;align-items:center;padding:11px 18px;border-bottom:1px solid var(--line)}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.form-panel h2{font-size:14px;margin:4px 0 14px}.form-panel h2:not(:first-child){margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}@media(max-width:900px){.settings-grid{grid-template-columns:1fr}.catalog-add{grid-template-columns:1fr 100px}.catalog-add input[name=notes]{grid-column:1/-1}.condition-row{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}.device-card{align-items:flex-start;flex-direction:column}.device-actions{flex-wrap:wrap}}


/* ODIN PHASE 14D DARK UI */
:root{--bg:#050b12;--panel:#0b131d;--text:#f5f8fb;--muted:#7890a7;--line:#1d2a37;--accent:#4e86f7;--accent-dark:#2c6be4;--sidebar:#050a10;color:var(--text)}
body{background:var(--bg);color:var(--text)}.app-shell{grid-template-columns:216px minmax(0,1fr)}.sidebar{background:var(--sidebar);border-right:1px solid #0e1823;padding:17px 12px 16px}.brand{height:48px;padding:0 4px 14px;border-bottom:1px solid #111b26;margin-bottom:12px}.brand-wordmark{display:flex;align-items:baseline;color:#0ca7ff;font-weight:800}.brand-wordmark span{font-size:17px}.brand-wordmark strong{font-size:27px}.brand-wordmark b{font-size:11px}.brand small{font-size:9px;color:#4c657b;border:1px solid #1c2a37;border-radius:4px;padding:2px 4px;margin-left:auto}.main-nav{display:grid;gap:2px}.main-nav a{height:37px;display:flex;align-items:center;gap:11px;padding:0 8px;border-radius:7px;color:#8ea5ba;font-weight:600}.main-nav a:hover,.main-nav a.active{background:#101f2d;color:#fff}.nav-icon{width:18px;text-align:center;color:#6e8294}.sidebar-user-actions{grid-column:2;display:flex;gap:10px;font-size:10px;color:#6f879d}.main{background:var(--bg)}.topbar{height:auto;min-height:84px;background:transparent;border:0;padding:16px 34px 10px;max-width:1300px;margin:0 auto}.topbar h1{color:#fff;font-size:24px}.topbar p{color:#7791a7;font-size:13px}.content{padding:0 34px 48px;max-width:1300px;margin:0 auto}.account-link{background:#0d1720;border-color:#263542}.panel,.settings-card{background:#0b131d;border-color:#1d2a37}.panel-head,td,.details-list>div,.item-list>div,.device-card,.condition-row{border-color:#1d2a37}th{background:#09121b;color:#71879b;border-color:#1d2a37}tbody tr:hover{background:#0c1721}input,select,textarea{background:#09111a!important;color:#eef6fc!important;border-color:#263441!important}select{color-scheme:dark}.button{background:#0d1720;color:#dfeaf4;border-color:#263542}.button.primary{background:#4e86f7;border-color:#4e86f7;color:#06101d}.badge{background:#14202b;color:#9fb4c6}.muted,.details-list span{color:#7890a7}.alert.warning{background:#2d260e;border-color:#6a581b;color:#f4d56d}.alert.success{background:#08271f;border-color:#145a47;color:#72dfbd}.alert.danger{background:#2a1017;border-color:#693040;color:#ff91ac}
.ticket-tabs{display:flex;align-items:flex-end;gap:3px;border-bottom:1px solid #1d2a37;margin-bottom:20px}.ticket-tabs a{height:42px;display:flex;align-items:center;gap:8px;padding:0 15px;color:#82a0b8;border-bottom:2px solid transparent;font-weight:600}.ticket-tabs a.active{color:#fff;border-bottom-color:#4e86f7}.ticket-tabs a span{min-width:21px;height:20px;border-radius:999px;padding:0 6px;display:grid;place-items:center;background:#102033;color:#6589ad;font-size:11px}.week-section{margin-bottom:20px}.week-toolbar{height:48px;display:flex;align-items:center;justify-content:space-between}.week-nav{display:flex;align-items:center;gap:8px}.week-nav>span,.week-tools a{color:#60778d;font-size:11px}.week-arrow{font-size:24px;color:#a2b5c5;padding:2px 5px}.week-calendar{border:1px solid #24313d;border-radius:9px;overflow:hidden;background:#08111a}.week-head{height:29px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid #23303c}.week-head div{display:grid;place-items:center;color:#69869e;font-size:11px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-height:176px}.week-day{min-width:0;border-right:1px solid #24313d;background:#09131d;padding:5px 4px 7px}.week-day:last-child{border-right:0}.week-day.weekend{background:#0e1720}.week-day.today{box-shadow:inset 0 0 0 1px #3765a8}.day-number{height:24px;display:flex;align-items:center;justify-content:space-between;padding:0 2px;color:#667f94;font-size:11px}.week-day.today .day-number span{width:20px;height:20px;border-radius:4px;background:#4e86f7;color:#06101c;display:grid;place-items:center;font-weight:800}.day-events{display:grid;gap:4px}.calendar-event{height:22px;padding:0 5px;border-radius:4px;border-left:3px solid #3c73c9;background:#10213a;color:#dceaff;display:flex;align-items:center;gap:5px;overflow:hidden;font-size:10px;white-space:nowrap}.calendar-event span{overflow:hidden;text-overflow:ellipsis}.event-callout{border-color:#ef426f!important;background:#31111d!important}.event-weekly-it{border-color:#784ce0!important;background:#201539!important}.event-in-house{border-color:#387cf0!important;background:#10254b!important}.event-installation{border-color:#00a7cf!important;background:#0b2935!important}.event-remote-support{border-color:#00c4b1!important;background:#0a2c2b!important}.event-collection,.event-pickup{border-color:#17a887!important;background:#0c2b26!important}.event-rts,.event-return-to-supplier{border-color:#f5a81d!important;background:#33230c!important}.event-dispatch,.event-delivery{border-color:#53a4ff!important;background:#10253a!important}.calendar-legend{min-height:31px;border-top:1px solid #22303c;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:5px 12px;color:#627e95;font-size:9px}.calendar-legend span{display:flex;align-items:center;gap:5px}.legend-dot{width:7px;height:11px;border-left:3px solid #3c73c9;border-radius:3px;background:#10213a}.ticket-filterbar{display:grid;grid-template-columns:minmax(250px,2.7fr) repeat(5,minmax(120px,1fr)) auto auto;gap:10px;margin-bottom:18px}.ticket-filterbar select{height:37px;padding:7px 10px}.search-field{height:37px;border:1px solid #263441;border-radius:7px;background:#09111a;display:flex;align-items:center;padding-left:10px;color:#71899e}.search-field input{height:35px;border:0!important;background:transparent!important;box-shadow:none!important}.filter-submit{display:none}.ticket-list{border:1px solid #1d2b38;border-radius:8px;overflow:hidden;background:#09131d}.ticket-row{min-height:65px;display:grid;grid-template-columns:74px minmax(250px,1.45fr) minmax(390px,1.2fr) 36px 125px;gap:12px;align-items:center;padding:10px 18px 10px 12px;border-bottom:1px solid #22303c}.ticket-row:last-child{border-bottom:0}.ticket-row:hover{background:#112039}.ticket-number{color:#637e94;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;text-align:center}.ticket-main{min-width:0}.ticket-main strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-main span{display:block;color:#6f8ba2;margin-top:3px;font-size:11px}.ticket-badges{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.pill{display:inline-flex;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:700;background:#13202d;color:#90a8ba}.pill.sla{background:#112b59;color:#5d91ff}.pill.sla.breached{background:#3a1520;color:#ff6d91}.pill.service{background:#07302e;color:#00cdbb}.source-whatsapp{background:#073621!important;color:#12d77a!important}.priority-medium{background:#112d5a!important;color:#4f91ff!important}.priority-high{background:#3b2b0d!important;color:#f6bd38!important}.priority-critical{background:#3e111c!important;color:#ff5b7f!important}.pill.status{background:#132a50;color:#5592ff}.ticket-agent{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#11294e;color:#87a9e8;font-weight:800;font-size:10px}.ticket-age{text-align:right;color:#668097;font-size:10px}.empty-state{padding:24px;text-align:center;color:#7890a7}
@media(max-width:1120px){.ticket-filterbar{grid-template-columns:repeat(3,1fr)}.search-field{grid-column:1/-1}.ticket-row{grid-template-columns:70px minmax(220px,1fr) minmax(260px,1fr) 34px}.ticket-age{display:none}}
@media(max-width:900px){.app-shell{grid-template-columns:68px minmax(0,1fr)}.sidebar{padding:15px 8px}.brand-wordmark b,.brand small,.main-nav a span:not(.nav-icon),.user-meta,.sidebar-user-actions{display:none}.brand{justify-content:center}.main-nav a{justify-content:center;padding:0}.topbar,.content{padding-left:20px;padding-right:20px}.week-grid,.week-head{grid-template-columns:repeat(7,minmax(145px,1fr));overflow-x:auto}.ticket-row{grid-template-columns:66px minmax(220px,1fr) 32px}.ticket-badges{display:none}.ticket-filterbar{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}}
@media(max-width:620px){.app-shell{display:block}.sidebar{position:static;height:auto}.brand{display:none}.main-nav{display:flex;overflow:auto}.main-nav a{min-width:46px}.sidebar-user{display:none}.topbar{padding:15px 14px}.content{padding:0 14px 30px}.ticket-tabs{overflow:auto}.ticket-tabs a{white-space:nowrap}.ticket-filterbar{grid-template-columns:1fr}.search-field{grid-column:auto}.ticket-row{grid-template-columns:58px minmax(0,1fr) 30px}.settings-grid,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}}
/* ODIN PHASE 14E - GLOBAL READABILITY FONT UPDATE
   Uses native system UI fonts for maximum clarity without external font dependencies.
*/
html,
body,
button,
input,
select,
textarea,
table,
th,
td,
a,
label,
small,
strong,
span,
div,
p,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Segoe UI", Tahoma, Arial, Helvetica, sans-serif !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

body {
    font-size: 14px;
    line-height: 1.45;
    font-weight: 400;
}

.page-heading h1,
.ticket-main strong,
.panel-head h2,
.settings-card strong,
strong,
th,
button,
.button,
.main-nav a {
    font-weight: 600;
}

.ticket-main strong {
    letter-spacing: 0;
}

.ticket-number {
    font-family: "Segoe UI", Tahoma, Arial, Helvetica, sans-serif !important;
    font-variant-numeric: tabular-nums;
}

input,
select,
textarea {
    font-size: 14px;
}

.main-nav a,
.ticket-tabs a {
    font-size: 14px;
}

.page-heading p,
.ticket-main span,
.ticket-age,
.week-tools a,
.week-nav > span,
.calendar-legend,
.calendar-event {
    letter-spacing: 0;
}
/* Phase 14I: Clients + intentional mobile navigation */
.mobile-menu-button,.mobile-menu-close,.mobile-menu-backdrop{display:none}

.client-tabs{display:flex;gap:2px;border-bottom:1px solid #1d2a37;margin-bottom:18px}
.client-tabs a{height:43px;display:flex;align-items:center;gap:7px;padding:0 15px;color:#7892a7;font-weight:600;border-bottom:2px solid transparent}
.client-tabs a.active{color:#fff;border-bottom-color:#4e86f7}
.client-tabs a span{font-size:10px;min-width:20px;height:19px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#132438;color:#7fa1c0}
.client-overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.7fr);gap:16px}
.client-summary-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px}
.client-summary-cards a{padding:18px;border:1px solid #1d2a37;border-radius:8px;background:#09131d}
.client-summary-cards span{display:block;font-size:10px;color:#718a9e;text-transform:uppercase}
.client-summary-cards strong{display:block;font-size:24px;margin-top:5px}
.contacts-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:16px;align-items:start}
.contacts-list{display:grid}
.contact-card{border-bottom:1px solid #1d2a37;background:#0b131d}
.contact-card:last-child{border-bottom:0}
.contact-card summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:38px minmax(150px,1fr) minmax(200px,1.2fr) auto auto;gap:11px;align-items:center;padding:13px 16px}
.contact-card summary::-webkit-details-marker{display:none}
.contact-card[open] summary{background:#0e1924;border-bottom:1px solid #1d2a37}
.contact-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#11294e;color:#87a9e8;font-weight:700}
.contact-summary strong,.contact-summary span{display:block}.contact-summary strong{font-size:13px}.contact-summary span{font-size:10px;color:#6f879c;margin-top:2px}
.contact-channels{display:grid;gap:3px;font-size:10px;color:#8098ab}
.preferred-badge{font-size:9px;border-radius:999px;padding:4px 7px;background:#113126;color:#4ad5a6}
.contact-edit-label{font-size:10px;color:#7094b4}
.contact-edit-form{padding:15px 16px;background:#09131d}
.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.contact-form-grid label,.contact-add-form label{display:grid;gap:6px;font-size:10px;color:#7890a5;font-weight:600;text-transform:uppercase}
.contact-notes-field{grid-column:1/-1}
.contact-form-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}
.contact-form-actions>div{display:flex;gap:8px}
.preferred-check{display:flex!important;align-items:center;gap:7px!important;text-transform:none!important}
.preferred-check input{width:auto}
.danger-button{border-color:#5b2634!important;color:#ff7c91!important}
.contact-add-panel{position:sticky;top:12px}
.contact-add-form{padding:15px;display:grid;gap:11px}
.contact-routing-note{border-top:1px solid #1d2a37;padding:14px 15px;display:grid;gap:5px}
.contact-routing-note strong{font-size:11px}.contact-routing-note span{font-size:10px;color:#71899d;line-height:1.5}

@media(max-width:850px){
    .client-overview-grid,.contacts-layout{grid-template-columns:1fr}
    .contact-add-panel{position:static}
    .contact-card summary{grid-template-columns:38px 1fr auto}
    .contact-channels{grid-column:2/4}
    .preferred-badge{grid-column:2}
}

@media(max-width:620px){
    body.mobile-menu-open{overflow:hidden}
    .app-shell{display:block!important}
    .sidebar{
        display:flex!important;
        position:fixed!important;
        inset:0 auto 0 0;
        width:min(84vw,320px)!important;
        height:100dvh!important;
        z-index:1002;
        transform:translateX(-105%);
        transition:transform .2s ease;
        padding:16px 12px!important;
        box-shadow:12px 0 35px rgba(0,0,0,.42);
    }
    .sidebar.mobile-open{transform:translateX(0)}
    .sidebar .brand{display:flex!important}
    .sidebar .brand-wordmark b,.sidebar .brand small,.sidebar .main-nav a span:not(.nav-icon),.sidebar .user-meta,.sidebar .sidebar-user-actions{display:initial!important}
    .sidebar .main-nav{display:grid!important;overflow:visible!important}
    .sidebar .main-nav a{min-width:0!important;justify-content:flex-start!important;padding:0 8px!important}
    .sidebar .sidebar-user{display:grid!important}
    .mobile-menu-close{display:grid;position:absolute;right:10px;top:9px;width:34px;height:34px;place-items:center;border:0;background:#101d29;color:#cbd9e5;border-radius:7px;font-size:24px;z-index:1}
    .mobile-menu-backdrop{display:block;position:fixed;inset:0;z-index:1001;border:0;background:rgba(0,0,0,.62);opacity:0;pointer-events:none;transition:opacity .2s ease}
    body.mobile-menu-open .mobile-menu-backdrop{opacity:1;pointer-events:auto}
    .mobile-menu-button{display:grid;width:39px;height:39px;flex:0 0 39px;align-content:center;gap:5px;border:1px solid #263441;background:#0b151f;border-radius:7px;padding:9px}
    .mobile-menu-button span{display:block;height:2px;background:#d5e2ed;border-radius:2px}
    .topbar{display:grid!important;grid-template-columns:39px minmax(0,1fr) auto;gap:10px;align-items:center}
    .top-actions{grid-column:3}.page-heading{grid-column:2}
    .client-tabs{overflow:auto}.client-tabs a{white-space:nowrap;padding:0 11px}
    .client-overview-grid,.contacts-layout{grid-template-columns:1fr}
    .contact-card summary{grid-template-columns:36px minmax(0,1fr) auto;padding:12px}
    .contact-channels{grid-column:2/4;font-size:11px}
    .contact-form-grid{grid-template-columns:1fr}.contact-notes-field{grid-column:auto}
    .contact-form-actions{align-items:flex-start;flex-direction:column}.contact-form-actions>div{width:100%}.contact-form-actions .button{flex:1}
    .client-summary-cards{grid-template-columns:1fr 1fr}
}
/* Phase 14J — Hercules-style invoicing, infinite scroll, live client filtering */

.invoice-top-value{text-align:right;display:grid;gap:2px}
.invoice-top-value span{font-size:10px;color:#71899d}
.invoice-top-value strong{font-size:20px;color:#f5f8fb}

.invoice-tabs{height:45px;display:flex;align-items:flex-end;gap:4px;border-bottom:1px solid #1d2a37;margin-bottom:18px}
.invoice-tabs a{height:45px;display:flex;align-items:center;padding:0 15px;color:#7892a7;font-weight:600;border-bottom:2px solid transparent}
.invoice-tabs a.active{color:#5a91ff;border-bottom-color:#4e86f7}

.invoice-filter{display:flex;gap:9px;align-items:center;margin-bottom:16px}
.invoice-filter .search-field{flex:1;max-width:480px}
.invoice-card-list{display:grid;gap:12px}
.invoice-card{border:1px solid #263541;border-radius:8px;background:#0b131d;overflow:hidden}
.invoice-card-head{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 15px;border-bottom:1px solid #1d2a37}
.invoice-card-title{display:flex;gap:10px;align-items:flex-start;min-width:0}
.invoice-card-title>span{font-size:11px;color:#667f94;padding-top:2px}
.invoice-card-title div{min-width:0}
.invoice-card-title strong{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.invoice-card-title small{display:block;margin-top:2px;font-size:10px;color:#718a9f}
.invoice-card-meta{display:flex;align-items:center;gap:12px;font-size:10px;color:#71899d;white-space:nowrap}
.invoice-card-meta a{color:#8aa8c1}
.invoice-ref{background:#11243b;color:#78a7f7;padding:4px 7px;border-radius:999px}
.invoice-lines{display:grid}
.invoice-line{display:grid;grid-template-columns:minmax(260px,1fr) 105px 55px 95px 100px;gap:10px;align-items:center;padding:10px 15px;border-bottom:1px solid #172430;font-size:11px}
.invoice-line-head{padding-top:9px;padding-bottom:7px;color:#6f879b;font-size:9px;text-transform:uppercase;background:#09121b}
.invoice-description strong{display:block;font-size:12px}
.invoice-description small{display:block;margin-top:3px;color:#71899d;line-height:1.4}
.invoice-card-foot{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:11px 15px;background:#09121b}
.invoice-card-total{font-size:10px;color:#738a9d}
.invoice-card-total strong{font-size:14px;color:#fff}
.invoice-invoiced-meta{display:flex;align-items:center;gap:10px;font-size:10px;color:#70889d}

.invoice-modal{display:none;position:fixed;inset:0;z-index:1200;align-items:center;justify-content:center;padding:20px}
.invoice-modal.open{display:flex}
.invoice-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.72)}
.invoice-modal-dialog{position:relative;width:min(460px,100%);background:#0b131d;border:1px solid #2a3948;border-radius:11px;box-shadow:0 22px 60px rgba(0,0,0,.45);overflow:hidden}
.invoice-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:17px 18px;border-bottom:1px solid #1d2a37}
.invoice-modal-head h2{font-size:16px;margin:0}
.invoice-modal-head p{font-size:11px;color:#71899d;margin:4px 0 0}
.invoice-modal-x{border:0;background:transparent;color:#8da1b3;font-size:25px;cursor:pointer}
.invoice-modal-ticket{padding:13px 18px;background:#09121b;display:grid;grid-template-columns:auto 1fr;gap:3px 9px}
.invoice-modal-ticket strong{font-size:11px;color:#6f8ba2}
.invoice-modal-ticket span{font-size:12px;font-weight:600}
.invoice-modal-ticket small{grid-column:2;font-size:10px;color:#71899d}
#invoice-modal-form{padding:18px;display:grid;gap:16px}
#invoice-modal-form label{display:grid;gap:7px;font-size:10px;color:#7890a5;text-transform:uppercase;font-weight:600}
#invoice-modal-form input{height:42px;font-size:14px}
.invoice-modal-actions{display:flex;justify-content:flex-end;gap:8px}
body.modal-open{overflow:hidden}

.infinite-sentinel{min-height:42px;display:grid;place-items:center;color:#6f879d;font-size:11px;padding:10px}
.client-live-filter{position:relative}
.client-live-filter input{max-width:520px}
.live-search-status{font-size:10px;color:#6f879d;margin-left:2px}

@media(max-width:850px){
    .invoice-line{grid-template-columns:minmax(200px,1fr) 90px 45px 85px}
    .invoice-line>*:nth-child(2),.invoice-line-head>*:nth-child(2){display:none}
    .invoice-card-head{align-items:flex-start}
    .invoice-card-meta{align-items:flex-end;flex-direction:column;gap:4px}
}

@media(max-width:620px){
    .invoice-filter{display:grid;grid-template-columns:1fr auto}
    .invoice-filter .search-field{grid-column:1/-1;max-width:none}
    .invoice-card-head{display:block}
    .invoice-card-meta{margin-top:8px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap}
    .invoice-line-head{display:none}
    .invoice-line{grid-template-columns:1fr auto;gap:5px 10px;padding:12px}
    .invoice-line>*:nth-child(2),.invoice-line>*:nth-child(3){display:none}
    .invoice-line>*:nth-child(4){font-size:10px;color:#71899d}
    .invoice-line>*:nth-child(5){text-align:right}
    .invoice-description{grid-column:1/-1}
    .invoice-card-foot{justify-content:space-between}
    .invoice-top-value strong{font-size:17px}
}
/* Phase 14K — Hercules Quote Requests layout, Odin visual language */
.quote-toolbar{display:grid;grid-template-columns:auto minmax(300px,1fr);gap:10px;margin-bottom:18px}
.quote-tabs{display:flex;border:1px solid #263441;border-radius:7px;overflow:hidden;background:#09121b}
.quote-tabs a{min-width:110px;height:37px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;color:#7890a5;font-weight:600;border-right:1px solid #263441}
.quote-tabs a:last-child{border-right:0}
.quote-tabs a.active{background:#0f1b28;color:#fff}
.quote-tabs a span{min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#122741;color:#5f86b5;font-size:10px;display:grid;place-items:center}
.quote-search{height:37px;border:1px solid #263441;border-radius:7px;background:#09111a;display:flex;align-items:center;padding-left:10px;color:#6d8498}
.quote-search input{height:35px;border:0!important;background:transparent!important;box-shadow:none!important}
.quote-request-list{display:grid;gap:9px}
.quote-request-card{min-height:118px;display:flex;justify-content:space-between;gap:22px;align-items:flex-start;padding:20px 18px;border:1px solid #263541;border-radius:9px;background:#0b131d}
.quote-request-card:hover{border-color:#36516a;background:#0d1823}
.quote-card-main{min-width:0}
.quote-card-meta{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.quote-ref{font-size:10px;color:#67839a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.quote-status{font-size:9px;font-weight:700;border-radius:999px;padding:3px 7px;background:#152331;color:#93a9bb}
.quote-status-pending{background:#3a2c0d;color:#f7c144}
.quote-status-in-progress{background:#112c54;color:#5794ff}
.quote-status-quoted,.quote-status-sent-to-client{background:#192d47;color:#7db3ff}
.quote-status-accepted{background:#0c3628;color:#4bd3a3}
.quote-status-declined{background:#38141d;color:#ff738e}
.quote-status-completed{background:#192431;color:#c1d1de}
.quote-card-main>strong{display:block;font-size:14px;line-height:1.35;color:#f4f8fb}
.quote-client{display:block;margin-top:4px;font-size:12px;color:#6f8aa1}
.quote-card-side{flex:0 0 225px;display:grid;gap:4px;text-align:right;color:#6f879c;font-size:10px}
.quote-modal{display:none;position:fixed;inset:0;z-index:1250;align-items:center;justify-content:center;padding:18px}
.quote-modal.open{display:flex}
.quote-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.72)}
.quote-modal-dialog{position:relative;width:min(490px,100%);max-height:calc(100dvh - 36px);overflow:auto;background:#071019;border:1px solid #2a3948;border-radius:10px;box-shadow:0 25px 70px rgba(0,0,0,.5)}
.quote-modal-head{display:flex;align-items:center;justify-content:space-between;padding:17px 20px 11px}
.quote-modal-head h2{font-size:16px;margin:0}
.quote-modal-x{border:0;background:transparent;color:#94a7b8;font-size:24px;cursor:pointer}
#new-quote-form{display:grid;gap:13px;padding:0 20px 18px}
#new-quote-form>label,.quote-items-heading{font-size:11px;font-weight:600;color:#d5e0e8}
#new-quote-form>label{display:grid;gap:6px}
#new-quote-form em,.quote-items-heading em{color:#ef637b;font-style:normal}
#new-quote-form input,#new-quote-form select,#new-quote-form textarea{font-size:13px}
.quote-items-section{display:grid;gap:8px}
#quote-items-list{display:grid;gap:8px;padding:10px;border:1px solid #263441;border-radius:7px;background:#0a131d}
.quote-item-row{display:grid;grid-template-columns:minmax(0,1fr) 88px 30px;gap:7px}
.quote-item-notes{grid-column:1/3}
.quote-remove-item{grid-column:3;grid-row:1/3;border:1px solid #2a3948;background:#101a24;color:#8ca0b2;border-radius:6px;cursor:pointer}
.quote-add-item{justify-self:start;padding:7px 10px}
.quote-attachments{display:grid;gap:8px}
.quote-file-button input{display:none}
.quote-file-button span{display:inline-flex;width:max-content;align-items:center;border:1px solid #263441;background:#101c28;color:#cbd8e2;border-radius:6px;padding:8px 10px;font-size:11px;cursor:pointer}
.quote-file-list{display:flex;gap:6px;flex-wrap:wrap}
.quote-file-list span{font-size:9px;color:#8ca4b8;background:#102132;border:1px solid #20364a;border-radius:999px;padding:4px 7px}
.quote-attachments small{font-size:10px;color:#6e8498}
.quote-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:5px}
body.modal-open{overflow:hidden}
@media(max-width:700px){
  .quote-toolbar{grid-template-columns:1fr}.quote-tabs a{flex:1;min-width:0}.quote-request-card{min-height:0;padding:15px;display:block}.quote-card-side{margin-top:10px;display:flex;justify-content:space-between;text-align:left;flex:0 0 auto}.quote-modal{padding:0;align-items:flex-end}.quote-modal-dialog{width:100%;max-height:92dvh;border-radius:14px 14px 0 0}.quote-item-row{grid-template-columns:minmax(0,1fr) 80px 30px}
}
/* Phase 14L — Quote detail workspace + agent workflow notifications */
.quote-detail-titlebar{display:flex;gap:14px;align-items:flex-start;margin:-52px 0 18px;max-width:760px}
.quote-back{font-size:24px;color:#7e95a8;padding-top:2px}
.quote-detail-reference{display:flex;align-items:center;gap:8px;color:#71899d;font-size:11px}
.quote-detail-titlebar h1{margin:4px 0 4px;font-size:20px}
.quote-detail-subline{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#738da3;font-size:12px}
.requested-by-pill{background:#102444;color:#6f9dff;border-radius:999px;padding:4px 8px;font-size:10px}
.quote-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:16px;align-items:start}
.quote-detail-main,.quote-detail-rail{display:grid;gap:16px}
.quote-detail-rail{position:sticky;top:12px}
.quote-detail-card{background:#0b131d;border:1px solid #263541;border-radius:9px;overflow:hidden}
.quote-section-head{min-height:58px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.quote-section-head h2{margin:0;font-size:14px}
.quote-section-head p{margin:5px 0 0;color:#71899d;font-size:10px;line-height:1.4}
.quote-items-table{padding:4px 16px 14px}
.quote-items-header,.quote-detail-item{display:grid;grid-template-columns:minmax(0,1fr) 70px 110px;gap:12px;align-items:center}
.quote-items-header{padding:10px 3px;color:#70899e;font-size:9px;text-transform:uppercase;border-bottom:1px solid #263541}
.quote-detail-item{padding:12px 3px;border-bottom:1px solid #172430}
.quote-detail-item:last-child{border-bottom:0}
.quote-detail-item strong{font-size:12px}
.quote-detail-item small{display:block;margin-top:4px;color:#71899d;font-size:10px}
.clarification-card{padding-bottom:14px}
.clarification-head{border-bottom:0}
.clarification-list{display:grid;gap:11px;padding:8px 16px 12px}
.clarification-thread{border:1px solid #4e3821;border-radius:8px;overflow:hidden}
.clarification-question{padding:12px;background:#261b17}
.clarification-answer{padding:12px;background:#08271f;border-top:1px solid #145143}
.clarification-meta{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px;font-size:10px}
.clarification-question .clarification-meta strong{color:#f3d952}.clarification-answer .clarification-meta strong{color:#52d8aa}
.clarification-meta span{color:#73899c}
.clarification-reply-form{padding:10px;background:#09131d;display:grid;gap:8px}.clarification-reply-form .button{justify-self:end}
.clarification-new{margin:0 16px;border-top:1px solid #263541;padding-top:12px}
.clarification-new textarea{min-height:70px}
.clarification-new>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}
.clarification-new>div span{font-size:9px;color:#6f8699}
.quote-detail-fields{padding:0 15px 13px;display:grid;gap:11px}
.quote-detail-fields>div{display:grid;gap:3px}.quote-detail-fields span{font-size:9px;color:#728a9f}.quote-detail-fields strong{font-size:11px}.quote-detail-fields small{font-size:10px;color:#6e879b}
.quote-notes-view span{display:flex;justify-content:space-between;align-items:center}.quote-notes-view button{border:0;background:transparent;color:#6d9eff;font-size:10px;cursor:pointer}
.quote-assign-form{padding:0 15px 12px}.quote-assign-form label{display:grid;gap:5px;font-size:9px;color:#728a9f}
.quote-notes-form{display:none;padding:0 15px 14px}.quote-notes-form.open{display:grid;gap:8px}.quote-notes-form>div{display:flex;justify-content:flex-end;gap:7px}
.requester-profile{padding:4px 15px 12px;display:flex;gap:10px;align-items:center}
.requester-avatar{width:34px;height:34px;border-radius:50%;background:#123466;color:#86abff;display:grid;place-items:center;font-weight:700}
.requester-profile strong,.requester-profile a{display:block}.requester-profile strong{font-size:12px}.requester-profile a{font-size:10px;color:#6d9eff;margin-top:2px}
.requester-submitted{margin:0 15px 10px;padding-top:9px;border-top:1px solid #263541;display:flex;justify-content:space-between;font-size:10px}.requester-submitted span{color:#71899d}
.requester-email{margin:0 15px 15px;width:calc(100% - 30px)}
.quote-attachment-list{padding:0 16px 15px;display:grid;gap:7px}.quote-attachment-list a,.quote-attachment-list span{font-size:11px;color:#86a4bc}
.add-quote-item-form{padding:0 18px 18px;display:grid;gap:12px}.add-quote-item-form label{display:grid;gap:6px;font-size:10px;color:#7a92a6;font-weight:600}.small-modal{width:min(430px,100%)}
.agent-notification-settings{border:1px solid #263541;border-radius:9px;background:#09131d;padding:15px;margin-top:4px}
.agent-notification-heading{display:grid;gap:4px;margin-bottom:13px}.agent-notification-heading strong{font-size:14px}.agent-notification-heading span,.agent-notification-help{font-size:10px;color:#71899d}
.agent-notification-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.notification-option{display:flex!important;gap:10px!important;align-items:flex-start;border:1px solid #263541;border-radius:8px;padding:11px;background:#0b151f;text-transform:none!important}
.notification-option input{width:auto;margin-top:2px}.notification-option span{display:grid;gap:3px}.notification-option strong{font-size:12px}.notification-option small{font-size:10px;color:#71899d}
.agent-delivery-heading{font-size:10px;text-transform:uppercase;color:#71899d;margin:14px 0 8px}
.agent-delivery-grid{display:flex;flex-wrap:wrap;gap:14px}.agent-delivery-grid .checkbox{display:flex;align-items:center;gap:6px}
.agent-notification-help{margin:10px 0 0;line-height:1.5}
@media(max-width:900px){.quote-detail-layout{grid-template-columns:1fr}.quote-detail-rail{position:static;grid-template-columns:1fr 1fr}.quote-detail-titlebar{margin:0 0 16px}.agent-notification-grid{grid-template-columns:1fr}}
@media(max-width:620px){.quote-detail-rail{grid-template-columns:1fr}.quote-detail-item,.quote-items-header{grid-template-columns:minmax(0,1fr) 48px 88px}.clarification-new>div{align-items:flex-start;flex-direction:column}.quote-detail-titlebar h1{font-size:18px}}
/* Phase 15B — make inbound WhatsApp obvious in ticket Activity */
.message-role.whatsapp-role{
    background:#12352b;
    border:1px solid #1f5a48;
    color:#66ddb2;
}
/* Phase 15C — unified newest-first communication + reply alert */
.ticket-new-reply-banner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:0 0 16px;
    padding:12px 14px;
    border:1px solid #2a5b4d;
    border-radius:9px;
    background:#0b241e;
    box-shadow:0 8px 24px rgba(0,0,0,.18);
}
.ticket-new-reply-main{display:flex;align-items:center;gap:10px}
.ticket-new-reply-icon{color:#54d8a8;font-size:16px;line-height:1}
.ticket-new-reply-main>div{display:grid;gap:2px}
.ticket-new-reply-main strong{font-size:13px;color:#eef8f4}
.ticket-new-reply-main span{font-size:10px;color:#8fb5a7}
.ticket-new-reply-dismiss{
    border:1px solid #315a4e;
    background:#102f27;
    color:#9fd7c5;
    border-radius:6px;
    padding:7px 10px;
    cursor:pointer;
    font-size:10px;
}
.ticket-new-reply-dismiss:hover{background:#163b31}
.ticket-activity-list,
.activity-list,
.message-list{
    display:flex;
    flex-direction:column;
}
@media(max-width:650px){
    .ticket-new-reply-banner{align-items:flex-start;flex-direction:column}
}
/* Phase 15D — main ticket-list NEW REPLY alert */
.ticket-row.has-new-reply{
    border-color:#8a3140 !important;
    box-shadow:0 0 0 1px rgba(220,62,82,.18), 0 0 20px rgba(220,62,82,.08);
}

.new-reply-pill{
    background:#7f1d2d !important;
    border:1px solid #ff5f72 !important;
    color:#fff !important;
    font-weight:800 !important;
    letter-spacing:.045em;
    animation:odinNewReplyFlash 1s infinite;
}

@keyframes odinNewReplyFlash{
    0%,100%{
        opacity:1;
        box-shadow:0 0 0 0 rgba(255,76,101,.75);
        transform:scale(1);
    }
    50%{
        opacity:.38;
        box-shadow:0 0 0 5px rgba(255,76,101,0);
        transform:scale(1.04);
    }
}

@media (prefers-reduced-motion: reduce){
    .new-reply-pill{animation:none}
}
/* Phase 15E — assignment controls */
.rail-assignment{display:grid!important;gap:5px!important}
.ticket-assignment-form select{
    width:100%;
    min-height:34px;
    background:#0c1620;
    border:1px solid #2a3a49;
    color:#dce7ee;
    border-radius:6px;
    padding:5px 8px;
    font-size:11px;
}
.assign-me-form{margin-top:1px}
.rail-assign-me{
    border:0;
    background:transparent;
    color:#6fa4ff;
    padding:0;
    font-size:10px;
    cursor:pointer;
    text-align:left;
}
.rail-assign-me:hover{text-decoration:underline}
.whatsapp-media{margin-top:10px}.whatsapp-media img{display:block;max-width:min(520px,100%);max-height:520px;width:auto;height:auto;border-radius:8px;border:1px solid #2b3d4b;object-fit:contain;background:#071019}.whatsapp-media video{max-width:min(560px,100%);border-radius:8px}.whatsapp-media audio{width:min(420px,100%)}.whatsapp-file{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #2c4050;border-radius:7px;background:#0d1923}
.billing-add-form{grid-template-columns:minmax(220px,1.35fr) 74px 150px minmax(220px,1.25fr) minmax(150px,.85fr) auto!important;align-items:end}.billing-qty-field input{width:70px!important;max-width:70px!important}.billing-price-field.is-hidden,.billing-serial-field.is-hidden{display:none!important}.money-input{display:flex;align-items:center;border:1px solid #2a3a49;border-radius:6px;background:#0c1620;overflow:hidden}.money-input span{padding:0 8px;color:#7590a4;font-size:11px}.money-input input{border:0!important;border-left:1px solid #243542!important;border-radius:0!important;min-width:0}
@media(max-width:1050px){.billing-add-form{grid-template-columns:1fr 74px 150px!important}}@media(max-width:650px){.billing-add-form{grid-template-columns:1fr 74px!important}.billing-item-field,.billing-description-field,.billing-price-field,.billing-serial-field,.billing-add-form .button{grid-column:1/-1}}
