:root {
  --sc-black: #1d1d1e;
  --sc-primary: #f6b331;
  --sc-light-gray: #b0b0b0;
  --sc-dark-gray: #6f6f6f;
  --sc-highlight: #f7c32f;
  --color-sidebar: var(--sc-black);
  --color-sidebar-deep: #292929;
  --color-accent: var(--sc-primary);
  --color-highlight: var(--sc-highlight);
  --color-workspace: #f5f5f3;
  --color-surface: #ffffff;
  --color-text: var(--sc-black);
  --color-muted: var(--sc-dark-gray);
  --color-muted-light: var(--sc-light-gray);
  --color-border: #e5e2da;
  --color-success: #24764a;
  --color-danger: #a82d25;
  --color-accent-soft: rgba(246, 179, 49, 0.16);
  --color-accent-focus: rgba(246, 179, 49, 0.25);
  --color-sidebar-line: rgba(255, 255, 255, 0.12);
  --color-sidebar-text: rgba(255, 255, 255, 0.72);
  --shadow-panel: 0 24px 70px rgba(29, 29, 30, 0.14);
  --shadow-card: 0 8px 25px rgba(29, 29, 30, 0.06);
}

* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--color-text); background: var(--color-workspace); }
button, input { font: inherit; }
textarea, select { font: inherit; }
.hidden { display: none !important; }

.login-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(420px, 48%) 1fr; background: var(--color-surface); }
.login-panel { width: min(430px, 78%); margin: auto; }
.brand-mark { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 16px; background: linear-gradient(145deg, var(--color-accent), var(--color-highlight)); color: var(--color-sidebar); font-weight: 900; letter-spacing: -0.04em; box-shadow: 0 12px 30px var(--color-accent-focus); }
.eyebrow { margin: 34px 0 8px; color: var(--color-accent); font-size: 0.72rem; font-weight: 850; letter-spacing: 0.18em; }
.login-panel h1 { margin: 0; color: var(--color-text); font-size: 2.8rem; letter-spacing: -0.055em; }
.subtitle { margin: 7px 0 38px; color: var(--color-muted); }
.login-panel label { display: block; margin: 18px 0 7px; font-size: 0.82rem; font-weight: 750; }
.login-panel input { width: 100%; padding: 13px 14px; border: 1px solid var(--color-border); border-radius: 10px; outline: none; transition: 0.2s; }
.login-panel input:focus { border-color: var(--color-accent); box-shadow: 0 0 0 4px var(--color-accent-focus); }
.login-panel button { width: 100%; margin-top: 16px; padding: 14px; border: 0; border-radius: 10px; background: var(--color-accent); color: var(--color-sidebar); font-weight: 850; cursor: pointer; transition: background 0.2s, transform 0.2s; }
.login-panel button:hover { background: var(--color-highlight); transform: translateY(-1px); }
.error { min-height: 20px; margin: 10px 0 -4px; color: var(--color-danger); font-size: 0.82rem; }
.secure-note { margin-top: 22px; color: var(--color-muted-light); font-size: 0.75rem; text-align: center; }

