:root {
  color-scheme: light;
  --ink: #17211d;
  --muted: #737b76;
  --soft-muted: #9ba19d;
  --canvas: #f3f2ee;
  --paper: #ffffff;
  --line: #e7e6df;
  --green: #1c4a3d;
  --green-dark: #12352c;
  --green-soft: #e9f0ec;
  --gold: #aa8447;
  --gold-soft: #f5efe3;
  --red: #b94238;
  --red-dark: #913128;
  --red-soft: #fbefed;
  --amber: #a87122;
  --amber-soft: #fbf3e3;
  --shadow: 0 18px 55px rgba(26, 42, 34, 0.06);
  --radius: 18px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 1100px;
  background: var(--canvas);
  color: var(--ink);
  font-family: Inter, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.login-screen {
  position: fixed; inset: 0; z-index: 500; display: grid; grid-template-columns: 1.15fr .85fr;
  min-height: 100vh; background: #10281f; color: #fff;
}
.login-screen.hidden { display: none; }
.login-brand { display: flex; justify-content: center; flex-direction: column; padding: clamp(45px,8vw,120px); background: radial-gradient(circle at 20% 20%,#285445 0,transparent 38%),#10281f; }
.brand-mark.large { width: 58px; height: 58px; margin-bottom: 30px; font-size: 27px; }
.login-brand .eyebrow { color: #c6ab75; }
.login-brand h1 { max-width: 650px; margin: 20px 0; font-family: "Songti SC",serif; font-size: clamp(36px,5vw,66px); line-height: 1.25; font-weight: 500; letter-spacing: -.04em; }
.login-brand p { max-width: 560px; color: #9aada5; font-size: 13px; line-height: 1.8; }
.login-points { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 28px; color: #d6c49e; font-size: 11px; }
.login-card { align-self: center; width: min(430px,calc(100% - 50px)); margin: auto; padding: 40px; border-radius: 24px; background: #fff; color: var(--ink); box-shadow: 0 40px 100px rgba(0,0,0,.28); }
.login-card h2 { margin: 10px 0 8px; font-family: "Songti SC",serif; font-size: 28px; }
.auth-tabs { display: flex; gap: 6px; margin: 22px 0 6px; padding: 4px; border-radius: 999px; background: rgba(255,255,255,.055); }
.auth-tabs button { flex: 1; padding: 9px; border: 0; border-radius: 999px; background: transparent; color: #737983; cursor: pointer; font-size: 9px; }
.auth-tabs button.active { background: rgba(255,255,255,.12); color: #fff; }
.register-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 0 10px; }
.login-card select { width: 100%; padding: 13px; border: 1px solid rgba(255,255,255,.055); border-radius: 999px; background: #24262b; color: #fff; }
.login-card > p { margin: 0 0 24px; color: var(--muted); font-size: 10px; line-height: 1.6; }
.login-card label { display: grid; gap: 7px; margin-top: 13px; color: var(--muted); font-size: 9px; }
.login-card input { width: 100%; padding: 13px; border: 1px solid #daddd8; border-radius: 10px; background: #fafaf7; }
.login-card form .primary { margin-top: 18px; }
.login-error { display: block; min-height: 16px; margin-top: 10px; color: var(--red); font-size: 9px; text-align: center; }
.role-demo { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); }
.role-demo small { display: block; color: var(--soft-muted); font-size: 8px; }
.role-demo div { display: grid; grid-template-columns: repeat(4,1fr); gap: 6px; margin-top: 9px; }
.role-demo button { padding: 8px 3px; border: 1px solid var(--line); border-radius: 8px; background: #fff; cursor: pointer; font-size: 8px; }
button, textarea, input, select { font: inherit; }
button { color: inherit; }
button:focus-visible, textarea:focus-visible, input:focus-visible, select:focus-visible {
  outline: 3px solid rgba(28, 74, 61, .18);
  outline-offset: 2px;
}
.app-shell { display: grid; grid-template-columns: 248px 1fr; min-height: 100vh; }
.sidebar {
  position: fixed; inset: 0 auto 0 0; z-index: 20;
  display: flex; width: 248px; flex-direction: column;
  padding: 27px 18px 20px; background: #11231d; color: #fff;
}
.brand {
  display: flex; align-items: center; gap: 12px; width: 100%; padding: 0 8px 22px;
  border: 0; background: transparent; color: #fff; cursor: pointer; text-align: left;
}
.brand-mark {
  display: grid; width: 42px; height: 42px; place-items: center;
  border-radius: 14px; background: #e8ddc6; color: #18392f;
  font-family: "Songti SC", serif; font-size: 21px; font-weight: 800;
}
.brand-copy strong, .brand-copy small { display: block; }
.brand-copy strong { font-size: 17px; letter-spacing: .08em; }
.brand-copy small { margin-top: 3px; color: #85978f; font-size: 10px; letter-spacing: .12em; }
.brand-context {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px;
  margin-bottom: 25px; padding: 12px; border: 1px solid #2b4038; border-radius: 14px;
  background: #172d25;
}
.context-logo {
  display: grid; width: 31px; height: 31px; place-items: center; border-radius: 10px;
  background: #24463a; color: #d8c7a7; font-family: serif; font-weight: 700;
}
.brand-context strong, .brand-context small { display: block; }
.brand-context strong { font-size: 11px; }
.brand-context small { margin-top: 3px; color: #7f9189; font-size: 9px; }
.chevron { color: #7e9189; }
.nav { display: grid; gap: 6px; }
.nav-item {
  position: relative; display: flex; align-items: center; gap: 13px; width: 100%;
  padding: 12px 14px; border: 0; border-radius: 11px; background: transparent;
  color: #91a098; cursor: pointer; text-align: left; transition: 160ms ease;
}
.nav-item:hover { background: rgba(255,255,255,.05); color: #fff; }
.nav-item.active { background: #e9e0cd; color: #17372d; font-weight: 700; }
.role-hidden { display: none !important; }
.nav-icon { display: inline-grid; width: 20px; place-items: center; font-size: 15px; font-weight: 700; }
.nav-badge {
  margin-left: auto; padding: 2px 7px; border-radius: 99px;
  background: #9d392f; color: #fff; font-size: 9px;
}
.sidebar-spacer { flex: 1; }
.ai-side-card {
  margin: 15px 2px; padding: 15px; border: 1px solid #2b4038; border-radius: 15px;
  background: linear-gradient(145deg, #172f26, #142820);
}
.ai-side-head { display: flex; align-items: center; gap: 8px; color: #9cb1a7; font-size: 9px; }
.ai-orbit { color: #d3b77e; font-size: 15px; }
.ai-side-card strong, .ai-side-card small { display: block; }
.ai-side-card strong { margin: 10px 0 5px; font-size: 11px; line-height: 1.5; }
.ai-side-card small { color: #70877d; font-size: 9px; }
.ai-progress { height: 3px; margin-top: 13px; overflow: hidden; border-radius: 9px; background: #294138; }
.ai-progress span { display: block; width: 76%; height: 100%; background: #c7ad77; }
.profile {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px;
  width: 100%; padding: 14px 7px 0; border: 0; border-top: 1px solid #293a34;
  background: transparent; color: #fff; text-align: left;
}
.avatar {
  display: grid; width: 35px; height: 35px; place-items: center; border-radius: 50%;
  background: #d2c09f; color: #273a32; font-weight: 800;
}
.profile strong, .profile small { display: block; }
.profile strong { font-size: 11px; }
.profile small { margin-top: 3px; color: #74867e; font-size: 9px; }
.more { color: #65776f; letter-spacing: 2px; }
.main { grid-column: 2; width: 100%; max-width: 1580px; padding: 0 42px 70px; }
.topbar {
  display: flex; min-height: 110px; align-items: center; justify-content: space-between;
}
.date { margin: 0 0 6px; color: var(--muted); font-size: 11px; }
.topbar h1 { margin: 0; font-family: "Songti SC", serif; font-size: 28px; letter-spacing: -.03em; }
.top-actions { display: flex; align-items: center; gap: 10px; }
.search-button, .notice-button, .status-pill {
  border: 1px solid var(--line); background: rgba(255,255,255,.72);
}
.search-button {
  display: flex; align-items: center; gap: 8px; min-width: 170px; padding: 10px 13px;
  border-radius: 11px; color: #8b918d; cursor: pointer; font-size: 10px; text-align: left;
}
.status-pill {
  display: flex; align-items: center; gap: 8px; padding: 10px 13px; border-radius: 99px;
  color: #567267; font-size: 10px; font-weight: 700;
}
.status-pill i, .live i { width: 7px; height: 7px; border-radius: 50%; background: #4e9a71; box-shadow: 0 0 0 4px #e6f0e9; }
.notice-button {
  position: relative; display: grid; width: 38px; height: 38px; place-items: center;
  border-radius: 11px; cursor: pointer; font-size: 18px;
}
.notice-button b {
  position: absolute; top: -4px; right: -4px; display: grid; width: 17px; height: 17px;
  place-items: center; border: 2px solid var(--canvas); border-radius: 50%;
  background: var(--red); color: #fff; font-size: 8px;
}
.primary, .secondary, .ghost-button, .danger-button {
  border-radius: 10px; cursor: pointer; font-weight: 700; transition: 150ms ease;
}
.primary { padding: 12px 17px; border: 0; background: var(--green); color: #fff; box-shadow: 0 8px 22px rgba(28,74,61,.13); }
.primary:hover, .danger-button:hover { transform: translateY(-1px); filter: brightness(.95); }
.primary.compact { padding: 10px 14px; font-size: 10px; }
.primary.full, .secondary.full { width: 100%; }
.secondary { padding: 11px 15px; border: 1px solid #dcded8; background: #fff; }
.ghost-button { padding: 11px 15px; border: 0; background: #f1f1ed; }
.danger-button { padding: 12px 17px; border: 0; background: var(--red); color: #fff; }
.text-link { padding: 0; border: 0; background: transparent; color: var(--green); cursor: pointer; font-size: 10px; font-weight: 700; }
.view { display: none; animation: fade-in 220ms ease; }
.view.active { display: block; }
@keyframes fade-in { from { opacity: 0; transform: translateY(5px); } }
.executive-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(320px,.75fr); gap: 16px; }
.revenue-card, .brief-card, .panel, .daily-summary article, .daily-store-card, .finance-hero article {
  border: 1px solid var(--line); background: var(--paper); box-shadow: var(--shadow);
}
.revenue-card { min-height: 220px; padding: 28px 30px; border-radius: 20px; }
.revenue-head, .panel-head, .daily-store-head {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 18px;
}
.revenue-head span { color: var(--muted); font-size: 11px; }
.revenue-head button { border: 0; background: transparent; color: var(--green); cursor: pointer; font-size: 10px; font-weight: 700; }
.revenue-line { display: flex; align-items: flex-end; gap: 14px; margin-top: 17px; }
.revenue-line > strong { font-family: Georgia, serif; font-size: clamp(38px,4vw,55px); font-weight: 500; letter-spacing: -.05em; }
.trend { display: inline-flex; font-size: 9px; font-weight: 700; }
.positive { color: #3e8060 !important; }
.negative, .down { color: var(--red) !important; }
.revenue-line .trend { margin-bottom: 9px; padding: 5px 8px; border-radius: 99px; background: var(--green-soft); }
.revenue-facts { display: grid; grid-template-columns: repeat(4,1fr); margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--line); }
.revenue-facts span { padding-left: 18px; border-left: 1px solid var(--line); }
.revenue-facts span:first-child { padding-left: 0; border: 0; }
.revenue-facts strong, .revenue-facts small { display: block; }
.revenue-facts strong { font-size: 15px; }
.revenue-facts small { margin-top: 4px; color: var(--soft-muted); font-size: 9px; }
.brief-card {
  position: relative; overflow: hidden; min-height: 220px; padding: 28px;
  border-color: #284f43; border-radius: 20px; background: var(--green-dark); color: #fff;
}
.brief-card::after {
  position: absolute; right: -65px; bottom: -85px; width: 210px; height: 210px;
  border: 1px solid #31584c; border-radius: 50%; content: "";
}
.eyebrow { color: #8b928d; font-size: 9px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.brief-card .eyebrow { color: #8ea69c; }
.brief-card h2 { position: relative; z-index: 1; margin: 14px 0 8px; font-family: "Songti SC", serif; font-size: 24px; line-height: 1.45; font-weight: 600; }
.brief-card h2 em { color: #e0c58d; font-size: 31px; font-style: normal; }
.brief-card p { margin: 0; color: #8da299; font-size: 10px; }
.brief-card .text-link { position: absolute; bottom: 27px; left: 28px; z-index: 2; color: #d6c49f; }
.status-strip {
  display: grid; grid-template-columns: repeat(4,1fr); margin-top: 14px;
  overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: var(--shadow);
}
.status-cell {
  display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 11px;
  min-height: 91px; padding: 18px 20px; border: 0; border-right: 1px solid var(--line);
  background: transparent; cursor: pointer; text-align: left;
}
.status-cell:last-child { border-right: 0; }
.status-cell:hover { background: #fafaf7; }
.status-cell.critical { background: #fffaf9; }
.status-icon {
  display: grid; width: 34px; height: 34px; place-items: center; border-radius: 11px;
  background: var(--red-soft); color: var(--red); font-size: 14px; font-weight: 900;
}
.status-icon.amber { background: var(--amber-soft); color: var(--amber); }
.status-icon.green { background: var(--green-soft); color: var(--green); }
.status-icon.dark { background: #edf0ee; color: #54615b; }
.status-cell small, .status-cell strong { display: block; }
.status-cell small { color: var(--muted); font-size: 9px; }
.status-cell strong { margin-top: 2px; font-family: Georgia, serif; font-size: 22px; }
.status-cell em { grid-column: 2; color: var(--soft-muted); font-size: 8px; font-style: normal; }
.boss-command {
  display: grid; grid-template-columns: auto auto 1fr auto; align-items: center; gap: 12px;
  margin-top: 14px; padding: 14px 16px; border: 1px solid #dce3dd; border-radius: 15px;
  background: linear-gradient(100deg,#f8fbf8,#fff); box-shadow: var(--shadow);
}
.boss-command .ai-symbol { width: 34px; height: 34px; border-radius: 10px; font-size: 14px; }
.boss-command strong, .boss-command small { display: block; white-space: nowrap; }
.boss-command strong { font-size: 10px; }
.boss-command small { margin-top: 3px; color: var(--soft-muted); font-size: 8px; }
.boss-command input {
  width: 100%; padding: 11px 13px; border: 1px solid #dfe3de; border-radius: 10px;
  background: #fff; font-size: 9px;
}
.boss-command button { padding: 11px 17px; font-size: 9px; }
.dashboard-section { margin-top: 31px; }
.section-heading, .view-intro {
  display: flex; align-items: flex-end; justify-content: space-between; gap: 20px;
}
.section-heading h2, .view-intro h2 { margin: 7px 0 0; font-family: "Songti SC", serif; font-size: 24px; letter-spacing: -.025em; }
.time-estimate { color: var(--soft-muted); font-size: 9px; }
.decision-grid { display: grid; grid-template-columns: 1.28fr 1fr 1fr; gap: 14px; margin-top: 15px; }
.decision-card {
  display: flex; min-height: 177px; flex-direction: column; padding: 20px;
  border: 1px solid var(--line); border-radius: 17px; background: #fff; box-shadow: var(--shadow);
}
.decision-card.emergency { border-left: 4px solid var(--red); }
.card-meta { display: flex; align-items: center; justify-content: space-between; color: var(--muted); font-size: 9px; }
.mini-tag { padding: 4px 7px; border-radius: 6px; background: #f0f1ee; color: #667069; font-weight: 800; }
.mini-tag.red { background: var(--red-soft); color: var(--red); }
.decision-card h3 { margin: 13px 0 6px; font-size: 14px; line-height: 1.45; }
.decision-card p { margin: 0; color: var(--muted); font-size: 9px; line-height: 1.55; }
.decision-amount { margin: 10px 0 0; font-family: Georgia, serif; font-size: 25px; }
.card-actions { display: flex; gap: 7px; margin-top: auto; padding-top: 14px; }
.card-actions button { padding: 8px 12px; border: 1px solid var(--line); border-radius: 8px; background: #fff; cursor: pointer; font-size: 9px; font-weight: 800; }
.card-actions .approve { border-color: var(--green); background: var(--green); color: #fff; }
.card-actions .urgent-action { border-color: var(--red); background: var(--red); color: #fff; }
.dashboard-columns { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(350px,.7fr); gap: 15px; margin-top: 15px; }
.panel { border-radius: var(--radius); }
.store-panel, .activity-panel, .finance-table-panel, .insight-panel, .settings-panel, .authority-panel { padding: 23px; }
.panel-head h3 { margin: 6px 0 0; font-size: 15px; }
.store-table { margin-top: 17px; }
.store-table-head, .store-table-row { display: grid; grid-template-columns: 1.4fr 1fr .8fr .5fr; align-items: center; gap: 10px; }
.store-table-head { padding: 0 7px 9px; color: var(--soft-muted); font-size: 8px; }
.store-table-row { padding: 12px 7px; border-top: 1px solid #efeee9; font-size: 10px; }
.store-name { display: flex; align-items: center; gap: 9px; }
.store-name > span b, .store-name > span small { display: block; }
.store-name > span small { margin-top: 3px; color: var(--soft-muted); font-size: 8px; }
.store-avatar {
  display: grid; width: 31px; height: 31px; flex: 0 0 31px; place-items: center;
  border-radius: 10px; background: #dceae3; color: #32614e; font-style: normal; font-weight: 800;
}
.store-avatar.gold { background: #f3ead6; color: #896b37; }
.store-avatar.red { background: #f7e4e1; color: #9a493f; }
.store-table-row strong, .store-table-row small { display: block; }
.store-table-row small { margin-top: 3px; color: #4b8968; font-size: 8px; }
.done, .warn { justify-self: start; padding: 4px 7px; border-radius: 99px; font-size: 8px; font-weight: 800; }
.done { background: var(--green-soft); color: #3f755d; }
.warn { background: var(--amber-soft); color: #966b27; }
.score { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: var(--green-soft); color: var(--green); font-family: Georgia, serif; font-weight: 700; }
.warn-score { background: var(--amber-soft); color: var(--amber); }
.live { display: flex; align-items: center; gap: 7px; color: #6f8179; font-size: 9px; }
.activity-list { position: relative; display: grid; gap: 0; margin-top: 16px; }
.activity-list::before { position: absolute; top: 12px; bottom: 12px; left: 49px; width: 1px; background: #e5e6e1; content: ""; }
.activity-list > div { position: relative; display: grid; grid-template-columns: 36px 10px 1fr; gap: 9px; padding: 9px 0; }
.activity-list time { color: var(--soft-muted); font-size: 8px; }
.activity-dot { z-index: 1; width: 8px; height: 8px; border: 2px solid #fff; border-radius: 50%; }
.done-dot { background: #4f9470; box-shadow: 0 0 0 2px #dcebe2; }
.progress-dot { background: #bc8b3d; box-shadow: 0 0 0 2px #f1e6d2; }
.ai-dot { background: #4e665c; box-shadow: 0 0 0 2px #dfe4e1; }
.activity-list strong, .activity-list small { display: block; }
.activity-list strong { font-size: 10px; }
.activity-list small { margin-top: 4px; color: var(--soft-muted); font-size: 8px; }
.view-intro { margin: 5px 0 24px; }
.view-intro p { margin: 7px 0 0; color: var(--muted); font-size: 10px; }
.demo-chip {
  padding: 8px 11px; border: 1px solid #dce2dc; border-radius: 99px;
  background: #f8faf7; color: #66786f; font-size: 9px; font-weight: 700;
}
.submit-layout { display: grid; grid-template-columns: minmax(300px,.65fr) minmax(520px,1.35fr); gap: 18px; align-items: start; }
.phone-demo {
  display: flex; min-height: 640px; flex-direction: column; padding: 22px;
  border: 8px solid #1b2420; border-radius: 34px; background: #f1f3f0; box-shadow: 0 25px 70px rgba(24,39,31,.16);
}
.phone-top { display: flex; justify-content: space-between; padding-bottom: 16px; border-bottom: 1px solid #dde0da; font-size: 11px; font-weight: 700; }
.phone-top button { border: 0; background: transparent; }
.chat-date { align-self: center; margin: 20px 0; color: var(--soft-muted); font-size: 8px; }
.chat-bubble { display: flex; align-self: flex-end; align-items: center; gap: 13px; width: 70%; padding: 15px; border-radius: 15px 4px 15px 15px; background: #98d66f; }
.voice-bars { display: flex; align-items: center; gap: 3px; flex: 1; }
.voice-bars i { width: 2px; height: 9px; border-radius: 3px; background: #24452d; }
.voice-bars i:nth-child(2), .voice-bars i:nth-child(4) { height: 16px; }
.voice-bars i:nth-child(3) { height: 23px; }
.transcript { align-self: flex-end; width: 82%; margin: 10px 0 22px; color: #4f5d55; font-size: 10px; line-height: 1.7; text-align: right; }
.photo-placeholder { display: flex; align-self: flex-end; align-items: center; gap: 10px; width: 68%; padding: 14px; border-radius: 14px 4px 14px 14px; background: #fff; }
.photo-placeholder > span { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 10px; background: #dfe5e1; color: #69766f; }
.photo-placeholder strong, .photo-placeholder small { display: block; }
.photo-placeholder strong { font-size: 10px; }
.photo-placeholder small { margin-top: 4px; color: var(--soft-muted); font-size: 8px; }
.chat-spacer { flex: 1; }
.input-tools { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; padding-top: 15px; border-top: 1px solid #dfe1dc; }
.tool-button { padding: 12px 7px; border: 0; border-radius: 12px; background: #fff; font-size: 17px; }
.tool-button small { display: block; margin-top: 5px; color: #68736d; font-size: 8px; }
.ai-composer { min-height: 640px; padding: 25px; }
.composer-title { display: flex; align-items: center; gap: 11px; }
.ai-symbol, .ai-mini {
  display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px;
  background: var(--green-dark); color: #dec28a; font-size: 17px;
}
.composer-title strong, .composer-title small { display: block; }
.composer-title strong { font-size: 13px; }
.composer-title small { margin-top: 3px; color: var(--muted); font-size: 9px; }
#report-input {
  width: 100%; min-height: 132px; margin-top: 20px; resize: vertical; padding: 16px;
  border: 1px solid #dcdfd9; border-radius: 13px; background: #fafaf7; color: var(--ink);
  font-size: 11px; line-height: 1.7;
}
.attachment-row { display: flex; align-items: center; gap: 7px; margin-top: 9px; }
.attachment-row button { padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; cursor: pointer; color: #657069; font-size: 8px; }
.attachment-row span { margin-left: auto; color: var(--soft-muted); font-size: 8px; }
.upload-preview {
  display: flex; flex-wrap: wrap; gap: 7px; margin-top: 9px;
}
.upload-chip {
  display: inline-flex; align-items: center; gap: 6px; padding: 7px 10px;
  border: 1px solid #d9e0da; border-radius: 9px; background: var(--green-soft);
  color: #4d6d5e; font-size: 8px; font-weight: 700;
}
.analyze { width: 100%; margin-top: 12px; }
.analysis-result { margin-top: 19px; padding-top: 18px; border-top: 1px solid var(--line); }
.analysis-result.loading { opacity: .45; pointer-events: none; }
.analysis-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.analysis-head > div { display: flex; gap: 7px; }
.risk-tag, .priority-tag, .confidence { padding: 5px 8px; border-radius: 6px; font-size: 8px; font-weight: 800; }
.risk-tag.r4 { background: var(--red-soft); color: var(--red); }
.priority-tag.p1 { background: var(--amber-soft); color: var(--amber); }
.confidence { color: #6e7b74; background: #f0f2ef; }
.analysis-result h3 { margin: 16px 0 6px; font-size: 16px; }
.analysis-result > p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.65; }
.analysis-result dl { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px; margin: 16px 0; }
.analysis-result dl div { padding: 10px; border-radius: 9px; background: #f6f6f2; }
.analysis-result dt { color: var(--soft-muted); font-size: 8px; }
.analysis-result dd { margin: 4px 0 0; font-size: 9px; font-weight: 700; }
.action-advice { padding: 13px 15px; border-left: 3px solid var(--gold); border-radius: 0 10px 10px 0; background: var(--gold-soft); }
.action-advice strong { font-size: 10px; }
.action-advice ol { margin: 8px 0 0; padding-left: 18px; color: #6d5b3e; font-size: 9px; line-height: 1.8; }
.analysis-result .full { margin-top: 13px; }
.submit-context-row { display: grid; grid-template-columns: repeat(2,1fr); gap: 9px; margin-top: 18px; }
.submit-context-row label { display: grid; gap: 6px; color: var(--muted); font-size: 8px; }
.submit-context-row select { width: 100%; padding: 10px; border: 1px solid #dcdfd9; border-radius: 10px; background: #fafaf7; }
.staff-history { margin-top: 28px; }
.task-toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.filters { display: flex; gap: 5px; padding: 4px; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.filter { padding: 8px 12px; border: 0; border-radius: 8px; background: transparent; color: var(--muted); cursor: pointer; font-size: 9px; font-weight: 700; }
.filter.active { background: var(--green); color: #fff; }
.task-toolbar > span { color: var(--muted); font-size: 9px; }
.task-list { display: grid; gap: 9px; }
.task-row {
  display: grid; grid-template-columns: 42px 1.6fr .7fr .55fr .55fr auto; align-items: center; gap: 14px;
  padding: 15px 17px; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: 0 8px 25px rgba(25,40,32,.035);
}
.task-risk { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; background: #f0f1ee; color: #66716b; font-size: 9px; font-weight: 900; }
.task-risk.high { background: var(--red-soft); color: var(--red); }
.task-risk.medium { background: var(--amber-soft); color: var(--amber); }
.task-main strong, .task-main small { display: block; }
.task-main strong { font-size: 11px; }
.task-main small { margin-top: 4px; color: var(--soft-muted); font-size: 8px; }
.task-cell { color: #53605a; font-size: 9px; }
.task-cell small { display: block; margin-bottom: 3px; color: var(--soft-muted); font-size: 7px; }
.task-status { justify-self: start; padding: 5px 8px; border-radius: 99px; background: #edf0ed; color: #64716a; font-size: 8px; font-weight: 800; }
.task-status.approval { background: var(--amber-soft); color: var(--amber); }
.task-status.processing { background: var(--green-soft); color: var(--green); }
.task-status.closed { background: #edf0ed; color: #637169; }
.task-action { padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; cursor: pointer; font-size: 8px; font-weight: 800; }
.daily-summary, .finance-hero { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.daily-summary article, .finance-hero article { padding: 20px; border-radius: 15px; }
.daily-summary small, .daily-summary strong, .daily-summary span, .finance-hero small, .finance-hero strong, .finance-hero span { display: block; }
.daily-summary small, .finance-hero small { color: var(--muted); font-size: 9px; }
.daily-summary strong, .finance-hero strong { margin: 9px 0 5px; font-family: Georgia, serif; font-size: 25px; }
.daily-summary span, .finance-hero span { color: var(--soft-muted); font-size: 8px; }
.daily-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 13px; margin-top: 14px; }
.daily-store-card { padding: 21px; border-radius: 17px; }
.daily-store-card.attention { border-top: 3px solid #c69549; }
.module-progress { height: 4px; margin: 18px 0 10px; overflow: hidden; border-radius: 9px; background: #ecece8; }
.module-progress span { display: block; height: 100%; background: #4d8b69; }
.attention .module-progress span { background: #bd8b3d; }
.module-tags { display: flex; flex-wrap: wrap; gap: 5px; }
.module-tags span { padding: 4px 6px; border-radius: 6px; background: var(--green-soft); color: #4f775f; font-size: 7px; }
.module-tags .pending { background: var(--amber-soft); color: var(--amber); }
.daily-numbers { display: grid; grid-template-columns: repeat(3,1fr); gap: 5px; margin: 17px 0; }
.daily-numbers span { padding: 10px; border-radius: 9px; background: #f7f7f4; }
.daily-numbers small, .daily-numbers b { display: block; }
.daily-numbers small { color: var(--soft-muted); font-size: 7px; }
.daily-numbers b { margin-top: 4px; font-size: 11px; }
.daily-store-card p { min-height: 42px; margin: 0 0 14px; color: #67716c; font-size: 9px; line-height: 1.65; }
.report-detail { font-size: 9px; }
.date-switch { display: flex; align-items: center; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.date-switch button { width: 34px; height: 34px; border: 0; background: transparent; cursor: pointer; }
.date-switch span { padding: 0 12px; color: #53605a; font-size: 9px; }
.finance-layout { display: grid; grid-template-columns: 1.35fr .65fr; gap: 14px; margin-top: 14px; }
.finance-table { margin-top: 18px; }
.finance-row { display: grid; grid-template-columns: 1.1fr 1fr .7fr .8fr .7fr .8fr; align-items: center; gap: 9px; padding: 13px 5px; border-top: 1px solid #efeee9; font-size: 9px; }
.finance-row.table-head { padding-top: 0; border: 0; color: var(--soft-muted); font-size: 8px; }
.neutral, .warning-label { justify-self: start; padding: 4px 7px; border-radius: 99px; font-size: 7px; }
.neutral { background: var(--green-soft); color: var(--green); }
.warning-label { background: var(--amber-soft); color: var(--amber); }
.insight-panel .panel-head { align-items: center; }
.ai-mini { width: 30px; height: 30px; border-radius: 9px; font-size: 13px; }
.insight-item { display: grid; grid-template-columns: auto 1fr; gap: 11px; padding: 16px 0; border-top: 1px solid #efeee9; }
.insight-item:first-of-type { margin-top: 10px; }
.insight-item > span { color: #b09664; font-family: Georgia, serif; font-size: 13px; }
.insight-item strong { font-size: 10px; }
.insight-item p { margin: 5px 0 0; color: var(--muted); font-size: 8px; line-height: 1.65; }
.settings-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.integration-panel { grid-column: 1 / -1; padding: 23px; }
.integration-form { display: grid; grid-template-columns: repeat(2,1fr); gap: 11px; margin-top: 18px; }
.integration-form label { display: grid; gap: 6px; color: var(--muted); font-size: 8px; }
.integration-form label.wide { grid-column: 1 / -1; }
.integration-form input { width: 100%; padding: 11px; border: 1px solid #dcdfd9; border-radius: 9px; background: #fafaf7; }
.integration-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 15px; }
.integration-actions button { font-size: 9px; }
.config-note { margin: 12px 0 0; color: var(--soft-muted); font-size: 8px; }
.settings-store-list { margin-top: 15px; }
.settings-store { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 12px; padding: 13px 0; border-top: 1px solid #efeee9; }
.settings-store > span:nth-child(2) { color: var(--muted); font-size: 9px; }
.settings-store > button { padding: 7px 9px; border: 1px solid var(--line); border-radius: 7px; background: #fff; cursor: pointer; font-size: 8px; }
.registration-panel { grid-column: 1 / -1; }
.registration-list { display: grid; gap: 8px; margin-top: 15px; }
.registration-item {
  display: grid; grid-template-columns: 1.4fr .8fr .8fr auto; align-items: center; gap: 12px;
  padding: 13px; border: 1px solid var(--line); border-radius: 13px; background: #fafaf8;
}
.registration-item strong, .registration-item small { display: block; }
.registration-item strong { font-size: 10px; }
.registration-item small { margin-top: 4px; color: var(--soft-muted); font-size: 8px; }
.registration-actions { display: flex; gap: 6px; }
.registration-actions button { padding: 7px 10px; border: 1px solid var(--line); border-radius: 999px; background: #fff; cursor: pointer; font-size: 8px; }
.registration-actions .approve-registration { border-color: #1d1d1d; background: #1d1d1d; color: #fff; }
.user-actions { display: flex; gap: 5px; }
.user-actions button { padding: 6px 8px; border: 1px solid var(--line); border-radius: 999px; background: #fff; cursor: pointer; font-size: 7px; }
.user-create-form { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }
.user-create-form input, .user-create-form select { width: 100%; padding: 10px; border: 1px solid #dcdfd9; border-radius: 9px; background: #fafaf7; font-size: 9px; }
.user-create-form button { grid-column: 1 / -1; }
.authority-value { padding: 6px 9px; border-radius: 8px; background: var(--green); color: #fff; font-size: 9px; font-weight: 800; }
#authority-range { width: 100%; margin: 25px 0 10px; accent-color: var(--green); }
.authority-labels { display: grid; grid-template-columns: repeat(5,1fr); color: var(--soft-muted); font-size: 7px; text-align: center; }
.authority-description { margin-top: 20px; padding: 14px; border-radius: 11px; background: var(--green-soft); }
.authority-description strong { font-size: 10px; }
.authority-description p { margin: 6px 0 0; color: #587066; font-size: 8px; line-height: 1.6; }
.rule-list { margin-top: 15px; }
.rule-list > div { display: flex; justify-content: space-between; padding: 11px 2px; border-top: 1px solid #efeee9; font-size: 9px; }
.rule-list span { color: var(--muted); }
.audit-layout { display: grid; grid-template-columns: 285px 1fr; gap: 14px; align-items: start; }
.audit-queue { padding: 19px; }
.queue-count {
  display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%;
  background: var(--red-soft); color: var(--red); font-size: 9px; font-weight: 900;
}
.audit-queue-item {
  display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 10px;
  width: 100%; margin-top: 9px; padding: 12px; border: 1px solid var(--line);
  border-radius: 11px; background: #fff; cursor: pointer; text-align: left;
}
.audit-queue-item.active { border-color: #9ab1a6; background: var(--green-soft); }
.audit-queue-item strong, .audit-queue-item small { display: block; }
.audit-queue-item strong { font-size: 9px; }
.audit-queue-item small { margin-top: 4px; color: var(--soft-muted); font-size: 7px; }
.audit-workspace { display: grid; grid-template-columns: .9fr 1.1fr; gap: 14px; }
.source-panel, .draft-panel { min-height: 595px; padding: 22px; }
.source-time { color: var(--soft-muted); font-size: 8px; }
.reporter-line { display: flex; align-items: center; gap: 9px; margin: 20px 0 15px; }
.small-avatar { width: 32px; height: 32px; font-size: 10px; }
.reporter-line strong, .reporter-line small { display: block; }
.reporter-line strong { font-size: 9px; }
.reporter-line small { margin-top: 3px; color: var(--soft-muted); font-size: 7px; }
.source-voice { display: flex; align-items: center; gap: 10px; padding: 13px; border-radius: 11px; background: #ecf4e8; }
.source-voice .voice-bars { max-width: 100px; }
.source-voice button { margin-left: auto; border: 0; background: transparent; color: var(--green); cursor: pointer; font-size: 8px; font-weight: 800; }
.source-panel blockquote {
  margin: 12px 0; padding: 14px; border: 0; border-radius: 11px; background: #f7f7f4;
  color: #525e58; font-size: 9px; line-height: 1.8;
}
.source-photo { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; }
.source-photo > span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 9px; background: #eceeea; }
.source-photo strong, .source-photo small { display: block; }
.source-photo strong { font-size: 8px; }
.source-photo small { margin-top: 3px; color: var(--soft-muted); font-size: 7px; }
.source-photo button { border: 0; background: transparent; color: var(--green); cursor: pointer; font-size: 8px; font-weight: 800; }
.safety-sent { display: flex; align-items: flex-start; gap: 10px; margin-top: 14px; padding: 12px; border-radius: 11px; background: var(--green-soft); }
.safety-sent > span { display: grid; width: 21px; height: 21px; flex: 0 0 21px; place-items: center; border-radius: 50%; background: var(--green); color: #fff; font-size: 8px; }
.safety-sent p { margin: 0; }
.safety-sent strong, .safety-sent small { display: block; }
.safety-sent strong { font-size: 8px; }
.safety-sent small { margin-top: 4px; color: #587067; font-size: 7px; line-height: 1.5; }
.audit-tags { display: flex; gap: 7px; margin: 20px 0 13px; }
.draft-panel label { display: grid; gap: 6px; margin-top: 11px; color: var(--muted); font-size: 8px; }
.draft-panel input, .draft-panel textarea, .draft-panel select {
  width: 100%; padding: 10px 11px; border: 1px solid #dcdfd9; border-radius: 9px;
  background: #fafaf7; color: var(--ink); font-size: 9px;
}
.draft-panel textarea { min-height: 74px; resize: vertical; line-height: 1.6; }
.audit-fields { display: grid; grid-template-columns: repeat(2,1fr); gap: 0 9px; }
.audit-actions { display: flex; justify-content: flex-end; gap: 7px; margin-top: 18px; padding-top: 15px; border-top: 1px solid var(--line); }
.audit-actions button { font-size: 8px; }
.mobile-nav { display: none; }
.modal-backdrop {
  position: fixed; inset: 0; z-index: 100; display: grid; place-items: center;
  padding: 22px; background: rgba(8,18,14,.62); backdrop-filter: blur(8px);
}
.hidden { display: none !important; }
.emergency-modal, .simple-modal {
  position: relative; width: min(520px,100%); padding: 30px; border-radius: 23px; background: #fff;
  box-shadow: 0 35px 100px rgba(0,0,0,.25); animation: modal-in 180ms ease;
}
@keyframes modal-in { from { opacity: 0; transform: translateY(8px) scale(.98); } }
.modal-close {
  position: absolute; top: 18px; right: 18px; display: grid; width: 30px; height: 30px;
  place-items: center; border: 0; border-radius: 50%; background: #f1f1ed; cursor: pointer; font-size: 19px;
}
.emergency-kicker { display: flex; gap: 7px; }
.emergency-kicker span { padding: 5px 8px; border-radius: 6px; background: var(--red-soft); color: var(--red); font-size: 8px; font-weight: 900; }
.emergency-modal h2, .simple-modal h2 { margin: 17px 40px 7px 0; font-family: "Songti SC", serif; font-size: 22px; line-height: 1.4; }
.event-meta { margin: 0; color: var(--muted); font-size: 9px; }
.countdown { display: flex; align-items: center; justify-content: space-between; margin: 20px 0; padding: 14px 16px; border-radius: 12px; background: var(--red-soft); color: var(--red-dark); }
.countdown span { font-size: 9px; font-weight: 700; }
.countdown strong { font-family: Georgia, serif; font-size: 25px; }
.emergency-actions-list { padding: 15px; border-radius: 12px; background: #f7f6f1; }
.emergency-actions-list strong { font-size: 10px; }
.emergency-actions-list ol { margin: 9px 0 0; padding-left: 19px; color: #5e6761; font-size: 9px; line-height: 1.85; }
.modal-buttons { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 13px; }
.modal-buttons .ghost-button { grid-column: 1 / -1; }
.notify-track { margin-top: 19px; border-top: 1px solid var(--line); padding-top: 8px; }
.notify-track > div { display: grid; grid-template-columns: 42px 10px 1fr; gap: 10px; padding: 8px 0; }
.notify-track span { color: var(--soft-muted); font-size: 8px; }
.notify-track i { width: 8px; height: 8px; margin-top: 2px; border-radius: 50%; background: #c0c5c1; }
.notify-track .complete i { background: #579573; }
.notify-track strong, .notify-track small { display: block; }
.notify-track strong { font-size: 9px; }
.notify-track small { margin-top: 3px; color: var(--soft-muted); font-size: 8px; }
.simple-modal label { display: grid; gap: 6px; margin-top: 14px; color: var(--muted); font-size: 9px; }
.simple-modal input, .simple-modal select { width: 100%; padding: 12px; border: 1px solid #dcdfd9; border-radius: 10px; background: #fafaf7; }
.simple-modal .primary { margin-top: 18px; }
.search-modal { width: min(650px,100%); }
.search-field {
  display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 10px;
  margin-top: 18px; padding: 0 14px; border: 1px solid #d9ddd8; border-radius: 12px;
  background: #fafaf7;
}
.search-field span { color: var(--muted); font-size: 18px; }
.search-field input { padding: 14px 0; border: 0; outline: 0; background: transparent; }
.search-results { display: grid; gap: 8px; max-height: 390px; margin-top: 14px; overflow-y: auto; }
.empty-search { margin: 20px 0; color: var(--soft-muted); font-size: 9px; text-align: center; }
.search-result {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px;
  width: 100%; padding: 12px; border: 1px solid var(--line); border-radius: 11px;
  background: #fff; cursor: pointer; text-align: left;
}
.search-result:hover { border-color: #a8b8b0; background: #fafcf9; }
.search-result > span:first-child {
  display: grid; width: 34px; height: 34px; place-items: center; border-radius: 10px;
  background: var(--green-soft); color: var(--green); font-size: 9px; font-weight: 900;
}
.search-result strong, .search-result small { display: block; }
.search-result strong { font-size: 10px; }
.search-result small { margin-top: 4px; color: var(--soft-muted); font-size: 8px; }
.search-result > em { color: var(--muted); font-size: 8px; font-style: normal; }
.task-detail-modal { width: min(620px,100%); }
.task-detail-head { padding-right: 38px; }
.task-detail-tags { display: flex; gap: 7px; margin-bottom: 12px; }
.task-detail-head h2 { margin-top: 10px; }
.task-detail-summary {
  margin: 16px 0; padding: 14px; border-radius: 11px; background: #f7f7f3;
  color: #59645e; font-size: 9px; line-height: 1.7;
}
.task-detail-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px; }
.task-detail-grid div { padding: 11px; border: 1px solid var(--line); border-radius: 10px; }
.task-detail-grid small, .task-detail-grid strong { display: block; }
.task-detail-grid small { color: var(--soft-muted); font-size: 7px; }
.task-detail-grid strong { margin-top: 4px; font-size: 9px; }
.decision-basis { margin-top: 14px; padding: 13px; border-left: 3px solid var(--gold); background: var(--gold-soft); }
.decision-basis strong { font-size: 9px; }
.decision-basis p { margin: 5px 0 0; color: #6d6049; font-size: 8px; line-height: 1.6; }
.reject-box { display: grid; gap: 7px; margin-top: 12px; }
.reject-box textarea { min-height: 70px; padding: 10px; border: 1px solid #dddeda; border-radius: 9px; resize: vertical; }
.task-detail-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 16px; }
.task-detail-actions button { font-size: 9px; }
.task-admin-box { display: grid; grid-template-columns: 1fr 1fr 1fr auto; align-items: end; gap: 8px; margin-top: 15px; padding-top: 15px; border-top: 1px solid var(--line); }
.task-admin-box label { display: grid; gap: 5px; color: var(--muted); font-size: 8px; }
.task-admin-box input, .task-admin-box select { width: 100%; padding: 9px; border: 1px solid #dddeda; border-radius: 9px; background: #fafaf7; }
.attachment-link { display: inline-flex; margin-top: 13px; color: #e8623e; font-size: 9px; font-weight: 700; }
.success-message { color: #a9d4bc !important; }
.modal-help { margin: -2px 0 16px; color: var(--muted); font-size: 9px; }
.daily-edit-modal { width: min(720px,100%); }
.daily-editor { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.daily-editor label { margin-top: 0; }
.daily-editor label.wide { grid-column: 1 / -1; }
.daily-editor textarea { min-height: 84px; padding: 11px; border: 1px solid #dcdfd9; border-radius: 10px; background: #fafaf7; resize: vertical; }
.collaborators { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.collaborators span { padding: 5px 8px; border-radius: 99px; background: var(--green-soft); color: var(--green); font-size: 8px; font-weight: 800; }
.collaborators span:last-child { background: var(--amber-soft); color: var(--amber); }
.collaborators span.confirmed { background: var(--green); color: #fff; }
.toast {
  position: fixed; right: 25px; bottom: 25px; z-index: 120; padding: 12px 16px;
  border-radius: 10px; background: #142c24; color: #fff; font-size: 10px;
  opacity: 0; pointer-events: none; transform: translateY(10px); transition: 180ms ease;
  box-shadow: 0 15px 35px rgba(12,31,23,.22);
}
.toast.show { opacity: 1; transform: translateY(0); }

@media (max-width: 1260px) {
  .main { padding-right: 25px; padding-left: 25px; }
  .decision-grid { grid-template-columns: 1.2fr 1fr; }
  .decision-grid .decision-card:last-child { grid-column: 1 / -1; min-height: 135px; }
  .dashboard-columns { grid-template-columns: 1fr; }
  .activity-list { grid-template-columns: repeat(2,1fr); column-gap: 20px; }
  .activity-list::before { display: none; }
}

@media (max-width: 760px) {
  .login-screen { grid-template-columns: 1fr; overflow-y: auto; }
  .login-brand { min-height: 270px; padding: 34px 25px; }
  .login-brand .brand-mark { margin-bottom: 18px; }
  .login-brand h1 { margin: 13px 0; font-size: 34px; }
  .login-brand p { font-size: 10px; }
  .login-points { margin-top: 12px; }
  .login-card { margin: -22px auto 30px; padding: 27px; }
  body { min-width: 0; padding-bottom: 74px; }
  .app-shell { display: block; }
  .sidebar { display: none; }
  .main { max-width: none; padding: 0 15px 30px; }
  .topbar { min-height: 84px; }
  .topbar h1 { font-size: 23px; }
  .top-actions .status-pill, .top-actions .primary { display: none; }
  .top-actions .search-button {
    display: grid; width: 38px; min-width: 38px; height: 38px; padding: 0; place-items: center;
    font-size: 18px; text-align: center;
  }
  .top-actions .search-button span { display: none; }
  .executive-grid, .submit-layout, .finance-layout, .settings-layout { grid-template-columns: 1fr; }
  .revenue-card, .brief-card { min-height: 205px; padding: 22px; }
  .revenue-line { display: block; }
  .revenue-line > strong { font-size: 39px; }
  .revenue-line .trend { margin: 9px 0 0; }
  .revenue-facts { grid-template-columns: repeat(2,1fr); gap: 15px 0; }
  .revenue-facts span:nth-child(3) { padding-left: 0; border-left: 0; }
  .status-strip { grid-template-columns: repeat(2,1fr); }
  .status-cell:nth-child(2) { border-right: 0; }
  .status-cell:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .decision-grid, .daily-grid, .daily-summary, .finance-hero { grid-template-columns: 1fr; }
  .boss-command { grid-template-columns: auto 1fr auto; }
  .boss-command > div { display: none; }
  .decision-grid .decision-card:last-child { grid-column: auto; }
  .dashboard-columns { grid-template-columns: 1fr; }
  .store-table-head { display: none; }
  .store-table-row { grid-template-columns: 1.2fr 1fr .7fr; }
  .store-table-row .score { display: none; }
  .activity-list { grid-template-columns: 1fr; }
  .view-intro { align-items: flex-start; }
  .view-intro h2 { font-size: 22px; }
  .phone-demo { display: none; }
  .ai-composer { min-height: 0; padding: 18px; }
  .analysis-result dl { grid-template-columns: 1fr; }
  .task-toolbar { align-items: flex-start; gap: 10px; }
  .filters { max-width: 100%; overflow-x: auto; }
  .filter { white-space: nowrap; }
  .task-row { grid-template-columns: 38px 1fr auto; gap: 10px; }
  .task-row .task-cell { display: none; }
  .task-status { grid-column: 2; }
  .task-action { grid-column: 3; grid-row: 1 / 3; }
  .finance-row { grid-template-columns: 1fr 1fr .8fr; }
  .finance-row span:nth-child(3), .finance-row span:nth-child(4), .finance-row span:nth-child(6) { display: none; }
  .authority-labels { font-size: 6px; }
  .audit-layout, .audit-workspace { grid-template-columns: 1fr; }
  .audit-queue { display: none; }
  .source-panel, .draft-panel { min-height: 0; }
  .audit-fields { grid-template-columns: 1fr; }
  .daily-editor, .task-detail-grid { grid-template-columns: 1fr; }
  .integration-form { grid-template-columns: 1fr; }
  .user-create-form { grid-template-columns: 1fr; }
  .user-create-form button { grid-column: auto; }
  .integration-form label.wide { grid-column: auto; }
  .daily-editor label.wide { grid-column: auto; }
  .task-detail-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .task-admin-box { grid-template-columns: 1fr; }
  .mobile-nav {
    position: fixed; right: 0; bottom: 0; left: 0; z-index: 50;
    display: grid; grid-template-columns: repeat(5,1fr); min-height: 66px;
    border-top: 1px solid var(--line); background: rgba(255,255,255,.94); backdrop-filter: blur(15px);
  }
  .mobile-nav button {
    display: grid; place-content: center; justify-items: center; gap: 4px;
    border: 0; background: transparent; color: #8a918d; font-size: 8px;
  }
  .mobile-nav button span { font-size: 16px; }
  .mobile-nav button.active { color: var(--green); font-weight: 800; }
  .mobile-nav .mobile-ai span {
    display: grid; width: 34px; height: 34px; margin-top: -18px; place-items: center;
    border-radius: 50%; background: var(--green); color: #e4c992; box-shadow: 0 7px 18px rgba(28,74,61,.25);
  }
  .modal-backdrop { align-items: end; padding: 0; }
  .emergency-modal, .simple-modal { max-height: 92vh; overflow-y: auto; border-radius: 23px 23px 0 0; }
  .toast { right: 15px; bottom: 82px; left: 15px; text-align: center; }
}

/* 2026 visual system: monochrome workspace + orange AI accent */
:root {
  --ink: #171717;
  --muted: #727272;
  --soft-muted: #a0a0a0;
  --canvas: #e9e9e7;
  --paper: rgba(255,255,255,.92);
  --line: #dededb;
  --green: #202020;
  --green-dark: #171717;
  --green-soft: #eeeeec;
  --gold: #ef6a45;
  --gold-soft: #fff0eb;
  --red: #dc4e3f;
  --red-dark: #9f3028;
  --red-soft: #fff0ed;
  --amber: #ef6a45;
  --amber-soft: #fff0e9;
  --shadow: 0 18px 55px rgba(20,20,20,.07);
  --radius: 22px;
}

body {
  background:
    radial-gradient(circle at 85% 0%, rgba(255,255,255,.9), transparent 28%),
    linear-gradient(145deg,#ededeb,#e5e5e2);
  color: #171717;
}

.sidebar {
  width: 220px; margin: 18px 0 18px 18px; padding: 24px 15px 18px;
  border: 1px solid rgba(255,255,255,.13); border-radius: 28px;
  background: linear-gradient(165deg,#4a4a49 0%,#282827 100%);
  box-shadow: 0 30px 70px rgba(0,0,0,.2);
}
.app-shell { grid-template-columns: 238px 1fr; }
.main { padding-left: 38px; }
.brand-mark { border-radius: 50%; background: #fff; color: #181818; }
.brand-copy small { color: #929292; }
.brand-context { border-color: rgba(255,255,255,.1); border-radius: 18px; background: rgba(255,255,255,.055); }
.context-logo { border-radius: 50%; background: #f36b45; color: #fff; }
.brand-context small, .chevron { color: #9c9c9b; }
.nav-item { border-radius: 14px; color: #b7b7b5; }
.nav-item:hover { background: rgba(255,255,255,.08); }
.nav-item.active { background: #f8f8f6; color: #171717; box-shadow: 0 8px 24px rgba(0,0,0,.14); }
.nav-badge { background: #f36b45; }
.ai-side-card { border-color: rgba(255,255,255,.1); border-radius: 20px; background: rgba(255,255,255,.07); }
.ai-orbit { color: #ff7850; }
.ai-progress { background: rgba(255,255,255,.12); }
.ai-progress span { background: #f36b45; }
.profile { border-color: rgba(255,255,255,.12); }
.avatar { background: #f36b45; color: #fff; }

.topbar { min-height: 118px; }
.topbar h1, .section-heading h2, .view-intro h2, .brief-card h2 {
  font-family: Inter, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  font-weight: 700; letter-spacing: -.045em;
}
.topbar h1 { font-size: 32px; }
.search-button, .notice-button, .status-pill {
  border-color: rgba(0,0,0,.07); background: rgba(255,255,255,.76); box-shadow: 0 7px 24px rgba(0,0,0,.035);
}
.status-pill i, .live i { background: #f36b45; box-shadow: 0 0 0 4px #ffe8df; }
.primary { border-radius: 999px; background: #1b1b1b; box-shadow: 0 9px 24px rgba(0,0,0,.16); }
.primary:hover { background: #f36b45; filter: none; }
.secondary, .ghost-button { border-radius: 999px; }
.text-link { color: #222; }

.revenue-card, .brief-card, .panel, .daily-summary article, .daily-store-card, .finance-hero article,
.status-strip, .decision-card, .task-row, .boss-command {
  border-color: rgba(0,0,0,.065); background: rgba(255,255,255,.88);
  box-shadow: 0 18px 50px rgba(0,0,0,.055);
  backdrop-filter: blur(18px);
}
.revenue-card, .brief-card { border-radius: 28px; }
.revenue-card { min-height: 235px; }
.brief-card {
  border: 0; background:
    radial-gradient(circle at 94% 8%,rgba(243,107,69,.38),transparent 28%),
    linear-gradient(145deg,#3e3e3c,#222);
}
.brief-card::after { border-color: rgba(255,255,255,.11); }
.brief-card h2 em { color: #ff7952; }
.brief-card .text-link { color: #ff9b7d; }
.revenue-line > strong { font-family: Inter, sans-serif; font-weight: 600; }
.revenue-line .trend, .positive { color: #e65f3a !important; }
.revenue-line .trend { background: #fff0ea; }
.status-strip { border-radius: 22px; }
.status-icon, .status-icon.amber { border-radius: 50%; background: #fff0eb; color: #ed6742; }
.status-icon.green, .status-icon.dark { background: #eeeeec; color: #222; }
.boss-command { border-radius: 22px; }
.boss-command .ai-symbol, .ai-symbol, .ai-mini { background: #f36b45; color: #fff; }
.boss-command input { border: 0; border-radius: 999px; background: #f1f1ef; }
.decision-grid { gap: 16px; }
.decision-card { border-radius: 22px; }
.decision-card.emergency { border-left: 0; box-shadow: inset 4px 0 #dc4e3f, var(--shadow); }
.card-actions button, .task-action { border-radius: 999px; }
.card-actions .approve { border-color: #1b1b1b; background: #1b1b1b; }
.panel { border-radius: 24px; }
.store-avatar { border-radius: 50%; background: #eeeeec; color: #222; }
.store-avatar.gold { background: #fff0ea; color: #ef6a45; }
.store-avatar.red { background: #f2e9e7; color: #b64c42; }
.done { background: #eeeeec; color: #282828; }
.score { background: #1d1d1d; color: #fff; }
.warn-score { background: #f36b45; color: #fff; }
.activity-dot.done-dot, .activity-dot.progress-dot, .activity-dot.ai-dot { background: #f36b45; box-shadow: 0 0 0 3px #ffe8df; }
.phone-demo { border-color: #252525; background: #ececea; }
.chat-bubble { background: #222; color: #fff; }
.voice-bars i { background: #fff; }
.analysis-result dl div, .daily-numbers span { background: #f1f1ef; }
.action-advice { border-left-color: #f36b45; background: #fff1eb; }
.filter.active { background: #202020; }
.task-risk.high { background: #fff0ed; color: #dc4e3f; }
.task-risk.medium, .task-status.approval { background: #fff0e9; color: #e8623e; }
.task-status.processing { background: #ededeb; color: #222; }
.module-progress span { background: #222; }
.attention .module-progress span { background: #f36b45; }
.neutral { background: #ededeb; color: #222; }
.warning-label { background: #fff0e9; color: #e8623e; }
.authority-value { background: #1c1c1c; }
#authority-range { accent-color: #f36b45; }
.authority-description, .safety-sent { background: #efefed; }
.audit-queue-item.active { border-color: #d6d6d3; background: #efefed; }
.source-voice { background: #ededeb; }
.modal-backdrop { background: rgba(12,12,12,.7); }
.emergency-modal, .simple-modal { border: 1px solid rgba(255,255,255,.4); border-radius: 28px; }
.toast { border-radius: 999px; background: #1d1d1d; }

/* Authentication screen inspired by the supplied dark identity panel */
.login-screen {
  display: block; overflow: hidden; background:
    radial-gradient(circle at 22% 65%,rgba(50,111,178,.16),transparent 25%),
    linear-gradient(145deg,#030405,#080a0d 58%,#020303);
}
.login-screen::before {
  position: absolute; left: -18vw; bottom: -36vh; width: 76vw; height: 108vh;
  border: 34px solid rgba(176,218,255,.8); border-right-color: transparent;
  border-radius: 50%; filter: blur(16px); transform: rotate(24deg); opacity: .88; content: "";
  box-shadow: 0 0 45px rgba(107,177,255,.55), inset 0 0 22px rgba(255,255,255,.85);
}
.login-screen::after {
  position: absolute; inset: 0; z-index: 0; pointer-events: none; content: "";
  background: radial-gradient(circle at 50% 50%,transparent 0 28%,rgba(0,0,0,.23) 60%,rgba(0,0,0,.58) 100%);
}
.login-brand {
  position: absolute; inset: 0; z-index: 1; display: block; padding: 54px 6vw;
  background: transparent; pointer-events: none;
}
.login-brand .brand-mark { position: absolute; top: 48px; left: 6vw; width: 46px; height: 46px; margin: 0; background: rgba(255,255,255,.1); color: #fff; box-shadow: inset 0 0 0 1px rgba(255,255,255,.14); }
.login-brand .eyebrow { position: absolute; top: 58px; left: calc(6vw + 63px); color: #78808c; font-family: ui-monospace, monospace; letter-spacing: .25em; }
.login-brand h1 { position: absolute; left: 6vw; bottom: 72px; max-width: 480px; margin: 0; color: rgba(255,255,255,.92); font-size: clamp(25px,3vw,42px); }
.login-brand p { display: none; }
.login-points { position: absolute; right: 6vw; bottom: 78px; margin: 0; color: #69717d; font-family: ui-monospace, monospace; letter-spacing: .12em; }
.login-card {
  position: relative; z-index: 2; align-self: auto; width: min(530px,calc(100% - 40px)); margin: 50vh auto 0;
  padding: 52px 58px 45px; border: 1px solid rgba(255,255,255,.075); border-radius: 42px;
  background: linear-gradient(145deg,rgba(25,27,32,.76),rgba(8,10,13,.76));
  color: #fff; backdrop-filter: blur(26px); transform: translateY(-50%);
  box-shadow: 0 35px 100px rgba(0,0,0,.58), inset 0 1px rgba(255,255,255,.04);
}
.login-card::before {
  position: absolute; top: -34px; right: 2px; color: #6f7681; content: "SECURE ACCESS  /  V03.01";
  font: 9px ui-monospace, monospace; letter-spacing: .18em;
}
.login-card .eyebrow {
  display: inline-flex; padding: 7px 12px; border-radius: 999px; background: rgba(255,255,255,.07);
  color: #c9cbd0; font-family: ui-monospace, monospace; letter-spacing: .18em;
}
.login-card h2 { margin: 20px 0 7px; color: #fff; font-family: Inter,sans-serif; font-size: 35px; font-weight: 500; letter-spacing: -.04em; }
.login-card > p { color: #858991; font-size: 11px; }
.login-card label { margin-top: 18px; color: #92969f; font-family: ui-monospace, monospace; letter-spacing: .12em; }
.login-card input {
  padding: 16px 18px; border: 1px solid rgba(255,255,255,.055); border-radius: 999px;
  background: rgba(255,255,255,.075); color: #fff; box-shadow: inset 0 1px 12px rgba(0,0,0,.15);
}
.login-card input:focus { border-color: rgba(160,204,255,.42); background: rgba(255,255,255,.1); }
.login-card form .primary {
  margin-top: 28px; padding: 17px; background: #fff; color: #111; font-size: 11px; letter-spacing: .08em;
}
.login-card form .primary:hover { background: #e9f3ff; }
.login-error { color: #ff856d; }
.role-demo { border-color: rgba(255,255,255,.07); }
.role-demo small { color: #686d76; }

@media (max-width: 760px) {
  .sidebar { margin: 0; }
  .main { padding-left: 15px; }
  .login-screen { display: block; min-height: 100dvh; }
  .login-screen::before { left: -64vw; bottom: -26vh; width: 130vw; height: 95vh; border-width: 22px; }
  .login-brand { min-height: 0; padding: 0; }
  .login-brand .brand-mark { top: 28px; left: 24px; }
  .login-brand .eyebrow { top: 39px; left: 84px; max-width: 230px; font-size: 7px; }
  .login-brand h1, .login-points { display: none; }
  .login-card { width: calc(100% - 30px); margin-top: 52vh; padding: 34px 25px 28px; border-radius: 30px; }
  .login-card::before { top: -24px; right: 8px; font-size: 7px; }
  .login-card h2 { font-size: 30px; }
  .login-card > .eyebrow { margin-bottom: 4px; }
  .login-card > p { margin-bottom: 0; }
  .auth-tabs { margin: 19px 0 4px; }
  .register-grid, .submit-context-row { grid-template-columns: 1fr; }
  .registration-item { grid-template-columns: 1fr; }
  .registration-actions { justify-content: flex-start; }
}