.login-art { position: relative; overflow: hidden; margin: 18px; border-radius: 24px; background: linear-gradient(145deg, var(--color-sidebar), var(--color-sidebar-deep)); box-shadow: var(--shadow-panel); }
.art-grid { position: absolute; inset: 0; background-image: linear-gradient(var(--color-sidebar-line) 1px, transparent 1px), linear-gradient(90deg, var(--color-sidebar-line) 1px, transparent 1px); background-size: 42px 42px; transform: perspective(700px) rotateX(58deg) scale(1.5); transform-origin: bottom; }
.login-art::after { position: absolute; top: 12%; right: 10%; width: 330px; height: 330px; border-radius: 50%; background: radial-gradient(circle, var(--color-accent-focus), transparent 68%); content: ""; }
.art-copy { position: absolute; right: 9%; bottom: 10%; left: 9%; display: flex; gap: 26px; align-items: flex-start; color: var(--color-surface); }
.art-copy span { padding-top: 8px; border-top: 2px solid var(--color-accent); color: var(--color-accent); font-size: 0.75rem; }
.art-copy strong { max-width: 520px; font-size: 2rem; line-height: 1.16; letter-spacing: -0.035em; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 258px 1fr; }
.sidebar { position: sticky; top: 0; height: 100vh; min-height: 100vh; display: flex; flex-direction: column; overflow-y: auto; padding: 28px 20px; background: var(--color-sidebar); color: var(--color-surface); }
.sidebar-brand { display: flex; gap: 12px; align-items: center; padding: 0 6px 28px; border-bottom: 1px solid var(--color-sidebar-line); }
.brand-mark.small { width: 42px; height: 42px; border-radius: 12px; box-shadow: none; font-size: 0.84rem; }
.sidebar-brand strong { display: block; font-size: 1.05rem; }
.sidebar-brand span { display: block; margin-top: 3px; color: var(--color-muted-light); font-size: 0.66rem; }
.sidebar nav { margin-top: 28px; }
.sidebar nav a { display: flex; gap: 12px; align-items: center; padding: 12px 14px; border-radius: 9px; color: var(--color-sidebar-text); font-size: 0.9rem; text-decoration: none; }
.sidebar nav a.active { background: var(--color-accent-soft); color: var(--color-accent); }
.sidebar .nav-group { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--color-sidebar-line); }
.nav-group-title { display: flex; gap: 10px; align-items: flex-start; padding: 8px 10px; color: #fff; font-size: .69rem; font-weight: 850; letter-spacing: .04em; line-height: 1.35; text-transform: uppercase; }
.nav-group-title span { flex: 0 0 auto; }
.nav-cluster { margin-top: 10px; }
.nav-cluster-title { margin: 0 10px 3px 32px; color: var(--color-muted-light); font-size: .62rem; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.sidebar nav .nav-group a { margin-left: 22px; padding: 7px 10px; font-size: .76rem; }
.sidebar-user { margin-top: auto; padding: 20px 8px 0; border-top: 1px solid var(--color-sidebar-line); }
.sidebar-user span, .sidebar-user small { display: block; overflow: hidden; text-overflow: ellipsis; }
.sidebar-user span { font-size: 0.78rem; }
.sidebar-user small { margin-top: 4px; color: var(--color-muted-light); font-size: 0.64rem; text-transform: uppercase; }
.ghost { margin-top: 12px; padding: 7px 12px; border: 1px solid var(--color-accent); border-radius: 7px; background: transparent; color: var(--color-accent); cursor: pointer; }

.content { width: 100%; max-width: 1500px; min-height: 100vh; display: flex; flex-direction: column; align-self: stretch; margin: auto; padding: 42px 48px; background: var(--color-workspace); }
.content header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 30px; }
.content header .eyebrow { margin: 0 0 5px; }
.content h1 { margin: 0; font-size: 2rem; letter-spacing: -0.04em; }
.live { padding: 8px 13px; border-radius: 999px; background: var(--color-accent-soft); color: var(--color-text); font-size: 0.78rem; font-weight: 750; }
.live i { width: 7px; height: 7px; display: inline-block; margin-right: 7px; border-radius: 50%; background: var(--color-success); }
.hero { display: flex; align-items: center; justify-content: space-between; padding: 34px 38px; border-left: 5px solid var(--color-accent); border-radius: 18px; background: var(--color-sidebar); color: var(--color-surface); box-shadow: var(--shadow-panel); }
.hero .eyebrow { margin: 0 0 8px; }
.eyebrow.light { color: var(--color-accent); }
.hero h2 { margin: 0 0 10px; font-size: 2rem; letter-spacing: -0.04em; }
.hero p { max-width: 650px; margin: 0; color: var(--color-muted-light); }
.hero-badge { padding: 13px 20px; border: 1px solid var(--color-accent); border-radius: 14px; color: var(--color-accent); font-size: 0.66rem; letter-spacing: 0.15em; text-align: center; }
.hero-badge strong { color: var(--color-surface); font-size: 1.8rem; }

.status-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-top: 24px; }
.status-grid article { padding: 22px; border: 1px solid var(--color-border); border-radius: 14px; background: var(--color-surface); box-shadow: var(--shadow-card); }
.status-grid span, .status-grid small { display: block; }
.status-grid span { color: var(--color-muted); font-size: 0.72rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.status-grid strong { display: block; margin: 18px 0 5px; color: var(--color-text); font-size: 1.35rem; word-break: break-word; }
.status-grid small { color: var(--color-muted-light); font-size: 0.72rem; }
.content footer { margin-top: auto; padding-top: 38px; color: var(--color-muted-light); font-size: 0.72rem; }

@media (max-width: 900px) {
  .login-shell { grid-template-columns: 1fr; }
  .login-art { display: none; }
  .login-panel { width: min(430px, 86%); padding: 50px 0; }
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { position: static; height: auto; min-height: auto; overflow: visible; padding: 18px; }
  .sidebar nav { margin: 12px 0; }
  .sidebar .nav-group { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px 14px; }
  .nav-group-title { grid-column: 1 / -1; }
  .nav-cluster { min-width: 0; }
  .nav-cluster-title { margin-left: 10px; }
  .sidebar nav .nav-group a { margin-left: 0; }
  .sidebar-user { position: absolute; top: 12px; right: 18px; padding: 0; border: 0; }
  .sidebar-user span, .sidebar-user small { display: none; }
  .content { min-height: calc(100vh - 124px); padding: 28px 18px; }
  .status-grid { grid-template-columns: repeat(2, 1fr); }
}

/* Customer support workspace */
.content:has(#support-view:not(.hidden)) { height: 100dvh; min-height: 0; overflow: hidden; padding-top: 20px; padding-bottom: 24px; }
#support-view:not(.hidden) { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; }
#support-view:not(.hidden) + footer,
.content:has(#support-view:not(.hidden)) > footer { display: none; }
.support-page-header { flex: 0 0 auto; min-height: 0; margin-bottom: 10px !important; }
.support-page-header .eyebrow { margin-bottom: 2px; line-height: 1.1; }
.support-page-header h1 { font-size: 1.8rem; line-height: 1.15; }
.support-process-wrap { display: flex; align-items: center; gap: 12px; }
.support-process-status { color: var(--color-muted); font-size: .78rem; }
#support-process-button { min-height: 36px; padding: 0 15px; border: 0; border-radius: 9px; background: var(--color-sidebar); color: #fff; font-weight: 800; cursor: pointer; }
#support-process-button:disabled { opacity: .6; cursor: wait; }
.support-workspace { flex: 1 1 auto; min-height: 0; height: auto; display: grid; grid-template-columns: minmax(250px, 300px) minmax(540px, 1fr) minmax(260px, 315px); overflow: hidden; border: 1px solid var(--color-border); border-radius: 16px; background: var(--color-surface); box-shadow: var(--shadow-card); }
.support-inbox, .support-conversation, .support-context { min-width: 0; min-height: 0; }
.support-inbox { display: flex; flex-direction: column; border-right: 1px solid var(--color-border); background: #fafaf8; }
.support-inbox-head { padding: 18px; border-bottom: 1px solid var(--color-border); }
.support-inbox-head > div { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.support-inbox-head strong { font-size: 1rem; }
.support-inbox-head span { min-width: 30px; padding: 4px 8px; border-radius: 999px; background: var(--color-accent-soft); font-size: .72rem; text-align: center; }
.support-inbox-head input { width: 100%; min-height: 39px; padding: 0 12px; border: 1px solid var(--color-border); border-radius: 9px; background: #fff; outline: none; }
.support-inbox-head input:focus { border-color: var(--color-accent); box-shadow: 0 0 0 3px var(--color-accent-focus); }
.support-filters { display: flex; flex-wrap: wrap; gap: 6px; padding: 11px 14px; border-bottom: 1px solid var(--color-border); }
.support-filters button, .support-filters select { min-height: 30px; padding: 0 9px; border: 1px solid var(--color-border); border-radius: 999px; background: #fff; color: var(--color-muted); font-size: .7rem; cursor: pointer; }
.support-filters button.active { border-color: var(--color-sidebar); background: var(--color-sidebar); color: #fff; }
.support-list { flex: 1; overflow-y: auto; }
.support-ticket { width: 100%; padding: 16px 17px; border: 0; border-bottom: 1px solid var(--color-border); background: transparent; color: inherit; text-align: left; cursor: pointer; }
.support-ticket:hover { background: #fff; }
.support-ticket.active { background: #fff; box-shadow: inset 4px 0 var(--color-accent); }
.support-ticket-top, .support-ticket-meta { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.support-ticket-channel { font-size: .67rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.support-ticket-channel.amazon { color: #9a5c00; }
.support-ticket-channel.ebay { color: #315a9e; }
.support-ticket time { color: var(--color-muted-light); font-size: .67rem; white-space: nowrap; }
.support-ticket h3 { overflow: hidden; margin: 8px 0 4px; font-size: .86rem; text-overflow: ellipsis; white-space: nowrap; }
.support-ticket p { display: -webkit-box; overflow: hidden; margin: 0; color: var(--color-muted); font-size: .76rem; line-height: 1.38; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.support-ticket-meta { margin-top: 11px; justify-content: flex-start; flex-wrap: wrap; }
.support-tag { padding: 4px 7px; border-radius: 999px; background: #efeee9; color: #595850; font-size: .63rem; font-weight: 750; }
.support-tag.review { background: #fff1cf; color: #77510b; }
.support-tag.high { background: #fbe4e1; color: #972f26; }
.support-tag.medium { background: #fff1cf; color: #77510b; }
.support-tag.low { background: #e9f3ed; color: #236544; }
.support-conversation { display: flex; flex-direction: column; overflow: hidden; background: #f7f7f5; }
#support-conversation-content { flex: 1 1 auto; height: auto; display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
.support-conversation-head { flex: 0 0 auto; display: flex; align-items: flex-start; justify-content: space-between; padding: 14px 18px; border-bottom: 1px solid var(--color-border); background: #fff; }
.support-conversation-head h2 { margin: 5px 0 3px; font-size: 1.05rem; }
.support-conversation-head p { margin: 0; color: var(--color-muted); font-size: .72rem; }
.support-channel { color: var(--color-accent); font-size: .66rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.support-context-toggle { display: none; padding: 7px 10px; border: 1px solid var(--color-border); border-radius: 8px; background: #fff; cursor: pointer; }
.support-messages { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 14px 18px; }
.support-message { max-width: 78%; margin-bottom: 16px; }
.support-message.inbound { margin-right: auto; }
.support-message.outbound { margin-left: auto; }
.support-message.system { max-width: 88%; margin: 12px auto; }
.support-message-label { display: flex; gap: 8px; align-items: center; margin: 0 5px 5px; color: var(--color-muted); font-size: .65rem; font-weight: 750; text-transform: uppercase; }
.support-message.outbound .support-message-label { justify-content: flex-end; }
.support-message-bubble { padding: 12px 14px; border: 1px solid var(--color-border); border-radius: 4px 14px 14px 14px; background: #fff; font-size: .82rem; line-height: 1.52; white-space: pre-wrap; overflow-wrap: anywhere; }
.support-message.outbound .support-message-bubble { border-color: #edcf8d; border-radius: 14px 4px 14px 14px; background: #fff8e8; }
.support-message.system .support-message-bubble { border-style: dashed; border-radius: 10px; background: #f0f0ed; color: var(--color-muted); font-size: .76rem; }
.support-message.automatic { max-width: 72%; margin: 8px auto; }
.support-message.automatic .support-message-label { justify-content: center; font-size: .59rem; font-weight: 700; }
.support-message.automatic .support-message-bubble { padding: 8px 10px; border-color: #deded9; border-style: dashed; border-radius: 8px; background: #f2f2ef; color: var(--color-muted); font-size: .72rem; line-height: 1.4; }
.message-translation { margin-top: 8px; padding: 9px 11px; border-left: 3px solid var(--color-accent); border-radius: 5px; background: #faf8f1; color: #555; font-size: .75rem; }
.message-translation strong { display: block; margin-bottom: 4px; font-size: .64rem; text-transform: uppercase; }
.message-attachments { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }
.message-attachment { display: inline-flex; gap: 6px; align-items: center; padding: 7px 9px; border: 1px solid var(--color-border); border-radius: 7px; background: #fff; color: var(--color-text); font-size: .7rem; text-decoration: none; }
.message-attachment.unavailable { color: var(--color-muted-light); cursor: default; }
.message-media-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; margin-top: 10px; }
.message-media-grid.single { grid-template-columns: minmax(220px, 300px); }
.message-media-button { display: block; min-width: 0; padding: 0; overflow: hidden; border: 1px solid var(--color-border); border-radius: 10px; background: #f3f3f0; cursor: pointer; }
.message-media-button:hover { border-color: var(--color-accent); box-shadow: 0 0 0 3px var(--color-accent-focus); }
.message-media-button img { display: block; width: 100%; height: 180px; object-fit: cover; }
.message-media-grid.single .message-media-button img { height: clamp(220px, 28vh, 300px); }
.support-lightbox { position: fixed; z-index: 1000; inset: 0; display: grid; grid-template-columns: 72px minmax(0, 1fr) 72px; align-items: center; padding: 30px; background: rgba(15, 15, 16, .9); }
.support-lightbox.hidden { display: none; }
.support-lightbox figure { width: 100%; min-width: 0; max-width: calc(100vw - 190px); max-height: calc(100vh - 105px); display: flex; align-items: center; flex-direction: column; justify-content: center; margin: auto; }
.support-lightbox-viewport { width: 100%; height: calc(100vh - 150px); min-height: 240px; display: grid; place-items: center; overflow: hidden; overscroll-behavior: contain; touch-action: none; }
.support-lightbox img { display: block; max-width: 100%; max-height: 100%; border-radius: 8px; object-fit: contain; cursor: default; user-select: none; box-shadow: 0 20px 70px rgba(0,0,0,.45); transform-origin: center; transition: transform .08s ease-out; }
.support-lightbox img.zoomed { cursor: grab; }
.support-lightbox img.dragging { cursor: grabbing; transition: none; }
.support-lightbox figcaption { width: 100%; display: flex; justify-content: center; gap: 12px; margin-top: 9px; color: #fff; font-size: .78rem; text-align: center; }
.support-lightbox figcaption span:last-child { color: #c9c9c4; font-variant-numeric: tabular-nums; }
.support-lightbox-close, .support-lightbox-nav { border: 0; background: rgba(255,255,255,.12); color: #fff; cursor: pointer; }
.support-lightbox-close { position: absolute; top: 18px; right: 20px; width: 42px; height: 42px; border-radius: 50%; font-size: 1.8rem; }
.support-lightbox-nav { width: 48px; height: 62px; justify-self: center; border-radius: 10px; font-size: 2.3rem; }
.support-lightbox-nav:disabled { visibility: hidden; }
.support-lightbox-toolbar { position: fixed; z-index: 2; left: 50%; bottom: 17px; display: flex; align-items: center; gap: 5px; padding: 6px; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; background: rgba(20,20,20,.82); transform: translateX(-50%); backdrop-filter: blur(8px); }
.support-lightbox-toolbar button, .support-lightbox-toolbar a { min-width: 36px; height: 32px; display: inline-grid; place-items: center; padding: 0 9px; border: 0; border-radius: 7px; background: rgba(255,255,255,.1); color: #fff; font: inherit; font-size: .74rem; text-decoration: none; cursor: pointer; }
.support-lightbox-toolbar button:hover, .support-lightbox-toolbar a:hover { background: rgba(255,255,255,.2); }
.support-lightbox-toolbar output { min-width: 48px; color: #fff; font-size: .72rem; text-align: center; font-variant-numeric: tabular-nums; }
body.modal-open { overflow: hidden; }
.suggested-reply { flex: 0 0 auto; overflow-y: visible; padding: 8px 16px 9px; border-top: 1px solid var(--color-border); background: #fff; box-shadow: 0 -10px 30px rgba(29,29,30,.04); }
.suggested-reply-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.suggested-reply-head span { color: var(--color-muted); font-size: .68rem; font-weight: 850; letter-spacing: .08em; }
.suggested-reply-head small { margin-left: 9px; color: var(--color-muted-light); }
.edit-state { color: var(--color-success) !important; letter-spacing: 0 !important; }
.suggested-reply-state { display: flex; align-items: center; gap: 9px; }
#support-generate-button { min-height: 31px; padding: 0 10px; border: 1px solid var(--color-border); border-radius: 7px; background: #fff; color: var(--color-text); font-size: .69rem; font-weight: 800; cursor: pointer; }
#support-generate-button:disabled { opacity: .55; cursor: wait; }
#support-reply-text { width: 100%; height: 52px; min-height: 48px; max-height: 160px; resize: none; overflow-y: hidden; padding: 9px 12px; border: 1px solid var(--color-border); border-radius: 9px; color: var(--color-text); line-height: 1.45; outline: none; }
#support-reply-text:focus { border-color: var(--color-accent); box-shadow: 0 0 0 3px var(--color-accent-focus); }
.reply-translation { max-height: 52px; overflow-y: auto; margin-top: 6px; padding: 7px 10px; border-radius: 8px; background: #f5f4f0; }
.reply-translation strong { font-size: .68rem; text-transform: uppercase; }
.reply-translation p { margin: 5px 0 0; color: var(--color-muted); font-size: .76rem; white-space: pre-wrap; }
.reply-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 7px; }
.reply-actions button { min-height: 36px; padding: 0 13px; border: 0; border-radius: 8px; background: var(--color-sidebar); color: #fff; font-size: .75rem; font-weight: 800; cursor: pointer; }
.reply-actions button.secondary { border: 1px solid var(--color-border); background: #fff; color: var(--color-text); }
.reply-actions button:disabled { opacity: .55; cursor: wait; }
.reply-actions #support-send-button { background: var(--color-accent); color: #fff; }
.support-reviewed-secondary { display: block; margin: 4px 0 0 auto; padding: 0; border: 0; background: transparent; color: var(--color-muted); font-size: .67rem; text-decoration: underline; cursor: pointer; }
.support-reviewed-secondary:disabled { opacity: .5; cursor: not-allowed; }
.support-action-status { min-height: 13px; margin: 4px 0 0; color: var(--color-muted); font-size: .7rem; text-align: right; }
.support-context { overflow-y: auto; border-left: 1px solid var(--color-border); background: #fafaf8; }
.support-context-head { position: sticky; top: 0; z-index: 2; display: flex; align-items: center; justify-content: space-between; padding: 17px 18px; border-bottom: 1px solid var(--color-border); background: #fafaf8; }
.support-context-head strong { font-size: .87rem; }
.support-context-head button { display: none; border: 0; background: transparent; font-size: 1.3rem; cursor: pointer; }
.support-context-cards { display: grid; gap: 10px; padding: 12px; }
.context-card { padding: 15px; border: 1px solid var(--color-border); border-radius: 11px; background: #fff; }
.context-card h3 { margin: 0 0 12px; color: var(--color-muted); font-size: .68rem; letter-spacing: .09em; text-transform: uppercase; }
.context-row { margin-top: 10px; }
.context-row:first-of-type { margin-top: 0; }
.context-row small, .context-row strong { display: block; }
.context-row small { color: var(--color-muted); font-size: .65rem; }
.context-row strong { margin-top: 3px; font-size: .77rem; font-weight: 650; line-height: 1.4; white-space: pre-wrap; overflow-wrap: anywhere; }
.context-flags { display: flex; flex-wrap: wrap; gap: 5px; }
.context-flag { padding: 5px 7px; border-radius: 6px; background: #f0efeb; font-size: .66rem; }
.internal-email-copy { margin-top: 10px; padding: 7px 10px; border: 1px solid var(--color-border); border-radius: 7px; background: #fff; font-size: .7rem; cursor: pointer; }
.support-empty, .support-empty-state { padding: 35px 20px; color: var(--color-muted); text-align: center; }
.support-empty-state { margin: auto; }
.support-empty-state strong, .support-empty-state span { display: block; }
.support-empty-state span { margin-top: 6px; font-size: .78rem; }

@media (max-width: 1280px) {
  .support-workspace { grid-template-columns: minmax(250px, 300px) minmax(470px, 1fr); }
  .support-context { position: fixed; z-index: 20; top: 0; right: 0; bottom: 0; width: min(380px, 92vw); transform: translateX(105%); box-shadow: -20px 0 50px rgba(29,29,30,.18); transition: transform .2s ease; }
  .support-context.open { transform: translateX(0); }
  .support-context-head button, .support-context-toggle { display: block; }
}

@media (max-width: 900px) {
  .support-page-header { align-items: center !important; }
  .support-workspace { height: auto; min-height: 720px; grid-template-columns: minmax(245px, 34vw) 1fr; }
  .support-messages { min-height: 480px; }
  .content { max-width: none; }
}

@media (max-width: 680px) {
  .support-workspace { display: block; min-height: 0; height: auto; }
  .support-inbox { min-height: 340px; max-height: 45vh; border-right: 0; border-bottom: 1px solid var(--color-border); }
  .support-conversation { min-height: 70vh; }
  .support-messages { min-height: 52vh; }
  .support-message { max-width: 92%; }
  .reply-actions { flex-wrap: wrap; }
  .reply-actions button { flex: 1; }
  .suggested-reply-head { align-items: flex-start; gap: 8px; }
  .suggested-reply-state { align-items: flex-end; flex-direction: column; }
  .support-process-wrap { align-items: flex-end; flex-direction: column-reverse; }
  .support-lightbox { grid-template-columns: 42px minmax(0, 1fr) 42px; padding: 18px 6px; }
  .support-lightbox figure { max-width: calc(100vw - 90px); }
  .support-lightbox-nav { width: 36px; height: 52px; }
}

@media (max-width: 540px) {
  .status-grid { grid-template-columns: 1fr; }
  .hero-badge { display: none; }
  .hero { padding: 28px; }
  .content header { align-items: flex-start; }
  .live { font-size: 0.7rem; }
  .sidebar .nav-group { grid-template-columns: 1fr; }
}

.orders-panel {
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  background: var(--color-surface);
  box-shadow: var(--shadow-card);
}

.orders-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 24px 26px;
  border-bottom: 1px solid var(--color-border);
}

.orders-panel-head h2 {
  margin: 0;
  font-size: 1.15rem;
}

.orders-panel-head p {
  margin: 5px 0 0;
  color: var(--color-muted);
  font-size: 0.82rem;
}

.orders-panel-head > strong {
  min-width: 44px;
  padding: 8px 12px;
  border-radius: 10px;
  background: var(--color-accent-soft);
  color: var(--color-text);
  text-align: center;
}

.orders-marketplace-tabs {
  display: flex;
  gap: 8px;
  padding: 14px 20px;
  border-bottom: 1px solid var(--color-border);
  background: #fff;
}

.orders-marketplace-tabs button {
  min-height: 38px;
  padding: 0 16px;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  background: #fff;
  color: var(--color-text);
  font-weight: 750;
  cursor: pointer;
}

.orders-marketplace-tabs button.active {
  border-color: var(--color-sidebar);
  background: var(--color-sidebar);
  color: #fff;
}

.table-wrap {
  overflow-x: auto;
}

.orders-table {
  width: 100%;
  border-collapse: collapse;
}

.orders-table th,
.orders-table td {
  padding: 14px 18px;
  border-bottom: 1px solid var(--color-border);
  text-align: left;
  white-space: nowrap;
}

.orders-table th {
  color: var(--color-muted);
  background: #fafaf8;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.orders-table td {
  font-size: 0.82rem;
}

.orders-table tbody tr:hover {
  background: rgba(246, 179, 49, 0.06);
}

.orders-empty {
  padding: 60px 24px;
  color: var(--color-muted);
  text-align: center;
}

.orders-filterbar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 16px 20px; border-bottom: 1px solid var(--color-border); }
.orders-filterbar button { padding: 8px 12px; border: 1px solid var(--color-border); border-radius: 999px; background: #fff; color: var(--color-text); cursor: pointer; }
.orders-filterbar button.active { border-color: var(--color-sidebar); background: var(--color-sidebar); color: #fff; }
.orders-filterbar label { margin-left: auto; color: var(--color-muted); font-size: .8rem; }
.orders-filterbar select { min-height: 36px; padding: 0 10px; border: 1px solid var(--color-border); border-radius: 8px; background: #fff; }
.operational-orders { display: grid; gap: 14px; padding: 18px; }
.operational-order { overflow: hidden; border: 1px solid var(--color-border); border-radius: 12px; background: #fff; }
.operational-order-head { display: flex; justify-content: space-between; gap: 14px; align-items: flex-start; padding: 18px 20px; background: #fafaf8; }
.operational-order-head strong, .operational-order-head small { display: block; }
.operational-order-head strong { font-size: .98rem; }
.operational-order-head small { margin-top: 5px; color: var(--color-muted); font-size: .78rem; }
.order-item-count { padding: 6px 9px; border-radius: 7px; background: var(--color-accent-soft); white-space: nowrap; font-size: .75rem; }
.operational-item { padding: 17px 20px; border-top: 1px solid var(--color-border); }
.operational-item-head { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.operational-item h3 { margin: 0; font-size: .95rem; }
.status-pill { padding: 6px 9px; border-radius: 999px; background: #f1f0ec; font-size: .72rem; font-weight: 750; white-space: nowrap; }
.status-da_elaborare { color: #78551b; background: #fff2d5; }
.status-pronto_fornitore { color: #20613d; background: #e6f4eb; }
.status-in_spedizione { color: #285687; background: #e9f2fc; }
.status-spedito { color: #555; background: #eee; }
.operational-item-grid { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 13px; }
.operational-detail small, .operational-detail strong { display: block; }
.operational-detail small { color: var(--color-muted); font-size: .68rem; }
.operational-detail strong { margin-top: 3px; font-size: .8rem; }
.production-string { margin: 12px 0 0; padding: 10px 12px; border-radius: 8px; background: #fafaf8; font-size: .78rem; white-space: pre-wrap; overflow-wrap: anywhere; }
.consolidation-note { margin: 12px 0 0; color: #68531d; font-size: .77rem; }

.stock-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; padding: 8px; border: 1px solid var(--color-border); border-radius: 13px; background: var(--color-surface); box-shadow: var(--shadow-card); }
.stock-tabs button { padding: 10px 15px; border: 0; border-radius: 9px; background: transparent; color: var(--color-muted); font-weight: 750; cursor: pointer; }
.stock-tabs button.active { background: var(--color-sidebar); color: var(--color-surface); }
.stock-tabs button span { display: inline-grid; min-width: 21px; min-height: 21px; place-items: center; margin-left: 5px; border-radius: 999px; background: var(--color-accent-soft); color: var(--color-text); font-size: .7rem; }
.stock-overview-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.stock-channel-card { padding: 22px; border: 1px solid var(--color-border); border-radius: 15px; background: var(--color-surface); box-shadow: var(--shadow-card); }
.stock-channel-head, .stock-review-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.stock-channel-head h2 { margin: 0; font-size: 1.15rem; }
.stock-badge { display: inline-flex; align-items: center; width: fit-content; padding: 5px 9px; border-radius: 999px; background: #eeece7; color: #555; font-size: .68rem; font-weight: 850; letter-spacing: .03em; white-space: nowrap; }
.stock-badge.success { background: #e6f4eb; color: #20613d; }
.stock-badge.waiting { background: #fff2d5; color: #78551b; }
.stock-badge.warning { background: #fde9e7; color: #8d2b23; }
.stock-badge.muted { background: #efefef; color: #666; }
.stock-verification { display: grid; gap: 7px; margin: 20px 0; padding: 13px; border-radius: 10px; background: #fafaf8; }
.stock-verification span:last-child { color: var(--color-muted); font-size: .74rem; line-height: 1.4; }
.stock-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 0; }
.stock-metrics div { min-width: 0; }
.stock-metrics dt { color: var(--color-muted); font-size: .68rem; }
.stock-metrics dd { overflow-wrap: anywhere; margin: 4px 0 0; font-size: .82rem; font-weight: 750; }
.stock-formula { margin: 20px 0 0; padding-top: 15px; border-top: 1px solid var(--color-border); color: var(--color-muted); font-size: .76rem; font-weight: 750; }
.stock-panel { overflow: hidden; border: 1px solid var(--color-border); border-radius: 15px; background: var(--color-surface); box-shadow: var(--shadow-card); }
.stock-filterbar { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; padding: 17px 20px; border-bottom: 1px solid var(--color-border); }
.stock-filterbar label { display: grid; gap: 5px; color: var(--color-muted); font-size: .68rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.stock-filterbar select, .stock-filterbar input { min-height: 38px; padding: 0 11px; border: 1px solid var(--color-border); border-radius: 8px; background: #fff; color: var(--color-text); font: inherit; text-transform: none; }
.stock-filterbar .stock-search { min-width: min(320px, 100%); flex: 1; }
.stock-filterbar button, .stock-pagination button { min-height: 38px; padding: 0 14px; border: 0; border-radius: 8px; background: var(--color-sidebar); color: #fff; font-weight: 750; cursor: pointer; }
.stock-filterbar button:disabled, .stock-pagination button:disabled { cursor: default; opacity: .4; }
.stock-table-wrap { overflow-x: auto; }
.stock-table { width: 100%; border-collapse: collapse; }
.stock-table th, .stock-table td { padding: 13px 14px; border-bottom: 1px solid var(--color-border); text-align: left; white-space: nowrap; }
.stock-table th { background: #fafaf8; color: var(--color-muted); font-size: .65rem; letter-spacing: .06em; text-transform: uppercase; }
.stock-table td { font-size: .77rem; }
.stock-pagination { display: flex; align-items: center; justify-content: flex-end; gap: 13px; padding: 15px 20px; }
.stock-pagination span { color: var(--color-muted); font-size: .75rem; }
.stock-review-list { display: grid; gap: 12px; padding: 18px; }
.stock-review-card { display: grid; gap: 6px; padding: 16px 18px; border: 1px solid var(--color-border); border-left: 4px solid var(--color-danger); border-radius: 10px; }
.stock-review-head { justify-content: flex-start; }
.stock-review-head time { margin-left: auto; color: var(--color-muted); font-size: .72rem; }
.stock-review-card > strong { margin-top: 4px; }
.stock-review-card > span { color: var(--color-muted); font-size: .78rem; }
.stock-review-card p { margin: 5px 0 0; font-size: .78rem; overflow-wrap: anywhere; }
.stock-empty { padding: 46px 22px; color: var(--color-muted); text-align: center; }

@media (max-width: 1150px) {
  .stock-overview-grid { grid-template-columns: 1fr; }
}

@media (max-width: 650px) {
  .stock-filterbar { align-items: stretch; }
  .stock-filterbar label, .stock-filterbar button { width: 100%; }
  .stock-metrics { grid-template-columns: 1fr; }
  .stock-pagination { justify-content: space-between; }
}

.orders-actions {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto;
  gap: 22px 30px;
  align-items: end;
  margin-bottom: 20px;
  padding: 22px 26px;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  background: var(--color-surface);
  box-shadow: var(--shadow-card);
}

.orders-actions-copy h2 {
  margin: 0;
  font-size: 1.1rem;
}

.orders-actions-copy p {
  max-width: 650px;
  margin: 6px 0 0;
  color: var(--color-muted);
  font-size: 0.82rem;
}

.orders-import-controls {
  display: grid;
  grid-template-columns: auto minmax(210px, auto) auto;
  gap: 10px;
  align-items: center;
}

.orders-import-controls label {
  color: var(--color-muted);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.orders-import-controls select {
  min-height: 40px;
  padding: 0 34px 0 12px;
  border: 1px solid var(--color-border);
  border-radius: 9px;
  background: var(--color-surface);
  color: var(--color-text);
  font: inherit;
  cursor: pointer;
}

.orders-import-controls select:focus {
  border-color: var(--color-accent);
  outline: none;
  box-shadow: 0 0 0 4px var(--color-accent-focus);
}

#orders-import-button {
  min-height: 40px;
  padding: 0 17px;
  border: 0;
  border-radius: 9px;
  background: var(--color-accent);
  color: var(--color-sidebar);
  font-weight: 850;
  cursor: pointer;
}

#orders-import-button:hover {
  background: var(--color-highlight);
}

#orders-import-button:disabled {
  cursor: wait;
  opacity: 0.65;
}

.live.neutral i { background: var(--color-muted-light); }
.page-intro { margin-bottom: 22px; padding: 24px 26px; border: 1px solid var(--color-border); border-radius: 16px; background: var(--color-surface); box-shadow: var(--shadow-card); }
.page-intro h2 { margin: 0; font-size: 1.18rem; }
.page-intro p { max-width: 760px; margin: 8px 0 0; color: var(--color-muted); line-height: 1.55; }
.management-overview-grid, .placeholder-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.management-overview-grid article, .placeholder-grid article { padding: 22px; border: 1px solid var(--color-border); border-radius: 14px; background: var(--color-surface); box-shadow: var(--shadow-card); }
.management-overview-grid span, .placeholder-grid span { display: block; color: var(--color-muted); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.management-overview-grid strong { display: block; margin: 16px 0 6px; font-size: 1rem; }
.management-overview-grid small { min-height: 36px; display: block; color: var(--color-muted); line-height: 1.45; }
.management-overview-grid a { display: inline-block; margin-top: 18px; color: var(--color-text); font-size: .8rem; font-weight: 800; text-decoration-color: var(--color-accent); text-underline-offset: 4px; }
.placeholder-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.placeholder-grid p { margin: 12px 0 0; color: var(--color-muted); font-size: .86rem; line-height: 1.5; }
.year-control { display: flex; gap: 9px; align-items: center; color: var(--color-muted); font-size: .75rem; font-weight: 800; text-transform: uppercase; }
.year-control select { min-width: 96px; padding: 8px 30px 8px 11px; border: 1px solid var(--color-border); border-radius: 9px; background: #fff; color: var(--color-text); }
.cash-flow-header-actions { display: flex; align-items: center; gap: 12px; }
.archive-link { padding: 9px 12px; border: 1px solid var(--color-border); border-radius: 9px; background: #fff; color: var(--color-text); font-size: .75rem; font-weight: 800; text-decoration: none; }
.cash-flow-subnav { display: flex; gap: 5px; margin-bottom: 20px; padding: 6px; overflow-x: auto; border: 1px solid var(--color-border); border-radius: 13px; background: #fff; }
.cash-flow-subnav a { flex: 0 0 auto; padding: 10px 12px; border-radius: 8px; color: var(--color-muted); font-size: .75rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.cash-flow-subnav a:hover, .cash-flow-subnav a.active { background: var(--color-sidebar); color: #fff; }
.cash-flow-panel { padding: 24px; border: 1px solid var(--color-border); border-radius: 16px; background: var(--color-surface); box-shadow: var(--shadow-card); }
.cash-flow-panel > .section-heading { margin-bottom: 20px; }
.readiness-chip { padding: 6px 9px; border-radius: 999px; background: #efefec; color: var(--color-muted); font-size: .68rem; font-weight: 800; text-transform: uppercase; }
.cash-flow-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.cash-flow-kpis article { min-height: 90px; padding: 17px; border: 1px solid var(--color-border); border-radius: 12px; background: #fafaf8; }
.cash-flow-kpis span { display: block; color: var(--color-muted); font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.cash-flow-kpis strong { display: block; margin-top: 14px; font-size: 1.2rem; }
.chart-placeholder { display: grid; place-items: center; min-height: 250px; margin-top: 16px; padding: 25px; border: 1px dashed #c7c4bb; border-radius: 13px; background: linear-gradient(180deg, #fafaf8, #fff); text-align: center; }
.chart-placeholder.compact { min-height: 150px; margin-bottom: 18px; }
.chart-placeholder p { margin: 8px 0 0; color: var(--color-muted); font-size: .78rem; }
.native-chart { min-height: 250px; margin-top: 16px; padding: 22px; border: 1px solid var(--color-border); border-radius: 13px; background: linear-gradient(180deg, #fafaf8, #fff); }
.native-chart.compact { min-height: 170px; margin-bottom: 18px; }
.native-chart > p { color: var(--color-muted); font-size: .78rem; text-align: center; }
.bar-chart { height: 150px; display: flex; align-items: flex-end; gap: 8px; margin-top: 20px; padding-top: 10px; border-bottom: 1px solid var(--color-border); }
.bar-column { min-width: 22px; flex: 1; display: grid; justify-items: center; align-items: end; gap: 7px; }
.bar-column i { width: min(24px, 80%); min-height: 3px; display: block; border-radius: 5px 5px 0 0; background: var(--color-success); }
.bar-column i.negative { background: var(--color-danger); }
.bar-column span { color: var(--color-muted); font-size: .62rem; text-transform: uppercase; }
.archive-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.archive-summary-grid article { padding: 18px; border: 1px solid var(--color-border); border-radius: 11px; background: #fafaf8; }
.archive-summary-grid span { display: block; color: var(--color-muted); font-size: .68rem; font-weight: 800; text-transform: uppercase; }
.archive-summary-grid strong { display: block; margin-top: 10px; font-size: 1rem; }
[data-movement-sort] { cursor: pointer; }
.cash-flow-filters { display: grid; grid-template-columns: 2fr repeat(4, minmax(125px, 1fr)); gap: 9px; margin-bottom: 16px; }
.cash-flow-filters.compact { display: block; margin: 0; }
.cash-flow-filters input, .cash-flow-filters select { min-height: 39px; padding: 8px 10px; border: 1px solid var(--color-border); border-radius: 8px; background: #fff; color: var(--color-text); }
.data-table-wrap { overflow-x: auto; border: 1px solid var(--color-border); border-radius: 11px; }
.data-table-wrap table { width: 100%; border-collapse: collapse; font-size: .75rem; }
.data-table-wrap th { padding: 11px 12px; background: #f3f3ef; color: var(--color-muted); font-size: .66rem; letter-spacing: .03em; text-align: left; text-transform: uppercase; white-space: nowrap; }
.data-table-wrap td { padding: 11px 12px; border-top: 1px solid var(--color-border); white-space: nowrap; }
.data-table-wrap .empty-row td { height: 90px; color: var(--color-muted); text-align: center; }
.data-table-wrap button { padding: 6px 9px; border: 1px solid var(--color-border); border-radius: 7px; background: #eee; color: #888; }
.table-footer { display: flex; justify-content: flex-end; align-items: center; gap: 8px; margin-top: 12px; color: var(--color-muted); font-size: .72rem; }
.table-footer span { margin-right: auto; }
.table-footer button { padding: 7px 10px; border: 1px solid var(--color-border); border-radius: 7px; }
.future-note, .archive-empty { padding: 14px; border-radius: 9px; background: #f5f5f2; color: var(--color-muted); font-size: .78rem; }
.archive-tabs { display: flex; gap: 7px; margin: 18px 0; }
.archive-tabs button { padding: 9px 14px; border: 1px solid var(--color-border); border-radius: 8px; background: #fff; cursor: pointer; }
.archive-tabs button.active { border-color: var(--color-sidebar); background: var(--color-sidebar); color: #fff; }
.run-history { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--color-border); }
.run-history h3 { margin: 0 0 12px; font-size: .95rem; }
.run-history article { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.5fr; gap: 12px; padding: 12px; border: 1px solid var(--color-border); border-radius: 9px; background: #fff; font-size: .72rem; }
.run-history article span, .run-history article small { color: var(--color-muted); }
.month-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.month-card { display: grid; gap: 7px; min-height: 118px; padding: 15px; border: 1px solid var(--color-border); border-radius: 13px; background: var(--color-surface); color: var(--color-text); text-align: left; cursor: pointer; box-shadow: var(--shadow-card); }
.month-card:hover, .month-card.active { border-color: var(--color-accent); box-shadow: 0 0 0 3px var(--color-accent-soft); }
.month-card > span { color: var(--color-muted-light); font-size: .7rem; font-weight: 850; }
.month-card > strong { font-size: .9rem; }
.month-status { width: fit-content; display: inline-flex; align-items: center; padding: 5px 8px; border-radius: 999px; background: #eee; color: #555; font-size: .64rem; font-weight: 850; letter-spacing: .02em; text-transform: uppercase; }
.status-completato { background: #dcefe4; color: #185d37; }
.status-pronto { background: #e5f1ff; color: #245786; }
.status-report_mancanti { background: #fff0d0; color: #78551b; }
.status-da_elaborare { background: #efefec; color: #676762; }
.status-errore { background: #f8dfdd; color: var(--color-danger); }
.cash-flow-detail { margin-top: 24px; padding: 25px; border: 1px solid var(--color-border); border-radius: 16px; background: var(--color-surface); box-shadow: var(--shadow-card); }
.section-heading, .report-card-head, .previous-report, .disabled-actions { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.section-heading { margin-bottom: 20px; }
.section-heading .eyebrow { margin: 0 0 4px; }
.section-heading h2 { margin: 0; }
.report-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.report-card { padding: 20px; border: 1px solid var(--color-border); border-radius: 14px; background: #fafaf8; }
.report-card-head small { color: var(--color-muted); font-size: .65rem; font-weight: 800; letter-spacing: .08em; }
.report-card-head h3 { margin: 4px 0 0; }
.file-presence { padding: 5px 9px; border-radius: 999px; background: #f8dfdd; color: var(--color-danger); font-size: .68rem; font-weight: 800; }
.file-presence.present { background: #dcefe4; color: var(--color-success); }
.report-card dl { display: grid; gap: 7px; margin: 18px 0; }
.report-card dl div { display: grid; grid-template-columns: 105px 1fr; gap: 12px; }
.report-card dt { color: var(--color-muted); font-size: .72rem; }
.report-card dd { overflow: hidden; margin: 0; font-size: .76rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.drop-zone { display: grid; place-items: center; min-height: 138px; padding: 18px; border: 1px dashed #bbb7ac; border-radius: 12px; background: #fff; text-align: center; transition: .2s; }
.drop-zone.dragging, .drop-zone.has-file { border-color: var(--color-accent); background: var(--color-accent-soft); }
.drop-zone strong { font-size: .84rem; overflow-wrap: anywhere; }
.drop-zone span { margin-top: 5px; color: var(--color-muted); font-size: .7rem; }
.drop-zone button { margin-top: 13px; padding: 7px 11px; border: 1px solid var(--color-border); border-radius: 8px; background: #fff; cursor: pointer; }
.primary-action { width: 100%; margin-top: 12px; padding: 10px 14px; border: 0; border-radius: 9px; background: var(--color-accent); color: var(--color-text); font-weight: 850; cursor: pointer; }
.primary-action:disabled { cursor: not-allowed; opacity: .48; }
.previous-report { margin-top: 18px; padding: 15px 18px; border-radius: 11px; background: #f5f5f2; }
.previous-report span { color: var(--color-muted); font-size: .78rem; }
.previous-report strong { font-size: .8rem; }
.previous-report .available { color: var(--color-success); }
.previous-report .missing { color: var(--color-danger); }
.disabled-actions { flex-wrap: wrap; justify-content: flex-start; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--color-border); }
.disabled-actions button { padding: 10px 14px; border: 1px solid var(--color-border); border-radius: 9px; background: #eee; color: #888; cursor: not-allowed; }
.disabled-actions .verify-action { border-color: var(--color-accent); background: var(--color-accent); color: var(--color-text); cursor: pointer; font-weight: 800; }
.disabled-actions .verify-action:disabled { cursor: wait; opacity: .65; }
.disabled-actions p { flex: 1 1 360px; margin: 0; color: var(--color-muted); font-size: .76rem; }
.verification-result { margin-top: 20px; padding: 24px; border: 1px solid var(--color-border); border-radius: 14px; background: #fafaf8; }
.verification-ok { border-color: #b8dcc7; }
.verification-warning { border-color: #ead293; }
.verification-error { border-color: #e6b8b4; }
.verification-loading { color: var(--color-muted); }
.verification-heading { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; }
.verification-heading .eyebrow { margin: 0 0 5px; }
.verification-heading h2 { margin: 0; font-size: 1.2rem; }
.verification-badge { padding: 6px 9px; border-radius: 999px; font-size: .66rem; font-weight: 850; }
.verification-badge.verification-ok { background: #dcefe4; color: var(--color-success); }
.verification-badge.verification-warning { background: #fff0d0; color: #78551b; }
.verification-badge.verification-error { background: #f8dfdd; color: var(--color-danger); }
.verification-sources, .verification-metrics { display: grid; gap: 12px; margin-top: 18px; }
.verification-sources { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.verification-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.verification-sources article, .verification-metrics article { padding: 15px; border: 1px solid var(--color-border); border-radius: 11px; background: #fff; }
.verification-sources span, .verification-metrics span, .reconciliation-row article span { display: block; color: var(--color-muted); font-size: .67rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.verification-sources strong, .verification-metrics strong, .reconciliation-row article strong { display: block; margin-top: 7px; font-size: .9rem; }
.verification-sources small { display: block; margin-top: 5px; color: var(--color-muted); font-size: .72rem; }
.reconciliation-section, .unclassified-section, .verification-warnings, .verification-errors { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--color-border); }
.reconciliation-section h3, .unclassified-section h3, .verification-warnings h3, .verification-errors h3 { margin: 0 0 12px; font-size: .95rem; }
.reconciliation-row { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; padding: 14px; border-left: 4px solid var(--color-success); border-radius: 10px; background: #fff; }
.reconciliation-row.reconciliation-error { border-left-color: var(--color-danger); }
.reconciliation-row article { min-width: 0; }
.reconciliation-row > p { grid-column: 1 / -1; margin: 3px 0 0; color: var(--color-muted); font-size: .75rem; }
.unclassified-toggle { padding: 8px 11px; border: 1px solid var(--color-accent); border-radius: 8px; background: var(--color-accent-soft); cursor: pointer; }
.unclassified-list { display: grid; gap: 8px; margin-top: 12px; }
.unclassified-list article { padding: 13px; border: 1px solid var(--color-border); border-radius: 9px; background: #fff; }
.unclassified-list strong, .unclassified-list span, .unclassified-list small { display: block; }
.unclassified-list strong { font-size: .82rem; }
.unclassified-list span { margin-top: 5px; font-size: .75rem; }
.unclassified-list small { margin-top: 5px; color: var(--color-muted); line-height: 1.45; }
.verification-warnings { color: #78551b; }
.verification-errors { color: var(--color-danger); }
.verification-warnings ul, .verification-errors ul { margin: 0; padding-left: 20px; font-size: .78rem; }
.verification-run-id { display: block; margin-top: 18px; color: var(--color-muted-light); font-family: ui-monospace, monospace; }
.inline-message { margin-bottom: 16px; padding: 12px 14px; border-radius: 10px; background: #dcefe4; color: var(--color-success); font-size: .8rem; }
.inline-message.error { background: #f8dfdd; color: var(--color-danger); }
.analysis-tabs { display: flex; gap: 8px; padding: 8px; border: 1px solid var(--color-border); border-radius: 12px; background: #fff; }
.analysis-tabs button { flex: 1; padding: 10px; border: 0; border-radius: 8px; background: transparent; color: var(--color-muted); cursor: pointer; }
.analysis-tabs button.active { background: var(--color-sidebar); color: #fff; }
.analysis-panel { min-height: 220px; margin-top: 16px; padding: 28px; border: 1px solid var(--color-border); border-radius: 14px; background: #fff; box-shadow: var(--shadow-card); }
.analysis-panel h2 { margin: 0; font-size: 1.1rem; }
.analysis-panel p { color: var(--color-muted); }

@media (max-width: 1120px) {
  .month-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .cash-flow-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cash-flow-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .management-overview-grid, .placeholder-grid, .report-grid { grid-template-columns: 1fr; }
  .month-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .analysis-tabs { flex-direction: column; }
  .cash-flow-detail { padding: 18px; }
  .verification-sources, .verification-metrics { grid-template-columns: 1fr 1fr; }
  .reconciliation-row { grid-template-columns: 1fr 1fr; }
  .cash-flow-header-actions, .section-heading { align-items: flex-start; flex-direction: column; }
  .cash-flow-kpis, .cash-flow-filters, .archive-summary-grid { grid-template-columns: 1fr; }
  .cash-flow-panel { padding: 17px; }
  .run-history article { grid-template-columns: 1fr; }
}

.orders-import-result {
  grid-column: 1 / -1;
  padding: 12px 14px;
  border-radius: 9px;
  font-size: 0.8rem;
}

.orders-import-result.success {
  background: rgba(36, 118, 74, 0.10);
  color: var(--color-success);
}

.orders-import-result.error {
  background: rgba(168, 45, 37, 0.10);
  color: var(--color-danger);
}

@media (max-width: 900px) {
  .orders-actions {
    grid-template-columns: 1fr;
  }

  .orders-import-controls {
    grid-template-columns: 1fr;
  }
}

.orders-process {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto;
  gap: 22px 30px;
  align-items: center;
  margin-bottom: 20px;
  padding: 22px 26px;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  background: var(--color-surface);
  box-shadow: var(--shadow-card);
}

.orders-process-copy h2 {
  margin: 0;
  font-size: 1.1rem;
}

.orders-process-copy p {
  max-width: 650px;
  margin: 6px 0 0;
  color: var(--color-muted);
  font-size: 0.82rem;
}

#orders-process-button {
  min-height: 40px;
  padding: 0 17px;
  border: 0;
  border-radius: 9px;
  background: var(--color-sidebar);
  color: var(--color-surface);
  font-weight: 850;
  cursor: pointer;
}

#orders-process-button:hover {
  background: var(--color-sidebar-deep);
}

#orders-process-button:disabled {
  cursor: wait;
  opacity: 0.65;
}

.orders-process-result {
  grid-column: 1 / -1;
  padding: 12px 14px;
  border-radius: 9px;
  font-size: 0.8rem;
}

.orders-process-result.success {
  background: rgba(36, 118, 74, 0.10);
  color: var(--color-success);
}

.orders-process-result.error {
  background: rgba(168, 45, 37, 0.10);
  color: var(--color-danger);
}

.amazon-import { margin: 0 0 24px; padding: 24px; border: 1px solid var(--color-border); border-radius: 16px; background: #fff; box-shadow: var(--shadow-panel); }
.amazon-report-picker { display: grid; gap: 10px; margin-top: 20px; padding: 22px; border: 2px dashed var(--color-border); border-radius: 12px; background: #f8fafc; transition: border-color .12s ease, background-color .12s ease; }
.amazon-report-picker.drag-active { border-color: var(--color-accent); background: var(--color-accent-soft); }
.amazon-report-picker p { margin: 0; }
.amazon-report-required { margin: 0; padding-left: 20px; color: var(--color-muted); }
.amazon-file-picker { width: fit-content; padding: 11px 16px; border-radius: 9px; background: var(--color-sidebar); color: #fff; font-weight: 800; cursor: pointer; }
.amazon-file-input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.amazon-report-picker small, .amazon-report-recognition small { color: var(--color-muted); }
.amazon-report-recognition { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 14px; }
.amazon-report-recognition > div { display: grid; gap: 5px; padding: 12px 14px; border: 1px solid var(--color-border); border-radius: 10px; background: #fff; }
.amazon-import-buttons { display: flex; gap: 12px; margin-top: 18px; }
.amazon-import-buttons button { padding: 12px 18px; border: 0; border-radius: 10px; background: var(--color-sidebar); color: #fff; font-weight: 800; cursor: pointer; }
.amazon-import-buttons button:disabled { opacity: 0.45; cursor: default; }
.amazon-import-history { margin-top: 22px; }
.amazon-import-history h3 { margin: 0 0 10px; }
.amazon-import-row { display: grid; grid-template-columns: 150px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 10px 0; border-top: 1px solid var(--color-border); }
.amazon-import-row small { color: var(--color-muted); text-align: right; }

@media (max-width: 900px) {
  .orders-process {
    grid-template-columns: 1fr;
  }

  #orders-process-button {
    width: 100%;
  }

  .amazon-report-recognition { grid-template-columns: 1fr; }
  .amazon-import-buttons { flex-direction: column; }
  .amazon-import-row { grid-template-columns: 1fr; }
  .amazon-import-row small { text-align: left; }
}

/* Marketplace string generation */
.nav-subitem { padding-left: 2.35rem !important; font-size: .9rem; }
.string-generation-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin:1rem 0; }
.string-generation-summary article,.string-generation-panel { background:#fff; border:1px solid var(--line,#dce3e8); border-radius:14px; padding:1rem; }
.string-generation-summary span { display:block; color:#66727c; font-size:.82rem; }
.string-generation-summary strong { font-size:1.8rem; }
.string-generation-panel { margin-bottom:1rem; }
.string-generation-tabs,.string-generation-filters,.generation-pagination { display:flex; gap:.65rem; align-items:center; flex-wrap:wrap; margin-bottom:1rem; }
.string-generation-tabs button.active { background:#1d3f36; color:#fff; }
.string-generation-filters input { min-width:260px; flex:1; }
.table-scroll { overflow:auto; }
.string-generation-table { width:100%; border-collapse:collapse; min-width:1200px; }
.string-generation-table th,.string-generation-table td { padding:.65rem; border-bottom:1px solid #e6ecef; text-align:left; vertical-align:top; max-width:260px; overflow-wrap:anywhere; }
.string-generation-table th { font-size:.75rem; text-transform:uppercase; color:#66727c; }
.string-generation-table td button + button { margin-left:.35rem; }
.generation-pagination { justify-content:flex-end; margin-top:1rem; }
.catalog-results { display:grid; gap:.5rem; }
.catalog-result { display:grid; gap:.2rem; padding:.75rem; border:1px solid #e6ecef; border-radius:10px; }
#generation-detail { width:min(720px,calc(100vw - 2rem)); border:0; border-radius:14px; padding:1.25rem; box-shadow:0 20px 60px #0004; }
#generation-detail::backdrop { background:#10241f99; }
@media(max-width:760px){.string-generation-summary{grid-template-columns:1fr}.string-generation-filters input{min-width:100%}}

/* Panoramica isolata */
#dashboard-view .overview-board { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
#dashboard-view .overview-card { --overview-tint: #edf5fc; --overview-ink: #28699f; --overview-line: #dceaf6; overflow: hidden; min-width: 0; padding: 0 20px 20px; border: 1px solid #e6e9ed; border-radius: 18px; background: var(--color-surface); box-shadow: 0 10px 28px rgba(29, 41, 57, 0.075); }
#dashboard-view .overview-card-green { --overview-tint: #eff8f1; --overview-ink: #327448; --overview-line: #deeee1; }
#dashboard-view .overview-card-orange { --overview-tint: #fff5e9; --overview-ink: #b66c25; --overview-line: #f2e5d4; }
#dashboard-view header.overview-card-head { justify-content: flex-start; gap: 15px; min-height: 132px; margin: 0 -20px; padding: 22px 20px; border-bottom: 1px solid var(--overview-line); background: var(--overview-tint); }
#dashboard-view .overview-icon { display: grid; flex: 0 0 52px; width: 52px; height: 52px; place-items: center; border: 1px solid var(--overview-line); border-radius: 50%; background: #fff; color: var(--overview-ink); box-shadow: 0 2px 5px rgba(29, 41, 57, 0.06); }
#dashboard-view .overview-icon svg { width: 25px; height: 25px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
#dashboard-view .overview-heading-copy { display: block; min-width: 0; }
#dashboard-view .overview-card h2 { margin: 0; color: var(--color-text); font-size: 1.18rem; font-weight: 780; line-height: 1.22; letter-spacing: -0.035em; }
#dashboard-view .overview-description { display: block; margin-top: 6px; color: #626d79; font-size: 0.76rem; line-height: 1.45; }
#dashboard-view .overview-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 23px 5px 22px; border-bottom: 1px solid #e8ebef; }
#dashboard-view .overview-metric { display: flex; flex-direction: column; align-items: center; gap: 5px; min-width: 0; text-align: center; }
#dashboard-view .overview-metric + .overview-metric { border-left: 1px solid #dce1e6; }
#dashboard-view .overview-metric strong { color: #202a35; font-size: clamp(2.8rem, 3.7vw, 3.45rem); font-weight: 820; line-height: 1; letter-spacing: -0.07em; font-variant-numeric: tabular-nums; }
#dashboard-view .overview-metric span { color: #66717d; font-size: 0.7rem; font-weight: 750; letter-spacing: 0.075em; text-transform: uppercase; }
#dashboard-view .overview-breakdown { padding-top: 20px; }
#dashboard-view .overview-breakdown + .overview-breakdown { margin-top: 18px; padding-top: 19px; border-top: 1px solid #e8ebef; }
#dashboard-view .overview-breakdown h3 { display: flex; align-items: baseline; gap: 5px; margin: 0 0 11px; color: #4f5b67; font-size: 0.69rem; font-weight: 850; letter-spacing: 0.085em; text-transform: uppercase; }
#dashboard-view .overview-breakdown h3 span { color: #98a1aa; font-size: 0.65rem; font-weight: 600; letter-spacing: 0.01em; text-transform: none; }
#dashboard-view .overview-rows { display: grid; gap: 7px; }
#dashboard-view .overview-row { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; align-items: center; gap: 9px; min-height: 42px; padding: 5px 10px; border: 1px solid #e8ebef; border-radius: 10px; background: #fff; color: #35404b; font-size: 0.78rem; box-shadow: 0 1px 2px rgba(29, 41, 57, 0.025); }
#dashboard-view .overview-row-icon { display: grid; width: 30px; height: 30px; place-items: center; border: 1px solid transparent; border-radius: 8px; }
#dashboard-view .overview-row-icon svg { width: 19px; height: 19px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.65; }
#dashboard-view .category-mats { color: #d65358; border-color: #f4dddd; background: #fff4f3; }
#dashboard-view .category-spare-parts { color: #8062bf; border-color: #e9e2f6; background: #f7f3fd; }
#dashboard-view .category-hardware { color: #d78337; border-color: #f5e5d4; background: #fff8f0; }
#dashboard-view .category-unclassified { color: #66717d; border-color: #e1e5e9; background: #f5f7f9; }
#dashboard-view .overview-row-label { min-width: 0; font-weight: 650; }
#dashboard-view .overview-row strong { min-width: 30px; padding: 3px 7px; border-radius: 7px; background: #f3f5f7; color: #283440; font-size: 0.78rem; font-weight: 800; text-align: center; font-variant-numeric: tabular-nums; }
#dashboard-view .channel-amazon { position: relative; color: #172b3c; background: #fff9ed; border-color: #f1e6d2; }
#dashboard-view .channel-amazon > span { margin-top: -5px; font-family: Georgia, serif; font-size: 24px; font-weight: 700; line-height: 1; }
#dashboard-view .channel-amazon > i { position: absolute; bottom: 5px; left: 9px; width: 13px; height: 6px; border-bottom: 2px solid #f39a24; border-radius: 0 0 80% 80%; transform: rotate(-8deg); }
#dashboard-view .channel-ebay { display: inline-flex; align-items: center; justify-content: center; padding: 2px; overflow: visible; background: #fff; border-color: #e9ebee; }
#dashboard-view .channel-ebay b { display: flex; width: 25px; max-width: 100%; align-items: center; justify-content: center; overflow: visible; font-family: Arial, sans-serif; font-size: 12px; font-weight: 800; line-height: 1.25; letter-spacing: -1px; }
#dashboard-view .channel-ebay i { display: block; font-style: normal; }
#dashboard-view .channel-ebay i:nth-child(1) { color: #e53238; }
#dashboard-view .channel-ebay i:nth-child(2) { color: #0064d2; }
#dashboard-view .channel-ebay i:nth-child(3) { color: #f5af02; }
#dashboard-view .channel-ebay i:nth-child(4) { color: #86b817; }
#dashboard-view .channel-shopify { color: #fff; background: #78a942; border-color: #6e9d38; }
#dashboard-view .channel-shopify svg { width: 20px; height: 20px; stroke: currentColor; stroke-width: 1.8; }
@media (max-width: 1150px) { #dashboard-view .overview-board { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { #dashboard-view .overview-board { grid-template-columns: 1fr; } }
#overview-feedback { font-size: .78rem; color: #626d79; }
#overview-feedback:empty { display: none; }
#overview-retry { margin: 0 0 14px; color: #35404b; }
#dashboard-view .live[data-offline="true"] i { background: #b66c25; }
