:root {
  color-scheme: light;
  --bg: #f4f6fb;
  --paper: #ffffff;
  --ink: #172033;
  --muted: #6c7588;
  --line: #e3e7ef;
  --soft: #eef2f8;
  --navy: #172446;
  --blue: #365cf5;
  --blue-soft: #edf1ff;
  --mint: #13a77b;
  --mint-soft: #e7f8f2;
  --amber: #c47b15;
  --amber-soft: #fff5df;
  --red: #d84d55;
  --red-soft: #fff0f1;
  --violet: #7559d9;
  --shadow: 0 18px 50px rgba(29, 42, 75, 0.08);
  --radius: 22px;
  font-family: Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--bg); }
body { margin: 0; min-height: 100%; color: var(--ink); background: var(--bg); overflow-x: hidden; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }

.shell { min-height: 100vh; display: grid; grid-template-columns: 236px minmax(0, 1fr); }
.sidebar {
  position: sticky; top: 0; height: 100vh; padding: 28px 18px; background: var(--navy); color: white;
  display: flex; flex-direction: column; z-index: 20;
}
.brand { display: flex; align-items: center; gap: 12px; padding: 0 10px 28px; }
.brand-mark { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(145deg, #6b83ff, #3858e8); font-weight: 900; box-shadow: 0 8px 24px rgba(54,92,245,.4); }
.brand-title { font-size: 15px; font-weight: 850; letter-spacing: .04em; }
.brand-sub { color: #aeb8d2; font-size: 11px; margin-top: 2px; }
.nav { display: grid; gap: 5px; }
.nav-button { width: 100%; border: 0; background: transparent; color: #b8c1d8; border-radius: 13px; padding: 13px; display: flex; gap: 11px; align-items: center; text-align: left; cursor: pointer; font-size: 16px; font-weight: 700; }
.nav-button:hover { color: white; background: rgba(255,255,255,.07); }
.nav-button.active { color: white; background: rgba(109,133,255,.22); }
.nav-icon { width: 20px; text-align: center; font-size: 17px; }
.sidebar-foot { margin-top: auto; border-top: 1px solid rgba(255,255,255,.1); padding: 17px 10px 0; }
.system-line { display: flex; align-items: center; gap: 8px; font-size: 12px; color: #c4cbdb; }
.online-dot { width: 8px; height: 8px; border-radius: 999px; background: #42d59f; box-shadow: 0 0 0 4px rgba(66,213,159,.13); }
.sidebar-note { color: #8792ae; font-size: 11px; line-height: 1.5; margin-top: 8px; }

.content { min-width: 0; padding: 0 34px 44px; }
.topbar { height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.page-kicker { color: var(--blue); text-transform: uppercase; font-size: 12px; font-weight: 850; letter-spacing: .13em; }
.page-title { margin: 4px 0 0; font-size: 28px; line-height: 1.2; letter-spacing: -.03em; }
.top-actions { display: flex; gap: 9px; align-items: center; }
.icon-button, .ghost-button { border: 1px solid var(--line); background: var(--paper); border-radius: 12px; cursor: pointer; min-height: 42px; padding: 0 13px; box-shadow: 0 2px 8px rgba(29,42,75,.03); }
.icon-button { width: 42px; padding: 0; display: grid; place-items: center; }
.ghost-button:hover, .icon-button:hover { border-color: #bfc8da; background: #fafbfe; }

.hero {
  overflow: hidden; position: relative; background: linear-gradient(135deg, #18264a 0%, #273a73 68%, #365cf5 130%);
  color: white; border-radius: 28px; padding: 28px; box-shadow: var(--shadow);
}
.owner-action { margin-bottom: 17px; border: 1px solid #cbd6eb; background: linear-gradient(135deg,#ffffff,#f1f5ff); border-radius: 22px; padding: 21px 23px; display: flex; justify-content: space-between; align-items: center; gap: 18px; box-shadow: 0 10px 30px rgba(29,42,75,.05); }
.owner-action-wait { border-color: #edc66f; background: linear-gradient(135deg,#fffdf7,#fff4d9); }
.owner-action-danger { border-color: #e8aeb4; background: linear-gradient(135deg,#fffafa,#fff0f1); }
.owner-action-danger .owner-action-count { color: #b43e47; }
.owner-action-label { color: var(--blue); font-size: 14px; font-weight: 900; }
.owner-action h2 { margin: 6px 0 4px; font-size: 22px; line-height: 1.4; letter-spacing: -.025em; }
.owner-action p { margin: 0; color: #5d6679; font-size: 15px; line-height: 1.6; }
.owner-action-count, .owner-action-state { flex: 0 0 auto; border-radius: 16px; padding: 13px 15px; background: white; color: #9a5e0e; font-size: 18px; font-weight: 900; box-shadow: 0 6px 18px rgba(29,42,75,.06); }
.owner-action-state { color: var(--blue); }
.runtime-summary { margin-bottom: 17px; border: 1px solid var(--line); background: #fff; border-radius: 20px; padding: 18px 22px; display: flex; justify-content: space-between; align-items: center; gap: 18px; }
.runtime-summary-live { border-color: #8eb4ff; background: linear-gradient(135deg,#f8fbff,#eaf2ff); }
.runtime-summary-wait { border-color: #edc66f; background: linear-gradient(135deg,#fffdf8,#fff7e5); }
.runtime-label { color: var(--blue); font-size: 13px; font-weight: 900; }
.runtime-summary h2 { margin: 5px 0 3px; font-size: 19px; line-height: 1.4; }
.runtime-summary p { margin: 0; color: #5d6679; font-size: 14px; line-height: 1.55; }
.runtime-state { flex: 0 0 auto; border: 0; border-radius: 14px; padding: 11px 13px; background: #eef2fa; color: #34415c; font-size: 14px; font-weight: 900; }
button.runtime-state { cursor: pointer; }
.runtime-summary-live .runtime-state { background: #dce9ff; color: #174ea6; }
.runtime-summary-wait .runtime-state { background: #fff; color: #9a5e0e; }
.runtime-pulse { display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: #2463eb; box-shadow: 0 0 0 4px rgba(36,99,235,.14); }
.hero::after { content: ""; position: absolute; width: 270px; height: 270px; border-radius: 50%; right: -110px; top: -150px; background: rgba(124,147,255,.18); }
.hero-eyebrow { color: #bac7ff; font-size: 12px; font-weight: 750; }
.hero h2 { font-size: clamp(22px, 3vw, 31px); margin: 8px 0 7px; letter-spacing: -.035em; }
.hero p { margin: 0; color: #c7d0e8; font-size: 16px; line-height: 1.65; }
.command-box { position: relative; z-index: 1; margin-top: 21px; background: white; border-radius: 18px; padding: 8px; color: var(--ink); display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.command-box textarea { resize: none; border: 0; outline: none; min-height: 82px; max-height: 180px; padding: 12px 13px 8px; line-height: 1.6; width: 100%; color: var(--ink); background: transparent; font-size: 16px; }
.command-box textarea::placeholder { color: #9aa3b5; }
.command-side { display: flex; flex-direction: column; gap: 7px; min-width: 146px; }
.project-select { width: 100%; border: 1px solid var(--line); border-radius: 11px; padding: 9px 30px 9px 10px; background: #f8f9fc; font-size: 12px; color: #465069; }
.primary-button { border: 0; border-radius: 11px; background: var(--blue); color: white; min-height: 42px; padding: 0 16px; font-weight: 800; cursor: pointer; box-shadow: 0 8px 20px rgba(54,92,245,.25); }
.primary-button:hover { filter: brightness(1.04); }
.primary-button:disabled { cursor: not-allowed; opacity: .55; box-shadow: none; }
.command-hint { margin-top: 9px; color: #9faed2; font-size: 11px; display: flex; align-items: center; gap: 6px; }

.metrics { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 13px; margin-top: 17px; }
.metric { background: var(--paper); border: 1px solid var(--line); border-radius: 18px; padding: 17px; min-width: 0; }
.metric-button { text-align: left; cursor: pointer; box-shadow: 0 5px 18px rgba(29,42,75,.025); transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease; }
.metric-button:hover { transform: translateY(-2px); border-color: #b9c6e7; box-shadow: 0 10px 25px rgba(29,42,75,.07); }
.metric-label { color: var(--muted); font-size: 14px; font-weight: 700; }
.metric-row { margin-top: 8px; display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.metric-value { font-size: 25px; font-weight: 850; letter-spacing: -.04em; }
.metric-note { color: var(--muted); font-size: 13px; white-space: nowrap; }
.metric-link { margin-top: 10px; color: var(--blue); font-size: 11px; font-weight: 800; }

.dashboard-grid { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr); gap: 17px; margin-top: 17px; }
.stack { display: grid; gap: 17px; align-content: start; }
.panel { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 8px 28px rgba(29,42,75,.035); min-width: 0; }
.panel-head { display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 19px 20px 14px; }
.panel-title { font-size: 19px; font-weight: 830; letter-spacing: -.025em; }
.panel-sub { color: var(--muted); font-size: 14px; margin-top: 4px; line-height: 1.5; }
.text-button { border: 0; background: transparent; color: var(--blue); padding: 5px; cursor: pointer; font-size: 12px; font-weight: 750; }
.list { padding: 0 10px 10px; }
.list-row { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 13px 10px; border-top: 1px solid #eef1f6; }
.list-row:first-child { border-top: 0; }
.list-main { min-width: 0; }
.list-title { font-size: 15px; font-weight: 760; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.list-meta { margin-top: 6px; color: var(--muted); font-size: 13px; display: flex; flex-wrap: wrap; gap: 5px 11px; }
.status-pill, .model-pill, .tiny-pill { display: inline-flex; align-items: center; gap: 5px; border-radius: 999px; font-size: 12px; line-height: 1; font-weight: 750; padding: 7px 9px; white-space: nowrap; }
.status-pill::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.status-working, .status-in_progress, .status-collaborating { color: #2a62d5; background: #edf3ff; }
.status-review, .status-planned { color: var(--amber); background: var(--amber-soft); }
.status-done { color: var(--mint); background: var(--mint-soft); }
.status-cancelled, .status-offline { color: #8a92a2; background: #f0f2f5; }
.status-idle, .status-break, .status-inbox { color: var(--violet); background: #f2efff; }
.row-action { border: 1px solid var(--line); background: white; border-radius: 10px; padding: 8px 10px; cursor: pointer; font-size: 14px; color: #4e5870; }
.row-action:hover { border-color: #b9c3d6; }
.empty { padding: 34px 20px; text-align: center; color: var(--muted); font-size: 15px; line-height: 1.7; }

.report-top { display: flex; justify-content: space-between; gap: 15px; align-items: center; }
.report-person { display: flex; align-items: center; gap: 11px; min-width: 0; }
.report-person img { width: 48px; height: 48px; object-fit: contain; object-position: center bottom; border-radius: 14px; background: linear-gradient(145deg,#edf1ff,#f8f9fd); border: 1px solid #dde3f0; }
.report-who { font-size: 16px; font-weight: 850; }
.report-position { color: var(--muted); font-size: 13px; margin-top: 3px; }
.report-time { color: #858fa3; font-size: 12px; display: block; margin-top: 7px; text-align: right; }
.report-result { display: inline-flex; border-radius: 999px; padding: 7px 10px; font-size: 12px; font-weight: 850; }
.report-ok { color: #087c5c; background: var(--mint-soft); }
.report-wait { color: #9a5e0e; background: var(--amber-soft); }
.report-danger { color: #b43e47; background: var(--red-soft); }
.report-info { color: #3652bd; background: var(--blue-soft); }
.report-label { color: var(--blue); font-size: 12px; font-weight: 850; letter-spacing: .04em; margin-top: 18px; }
.report-lead { color: #273147; font-size: 17px; line-height: 1.65; font-weight: 720; margin-top: 6px; }
.executive-report { background: white; border: 1px solid var(--line); border-radius: 20px; padding: 20px; box-shadow: 0 8px 26px rgba(29,42,75,.035); }
.executive-report.compact { border: 0; border-top: 1px solid #eef1f6; border-radius: 0; box-shadow: none; padding: 17px 20px; }
.executive-report.compact:first-child { border-top: 0; }
.executive-report.compact .report-person img { width: 40px; height: 40px; }
.executive-report.compact .report-lead { font-size: 15px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.executive-report.compact .report-label { margin-top: 13px; }
.report-decision { display: flex; gap: 12px; align-items: flex-start; margin-top: 16px; border-radius: 13px; background: #f5f7fb; padding: 13px; font-size: 14px; line-height: 1.55; }
.report-decision strong { color: var(--navy); white-space: nowrap; }
.report-decision span { color: #596278; }
.report-details { margin-top: 13px; border-top: 1px solid var(--line); padding-top: 13px; }
.report-details summary { cursor: pointer; color: var(--blue); font-size: 14px; font-weight: 750; }
.report-details div { margin-top: 12px; color: #566078; font-size: 15px; line-height: 1.7; white-space: pre-wrap; max-height: 420px; overflow: auto; }
.report-task-link { margin-top: 13px; border: 0; background: transparent; color: var(--blue); padding: 0; cursor: pointer; font-size: 13px; font-weight: 800; }
.report-briefing { background: linear-gradient(135deg,#172446,#2d468c); color: white; border-radius: 24px; padding: 25px; margin-bottom: 17px; }
.report-briefing .page-kicker { color: #b9c7ff; }
.report-briefing h2 { margin: 7px 0; font-size: 27px; }
.report-briefing p { margin: 0; color: #c9d1e6; font-size: 16px; line-height: 1.6; }
.report-rules { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 17px; }
.report-rules span { background: rgba(255,255,255,.11); border: 1px solid rgba(255,255,255,.13); border-radius: 999px; padding: 8px 11px; font-size: 13px; }
.report-feed { display: grid; gap: 13px; }
.approval-card { margin: 0 10px 10px; border: 1px solid #f1dbab; background: #fffaf0; border-radius: 17px; padding: 17px; }
.approval-card + .approval-card { margin-top: 10px; }
.approval-card h4 { margin: 5px 0 0; font-size: 17px; line-height: 1.45; }
.approval-card p { margin: 9px 0 14px; color: #725a2d; font-size: 14px; line-height: 1.65; white-space: pre-wrap; }
.approval-kind { color: #a06b15; font-size: 12px; font-weight: 900; letter-spacing: .05em; }
.approval-preview { padding: 12px; border-radius: 12px; background: white; border: 1px solid #f0dfbd; color: #3f4656 !important; }
.approval-facts { margin: 0 0 12px; display: grid; gap: 7px; }
.approval-facts div { display: grid; grid-template-columns: 48px minmax(0,1fr); gap: 8px; font-size: 13px; }
.approval-facts dt { color: #9a7a3c; font-weight: 800; }
.approval-facts dd { margin: 0; color: #4f5666; overflow-wrap: anywhere; }
.approval-recommendation { margin: 11px 0; padding: 11px 12px; border-radius: 11px; background: #fff0df; color: #8a4f14; font-size: 14px; font-weight: 800; line-height: 1.5; }
.owner-request-card { border-color: #b9c9f5; background: #f7f9ff; }
.owner-request-card .approval-kind { color: var(--blue); }
.owner-instructions { margin: 12px 0; padding: 13px 14px 13px 34px; border-radius: 13px; background: white; border: 1px solid #dfe6f6; color: #465069; font-size: 14px; line-height: 1.7; }
.owner-instructions li + li { margin-top: 6px; }
.approval-requested { display: grid; gap: 4px; margin: 11px 0; padding: 12px; border-radius: 12px; background: #edf1ff; font-size: 14px; line-height: 1.55; }
.approval-requested strong { color: var(--blue); }
.approval-requested span { color: #465069; }
.modal-instructions { font-size: 15px; }
.form-field textarea { width: 100%; min-height: 95px; resize: vertical; border: 1px solid var(--line); border-radius: 12px; padding: 13px; background: #fafbfc; outline: none; font-size: 16px; line-height: 1.55; }
.form-field textarea:focus { border-color: #9bacef; box-shadow: 0 0 0 3px var(--blue-soft); }
.approval-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.approval-options { display: grid; gap: 9px; }
.approval-option { border: 1px solid #ead9ad; background: rgba(255,255,255,.72); border-radius: 12px; padding: 10px; }
.approval-option-head { display: flex; justify-content: space-between; gap: 10px; align-items: baseline; }
.approval-option-head span { color: #92743a; font-size: 12px; white-space: nowrap; }
.approval-option p { margin: 5px 0 9px; font-size: 13px; }
.decision-source-report { margin: 12px 0; padding: 12px; border: 1px solid #ead9ad; border-radius: 12px; background: #fff; }
.decision-source-report strong { display: block; margin-bottom: 7px; color: #6d531f; }
.decision-source-report div { max-height: 460px; overflow: auto; white-space: pre-wrap; color: #3e3525; font-size: 13px; line-height: 1.65; }
.approval-button { border: 1px solid #dfc98e; background: white; color: #745918; border-radius: 10px; padding: 10px 12px; font-size: 14px; font-weight: 800; cursor: pointer; }
.approval-button-primary { border-color: #365cf5; background: #365cf5; color: white; }
.approval-button-danger { border-color: #e7b5b9; color: #b43e47; }
.approval-modal-mark { display: inline-flex; margin-bottom: 13px; border-radius: 999px; padding: 8px 11px; background: var(--blue-soft); color: var(--blue); font-size: 13px; font-weight: 900; }
.approval-modal-mark.danger { background: var(--red-soft); color: #b43e47; }
.approval-modal-facts { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.approval-modal-facts span { padding: 8px 10px; border-radius: 10px; background: #f2f4f8; color: #596278; font-size: 13px; }
.danger-button { background: #bd3f49; box-shadow: 0 8px 20px rgba(189,63,73,.2); }

.toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 14px; }
.search { min-width: 240px; flex: 1; max-width: 440px; border: 1px solid var(--line); background: white; border-radius: 12px; padding: 11px 13px; outline: none; }
.search:focus { border-color: #9cacef; box-shadow: 0 0 0 3px var(--blue-soft); }
.filter-group { display: flex; gap: 7px; overflow-x: auto; padding-bottom: 2px; }
.filter-button { border: 1px solid var(--line); background: white; border-radius: 999px; padding: 8px 11px; white-space: nowrap; cursor: pointer; color: #566078; font-size: 11px; }
.filter-button.active { background: var(--navy); border-color: var(--navy); color: white; }

.agent-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 15px; }
.agent-card { border: 1px solid var(--line); background: var(--paper); border-radius: 21px; padding: 19px; cursor: pointer; transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.agent-card:hover { transform: translateY(-2px); border-color: #c8d1e6; box-shadow: var(--shadow); }
.agent-top { display: flex; align-items: center; gap: 15px; }
.agent-avatar { width: 94px; height: 94px; flex: 0 0 94px; overflow: hidden; display: grid; place-items: center; border-radius: 24px; background: linear-gradient(145deg,#eef2ff,#f8f9fd); border: 1px solid #dce3f1; }
.agent-avatar img { width: 100%; height: 100%; object-fit: contain; object-position: center bottom; }
.agent-identity { min-width: 0; }
.agent-name { font-size: 20px; font-weight: 880; letter-spacing: -.025em; }
.agent-position { color: var(--blue); font-size: 15px; font-weight: 800; margin-top: 6px; }
.agent-age { color: var(--muted); font-size: 14px; margin-top: 5px; line-height: 1.4; }
.agent-card .status-pill { margin-left: auto; }
.agent-duty { margin-top: 16px; color: #4e5870; font-size: 15px; line-height: 1.6; min-height: 48px; }
.agent-model { margin-top: 14px; background: #f5f7fb; border-radius: 13px; padding: 12px; }
.agent-provider { color: var(--blue); font-size: 12px; letter-spacing: .04em; font-weight: 850; }
.agent-model-name { margin-top: 5px; font-size: 14px; color: #485169; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.task-table { overflow: hidden; }
.task-row { width: 100%; display: grid; grid-template-columns: minmax(240px,1.7fr) minmax(110px,.7fr) minmax(100px,.65fr) 90px; gap: 14px; align-items: center; padding: 15px 18px; border: 0; border-top: 1px solid #edf0f5; background: white; text-align: left; cursor: pointer; }
.task-row:first-child { border-top: 0; }
.task-row:hover { background: #f8faff; }
.task-title { font-size: 16px; font-weight: 780; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.task-desc { color: var(--muted); font-size: 14px; margin-top: 6px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.task-cell-label { display: none; color: #9aa2b2; font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.task-cell { min-width: 0; color: #596278; font-size: 14px; }

.project-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.project-card { background: white; border: 1px solid var(--line); border-radius: 21px; padding: 20px; }
.project-card h3 { margin: 0; font-size: 17px; }
.project-count { color: var(--blue); background: var(--blue-soft); border-radius: 999px; padding: 6px 8px; font-size: 10px; font-weight: 800; }
.project-head { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.project-goal { margin: 13px 0; color: #5d6679; font-size: 12px; line-height: 1.65; white-space: pre-wrap; display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }
.project-foot { display: flex; justify-content: space-between; gap: 10px; color: #929aa9; font-size: 10px; border-top: 1px solid #eef1f5; padding-top: 13px; }

.modal-backdrop { position: fixed; inset: 0; background: rgba(18,27,50,.48); backdrop-filter: blur(5px); display: grid; place-items: center; padding: 18px; z-index: 100; }
.modal { width: min(520px,100%); max-height: min(760px,calc(100vh - 36px)); overflow: auto; background: white; border-radius: 24px; padding: 22px; box-shadow: 0 28px 80px rgba(18,27,50,.28); }
.task-flow-modal { width: min(880px,100%); }
.task-modal-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.task-modal-skeleton { height: 160px; margin-top: 16px; }
.task-flow { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 7px; margin: 4px 0 17px; }
.task-stage { position: relative; min-width: 0; border: 1px solid var(--line); border-radius: 13px; padding: 12px 9px; background: #f6f7fa; color: #939bac; }
.task-stage.reached { color: #4b5670; background: white; border-color: #d8dfec; }
.task-stage.current { color: #8a570e; background: var(--amber-soft); border-color: #edc66f; }
.task-stage-dot { display: block; width: 9px; height: 9px; border-radius: 50%; margin-bottom: 8px; background: #c7ccd6; }
.task-stage.reached .task-stage-dot { background: var(--mint); }
.task-stage.current .task-stage-dot { background: var(--amber); box-shadow: 0 0 0 4px rgba(196,123,21,.12); }
.task-stage strong { display: block; font-size: 13px; }
.task-stage small { display: block; margin-top: 4px; font-size: 10px; line-height: 1.4; color: inherit; }
.task-now { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 14px; }
.task-now > div { border-radius: 15px; background: #f3f6fd; padding: 14px; }
.task-now span { display: block; color: var(--blue); font-size: 11px; font-weight: 900; margin-bottom: 6px; }
.task-now strong { display: block; color: #39445b; font-size: 14px; line-height: 1.55; }
.task-owner-clear, .task-owner-callout { display: flex; align-items: center; justify-content: space-between; gap: 14px; border-radius: 14px; padding: 13px 14px; margin: 12px 0; }
.task-owner-clear { background: var(--mint-soft); color: #087c5c; }
.task-owner-callout { background: var(--amber-soft); color: #8a570e; flex-wrap: wrap; }
.task-owner-callout p { margin: 0; flex: 1; min-width: 220px; line-height: 1.5; }
.task-section { margin-top: 20px; }
.task-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.task-section-head h3 { margin: 0; font-size: 18px; }
.task-section-head span { color: var(--muted); font-size: 13px; }
.subtask-list { display: grid; gap: 7px; }
.subtask-row { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: 10px; border: 1px solid var(--line); border-radius: 12px; padding: 11px; }
.subtask-row strong { display: block; color: #3c465b; font-size: 13px; line-height: 1.45; }
.subtask-row span:not(.status-pill) { display: block; color: var(--muted); font-size: 11px; margin-top: 4px; }
.meeting-card { border: 1px solid #dce3f1; border-radius: 17px; padding: 15px; background: #fbfcff; }
.meeting-card + .meeting-card { margin-top: 11px; }
.meeting-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.meeting-kind { color: var(--blue); font-size: 11px; font-weight: 900; }
.meeting-head h4 { margin: 5px 0 0; font-size: 16px; line-height: 1.45; }
.meeting-conclusion { margin-top: 13px; padding: 13px; border-radius: 12px; background: var(--blue-soft); }
.meeting-conclusion strong, .meeting-actions > strong { color: var(--blue); font-size: 12px; }
.meeting-conclusion p { margin: 6px 0 0; color: #44506a; font-size: 13px; line-height: 1.65; white-space: pre-wrap; }
.meeting-actions { margin-top: 13px; }
.meeting-action-row { display: grid; grid-template-columns: 90px minmax(0,1fr); gap: 10px; padding: 9px 0; border-top: 1px solid #e7ebf3; }
.meeting-action-row:first-of-type { margin-top: 7px; }
.meeting-action-row span { color: #39445b; font-size: 12px; font-weight: 850; }
.meeting-action-row p { margin: 0; color: #5b657a; font-size: 12px; line-height: 1.55; }
.meeting-transcript { margin-top: 10px; border-top: 1px solid #e1e6f0; padding-top: 11px; }
.meeting-transcript summary { color: var(--blue); cursor: pointer; font-size: 12px; font-weight: 800; }
.meeting-line { display: grid; grid-template-columns: 135px minmax(0,1fr); gap: 12px; padding: 11px 0; border-bottom: 1px solid #edf0f5; }
.meeting-line > div strong, .meeting-line > div span { display: block; }
.meeting-line > div strong { font-size: 12px; }
.meeting-line > div span { color: var(--muted); font-size: 10px; margin-top: 3px; }
.meeting-line p { margin: 0; color: #566078; font-size: 12px; line-height: 1.6; white-space: pre-wrap; }
.meeting-empty { border: 1px dashed var(--line); border-radius: 14px; }
.attendance-tools { display: flex; align-items: center; gap: 10px; }
.attendance-callout { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-radius: 14px; background: var(--amber-soft); padding: 13px; margin-bottom: 14px; color: #8a570e; }
.modal h2 { margin: 0; font-size: 24px; }
.modal-sub { margin: 8px 0 20px; color: var(--muted); font-size: 15px; line-height: 1.6; }
.form-field { display: grid; gap: 7px; margin-top: 13px; }
.form-field label { color: #4d566b; font-size: 14px; font-weight: 750; }
.form-field input, .form-field select { width: 100%; border: 1px solid var(--line); border-radius: 12px; padding: 13px; background: #fafbfc; outline: none; font-size: 16px; }
.form-field input:focus, .form-field select:focus { border-color: #9bacef; box-shadow: 0 0 0 3px var(--blue-soft); }
.modal-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 20px; }
.secondary-button { border: 1px solid var(--line); background: white; border-radius: 11px; min-height: 42px; padding: 0 15px; cursor: pointer; }
.login-mark { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 17px; color: white; font-weight: 900; background: linear-gradient(145deg,#5f7aff,#365cf5); margin-bottom: 17px; }
.login-help { background: #f5f7fb; border-radius: 13px; padding: 13px; margin-top: 14px; color: #647087; font-size: 14px; line-height: 1.65; }
.detail-block { margin-top: 14px; border: 1px solid var(--line); background: #f8f9fc; border-radius: 14px; padding: 14px; }
.detail-block strong { display: block; font-size: 11px; margin-bottom: 8px; color: #465069; }
.detail-block div { color: #596278; font-size: 12px; line-height: 1.65; white-space: pre-wrap; max-height: 260px; overflow: auto; }

.toast { position: fixed; left: 50%; bottom: 24px; transform: translate(-50%,20px); opacity: 0; pointer-events: none; z-index: 200; background: #172033; color: white; border-radius: 12px; padding: 11px 14px; font-size: 12px; box-shadow: var(--shadow); transition: .2s ease; max-width: calc(100vw - 30px); }
.toast.show { opacity: 1; transform: translate(-50%,0); }
.toast.error { background: #982f39; }
.skeleton { background: linear-gradient(90deg,#edf0f5 25%,#f7f8fb 50%,#edf0f5 75%); background-size: 200% 100%; animation: shimmer 1.2s infinite; border-radius: 9px; height: 48px; }
@keyframes shimmer { to { background-position: -200% 0; } }
.spin { animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

.mobile-nav { display: none; }

@media (max-width: 1050px) {
  .metrics { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .agent-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .task-flow { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  .shell { display: block; }
  .sidebar { display: none; }
  .content { padding: 0 14px calc(92px + env(safe-area-inset-bottom)); }
  .topbar { height: 70px; position: sticky; top: 0; z-index: 15; background: rgba(244,246,251,.9); backdrop-filter: blur(15px); }
  .page-title { font-size: 24px; }
  .ghost-button span { display: none; }
  .hero { border-radius: 22px; padding: 21px 17px; }
  .owner-action { padding: 18px; border-radius: 19px; align-items: flex-start; }
  .owner-action h2 { font-size: 20px; }
  .owner-action-count, .owner-action-state { font-size: 15px; padding: 10px 11px; }
  .runtime-summary { padding: 16px 18px; align-items: flex-start; }
  .runtime-summary h2 { font-size: 17px; }
  .hero p { font-size: 15px; }
  .command-box { grid-template-columns: 1fr; padding: 7px; }
  .command-side { min-width: 0; display: grid; grid-template-columns: minmax(0,1fr) auto; }
  .command-box textarea { min-height: 92px; }
  .project-select { font-size: 14px; }
  .metrics { gap: 9px; }
  .metric { border-radius: 15px; padding: 14px; }
  .metric-value { font-size: 22px; }
  .dashboard-grid { grid-template-columns: 1fr; gap: 13px; margin-top: 13px; }
  .panel { border-radius: 18px; }
  .agent-grid { grid-template-columns: 1fr; gap: 10px; }
  .agent-card { padding: 17px; }
  .agent-top { display: grid; grid-template-columns: 86px minmax(0,1fr) auto; gap: 12px; }
  .agent-avatar { width: 86px; height: 86px; flex-basis: 86px; border-radius: 21px; }
  .agent-name { font-size: 19px; }
  .agent-position { font-size: 14px; }
  .agent-age { font-size: 13px; }
  .agent-duty { min-height: 0; font-size: 15px; }
  .report-top { align-items: flex-start; }
  .report-person img { width: 44px; height: 44px; }
  .report-briefing { padding: 22px 18px; border-radius: 20px; }
  .report-briefing h2 { font-size: 24px; }
  .executive-report { padding: 17px; }
  .project-grid { grid-template-columns: 1fr; }
  .task-row { grid-template-columns: 1fr 1fr; gap: 12px; }
  .task-row > :first-child { grid-column: 1/-1; }
  .task-cell-label { display: block; margin-bottom: 4px; }
  .search { min-width: 0; max-width: none; width: 100%; }
  .toolbar { align-items: stretch; }
  .filter-group { width: 100%; }
  .mobile-nav { position: fixed; left: 10px; right: 10px; bottom: calc(9px + env(safe-area-inset-bottom)); display: grid; grid-template-columns: repeat(5,1fr); padding: 6px; background: rgba(23,36,70,.95); backdrop-filter: blur(16px); border-radius: 18px; z-index: 50; box-shadow: 0 12px 35px rgba(20,31,58,.3); }
  .mobile-nav .nav-button { justify-content: center; display: grid; gap: 2px; padding: 6px 2px; text-align: center; border-radius: 12px; font-size: 12px; }
  .mobile-nav .nav-icon { margin: auto; font-size: 18px; }
  .modal-backdrop { align-items: end; padding: 0; }
  .modal { width: 100%; max-height: 88vh; border-radius: 24px 24px 0 0; padding-bottom: calc(22px + env(safe-area-inset-bottom)); }
  .task-flow { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .task-now { grid-template-columns: 1fr; }
  .meeting-action-row, .meeting-line { grid-template-columns: 1fr; gap: 5px; }
  .task-owner-clear { align-items: flex-start; flex-direction: column; }
  .attendance-tools { width: 100%; justify-content: space-between; }
}

@media (max-width: 390px) {
  .metrics { grid-template-columns: 1fr 1fr; }
  .metric-note { display: none; }
  .runtime-summary { flex-direction: column; }
  .list-row { gap: 8px; }
  .row-action { padding: 7px; }
  .agent-top { grid-template-columns: 78px minmax(0,1fr); }
  .agent-avatar { width: 78px; height: 78px; }
  .agent-card .status-pill { grid-column: 2; margin: -3px 0 0; justify-self: start; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Common operations: one readable trail from directive to verified delivery. */
.operation-overview, .legacy-work { margin-bottom: 24px; }
.operation-list { display: grid; }
.operation-row { width: 100%; text-align: left; padding: 20px; border: 0; border-bottom: 1px solid var(--line, #e2e6ec); background: transparent; color: inherit; cursor: pointer; }
.operation-row:last-child { border-bottom: 0; }
.operation-row:hover { background: #f7f9f8; }
.operation-row:active, .operation-artifact a:active { transform: translateY(1px); }
.operation-row:focus-visible, .operation-artifact a:focus-visible { outline: 2px solid #426556; outline-offset: -3px; }
.operation-row-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.operation-row-top strong { min-width: 0; overflow-wrap: anywhere; font-size: 16px; line-height: 1.5; }
.operation-row-top .status-pill { flex-shrink: 0; }
.operation-row p, .operation-unit p { margin: 10px 0; line-height: 1.7; overflow-wrap: anywhere; white-space: pre-wrap; }
.operation-row-meta, .operation-row-next { display: block; font-size: 13px; line-height: 1.7; color: #627069; }
.operation-row-next { margin-top: 7px; color: #344c41; }
.operation-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 20px 0; }
.operation-flow .task-stage { min-width: 0; padding: 12px; }
.operation-unit { padding: 18px 0; border-bottom: 1px solid #e2e6ec; }
.operation-unit:last-child { border-bottom: 0; }
.operation-unit .report-details > div { max-height: 400px; overflow: auto; overflow-wrap: anywhere; }
.operation-request-modal { width: min(820px, 100%); }
.owner-input-request { display:grid; gap:12px; padding:16px; border:1px solid #bfd0f5; border-radius:16px; background:#f6f8ff; }
.owner-input-request h3,.owner-input-request h4 { margin:0; }
.owner-input-request article { display:grid; gap:5px; padding:12px; border-radius:12px; background:#fff; }
.owner-input-request article span,.owner-input-request article small { overflow-wrap:anywhere; }
.owner-input-checkpoint { display:grid; gap:6px; padding:12px; border-left:4px solid #315dce; background:#fff; border-radius:10px; }
#operation-input-form { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
#operation-input-status { flex:1 1 180px; overflow-wrap:anywhere; }
#operation-input-error { flex-basis:100%; }
.operation-plan { line-height: 1.7; overflow-wrap: anywhere; }
.operation-steps { padding-left: 24px; }
.operation-steps > li { padding: 10px 0 18px; }
.operation-steps > li > span { display: block; color: #627069; font-size: 13px; }
.operation-steps p { margin: 6px 0; white-space: pre-wrap; }
.operation-deliverable { padding: 12px 16px; margin-top: 10px; border-left: 3px solid #9db3a7; background: #f6f8f7; }
.operation-deliverable span { font-size: 13px; }
.operation-artifacts { display: grid; gap: 12px; }
.operation-artifact { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 7px 16px; padding: 16px; border: 1px solid #e2e6ec; border-radius: 12px; overflow-wrap: anywhere; }
.operation-artifact > span { font-size: 13px; color: #627069; }
.operation-artifact > a { grid-column: 1 / -1; justify-self: start; text-decoration: none; }
.operation-events article { display: grid; grid-template-columns: 105px minmax(0, 1fr); gap: 12px; padding: 12px 0; border-bottom: 1px solid #e2e6ec; }
.operation-events time { font-size: 12px; color: #627069; }
.operation-events p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.7; }
.operation-error { color: #a33939; font-size: 14px; line-height: 1.6; }
.operation-error:not(:empty) { padding: 12px; background: #fff3f1; border-radius: 8px; margin: 12px 0; }
#operation-note { min-height: 110px; resize: vertical; }
.operation-result-section { margin-top: 16px; padding-top: 14px; border-top: 1px solid #e2e6ec; line-height: 1.7; }
.operation-result-section ul { padding-left: 22px; margin: 8px 0; }
.operation-source { padding: 10px 0; font-size: 14px; }
.operation-source a { color: #315c48; overflow-wrap: anywhere; text-decoration: underline; }
.operation-source p { margin: 4px 0; }
.operation-discussion, .operation-check { margin-top: 10px; padding: 14px 16px; background: #f6f8f7; border-left: 3px solid #9db3a7; }
.operation-discussion div > span { font-size: 12px; color: #627069; }
.operation-discussion p { margin: 3px 0 10px; }
@media (max-width: 640px) {
  .operation-row { padding: 16px; }
  .operation-row-top { flex-direction: column; gap: 8px; }
  .operation-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .operation-events article { grid-template-columns: 1fr; gap: 5px; }
  .operation-artifact { grid-template-columns: 1fr; }
}
.artifact-preview-backdrop { z-index: 1200; }
.artifact-preview-modal { width: min(920px, calc(100vw - 24px)); max-height: min(92vh, 980px); overflow: auto; }
.artifact-preview-content { margin: 18px 0; padding: clamp(18px, 4vw, 34px); border: 1px solid #dce2ef; border-radius: 16px; background: #fff; color: #172033; white-space: pre-wrap; overflow-wrap: anywhere; font: 500 clamp(15px, 2.5vw, 17px)/1.85 -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif; letter-spacing: -.01em; }
@media (max-width: 640px) {
  .artifact-preview-modal { width: calc(100vw - 12px); max-height: 96vh; }
  .artifact-preview-content { margin: 12px 0; border-radius: 12px; line-height: 1.75; }
}

/* v6 professional operations console: quieter, denser, less game-like */
:root {
  --bg: #f3f4f6;
  --paper: #ffffff;
  --ink: #111827;
  --muted: #667085;
  --line: #dfe3e8;
  --soft: #f7f8fa;
  --navy: #18212f;
  --blue: #2457c5;
  --blue-soft: #eef4ff;
  --mint: #147a5b;
  --mint-soft: #edf8f4;
  --amber: #9a6700;
  --amber-soft: #fff7df;
  --red: #b42318;
  --red-soft: #fff1f0;
  --shadow: 0 1px 3px rgba(16,24,40,.05);
  --radius: 12px;
}

body { background: var(--bg); }
.shell { grid-template-columns: 220px minmax(0, 1fr); }
.sidebar { padding: 24px 14px; background: #17202d; border-right: 1px solid #293342; }
.brand { padding: 0 8px 22px; gap: 10px; }
.brand-mark { width: 34px; height: 34px; border-radius: 7px; background: #fff; color: #17202d; box-shadow: none; font-size: 12px; }
.brand-title { letter-spacing: .02em; font-size: 14px; }
.brand-sub { font-size: 11px; color: #aab4c2; }
.nav { gap: 3px; }
.nav-button { border-radius: 7px; padding: 11px 12px; font-size: 14px; font-weight: 650; color: #c5ccd6; }
.nav-button:hover { background: #222d3c; }
.nav-button.active { background: #2a3545; color: #fff; box-shadow: inset 3px 0 0 #8eb4ff; }
.nav-icon { display: none; }
.sidebar-foot { padding: 16px 8px 0; }
.online-dot { box-shadow: none; }

.content { padding: 0 28px 40px; }
.topbar { height: 74px; border-bottom: 1px solid transparent; }
.page-kicker { color: #667085; text-transform: none; letter-spacing: 0; font-size: 12px; font-weight: 650; }
.page-title { margin-top: 2px; font-size: 25px; letter-spacing: -.02em; }
.icon-button, .ghost-button { min-height: 38px; border-radius: 7px; box-shadow: none; background: #fff; }

.hero { border-radius: 12px; background: #17202d; padding: 24px; box-shadow: none; }
.hero::after { display: none; }
.hero-eyebrow { color: #b9c1cd; }
.hero h2 { font-size: 25px; }
.hero p { color: #cbd1da; }
.command-box { border-radius: 9px; box-shadow: none; border: 1px solid #d5dae1; }
.project-select, .primary-button { border-radius: 7px; }
.primary-button { box-shadow: none; background: #2457c5; }
.owner-action, .runtime-summary { border-radius: 10px; box-shadow: none; }
.owner-action-count, .owner-action-state, .runtime-state { border-radius: 7px; box-shadow: none; }

.metrics { gap: 10px; }
.metric { border-radius: 9px; padding: 15px; box-shadow: none; }
.metric-button:hover { transform: none; box-shadow: none; background: #fafbfc; }
.metric-value { font-size: 23px; }
.dashboard-grid { gap: 12px; }
.stack { gap: 12px; }
.panel { border-radius: 10px; box-shadow: var(--shadow); }
.panel-head { padding: 17px 18px 12px; }
.panel-title { font-size: 17px; }
.panel-sub { font-size: 13px; }

.toolbar { margin-bottom: 12px; }
.search { border-radius: 7px; box-shadow: none; }
.filter-group { gap: 6px; }
.filter-button { border-radius: 7px; padding: 8px 12px; font-size: 12px; background: #fff; }
.filter-button.active { background: #253142; border-color: #253142; }

.operation-list { display: block; }
.operation-row { padding: 17px 18px; background: #fff; }
.operation-row:hover { background: #fafbfc; }
.operation-row-top { align-items: center; }
.operation-title-wrap { min-width: 0; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.operation-row-top strong { font-size: 16px; font-weight: 720; }
.operation-row p { margin: 8px 0; color: #475467; line-height: 1.55; font-size: 14px; }
.operation-row-meta, .operation-row-next { font-size: 12px; color: #7b8492; line-height: 1.5; }
.operation-row-next { color: #344054; font-weight: 600; }
.work-tier { display: inline-flex; align-items: center; height: 23px; padding: 0 8px; border-radius: 5px; background: #f2f4f7; color: #475467; border: 1px solid #e4e7ec; font-size: 11px; font-weight: 700; white-space: nowrap; }
.work-tier-fast { color: #175cd3; background: #eff8ff; border-color: #d1e9ff; }
.work-tier-complex { color: #6941c6; background: #f4f3ff; border-color: #e9e6ff; }
.status-pill { border-radius: 5px; font-size: 11px; font-weight: 700; }

.report-briefing { background: #fff; color: var(--ink); border: 1px solid var(--line); border-radius: 10px; padding: 20px; box-shadow: var(--shadow); }
.report-briefing .page-kicker { color: #667085; }
.report-briefing h2 { font-size: 21px; margin: 5px 0; }
.report-briefing p { color: #667085; font-size: 14px; }
.report-rules span { border-radius: 5px; background: #f6f7f9; color: #344054; border: 1px solid #e4e7ec; }
.executive-report { border-radius: 10px; box-shadow: none; }
.report-result { border-radius: 5px; }

/* Staff is shown like an org/operations directory, not character cards. */
.staff-table { border: 1px solid var(--line); border-radius: 10px; background: #fff; overflow: hidden; box-shadow: var(--shadow); }
.staff-head, .staff-row { display: grid; grid-template-columns: minmax(120px,.7fr) minmax(220px,1.7fr) minmax(130px,.8fr) 84px; gap: 16px; align-items: center; }
.staff-head { padding: 10px 16px; background: #f8f9fb; color: #667085; border-bottom: 1px solid var(--line); font-size: 11px; font-weight: 700; }
.staff-row { width: 100%; border: 0; border-bottom: 1px solid #edf0f3; background: #fff; padding: 14px 16px; text-align: left; cursor: pointer; color: inherit; }
.staff-row:last-child { border-bottom: 0; }
.staff-row:hover { background: #fafbfc; }
.staff-name, .staff-duty, .staff-model { min-width: 0; display: grid; gap: 3px; }
.staff-name strong, .staff-duty strong, .staff-model strong { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.staff-name small, .staff-duty small, .staff-model small { color: #7b8492; font-size: 11px; line-height: 1.4; overflow: hidden; text-overflow: ellipsis; }
.staff-duty small { white-space: normal; }
.staff-modal-title { display: flex; align-items: center; justify-content: space-between; }

.project-card, .approval-card, .meeting-card, .operation-artifact, .detail-block { border-radius: 8px; box-shadow: none; }
.modal { border-radius: 12px; }
.approval-modal-mark, .login-mark { border-radius: 7px; box-shadow: none; }
.task-flow { border-radius: 8px; }
.task-stage-dot { box-shadow: none; }

@media (max-width: 760px) {
  .content { padding: 0 14px calc(90px + env(safe-area-inset-bottom)); }
  .topbar { height: 70px; }
  .page-title { font-size: 24px; }
  .page-kicker { font-size: 11px; }
  .panel, .hero, .owner-action, .runtime-summary, .report-briefing { border-radius: 9px; }
  .toolbar { gap: 8px; }
  .filter-group { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .filter-button { text-align: center; padding: 9px 5px; }
  .operation-row { padding: 16px 14px; }
  .operation-row-top { flex-direction: row; align-items: flex-start; gap: 8px; }
  .operation-title-wrap { flex: 1; }
  .operation-row-top .status-pill { margin-left: auto; }
  .mobile-nav { left: 0; right: 0; bottom: 0; padding: 4px 8px calc(5px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.98); border-radius: 0; border-top: 1px solid #dfe3e8; box-shadow: 0 -3px 14px rgba(16,24,40,.06); backdrop-filter: blur(12px); }
  .mobile-nav .nav-button { min-height: 54px; border-radius: 6px; color: #667085; font-size: 12px; font-weight: 650; }
  .mobile-nav .nav-button.active { color: #1d4ed8; background: #eff4ff; box-shadow: none; }
  .mobile-nav .nav-icon { display: none; }
  .staff-head { display: none; }
  .staff-row { grid-template-columns: 1fr auto; gap: 8px 12px; padding: 15px 14px; }
  .staff-duty { grid-column: 1 / -1; }
  .staff-model { grid-column: 1; }
  .staff-row > div:last-child { grid-column: 2; grid-row: 1; }
  .staff-name strong { font-size: 15px; }
  .staff-duty strong, .staff-model strong { font-size: 12px; }
}

/* v7 switchable UI modes -------------------------------------------------- */
.current-ui-label { display:inline-flex; align-items:center; min-height:34px; padding:0 10px; border:1px solid var(--line); border-radius:999px; background:#fff; color:#667085; font-size:11px; font-weight:750; white-space:nowrap; }
.ui-settings-backdrop { z-index: 1600; }
.ui-settings-modal { width:min(980px, calc(100vw - 24px)); max-height:92vh; overflow:auto; }
.ui-settings-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.ui-settings-head h2 { margin:4px 0 6px; }
.ui-settings-section { margin-top:22px; padding-top:20px; border-top:1px solid #e4e7ec; }
.ui-settings-section h3 { margin:0 0 12px; font-size:16px; }
.ui-settings-title { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:12px; }
.ui-settings-title h3 { margin:0; }
.ui-settings-title span { color:#667085; font-size:12px; }
.ui-preset-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.ui-preset-card { min-height:126px; padding:14px; border:1px solid #dfe3e8; border-radius:12px; background:#fff; text-align:left; cursor:pointer; display:grid; align-content:start; gap:6px; color:#111827; }
.ui-preset-card:hover { border-color:#9eb5e8; background:#fbfcff; }
.ui-preset-card.selected { border-color:#2457c5; box-shadow:inset 0 0 0 1px #2457c5; background:#f3f7ff; }
.ui-preset-code { width:28px; height:28px; border-radius:8px; display:grid; place-items:center; background:#17202d; color:#fff; font-weight:800; }
.ui-preset-card strong { font-size:14px; }
.ui-preset-card small { color:#667085; line-height:1.5; }
.ui-screen-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 14px; }
.ui-setting-row { display:grid; gap:6px; }
.ui-setting-row > span { color:#475467; font-size:12px; font-weight:700; }
.ui-setting-row select { width:100%; min-height:42px; border:1px solid #d0d5dd; border-radius:8px; background:#fff; padding:0 10px; color:#101828; font:inherit; }
.ui-setting-toggle { display:flex; align-items:center; gap:10px; min-height:58px; padding:10px 12px; border:1px solid #e4e7ec; border-radius:8px; background:#fff; }
.ui-setting-toggle span { display:grid; gap:2px; }
.ui-setting-toggle small { color:#667085; }

/* density and typography */
.shell.text-small { font-size:14px; }
.shell.text-large { font-size:17px; }
.shell.density-compact .panel-head { padding-top:13px; padding-bottom:9px; }
.shell.density-compact .operation-row { padding:12px 14px; }
.shell.density-compact .compact-op { min-height:56px; }
.shell.density-roomy .panel-head { padding:22px 22px 16px; }
.shell.density-roomy .operation-row { padding:21px 22px; }
.shell.density-roomy .compact-op { min-height:76px; }
.shell.motion-reduced *, .shell.motion-reduced *::before, .shell.motion-reduced *::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; }

/* shared compact components */
.quick-command { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:15px 16px; margin-bottom:12px; background:#fff; border:1px solid var(--line); border-radius:10px; box-shadow:var(--shadow); }
.quick-command > div { display:grid; gap:3px; }
.quick-command strong { font-size:14px; }
.quick-command span { color:#667085; font-size:12px; }
.compact-ops { display:grid; }
.compact-op { width:100%; display:grid; grid-template-columns:10px minmax(0,1fr) minmax(110px,.8fr); gap:12px; align-items:center; min-height:62px; padding:10px 16px; border:0; border-bottom:1px solid #edf0f3; background:#fff; color:inherit; text-align:left; cursor:pointer; }
.compact-op:last-child { border-bottom:0; }
.compact-op:hover { background:#fafbfc; }
.compact-op-dot { width:8px; height:8px; border-radius:50%; background:#5485ed; }
.compact-op-dot.stage-completed { background:#22a06b; }
.compact-op-dot.stage-blocked,.compact-op-dot.stage-failed { background:#e5484d; }
.compact-op-dot.stage-awaiting_approval,.compact-op-dot.stage-paused { background:#e79a2a; }
.compact-op > div { min-width:0; display:grid; gap:3px; }
.compact-op strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; }
.compact-op small { color:#7b8492; font-size:11px; }
.compact-op-next { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#475467; font-size:11px; text-align:right; }
.summary-two,.artifact-layout,.editorial-layout,.executive-layout,.control-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr); gap:12px; margin-top:12px; align-items:start; }

/* A — corporate */
.ui-mode-corporate .content { background:#f3f4f6; }
.ui-mode-corporate .page-title { font-weight:760; }

/* B — summary */
.ui-mode-summary { --bg:#f5f8fd; --blue:#2868dc; }
.ui-mode-summary .content { background:linear-gradient(180deg,#f7faff 0,#f4f6fa 40%,#f3f4f6 100%); }
.ui-mode-summary .sidebar { background:#fff; border-right:1px solid #e3e8f0; }
.ui-mode-summary .brand-title { color:#102a56; }
.ui-mode-summary .brand-sub,.ui-mode-summary .sidebar-note,.ui-mode-summary .system-line { color:#667085; }
.ui-mode-summary .nav-button { color:#667085; }
.ui-mode-summary .nav-button:hover { background:#f3f6fb; }
.ui-mode-summary .nav-button.active { background:#eef4ff; color:#205bc6; box-shadow:none; }
.summary-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(330px,.8fr); gap:18px; align-items:center; padding:22px; background:#fff; border:1px solid #e4e9f1; border-radius:16px; box-shadow:0 8px 30px rgba(31,54,94,.05); }
.summary-eyebrow { display:inline-flex; color:#2868dc; font-size:12px; font-weight:800; margin-bottom:6px; }
.summary-hero h2 { margin:0 0 7px; font-size:26px; letter-spacing:-.03em; }
.summary-hero p { margin:0; color:#667085; line-height:1.65; }
.summary-stat-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.summary-stat-grid button { border:0; border-radius:12px; padding:15px; background:#f5f8fd; display:grid; gap:2px; text-align:left; cursor:pointer; }
.summary-stat-grid strong { font-size:24px; color:#173b74; }
.summary-stat-grid span { color:#667085; font-size:12px; }
.ui-mode-summary .panel,.ui-mode-summary .quick-command { border-radius:14px; box-shadow:0 6px 24px rgba(41,65,105,.045); }
.ui-mode-summary .executive-report.compact .report-details { display:none; }
.summary-work-panel { overflow:hidden; }

/* C — tycoon */
.ui-mode-tycoon { --bg:#eef5ff; --paper:#fff; --blue:#3c70e8; }
.ui-mode-tycoon .content { background:linear-gradient(180deg,#eaf4ff,#f8fbff 36%,#eef3fb); }
.ui-mode-tycoon .sidebar { background:linear-gradient(180deg,#193869,#14284d); }
.ui-mode-tycoon .nav-button.active { background:#315a9b; box-shadow:none; }
.tycoon-hq { overflow:hidden; border-radius:20px; border:1px solid #cfe0f5; background:#fff; box-shadow:0 16px 45px rgba(41,87,146,.12); }
.tycoon-sky { position:relative; min-height:260px; padding:22px; background:linear-gradient(180deg,#7fb5ff 0%,#cfe9ff 54%,#dff1d6 55%,#b8d99c 100%); overflow:hidden; }
.tycoon-sky::before,.tycoon-sky::after { content:""; position:absolute; border-radius:50%; background:rgba(255,255,255,.55); filter:blur(1px); }
.tycoon-sky::before { width:120px;height:42px;left:12%;top:50px; }
.tycoon-sky::after { width:160px;height:46px;right:9%;top:80px; }
.tycoon-level { position:absolute; left:18px; top:18px; z-index:3; width:160px; padding:10px 12px; border-radius:13px; color:#fff; background:rgba(18,42,78,.88); }
.tycoon-level > span { font-size:13px; font-weight:800; }
.tycoon-level > div { height:7px; margin:7px 0 4px; border-radius:999px; background:rgba(255,255,255,.22); overflow:hidden; }
.tycoon-level i { display:block; height:100%; background:#ffd662; border-radius:inherit; }
.tycoon-level small { font-size:10px; color:#dfeaff; }
.tycoon-building { position:absolute; left:50%; bottom:20px; transform:translateX(-50%); display:grid; place-items:center; z-index:2; }
.tycoon-building span { font-size:112px; filter:drop-shadow(0 14px 12px rgba(36,76,52,.18)); }
.tycoon-building b { margin-top:-22px; padding:5px 12px; border-radius:8px; background:#fff; color:#234a7b; font-size:12px; box-shadow:0 5px 15px rgba(0,0,0,.12); }
.tycoon-bubble { position:absolute; right:18px; top:18px; max-width:230px; z-index:4; padding:10px 13px; border-radius:14px 14px 3px 14px; background:#fff; color:#2a466f; font-size:12px; box-shadow:0 8px 24px rgba(31,70,124,.14); }
.tycoon-mission { display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:8px; padding:12px; background:#fff; }
.tycoon-mission > strong { align-self:center; padding-left:8px; }
.tycoon-mission button { border:1px solid #d8e4f2; border-radius:10px; background:#f7fbff; padding:10px; color:#46607f; cursor:pointer; }
.tycoon-mission b { color:#173b74; font-size:17px; margin-left:5px; }
.tycoon-panel { border:1px solid #d6e5f7; }
.dept-tiles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:0 14px 14px; }
.dept-tiles > div { display:grid; grid-template-columns:auto 1fr; gap:2px 8px; align-items:center; padding:10px; border-radius:10px; background:#f4f8fe; }
.dept-tiles > div > span { grid-row:1/3; color:#2ba56d; }
.dept-tiles strong { font-size:12px; }
.dept-tiles small { color:#718096; font-size:10px; }
.tycoon-work-head { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:18px 20px; border-radius:16px; background:linear-gradient(135deg,#244c89,#4279d2); color:#fff; margin-bottom:12px; }
.tycoon-work-head span { font-size:12px;color:#dceaff; }
.tycoon-work-head h2 { margin:3px 0 0; font-size:20px; }
.tycoon-missions { display:grid; gap:9px; }
.tycoon-missions > button { display:grid; grid-template-columns:54px minmax(0,1fr) 48px; gap:12px; align-items:center; width:100%; text-align:left; padding:13px; border:1px solid #d4e2f3; border-radius:14px; background:#fff; color:#172033; cursor:pointer; box-shadow:0 5px 16px rgba(49,89,139,.06); }
.mission-icon { width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#edf4ff;font-size:25px; }
.tycoon-missions > button > div:nth-child(2) { display:grid; gap:3px; min-width:0; }
.tycoon-missions span { color:#3569bc;font-size:10px;font-weight:800; }
.tycoon-missions strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.tycoon-missions small { color:#667085;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.mission-progress { height:6px;background:#e8eef6;border-radius:999px;overflow:hidden;margin-top:5px; }
.mission-progress i { display:block;height:100%;background:linear-gradient(90deg,#3d76df,#67c5ff); }

/* D — control room */
.ui-mode-control { --bg:#07111d; --paper:#0d1b2a; --ink:#edf7ff; --muted:#8ea5b9; --line:#20384c; --soft:#102233; --blue:#37c8ff; --shadow:none; }
.ui-mode-control body,.ui-mode-control .content { background:#07111d; color:#edf7ff; }
.ui-mode-control .content { background:radial-gradient(circle at 80% 0%,rgba(35,118,174,.16),transparent 34%),#07111d; }
.ui-mode-control .sidebar { background:#06101b; border-color:#173147; }
.ui-mode-control .brand-mark { background:#0f2940;color:#66d8ff; }
.ui-mode-control .nav-button { color:#8ea5b9; }
.ui-mode-control .nav-button.active { background:#102d45;color:#66d8ff;box-shadow:inset 3px 0 0 #37c8ff; }
.ui-mode-control .topbar,.ui-mode-control .panel,.ui-mode-control .quick-command,.ui-mode-control .current-ui-label,.ui-mode-control .ghost-button,.ui-mode-control .search,.ui-mode-control .filter-button { background:#0b1825; color:#edf7ff; border-color:#20384c; }
.ui-mode-control .panel-sub,.ui-mode-control .page-kicker,.ui-mode-control .compact-op small,.ui-mode-control .compact-op-next { color:#8ea5b9; }
.ui-mode-control .compact-op { background:#0b1825;border-color:#172d40; }
.ui-mode-control .compact-op:hover { background:#102333; }
.control-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px; }
.control-grid.small { margin-bottom:12px; }
.control-stat { padding:16px;border-radius:10px;border:1px solid #1d3b51;background:#0b1b29;display:grid;gap:3px; }
.control-stat span { color:#8ea5b9;font-size:11px;text-transform:uppercase;letter-spacing:.04em; }
.control-stat strong { font-size:29px;color:#eefaff; }
.control-stat small { color:#6f879b;font-size:10px; }
.control-stat.cyan { box-shadow:inset 0 0 0 1px rgba(55,200,255,.12); }
.control-stat.cyan strong { color:#45d1ff; }
.control-stat.amber strong { color:#ffd65c; }
.control-stat.red strong { color:#ff766c; }
.control-stat.green strong { color:#55e1a3; }
.control-panel { border-color:#1e3d54!important;background:#0a1723!important; }
.control-ops { display:grid; }
.control-ops > button { display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.5fr) 45px;gap:12px;align-items:center;padding:12px 16px;border:0;border-bottom:1px solid #183144;background:transparent;color:#eef7ff;text-align:left;cursor:pointer; }
.control-ops > button:last-child { border-bottom:0; }
.control-ops > button > div { display:grid;gap:3px;min-width:0; }
.control-ops strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.control-ops small { color:#7f9ab0; }
.control-progress { height:7px;border-radius:999px;background:#102d40;overflow:hidden; }
.control-progress i { display:block;height:100%;background:linear-gradient(90deg,#1ca7e1,#4ce2d6); }
.control-ops b { color:#4bd7ff;font-size:11px;text-align:right; }
.ui-mode-control .operation-error:not(:empty) { background:#321b21;color:#ff9d98; }
.ui-mode-control .modal { background:#0d1b2a;color:#edf7ff;border:1px solid #25465f; }
.ui-mode-control .ui-settings-modal,.ui-mode-control .ui-preset-card,.ui-mode-control .ui-setting-row select,.ui-mode-control .ui-setting-toggle { background:#0e1d2a;color:#edf7ff;border-color:#28445a; }
.ui-mode-control .ui-settings-section { border-color:#20384c; }

/* E — kanban */
.kanban-home-note { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid #dce4f1;border-radius:12px;background:#fff;margin-bottom:12px; }
.kanban-home-note span { color:#667085; font-size:12px; }
.kanban-board { display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:10px;align-items:start;overflow-x:auto;padding-bottom:6px; }
.kanban-column { min-width:220px;border-radius:12px;background:#f4f6f9;border:1px solid #e1e6ed;overflow:hidden; }
.kanban-column:nth-child(1) { background:#f5f5f7; }
.kanban-column:nth-child(2) { background:#f0f5ff; }
.kanban-column:nth-child(3) { background:#fff8e8; }
.kanban-column:nth-child(4) { background:#eff9f3; }
.kanban-column > header { display:flex;justify-content:space-between;align-items:center;padding:12px 13px;font-size:13px; }
.kanban-column > header span { min-width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:rgba(255,255,255,.8);font-size:11px; }
.kanban-column > div { display:grid;gap:8px;padding:0 8px 8px; }
.kanban-card { display:grid;gap:7px;width:100%;padding:11px;border:1px solid rgba(17,24,39,.08);border-radius:10px;background:#fff;color:#172033;text-align:left;cursor:pointer;box-shadow:0 2px 8px rgba(16,24,40,.035); }
.kanban-card > strong { font-size:13px;line-height:1.4; }
.kanban-card > small { color:#667085; }
.kanban-card footer { display:flex;justify-content:space-between;color:#98a2b3;font-size:10px; }
.kanban-empty { padding:18px 10px;text-align:center;color:#98a2b3;font-size:12px; }

/* F — executive */
.ui-mode-executive .sidebar { background:#132342; }
.executive-greeting { padding:22px 24px;border-radius:14px;background:linear-gradient(135deg,#162d59,#294e89);color:#fff;margin-bottom:12px; }
.executive-greeting span { color:#bcd2f4;font-size:11px;font-weight:800; }
.executive-greeting h2 { margin:4px 0 7px;font-size:27px; }
.executive-greeting p { margin:0;color:#d5e2f5; }
.executive-stats { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px; }
.executive-stats .metric { border-top:3px solid #244e8c; }
.executive-urgent { border:1px solid #f3c8c4!important; }
.executive-urgent .panel-head { background:#fff7f6;border-radius:10px 10px 0 0; }
.ui-mode-executive .report-lead { font-size:16px; }

/* G — artifacts */
.ui-mode-artifacts { --blue:#305fbd; }
.artifact-hero { display:flex;justify-content:space-between;gap:18px;align-items:center;padding:22px;border:1px solid #e0e6ef;border-radius:14px;background:linear-gradient(135deg,#fff,#f4f7ff); }
.artifact-hero > div:first-child { display:grid;gap:4px; }
.artifact-hero span { color:#3564bd;font-size:11px;font-weight:800; }
.artifact-hero h2 { margin:0;font-size:25px; }
.artifact-hero p { margin:0;color:#667085; }
.artifact-actions { display:flex;gap:8px; }
.artifact-browser { display:grid; }
.artifact-browser-row { display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 14px;border-bottom:1px solid #edf0f3; }
.artifact-browser-row:last-child { border-bottom:0; }
.artifact-browser-row > div { display:grid;gap:2px;min-width:0; }
.artifact-browser-row strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.artifact-browser-row small { color:#7d8794; }
.artifact-browser-row button { border:1px solid #d7deea;border-radius:7px;background:#fff;padding:7px 10px;color:#315dba;cursor:pointer; }
.file-badge { width:42px;height:42px;display:grid;place-items:center;border-radius:9px;background:#eef3ff;color:#315dba;font-size:9px;font-weight:900; }

/* H — editorial */
.ui-mode-editorial { --bg:#f8f7f4; --paper:#fffdfa; --ink:#162238; --line:#e9e5dd; --soft:#fbfaf7; }
.ui-mode-editorial .content { background:radial-gradient(circle at 95% 2%,#edf3ff 0,transparent 24%),#f8f7f4; }
.ui-mode-editorial .sidebar { background:#18243a; }
.ui-mode-editorial .panel,.ui-mode-editorial .quick-command { border-color:#ebe5dc;box-shadow:0 12px 40px rgba(56,63,76,.05); }
.editorial-hero { padding:34px 30px;border-radius:18px;background:linear-gradient(120deg,#fffefa,#f5f8ff);border:1px solid #e9e5dd; }
.editorial-kicker { color:#7083a1;font-size:10px;letter-spacing:.16em;font-weight:800; }
.editorial-hero h2 { margin:9px 0;font-family:Georgia,"Noto Serif KR",serif;font-size:34px;line-height:1.25;letter-spacing:-.035em;color:#14243d; }
.editorial-hero p { color:#758093; }
.editorial-numbers { display:flex;gap:26px;margin-top:22px;padding-top:18px;border-top:1px solid #e7e6e2; }
.editorial-numbers span { color:#6f7887;font-size:12px; }
.editorial-numbers b { color:#17253d;font:700 24px Georgia,serif;margin-right:5px; }
.ui-mode-editorial .panel-title { font-family:Georgia,"Noto Serif KR",serif;font-size:18px; }

@media (max-width: 900px) {
  .ui-preset-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .summary-two,.artifact-layout,.editorial-layout,.executive-layout,.control-layout { grid-template-columns:1fr; }
  .summary-hero { grid-template-columns:1fr; }
  .control-grid,.executive-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .current-ui-label { display:none; }
  #ui-settings { width:42px; overflow:hidden; color:transparent; position:relative; }
  #ui-settings::after { content:"설정"; color:#344054; position:absolute; inset:0; display:grid; place-items:center; font-size:11px; }
  .ui-mode-control #ui-settings::after { color:#c7eaff; }
  .ui-settings-modal { width:calc(100vw - 10px); max-height:96vh; border-radius:14px; }
  .ui-preset-grid { grid-template-columns:1fr 1fr; gap:7px; }
  .ui-preset-card { min-height:112px;padding:11px; }
  .ui-screen-grid { grid-template-columns:1fr; }
  .ui-settings-title { display:grid;gap:4px; }
  .quick-command { position:sticky;top:8px;z-index:8; }
  .compact-op { grid-template-columns:9px minmax(0,1fr); gap:10px; }
  .compact-op-next { grid-column:2;text-align:left; }
  .summary-hero { padding:16px; }
  .summary-hero h2 { font-size:22px; }
  .summary-stat-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; }
  .summary-stat-grid button { padding:10px 6px;text-align:center; }
  .summary-stat-grid strong { font-size:20px; }
  .summary-stat-grid span { font-size:10px; }
  .tycoon-sky { min-height:215px; }
  .tycoon-building span { font-size:88px; }
  .tycoon-bubble { max-width:180px;font-size:10px; }
  .tycoon-mission { grid-template-columns:repeat(3,1fr); }
  .tycoon-mission > strong { grid-column:1/-1;padding:0 2px; }
  .control-grid,.executive-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .control-stat { padding:12px; }
  .control-stat strong { font-size:23px; }
  .control-ops > button { grid-template-columns:minmax(0,1fr) 55px; }
  .control-progress { grid-column:1/-1;grid-row:2; }
  .kanban-board { grid-template-columns:repeat(4,78vw); margin-right:-14px; padding-right:14px; scroll-snap-type:x proximity; }
  .kanban-column { scroll-snap-align:start; }
  .executive-greeting { padding:18px; }
  .executive-greeting h2 { font-size:22px; }
  .artifact-hero { align-items:flex-start;flex-direction:column;padding:17px; }
  .artifact-actions { width:100%; }
  .artifact-actions > * { flex:1; }
  .artifact-browser-row { grid-template-columns:40px minmax(0,1fr) auto;padding:10px 12px; }
  .editorial-hero { padding:23px 19px; }
  .editorial-hero h2 { font-size:27px; }
  .editorial-numbers { gap:14px;justify-content:space-between; }
  .editorial-numbers b { display:block;font-size:20px; }
  .ui-mode-control .mobile-nav { background:rgba(6,16,27,.97);border-color:#19364b; }
  .ui-mode-control .mobile-nav .nav-button { color:#7f98ad; }
  .ui-mode-control .mobile-nav .nav-button.active { background:#12324a;color:#59d2ff; }
}

/* v8 mobile polish: native-safe frame, compact owner decisions, mockup-like hierarchy */
html { background: var(--bg, #f3f4f6); }
body { background: var(--bg, #f3f4f6); }

.owner-sheet-backdrop { z-index: 1750; background: rgba(15, 23, 42, .34); backdrop-filter: blur(5px); }
.owner-decision-sheet { width: min(680px, calc(100vw - 24px)); padding: 18px; overflow: auto; }
.owner-sheet-grabber { display: none; width: 42px; height: 4px; border-radius: 99px; background: #d0d5dd; margin: -4px auto 13px; }
.owner-sheet-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.owner-sheet-head h2 { margin: 7px 0 4px; font-size: 23px; line-height: 1.25; letter-spacing: -.025em; }
.owner-sheet-head p { margin: 0; color: #667085; font-size: 13px; line-height: 1.5; }
.owner-sheet-head .icon-button { flex: 0 0 38px; font-size: 22px; line-height: 1; }
.owner-summary-card { display: grid; gap: 7px; margin: 10px 0; padding: 14px 15px; border: 1px solid #e4e7ec; border-radius: 12px; background: #f8fafc; }
.owner-summary-card > span { color: #667085; font-size: 11px; font-weight: 800; }
.owner-summary-card > strong { color: #101828; font-size: 15px; line-height: 1.55; font-weight: 700; }
.owner-summary-action { border-color: #d8e5ff; background: #f2f6ff; }
.owner-summary-action > span { color: #2457c5; }
.owner-related-button { width: 100%; margin: 2px 0 6px; }
.owner-detail-fold { border-top: 1px solid #eaecf0; margin-top: 8px; padding-top: 4px; }
.owner-detail-fold > summary { cursor: pointer; list-style: none; padding: 12px 2px; color: #475467; font-size: 13px; font-weight: 750; }
.owner-detail-fold > summary::-webkit-details-marker { display: none; }
.owner-detail-fold > summary::after { content: "⌄"; float: right; color: #98a2b3; }
.owner-detail-fold[open] > summary::after { content: "⌃"; }
.owner-detail-fold .owner-instructions { margin: 0 0 10px; padding: 0 0 0 22px; color: #475467; font-size: 13px; line-height: 1.6; }
.owner-resolution-form { margin-top: 2px; }
.owner-sheet-actions { position: sticky; bottom: -18px; margin: 10px -18px -18px; padding: 12px 18px calc(12px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.97); border-top: 1px solid #eaecf0; backdrop-filter: blur(12px); }
.owner-sheet-actions .approval-button { min-height: 45px; }
.owner-danger-note { display: grid; gap: 2px; padding: 10px 12px; border-radius: 9px; background: #fff4f3; color: #912018; font-size: 12px; }
.compact-owner-request { padding: 15px; }
.compact-owner-request p { margin: 8px 0; color: #475467; line-height: 1.55; }
.owner-request-next { display: grid; gap: 3px; margin: 10px 0 12px; padding: 10px 12px; border-radius: 9px; background: #f5f8ff; }
.owner-request-next span { color: #667085; font-size: 11px; font-weight: 800; }
.owner-request-next strong { color: #163b7a; font-size: 13px; line-height: 1.5; }

@media (max-width: 760px) {
  /* The current Android wrapper draws edge-to-edge. Reserve a native-status-bar
     strip so web content/modal blur no longer sits behind the phone clock. */
  .android-company-app body { padding-top: max(env(safe-area-inset-top), 26px); }
  .android-company-app .shell { min-height: calc(100dvh - max(env(safe-area-inset-top), 26px)); }
  .android-company-app .modal-backdrop { top: max(env(safe-area-inset-top), 26px); height: calc(100dvh - max(env(safe-area-inset-top), 26px)); }

  .content { padding-left: 12px; padding-right: 12px; }
  .topbar { position: sticky; top: 0; z-index: 30; height: 62px; margin: 0 -12px 8px; padding: 0 12px; background: rgba(255,255,255,.96); border-bottom: 1px solid #eaecf0; backdrop-filter: blur(14px); }
  .ui-mode-control .topbar { background: rgba(7,17,29,.96); border-color: #173147; }
  .page-title { font-size: 21px; }
  .page-kicker { display: none; }
  .top-actions { gap: 5px; }
  #refresh { width: 40px; overflow: hidden; color: transparent; position: relative; }
  #refresh::after { content: "↻"; color: #475467; position: absolute; inset: 0; display: grid; place-items: center; font-size: 18px; }
  .ui-mode-control #refresh::after { color: #c7eaff; }

  .operation-row p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; white-space: normal; }
  .operation-row-meta { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .operation-row-next { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

  .mobile-nav .nav-icon { display: block; font-size: 18px; line-height: 1; }
  .mobile-nav .nav-button { gap: 2px; }

  .owner-sheet-backdrop { align-items: end; padding: 0; }
  .owner-decision-sheet { width: 100%; max-height: min(78dvh, 760px); border-radius: 22px 22px 0 0; padding: 14px 15px calc(10px + env(safe-area-inset-bottom)); }
  .owner-sheet-grabber { display: block; }
  .owner-sheet-head h2 { font-size: 20px; }
  .owner-summary-card { padding: 12px 13px; margin: 8px 0; }
  .owner-summary-card > strong { font-size: 14px; }
  .owner-sheet-actions { bottom: calc(-10px - env(safe-area-inset-bottom)); margin: 8px -15px calc(-10px - env(safe-area-inset-bottom)); padding: 10px 15px calc(10px + env(safe-area-inset-bottom)); display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .owner-sheet-actions .approval-button-danger { grid-column: 1 / -1; }
  .operation-request-modal .approval-recommendation { display: grid; gap: 4px; margin: 8px 0; }

  /* All eight modes share the same compact phone frame, while each mode keeps
     its own content/layout. This makes the implemented UI match the mockups
     much more closely without changing any business features. */
  .panel, .quick-command, .summary-hero, .executive-greeting, .tycoon-work-head, .kanban-home-note { margin-bottom: 10px; }
  .panel-head { padding: 14px 14px 10px; }
  .compact-op { min-height: 56px; padding: 9px 12px; }
  .summary-stat-grid { margin-bottom: 10px; }
}

/* v9 — UI finish pass: fixed settings control, richer mode layouts, denser mobile management UI */
.ui-settings-button,
.refresh-button {
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  padding: 0 !important;
  flex: 0 0 40px !important;
  align-self: center !important;
  display: grid !important;
  place-items: center !important;
  line-height: 1 !important;
  overflow: hidden !important;
}
.ui-settings-button span { font-size: 18px; transform: translateY(-1px); }
.refresh-button span { font-size: 20px; transform: translateY(-1px); }
#ui-settings::after,
#refresh::after { content: none !important; display: none !important; }

.ui-settings-backdrop { z-index: 1800; }
.ui-settings-modal { width:min(1040px,calc(100vw - 28px)); max-height:min(900px,92vh); padding:20px; }
.ui-settings-grabber { display:none; }
.ui-settings-close { font-size:24px; }
.ui-preset-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.ui-preset-card { position:relative; min-height:180px; padding:10px; display:grid; grid-template-rows:92px auto; gap:10px; text-align:left; overflow:hidden; }
.ui-preset-card.selected { border-color:#5280e8; box-shadow:0 0 0 2px rgba(54,92,245,.12); }
.ui-preset-copy { display:grid; grid-template-columns:auto 1fr; gap:3px 7px; align-items:center; }
.ui-preset-copy strong { font-size:13px; line-height:1.2; }
.ui-preset-copy small { grid-column:1/-1; color:#667085; line-height:1.4; }
.preset-preview { position:relative; display:block; height:92px; border-radius:10px; overflow:hidden; background:#f6f7fb; border:1px solid #e7eaf0; }
.preset-preview i { position:absolute; display:block; }
.preset-preview-corporate { background:#eef1f5; }
.preset-preview-corporate .pv-sidebar { left:0;top:0;bottom:0;width:22%;background:#1c2945; }
.preset-preview-corporate .pv-main.a { left:29%;top:14%;right:8%;height:18%;background:#fff;border-radius:5px; }
.preset-preview-corporate .pv-main.b { left:29%;top:41%;right:8%;bottom:12%;background:#fff;border-radius:5px; }
.preset-preview-summary { background:linear-gradient(#f8fbff,#eef4fb); }
.preset-preview-summary .pv-stat { top:16%; width:18%; height:30%; border-radius:6px; background:#fff; box-shadow:0 2px 6px rgba(35,72,130,.08); }
.preset-preview-summary .pv-stat.a { left:7%; } .preset-preview-summary .pv-stat.b { left:29%;background:#eaf4ff; } .preset-preview-summary .pv-stat.c { left:51%;background:#edfbf4; } .preset-preview-summary .pv-stat.d { left:73%;background:#fff5df; }
.preset-preview-summary::after { content:"";position:absolute;left:7%;right:7%;bottom:13%;height:25%;border-radius:6px;background:#fff; }
.preset-preview-tycoon { background:linear-gradient(#84baff 0 48%,#d6f0c5 49% 100%); }
.preset-preview-tycoon .pv-building { left:37%;bottom:12%;width:28%;height:52%;background:#e8f4ff;border:2px solid #487cb4;border-radius:4px 4px 1px 1px;box-shadow:-15px 9px 0 -7px #c6dff4,15px 9px 0 -7px #c6dff4; }
.preset-preview-tycoon .pv-building::before { content:"";position:absolute;inset:8px 7px 14px;background:repeating-linear-gradient(90deg,#50a6dc 0 6px,transparent 6px 10px),repeating-linear-gradient(#50a6dc 0 6px,transparent 6px 10px);opacity:.75; }
.preset-preview-tycoon .pv-card.a { left:6%;top:9%;width:31%;height:27%;border-radius:7px;background:#19345e; }
.preset-preview-tycoon .pv-card.b { right:6%;top:11%;width:27%;height:22%;border-radius:7px;background:#fff; }
.preset-preview-control { background:#07131f; }
.preset-preview-control .pv-chart { bottom:22%;width:12%;border-radius:3px 3px 0 0;background:#27b9ed; }
.preset-preview-control .pv-chart.a { left:16%;height:28%; } .preset-preview-control .pv-chart.b { left:34%;height:46%;background:#49e1c4; } .preset-preview-control .pv-chart.c { left:52%;height:35%;background:#ffd65c; }
.preset-preview-control .pv-line { left:8%;right:8%;bottom:14%;height:1px;background:#27455a; }
.preset-preview-kanban { display:grid; grid-template-columns:repeat(4,1fr); gap:5px; padding:7px; background:#f8f9fb; }
.preset-preview-kanban i { position:relative; inset:auto; border-radius:6px; background:#eceff4; }
.preset-preview-kanban i:nth-child(2){background:#edf4ff}.preset-preview-kanban i:nth-child(3){background:#fff5df}.preset-preview-kanban i:nth-child(4){background:#eaf8ef}
.preset-preview-executive { background:#f8f9fb; }
.preset-preview-executive .pv-alert { left:7%;right:7%;top:10%;height:25%;border-radius:6px;background:#fff0f1;border-left:4px solid #e85b64; }
.preset-preview-executive .pv-row { left:7%;right:7%;height:18%;border-radius:6px;background:#fff; }
.preset-preview-executive .pv-row.a { top:43%; }.preset-preview-executive .pv-row.b { top:67%; }
.preset-preview-artifacts { background:#f8fbff; }
.preset-preview-artifacts .pv-file { top:20%;width:22%;height:58%;border-radius:6px; }
.preset-preview-artifacts .pv-file.a{left:10%;background:#ffeded}.preset-preview-artifacts .pv-file.b{left:39%;background:#f1ecff}.preset-preview-artifacts .pv-file.c{left:68%;background:#eaf7ef}
.preset-preview-editorial { background:linear-gradient(135deg,#fffdf8,#eef3ff); }
.preset-preview-editorial .pv-title { left:9%;top:18%;width:58%;height:12%;background:#20304a;border-radius:2px; }
.preset-preview-editorial .pv-copy { left:9%;height:7%;background:#aeb8c8;border-radius:2px; }
.preset-preview-editorial .pv-copy.a{top:42%;width:76%}.preset-preview-editorial .pv-copy.b{top:57%;width:55%}

/* richer C / tycoon */
.tycoon-sky { min-height:300px; }
.tycoon-resources { position:absolute; right:18px; top:62px; z-index:5; display:flex; gap:6px; }
.tycoon-resources span { padding:6px 9px; border-radius:9px; background:rgba(24,53,94,.88); color:#eaf4ff; font-size:10px; box-shadow:0 5px 14px rgba(30,63,106,.18); }
.tycoon-resources b { color:#ffe073; }
.tycoon-campus { position:absolute; inset:auto 0 0; height:220px; z-index:2; }
.tycoon-campus::before { content:"";position:absolute;left:7%;right:7%;bottom:7px;height:86px;background:linear-gradient(180deg,#a7cf8d,#80b669);border-radius:50% 50% 16px 16px / 30% 30% 16px 16px;box-shadow:0 18px 32px rgba(39,84,58,.16); }
.tycoon-office-main { position:absolute;left:50%;bottom:42px;transform:translateX(-50%);width:132px;height:142px;border:3px solid #44759c;background:linear-gradient(180deg,#e9f6ff,#d9ecf6);border-radius:7px 7px 3px 3px;box-shadow:0 14px 18px rgba(33,74,108,.22); }
.tycoon-office-roof { position:absolute;left:-7px;right:-7px;top:-11px;height:15px;border-radius:6px;background:#d85150;box-shadow:0 3px 0 #b94343; }
.tycoon-windows { position:absolute;left:14px;right:14px;top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px; }
.tycoon-windows i { height:14px;border-radius:2px;background:linear-gradient(#47b8eb,#278bc2);box-shadow:inset 0 0 0 2px rgba(255,255,255,.3); }
.tycoon-door { position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:28px;height:36px;background:#2d92c2;border:3px solid #e8f6ff;border-bottom:0; }
.tycoon-office-main b { position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);white-space:nowrap;padding:5px 10px;border-radius:8px;background:#fff;color:#234a7b;font-size:10px;box-shadow:0 5px 13px rgba(0,0,0,.12); }
.tycoon-office-wing { position:absolute;bottom:48px;width:72px;height:82px;background:#cfe5f0;border:3px solid #507b9a;border-radius:5px; }
.tycoon-office-wing.left{left:calc(50% - 118px);transform:skewY(-4deg)}.tycoon-office-wing.right{right:calc(50% - 118px);transform:skewY(4deg)}
.tycoon-tree { position:absolute;bottom:38px;width:26px;height:48px; }
.tycoon-tree::before { content:"";position:absolute;width:24px;height:28px;border-radius:50%;background:#4ea66b;box-shadow:-8px 8px 0 #69bb7d,8px 8px 0 #3d915c; }
.tycoon-tree::after { content:"";position:absolute;left:11px;top:25px;width:5px;height:21px;background:#8b6a4f;border-radius:2px; }
.tycoon-tree.t1{left:18%}.tycoon-tree.t2{right:18%}.tycoon-tree.t3{right:29%;transform:scale(.8)}
.tycoon-path { position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:86px;height:52px;background:linear-gradient(90deg,transparent 0 18%,#d9d4c4 18% 82%,transparent 82%);clip-path:polygon(36% 0,64% 0,100% 100%,0 100%); }
.tycoon-mission button { display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px;text-align:left; }
.tycoon-mission button span { font-size:10px;color:#6f83a0; }
.tycoon-mission button b { margin:0; }
.tycoon-team-head { display:flex;justify-content:space-between;gap:15px;align-items:center;padding:18px 20px;margin-bottom:12px;border:1px solid #cfe0f5;border-radius:16px;background:linear-gradient(135deg,#fff,#eef6ff); }
.tycoon-team-head span { color:#4775ad;font-size:11px;font-weight:800; }.tycoon-team-head h2 { margin:4px 0 0;font-size:20px; }
.tycoon-team-stats { display:flex;gap:7px; }.tycoon-team-stats b { min-width:60px;padding:10px;border-radius:10px;background:#fff;border:1px solid #dae6f3;text-align:center;color:#224d82;font-size:18px; }.tycoon-team-stats small { display:block;margin-top:2px;color:#7c8fa8;font-size:9px; }
.tycoon-dept-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:12px; }
.tycoon-dept-grid article { display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;padding:12px;border:1px solid #d7e3f1;border-radius:12px;background:#fff; }
.tycoon-dept-grid .dept-icon { width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#edf4ff;color:#2c68bf;font-size:18px; }.tycoon-dept-grid strong,.tycoon-dept-grid small{display:block}.tycoon-dept-grid small{margin-top:2px;color:#7f8da0;font-size:10px}.tycoon-dept-grid i{display:block;height:5px;margin-top:6px;border-radius:99px;background:#e9eef5;overflow:hidden}.tycoon-dept-grid em{display:block;height:100%;background:linear-gradient(90deg,#5e86db,#55b4ff);border-radius:inherit}
.tycoon-floor-panel { overflow:hidden; }.tycoon-floor { position:relative;height:290px;background:linear-gradient(180deg,#d8edff 0 28%,#f1e7d5 28% 100%);overflow:hidden; }.floor-window{position:absolute;left:0;right:0;top:0;height:82px;background:repeating-linear-gradient(90deg,#96c9ec 0 54px,#e6f5ff 54px 60px);border-bottom:7px solid #c9d7df}.floor-room{position:absolute;left:5%;right:5%;bottom:12px;height:190px;border-radius:12px;background:linear-gradient(135deg,#f6efe2,#e8dcc8);box-shadow:inset 0 0 0 1px #d9cab1}.tycoon-desk{position:absolute;width:64px;height:45px;border:0;border-radius:6px;background:#d9c2a3;color:#3f536c;box-shadow:0 5px 9px rgba(74,58,42,.12);cursor:pointer}.tycoon-desk span{display:block;font-size:18px}.tycoon-desk small{display:block;max-width:58px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px}.tycoon-desk.d1{left:6%;top:20%}.tycoon-desk.d2{left:27%;top:16%}.tycoon-desk.d3{left:50%;top:18%}.tycoon-desk.d4{right:6%;top:20%}.tycoon-desk.d5{left:12%;top:55%}.tycoon-desk.d6{left:36%;top:53%}.tycoon-desk.d7{right:30%;top:55%}.tycoon-desk.d8{right:8%;top:52%}.tycoon-desk.d9{left:24%;top:76%}.tycoon-desk.d10{right:24%;top:76%}.floor-center{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);font-size:9px;font-weight:900;color:#8f7c62;letter-spacing:.08em}.floor-plant{position:absolute;width:19px;height:28px;border-radius:50% 50% 45% 45%;background:#4c9e61;bottom:12px}.floor-plant::after{content:"";position:absolute;left:5px;right:5px;bottom:-8px;height:10px;background:#9f7658;border-radius:2px}.floor-plant.p1{left:3%}.floor-plant.p2{right:3%}
.tycoon-facility-head { padding:18px 20px;margin-bottom:12px;border-radius:16px;background:linear-gradient(135deg,#244c89,#4279d2);color:#fff; }.tycoon-facility-head span{font-size:11px;color:#d9e8ff}.tycoon-facility-head h2{margin:4px 0;font-size:21px}.tycoon-facility-head p{margin:0;color:#dbe7fa;font-size:12px}.facility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.facility-card{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:13px;border:1px solid #d6e3f2;border-radius:14px;background:#fff}.facility-visual{height:80px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,#ddecff,#a9cef5);color:#235a98;font-size:32px}.facility-card strong{display:block}.facility-card small{display:block;margin-top:3px;color:#718096;font-size:10px}.facility-card p{margin:7px 0 0;color:#667085;font-size:11px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tycoon-report-banner{padding:18px 20px;margin-bottom:12px;border-radius:16px;background:linear-gradient(135deg,#254d8c,#4b83d7);color:#fff}.tycoon-report-banner span,.tycoon-report-banner small{display:block;color:#dceaff}.tycoon-report-banner strong{display:block;margin:4px 0;font-size:20px}

.report-summary-hero { margin-bottom:12px; }.report-editorial-hero { margin-bottom:12px; }

@media (max-width: 900px) {
  .ui-preset-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tycoon-dept-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  /* hard stop: top actions can never stretch vertically */
  .topbar { min-height:58px !important; height:58px !important; max-height:58px !important; align-items:center !important; }
  .top-actions { height:40px !important; min-height:40px !important; max-height:40px !important; align-self:center !important; align-items:center !important; flex:0 0 auto !important; }
  .ui-settings-button,.refresh-button { width:38px !important;min-width:38px !important;max-width:38px !important;height:38px !important;min-height:38px !important;max-height:38px !important;border-radius:10px !important; }
  .ui-settings-button span{font-size:17px}.refresh-button span{font-size:19px}

  .ui-settings-backdrop { align-items:end !important; padding:0 !important; }
  .ui-settings-modal { width:100% !important; max-width:none !important; max-height:calc(100dvh - max(env(safe-area-inset-top),26px) - 8px) !important; border-radius:22px 22px 0 0 !important; padding:12px 14px calc(16px + env(safe-area-inset-bottom)) !important; }
  .ui-settings-grabber { display:block;width:42px;height:4px;border-radius:999px;background:#d0d5dd;margin:0 auto 12px; }
  .ui-settings-head { align-items:center; }.ui-settings-head h2{font-size:19px;margin:2px 0 3px}.ui-settings-head .modal-sub{font-size:12px;margin:0}.ui-settings-close{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;max-width:36px!important;max-height:36px!important;flex:0 0 36px!important;}
  .ui-settings-section { margin-top:15px;padding-top:14px; }.ui-settings-section h3{font-size:14px;margin-bottom:9px}.ui-settings-title span{font-size:10px}
  .ui-preset-grid { grid-template-columns:1fr 1fr !important;gap:8px!important; }
  .ui-preset-card { min-height:145px!important;grid-template-rows:72px auto!important;padding:8px!important;border-radius:12px!important; }
  .preset-preview { height:72px; }.ui-preset-copy strong{font-size:12px}.ui-preset-copy small{font-size:9px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ui-preset-code{font-size:9px}
  .ui-settings-actions { position:sticky;bottom:calc(-16px - env(safe-area-inset-bottom));margin:12px -14px calc(-16px - env(safe-area-inset-bottom));padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid #eaecf0;backdrop-filter:blur(12px);display:grid;grid-template-columns:1fr 1fr; }

  .android-company-app body { padding-top:max(env(safe-area-inset-top),26px) !important; }
  .android-company-app .content { background-clip:padding-box; }
  .android-company-app .topbar { top:0 !important; }

  .tycoon-sky { min-height:250px; }.tycoon-campus{height:185px}.tycoon-office-main{width:108px;height:118px;bottom:35px}.tycoon-office-wing{width:58px;height:66px;bottom:41px}.tycoon-office-wing.left{left:calc(50% - 96px)}.tycoon-office-wing.right{right:calc(50% - 96px)}.tycoon-resources{top:57px;right:10px}.tycoon-level{left:10px;top:10px;width:145px}.tycoon-bubble{right:10px;top:102px;max-width:185px}.tycoon-mission{grid-template-columns:repeat(3,1fr)}.tycoon-mission>strong{grid-column:1/-1}.tycoon-team-head{display:grid;padding:14px}.tycoon-team-stats{justify-content:space-between}.tycoon-team-stats b{flex:1;min-width:0}.tycoon-dept-grid{grid-template-columns:1fr 1fr}.tycoon-dept-grid article{grid-template-columns:38px 1fr;padding:9px}.tycoon-dept-grid .dept-icon{width:36px;height:36px}.tycoon-floor{height:255px}.facility-grid{grid-template-columns:1fr}.facility-card{grid-template-columns:72px 1fr}.facility-visual{height:68px}
}

/* v9.3 — foldable / wide-touch responsive layout --------------------------
   Folded phones keep the existing mobile UI. When a foldable is unfolded,
   the same app automatically becomes a compact tablet operations console.
   No business logic or UI mode is changed. */
@media (min-width: 700px) and (max-width: 1100px) {
  /* Use the extra width instead of simply stretching phone cards. */
  .shell {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    min-height: 100dvh;
  }
  .sidebar {
    display: flex;
    width: 76px;
    padding: 16px 8px;
    height: 100dvh;
    overflow: hidden;
  }
  .brand { justify-content:center; padding: 0 0 18px; }
  .brand-mark { width: 40px; height:40px; }
  .brand > div:not(.brand-mark), .sidebar-foot .sidebar-note { display:none; }
  .nav { gap:6px; }
  .nav-button {
    min-height: 58px;
    padding: 8px 4px;
    display:grid;
    place-items:center;
    gap:4px;
    text-align:center;
    font-size:10px;
    line-height:1.15;
  }
  .nav-icon { display:block; width:auto; font-size:19px; }
  .sidebar-foot { padding: 13px 0 0; display:grid; place-items:center; }
  .system-line { font-size:0; gap:0; }
  .online-dot { width:9px; height:9px; }

  .content { padding: 0 20px 28px; }
  .topbar {
    position:sticky;
    top:0;
    z-index:30;
    height:66px;
    margin:0 -20px 10px;
    padding:0 20px;
    background:rgba(255,255,255,.96);
    border-bottom:1px solid var(--line);
    backdrop-filter:blur(14px);
  }
  .ui-mode-control .topbar { background:rgba(7,17,29,.96); }
  .page-title { font-size:23px; }
  .page-kicker { display:none; }
  .current-ui-label { display:inline-flex; max-width:165px; overflow:hidden; text-overflow:ellipsis; }
  #ui-settings { width:42px; min-width:42px; padding:0; color:transparent; position:relative; overflow:hidden; }
  #ui-settings::after { content:"⚙"; color:#344054; position:absolute; inset:0; display:grid; place-items:center; font-size:17px; }
  .ui-mode-control #ui-settings::after { color:#c7eaff; }

  /* Unfolded Fold: two useful areas at once. */
  .dashboard-grid,
  .summary-two,
  .artifact-layout,
  .editorial-layout,
  .executive-layout,
  .control-layout {
    grid-template-columns:minmax(0, 1.22fr) minmax(270px, .78fr);
    gap:12px;
  }
  .summary-hero { grid-template-columns:minmax(0,1fr) minmax(280px,.85fr); }
  .metrics { grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
  .metric { padding:13px; }
  .metric-value { font-size:22px; }
  .metric-note { font-size:11px; }
  .panel-head { padding:14px 15px 10px; }
  .panel-title { font-size:16px; }
  .quick-command { position:static; padding:13px 14px; }

  /* Task lists use width for content instead of extra vertical scrolling. */
  .compact-op { grid-template-columns:9px minmax(0,1fr) minmax(150px,.7fr); min-height:58px; padding:9px 13px; }
  .compact-op-next { grid-column:auto; text-align:right; }
  .operation-row { padding:14px 16px; }
  .operation-row p { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

  /* Staff becomes an actual directory/table on the inner screen. */
  .staff-head { display:grid; grid-template-columns:minmax(110px,.75fr) minmax(190px,1.45fr) minmax(110px,.8fr) 78px; gap:10px; padding:9px 12px; }
  .staff-row { display:grid; grid-template-columns:minmax(110px,.75fr) minmax(190px,1.45fr) minmax(110px,.8fr) 78px; gap:10px; padding:12px; }
  .staff-duty,.staff-model,.staff-row > div:last-child { grid-column:auto; grid-row:auto; }
  .staff-name strong { font-size:13px; }

  /* Kanban shows two columns side-by-side on the Fold inner display. */
  .kanban-board {
    grid-template-columns:repeat(4, minmax(285px, calc((100vw - 124px) / 2)));
    gap:10px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    padding-bottom:8px;
  }
  .kanban-column { scroll-snap-align:start; }

  /* Control room and executive modes benefit from the wide canvas. */
  .control-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .executive-stats { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .summary-stat-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }

  /* Tycoon: HQ and management information can coexist on the inner screen. */
  .tycoon-sky { min-height:250px; }
  .tycoon-building span { font-size:105px; }
  .tycoon-mission { grid-template-columns:1.35fr repeat(3,1fr); }
  .tycoon-mission > strong { grid-column:auto; padding-left:6px; }
  .dept-tiles { grid-template-columns:repeat(4,minmax(0,1fr)); }

  /* Settings becomes a tablet control panel rather than a tall phone sheet. */
  .ui-settings-backdrop { align-items:center; padding:18px; }
  .ui-settings-modal { width:min(880px, calc(100vw - 110px)); max-height:88dvh; border-radius:18px; }
  .ui-preset-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
  .ui-screen-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }

  /* Dialogs sit in the center and use the extra horizontal room. */
  .modal-backdrop,.owner-sheet-backdrop { align-items:center; padding:18px; }
  .modal { width:min(720px, calc(100vw - 120px)); max-height:88dvh; border-radius:18px; padding-bottom:22px; }
  .owner-decision-sheet { width:min(720px, calc(100vw - 120px)); max-height:88dvh; border-radius:18px; padding:18px; }
  .owner-sheet-grabber { display:none; }
  .owner-sheet-actions { position:sticky; bottom:-18px; margin:10px -18px -18px; padding:12px 18px; grid-template-columns:auto auto auto; justify-content:end; }
  .owner-sheet-actions .approval-button-danger { grid-column:auto; }
  .artifact-preview-modal { width:min(900px, calc(100vw - 120px)); max-height:88dvh; }

  /* Inner display uses the rail navigation, not the phone bottom bar. */
  .mobile-nav { display:none !important; }

  /* Do not reserve an extra artificial phone-status strip when unfolded. */
  .android-company-app body { padding-top:env(safe-area-inset-top); }
  .android-company-app .shell { min-height:calc(100dvh - env(safe-area-inset-top)); }
  .android-company-app .modal-backdrop { top:env(safe-area-inset-top); height:calc(100dvh - env(safe-area-inset-top)); }
}

/* Very wide inner displays / landscape Fold use more of the canvas. */
@media (min-width: 900px) and (max-width: 1280px) {
  .shell { grid-template-columns:86px minmax(0,1fr); }
  .sidebar { width:86px; }
  .content { padding-left:24px; padding-right:24px; }
  .metrics { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .dashboard-grid { grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); }
  .ui-preset-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

/* ===== AI Company v10 · 운영센터 + 통합 제작실 ===== */
.manual-generation-banner{display:flex;gap:18px;align-items:center;justify-content:space-between;padding:16px 18px;margin-bottom:14px;border:1px solid #dbe4ff;border-radius:18px;background:linear-gradient(135deg,#eef5ff,#f7f2ff);color:#263657}.manual-generation-banner strong{font-size:17px;white-space:nowrap}.manual-generation-banner span{font-size:14px;line-height:1.55;color:#61708e}.production-health{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--line,#e4e8f0);border-radius:18px;background:var(--panel,#fff)}.production-health>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}.production-health strong{font-size:15px}.production-health small{grid-column:2;color:#7a8498;margin-top:2px}.offline-dot{background:#aab1bf!important}.production-health-actions,.production-action-row,.operating-actions,.operating-foot-actions{display:flex;flex-wrap:wrap;gap:8px}.production-shell{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1fr) minmax(250px,330px);gap:14px;align-items:start}.production-project-list,.production-detail,.production-side,.operating-list,.operating-main{min-width:0;border:1px solid var(--line,#e4e8f0);border-radius:20px;background:var(--panel,#fff);box-shadow:0 8px 26px rgba(34,48,83,.05)}.production-project-list,.production-side,.operating-list{padding:14px}.production-detail,.operating-main{padding:16px}.production-column-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.production-column-title strong{font-size:16px}.production-column-title span{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#f0f3f9;color:#526079;font-size:13px}.production-project{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:12px;margin:0 0 8px;border:1px solid #edf0f5;border-radius:14px;background:#fff;text-align:left}.production-project:hover,.production-project.active{border-color:#6c8cff;background:#f6f8ff}.production-project-state,.content-state{font-size:11px;font-weight:800;color:#345fc8;background:#edf3ff;border-radius:999px;padding:4px 8px}.production-project strong{font-size:14px;line-height:1.35}.production-project small{font-size:12px;color:#8a92a3}.production-project-hero{padding:4px 2px 16px}.production-project-hero>span{font-size:12px;font-weight:800;color:#2e63d8}.production-project-hero h2{margin:7px 0 4px;font-size:22px}.production-project-hero p{margin:0;color:#768096}.production-scenes{display:grid;gap:8px;margin-top:16px}.scene-card{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:center;width:100%;padding:11px;border:1px solid #e9edf4;border-radius:13px;background:#fff;text-align:left}.scene-card>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#edf3ff;color:#3564d4;font-weight:800}.scene-card div{display:grid;gap:2px}.scene-card strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-card small{color:#8b93a2}.scene-card.active{border-color:#4d73dd;background:#f4f7ff}.scene-work-panel{display:grid;gap:14px}.scene-work-head span{font-size:12px;color:#66738c}.scene-work-head h3{margin:5px 0 0;font-size:20px}.scene-prompt-box{padding:14px;border-radius:15px;background:#f7f8fb;border:1px solid #e7eaf1}.scene-prompt-box strong{display:block;margin-bottom:8px}.scene-prompt-box p{max-height:260px;overflow:auto;margin:0 0 12px;white-space:pre-wrap;font-size:13px;line-height:1.55;color:#505c73}.manual-steps{display:grid;gap:7px;margin:0;padding:0 0 0 22px;color:#526079;font-size:13px}.magnific-button{width:100%;padding:12px 15px;border:0;border-radius:13px;background:linear-gradient(135deg,#7b4de8,#9a5cf0);color:#fff;font-weight:800}.production-safety{padding:12px 14px;border-radius:14px;background:#fff8e8;border:1px solid #f0dfad}.production-safety strong,.production-safety span{display:block}.production-safety span{margin-top:4px;color:#776849;font-size:12px;line-height:1.5}.production-empty{min-height:170px;display:grid;place-items:center;text-align:center}.production-skeleton{min-height:260px}

.operating-center-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px 20px;margin-bottom:14px;border:1px solid #e5e9f2;border-radius:20px;background:linear-gradient(135deg,#fff,#f5f8ff)}.operating-center-head span{font-size:12px;font-weight:800;color:#3566d6}.operating-center-head h2{margin:6px 0 5px;font-size:22px}.operating-center-head p{margin:0;color:#748096;line-height:1.5}.checkpoint-strip{margin-bottom:14px;padding:14px 16px;border:1px solid #e5e9f2;border-radius:20px;background:#fff}.checkpoint-list{display:flex;gap:10px;overflow:auto;padding-bottom:2px}.checkpoint-card{flex:0 0 min(360px,82vw);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #e7ebf2;border-radius:14px;background:#fbfcff}.checkpoint-card div{min-width:0}.checkpoint-card strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkpoint-card p{margin:4px 0 0;color:#7a8496;font-size:12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.operating-layout{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:14px;align-items:start}.operating-list{display:grid;gap:8px}.operating-item-card{width:100%;padding:13px;border:1px solid #e9edf4;border-radius:15px;background:#fff;text-align:left}.operating-item-card:hover,.operating-item-card.active{border-color:#6282df;background:#f7f9ff}.operating-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.operating-item-top>span{color:#52617b;font-size:11px;font-weight:800}.operating-state{font-style:normal;font-size:11px;font-weight:800;padding:4px 8px;border-radius:999px;background:#eaf7ef;color:#277a50}.operating-state.state-paused{background:#fff4db;color:#946819}.operating-state.state-archived{background:#eff1f5;color:#70798a}.operating-item-card>strong{display:block;font-size:16px}.operating-item-card>p{margin:5px 0 10px;color:#798397;font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.operating-card-stats{display:flex;gap:6px;flex-wrap:wrap}.operating-card-stats span{padding:4px 7px;border-radius:8px;background:#f1f4f9;color:#56647d;font-size:11px}.operating-item-card>small{display:block;margin-top:8px;color:#9299a7}.operating-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.operating-detail-head span{font-size:12px;font-weight:800;color:#3867d3}.operating-detail-head h2{margin:5px 0;font-size:24px}.operating-detail-head p{margin:0;color:#798397;line-height:1.5}.operating-tabs{display:flex;gap:6px;margin:16px 0;padding-bottom:10px;border-bottom:1px solid #e9edf4;overflow:auto}.operating-tabs button{padding:8px 12px;border:0;border-radius:10px;background:transparent;color:#6c778d;font-weight:700;white-space:nowrap}.operating-tabs button.active{background:#1f3e7a;color:#fff}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.metric-grid span{display:grid;gap:3px;padding:14px 10px;border:1px solid #e8ebf2;border-radius:14px;background:#fbfcff;text-align:center}.metric-grid b{font-size:20px}.metric-grid small{color:#858ea0}.metric-grid.mini{grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0}.operating-latest-report,.cumulative-card{margin-top:14px;padding:15px;border:1px solid #e8ebf2;border-radius:15px;background:#fff}.operating-latest-report>p{color:#66738a;line-height:1.55}.operating-content-list,.operating-report-list,.operating-memory{display:grid;gap:9px}.operating-content-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid #e8ecf3;border-radius:13px}.operating-content-list article div{display:grid;gap:3px}.operating-content-list article small{color:#8891a2}.operating-report-card{border:1px solid #e7ebf2;border-radius:14px;background:#fff;overflow:hidden}.operating-report-card summary{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;cursor:pointer}.operating-report-card summary div{display:grid;gap:3px}.operating-report-card summary small{color:#8b93a1}.operating-report-card pre{margin:0;padding:14px 16px;border-top:1px solid #eef0f4;white-space:pre-wrap;font-family:inherit;line-height:1.65;background:#fafbfe}.memory-card{padding:13px 14px;border:1px solid #e8ebf2;border-radius:14px}.memory-card span{font-size:11px;font-weight:800;color:#3968d2}.memory-card strong{display:block;margin:4px 0}.memory-card p{margin:0;color:#68758d;line-height:1.55}.cumulative-card h4{margin:15px 0 6px}.cumulative-card ul{margin:0;padding-left:20px;color:#68758d}.operating-foot-actions{margin-top:14px;padding-top:12px;border-top:1px solid #eceff4}.operating-form-modal{max-width:620px}.metric-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check-line{display:flex;align-items:center;gap:8px;padding:10px 0;color:#59677e}.check-line input{width:auto}.operating-skeleton{min-height:360px}

.ui-mode-tycoon .operating-item-card{background:linear-gradient(150deg,#fff,#f2f7ff);box-shadow:0 5px 0 #dce9fa}.ui-mode-control .production-project-list,.ui-mode-control .production-detail,.ui-mode-control .production-side,.ui-mode-control .operating-list,.ui-mode-control .operating-main,.ui-mode-control .operating-center-head,.ui-mode-control .checkpoint-strip{background:#0b1928;border-color:#20384f;color:#eaf7ff}.ui-mode-control .production-project,.ui-mode-control .scene-card,.ui-mode-control .operating-item-card,.ui-mode-control .operating-latest-report,.ui-mode-control .cumulative-card,.ui-mode-control .memory-card,.ui-mode-control .operating-report-card{background:#0f2132;border-color:#29465e;color:#eaf7ff}.ui-mode-control .production-project small,.ui-mode-control .scene-card small,.ui-mode-control .operating-item-card>p,.ui-mode-control .operating-detail-head p,.ui-mode-control .operating-center-head p{color:#8fabbd}

@media(max-width:699px){.manual-generation-banner{display:grid;gap:6px}.manual-generation-banner strong{white-space:normal}.production-health{align-items:flex-start}.production-health-actions{display:none}.production-shell,.operating-layout{grid-template-columns:1fr}.production-project-list{max-height:230px;overflow:auto}.production-side{order:3}.operating-list{display:flex;overflow:auto}.operating-item-card{flex:0 0 82vw}.operating-detail-head,.operating-center-head{display:grid}.operating-actions{margin-top:4px}.metric-grid{grid-template-columns:1fr 1fr}.metric-form-grid{grid-template-columns:1fr}.operating-content-list article{grid-template-columns:auto minmax(0,1fr)}.operating-content-list article .secondary-button{grid-column:1/-1}.checkpoint-card{flex-direction:column;align-items:stretch}.checkpoint-card button{width:100%}}
@media(min-width:700px) and (max-width:1100px){.production-shell{grid-template-columns:230px minmax(0,1fr) 300px}.operating-layout{grid-template-columns:270px minmax(0,1fr)}.production-project-list,.production-detail,.production-side,.operating-list,.operating-main{max-height:calc(100vh - 210px);overflow:auto}.metric-grid{grid-template-columns:repeat(4,minmax(90px,1fr))}}
.operating-report-shortcuts{display:grid;gap:8px}.operating-report-shortcuts button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 14px;border:1px solid #e8ecf3;border-radius:13px;background:#fff;text-align:left}.operating-report-shortcuts button div{display:grid;gap:3px}.operating-report-shortcuts button small{color:#8790a2}.operating-report-shortcuts button>span{color:#3766d2;font-weight:800;white-space:nowrap}

/* ==========================================================
   AI Company v10.2 — command/voice + living tycoon workplace
   ========================================================== */
.top-actions .icon-button svg,
.command-composer-modal svg,
.quick-command-actions svg,
.tycoon-work-head svg,
.hero-command-launch svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.top-actions .icon-button { color:#24334d; background:#fff; border:1px solid #cfd6e2; box-shadow:0 4px 12px rgba(31,49,78,.08); }
.top-actions .icon-button:hover { background:#f6f8fb; }
.ui-mode-control .top-actions .icon-button { color:#dff8ff; background:#0d1e2d; border-color:#29445a; }

.quick-command.command-launcher { gap:12px; }
.quick-command-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
.quick-command-actions button,
.hero-command-launch button,
.tycoon-work-head button { display:inline-flex; align-items:center; justify-content:center; gap:7px; }
.hero-command-launch { position:relative; z-index:1; display:flex; gap:9px; margin-top:20px; flex-wrap:wrap; }
.hero-command-launch .primary-button,.hero-command-launch .secondary-button { min-height:46px; }

/* Command composer: one place for text, files and long voice dictation */
.command-composer-backdrop { z-index:110; align-items:flex-end; }
.command-composer-modal { width:min(760px, calc(100vw - 24px)); max-height:min(88vh, 860px); overflow:auto; padding:0; border-radius:24px 24px 0 0; background:#f8fafc; }
.command-composer-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:22px 22px 14px; background:#fff; border-bottom:1px solid #e5e9f0; position:sticky; top:0; z-index:4; }
.command-composer-head h2 { margin:3px 0 4px; font-size:24px; }
.command-composer-head p { margin:0; color:#667085; line-height:1.55; font-size:14px; }
.command-composer-head .icon-button { flex:0 0 42px; width:42px; height:42px; display:grid; place-items:center; background:#fff; color:#26344e; border:1px solid #d7dde7; }
.command-box.command-box-modal { margin:16px; display:grid; grid-template-columns:minmax(0,1fr) 190px; background:#fff; border:1px solid #dbe1ea; border-radius:18px; padding:12px; gap:12px; box-shadow:0 14px 40px rgba(31,50,82,.08); }
.command-box-modal .command-main { min-width:0; display:flex; flex-direction:column; }
.command-box-modal textarea { min-height:190px; max-height:42vh; font-size:17px; line-height:1.65; padding:14px; }
.command-box-modal .command-side { min-width:0; display:flex; flex-direction:column; gap:8px; }
.command-box-modal .command-side > button,.command-box-modal .command-side > label,.command-box-modal .project-select { min-height:46px; }
.command-submit { display:inline-flex; align-items:center; justify-content:center; gap:7px; }
.voice-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; transition:.18s ease; }
.voice-button.recording { color:#fff; background:#d83a45; border-color:#d83a45; box-shadow:0 0 0 4px rgba(216,58,69,.12); }
.voice-button.recording svg { animation:voiceMicPulse 1.2s ease-in-out infinite; }
@keyframes voiceMicPulse { 50% { transform:scale(1.12); } }
.voice-status { margin:6px 8px 2px; min-height:54px; padding:10px 12px; border-radius:12px; background:#f5f7fa; color:#5d687a; display:grid; grid-template-columns:auto 1fr; column-gap:8px; align-items:center; }
.voice-status strong { font-size:13px; color:#344054; }
.voice-status small { grid-column:2; font-size:12px; line-height:1.45; }
.voice-status.recording { background:#fff3f4; color:#8e3038; }
.voice-status.recording strong { color:#a62934; }
.voice-pulse { width:10px; height:10px; border-radius:50%; background:#d83a45; box-shadow:0 0 0 0 rgba(216,58,69,.35); animation:voicePulse 1.35s infinite; grid-row:1/3; }
@keyframes voicePulse { 70% { box-shadow:0 0 0 9px rgba(216,58,69,0); } 100% { box-shadow:0 0 0 0 rgba(216,58,69,0); } }
.voice-live-preview { margin:0 8px 4px; padding:9px 11px; border-left:3px solid #3d74d8; background:#f1f6ff; color:#3d5e92; font-size:13px; border-radius:7px; }
.command-composer-foot { display:flex; gap:12px; justify-content:space-between; flex-wrap:wrap; padding:0 18px 18px; color:#778196; font-size:12px; }

/* Tycoon HQ — 2.5D campus built with CSS, no emoji assets */
.tycoon-hq-v2 { overflow:hidden; }
.tycoon-hq-top { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; position:relative; z-index:5; padding:18px 18px 0; }
.tycoon-resources .has-issue { border-color:#ef9c9c!important; color:#9e3434!important; }
.campus-map { position:relative; min-height:390px; margin:8px 14px 0; perspective:900px; border-radius:24px; overflow:hidden; background:linear-gradient(#8fc3ff 0 42%,#b7dfa1 42% 100%); box-shadow:inset 0 -28px 50px rgba(76,125,67,.12); }
.campus-map::before { content:""; position:absolute; left:-10%; right:-10%; top:38%; height:92px; background:rgba(255,255,255,.3); border-radius:50%; filter:blur(3px); }
.campus-ground { position:absolute; left:8%; right:8%; bottom:24px; height:170px; transform:rotateX(61deg); transform-origin:center bottom; background:linear-gradient(150deg,#a6d88f,#84c77b); border-radius:30px; box-shadow:0 20px 30px rgba(47,100,55,.13); }
.campus-building { position:absolute; width:112px; min-height:104px; border:0; background:transparent; color:#163455; cursor:pointer; z-index:3; text-align:center; padding:0; }
.campus-building strong { display:block; margin-top:2px; font-size:13px; }
.campus-building small { display:block; color:#47657d; font-size:10px; margin-top:2px; }
.campus-building.hq { width:148px; left:50%; top:118px; transform:translateX(-50%); z-index:4; }
.campus-building.planning { left:8%; top:190px; }
.campus-building.meeting { right:8%; top:190px; }
.campus-building.studio { left:19%; top:64px; }
.campus-building.operations { right:19%; top:64px; }
.campus-building.analytics { left:50%; bottom:12px; transform:translateX(-50%); }
.building-model { width:86px; height:66px; margin:0 auto; display:block; position:relative; transform:rotateX(56deg) rotateZ(-32deg); transform-style:preserve-3d; transition:transform .2s ease, filter .2s ease; }
.campus-building:hover .building-model { transform:rotateX(54deg) rotateZ(-32deg) translateY(-4px); filter:brightness(1.04); }
.campus-building.hq .building-model { width:118px; height:92px; }
.building-front { position:absolute; left:8px; top:17px; width:72px; height:50px; background:linear-gradient(180deg,#f9fcff,#c9e4f5); border:2px solid #4f87aa; border-radius:4px; box-shadow:0 10px 13px rgba(32,70,98,.22); transform:translateZ(12px); display:grid; grid-template-columns:repeat(2,1fr); gap:6px; padding:8px; }
.hq .building-front { width:98px; height:68px; grid-template-columns:repeat(3,1fr); }
.building-front em { display:block; background:linear-gradient(150deg,#62c1ec,#2589bf); border:1px solid #2f7ca1; border-radius:2px; }
.building-side { position:absolute; right:-3px; top:22px; width:20px; height:49px; background:#aacfe2; transform:skewY(-28deg) translateZ(3px); border:1px solid #4e809e; border-radius:0 3px 3px 0; }
.hq .building-side { height:65px; }
.building-roof { position:absolute; left:3px; top:8px; width:80px; height:22px; background:linear-gradient(90deg,#e54c50,#c93542); transform:skewX(-28deg) translateZ(20px); border-radius:4px; box-shadow:0 4px 8px rgba(115,36,45,.18); }
.hq .building-roof { width:108px; }
.studio .building-roof { background:linear-gradient(90deg,#5b70e8,#384ec9); }
.meeting .building-roof { background:linear-gradient(90deg,#7c67d9,#604dbb); }
.operations .building-roof { background:linear-gradient(90deg,#42ac7b,#2e8e62); }
.analytics .building-roof { background:linear-gradient(90deg,#e1a34d,#c8872e); }
.planning .building-roof { background:linear-gradient(90deg,#51a3d8,#387eae); }
.meeting.busy .building-model { animation:meetingBuildingGlow 2.2s ease-in-out infinite; }
@keyframes meetingBuildingGlow { 50% { filter:drop-shadow(0 0 9px rgba(111,82,206,.55)); } }
.building-door { position:absolute; width:16px; height:24px; background:#327ca4; left:36px; top:48px; z-index:4; border-radius:2px 2px 0 0; }
.hq .building-door { left:51px; top:66px; }
.campus-path { position:absolute; height:16px; background:#e8dfc8; border:1px solid rgba(116,104,75,.12); transform:rotate(-16deg); border-radius:999px; z-index:1; }
.campus-path.p1 { width:270px; left:50%; bottom:69px; transform:translateX(-50%) rotate(-16deg); }
.campus-path.p2 { width:200px; left:50%; bottom:91px; transform:translateX(-50%) rotate(18deg); }
.campus-tree { position:absolute; width:26px; height:32px; border-radius:50% 50% 42% 42%; background:linear-gradient(135deg,#45ad64,#238447); box-shadow:0 9px 0 -6px #7c5a3a; z-index:2; }
.tree-a { left:7%; bottom:58px; }.tree-b { right:8%; bottom:68px; }.tree-c { right:21%; bottom:28px; }
.tycoon-room-shortcuts { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.tycoon-room-shortcuts button { border:1px solid #d9e2ec; background:#f9fbfd; border-radius:14px; min-height:92px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:10px 12px; text-align:left; color:#213852; }
.tycoon-room-shortcuts strong { margin-top:5px; }.tycoon-room-shortcuts small { color:#6c788a; }
.room-mini { width:34px; height:25px; display:block; border:2px solid #5d83ac; background:linear-gradient(145deg,#d9efff,#a8d0e8); transform:skewY(-9deg); border-radius:4px; box-shadow:6px 5px 0 #bdd0dd; }
.meeting-mini { border-color:#7b69bb; background:linear-gradient(145deg,#ece6ff,#cabef2); box-shadow:6px 5px 0 #d0c8e9; }
.production-mini { border-color:#5075c7; background:linear-gradient(145deg,#e4ebff,#b8c8f4); box-shadow:6px 5px 0 #c5cee3; }

/* Tiny 2.5D staff figures */
.staff-figure { width:46px; height:59px; display:block; position:relative; }
.staff-figure i { position:absolute; display:block; }
.staff-shadow { width:34px; height:10px; border-radius:50%; background:rgba(39,53,69,.15); bottom:0; left:6px; }
.staff-body { width:26px; height:30px; border-radius:10px 10px 6px 6px; left:10px; top:24px; background:#557ab6; border:1px solid rgba(24,55,91,.22); }
.staff-head { width:23px; height:23px; border-radius:50%; left:11.5px; top:7px; background:#f2c6a7; border:1px solid rgba(114,77,58,.16); box-shadow:inset -3px -3px 0 rgba(165,101,70,.08); }
.staff-hair { width:24px; height:11px; border-radius:14px 14px 6px 6px; left:11px; top:5px; background:#26364a; }
.staff-figure b { position:absolute; top:57px; left:50%; transform:translateX(-50%); white-space:nowrap; font-size:9px; font-weight:700; color:#415166; }
.staff-figure.tone-1 .staff-body{background:#6f67be}.staff-figure.tone-2 .staff-body{background:#3e9980}.staff-figure.tone-3 .staff-body{background:#d07b55}.staff-figure.tone-4 .staff-body{background:#b06191}.staff-figure.tone-5 .staff-body{background:#477c94}
.staff-figure.working .staff-body { box-shadow:0 0 0 3px rgba(45,112,208,.12); }

/* office / meeting room */
.tycoon-space-tabs { display:flex; gap:6px; margin:0 0 10px; padding:5px; background:#edf1f6; border-radius:12px; width:max-content; max-width:100%; }
.tycoon-space-tabs button { border:0; padding:8px 14px; border-radius:9px; background:transparent; color:#607087; font-weight:800; }
.tycoon-space-tabs button.active { background:#fff; color:#153d72; box-shadow:0 2px 10px rgba(43,63,91,.08); }
.tycoon-space-tabs b { display:inline-grid; place-items:center; min-width:18px; height:18px; border-radius:9px; background:#6b5cc1; color:#fff; font-size:10px; }
.tycoon-workspace-grid { display:grid; grid-template-columns:1.25fr .95fr; gap:12px; margin-bottom:12px; }
.office-scene-card,.meeting-room-card,.production-room-card { background:#fff; border:1px solid #dce3eb; border-radius:18px; padding:14px; box-shadow:0 8px 28px rgba(32,55,85,.055); overflow:hidden; }
.office-scene-head,.meeting-room-head,.production-room-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; margin-bottom:10px; }
.office-scene-head > div,.meeting-room-head > div,.production-room-head > div { display:grid; gap:3px; }
.office-scene-head strong,.meeting-room-head strong,.production-room-head strong { font-size:16px; }
.office-scene-head span,.meeting-room-head span,.production-room-head span { font-size:11px; color:#728094; }
.office-scene-head > span,.meeting-room-head > b,.production-room-head > b { background:#edf4ff; color:#315f9c; padding:5px 8px; border-radius:999px; font-size:11px; }
.office-scene { position:relative; min-height:330px; border-radius:16px; background:linear-gradient(160deg,#eff8ff 0 18%,#d6e3ea 18% 100%); overflow:hidden; display:grid; grid-template-columns:repeat(4,1fr); gap:13px 8px; padding:44px 14px 28px; perspective:800px; }
.office-scene::before { content:""; position:absolute; inset:22px 20px; border:2px solid rgba(82,116,143,.15); transform:skewY(-3deg); border-radius:12px; }
.office-desk { min-height:112px; border:0; background:transparent; position:relative; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; color:#44566d; z-index:2; padding:0 0 6px; }
.desk-top { position:absolute; width:74px; height:43px; top:45px; background:linear-gradient(145deg,#b68b61,#916846); transform:rotateX(58deg) rotateZ(-8deg); border-radius:5px; box-shadow:0 11px 9px rgba(76,60,45,.17); }
.desk-screen { position:absolute; width:37px; height:26px; top:28px; background:#364b61; border:3px solid #1f2d3b; border-radius:3px; box-shadow:0 0 0 2px #88bbe0 inset; }
.office-desk .staff-figure { position:absolute; top:52px; transform:scale(.84); transform-origin:center bottom; }
.office-desk > small { position:relative; z-index:4; margin-top:74px; max-width:88px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:9px; }
.office-desk.state-working .desk-screen { box-shadow:0 0 0 2px #73d4ff inset,0 0 14px rgba(67,174,224,.42); }
.office-desk.state-offline { opacity:.45; filter:grayscale(.65); }
.desk-away { position:absolute; top:62px; z-index:5; padding:5px 7px; border-radius:7px; background:#6c5dc2; color:#fff; font-size:9px; font-weight:800; }
.office-rug { position:absolute; left:32%; right:32%; top:43%; bottom:24%; border-radius:16px; background:rgba(89,133,183,.09); transform:skewY(-4deg); }
.office-plant { position:absolute; width:26px; height:38px; bottom:17px; border-radius:50% 50% 35% 35%; background:#5bb879; box-shadow:0 9px 0 -5px #9a6d48; }.plant-l{left:18px}.plant-r{right:18px}
.meeting-room { min-height:330px; position:relative; border-radius:16px; background:linear-gradient(160deg,#eef3fa,#d9e0e8); overflow:hidden; }
.meeting-wall { position:absolute; left:14px; right:14px; top:14px; height:72px; background:#f8fbff; border:1px solid #cbd7e4; border-radius:10px; display:flex; gap:7px; padding:9px; }
.meeting-wall i { flex:1; background:linear-gradient(180deg,#8ec5e6,#d5edf9); border-radius:5px; }
.meeting-table { position:absolute; width:54%; height:40%; left:23%; top:39%; border-radius:45%; background:linear-gradient(145deg,#9a6d4d,#754d34); transform:rotateX(56deg); box-shadow:0 18px 13px rgba(76,54,40,.19); }
.meeting-seat { border:0; background:transparent; position:absolute; width:54px; height:70px; padding:0; z-index:3; }
.meeting-seat .staff-figure { transform:scale(.9); }
.meeting-seat.seat-1{left:12%;top:33%}.meeting-seat.seat-2{right:12%;top:33%}.meeting-seat.seat-3{left:20%;bottom:11%}.meeting-seat.seat-4{right:20%;bottom:11%}.meeting-seat.seat-5{left:41%;top:24%}.meeting-seat.seat-6{left:42%;bottom:4%}
.meeting-empty-message { position:absolute; left:12%; right:12%; top:48%; padding:12px; border-radius:12px; background:rgba(255,255,255,.86); text-align:center; color:#6f7b8b; font-size:12px; }
.meeting-room-foot { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-top:9px; font-size:11px; color:#66758a; }.meeting-room-foot button{margin-left:auto;border:0;background:#eef4fb;color:#315f99;padding:7px 9px;border-radius:8px;font-weight:800}

/* visual production room */
.production-room-card { margin-bottom:12px; }
.production-room { display:grid; grid-template-columns:repeat(5,1fr); gap:8px; min-height:122px; padding:12px; border-radius:16px; background:linear-gradient(160deg,#eef4fb,#dce5ee); }
.production-station { min-width:0; background:rgba(255,255,255,.72); border:1px solid rgba(123,143,166,.25); border-radius:11px; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; padding:9px 5px; color:#69788b; }
.production-station.active,.production-station.done { color:#234b78; background:#fff; box-shadow:0 6px 14px rgba(50,75,109,.08); }
.production-station > i { width:38px; height:30px; display:block; margin-bottom:8px; position:relative; border:2px solid #6f88a4; background:#d9e9f5; border-radius:4px; transform:skewY(-6deg); box-shadow:5px 4px 0 #b7c7d5; }
.production-station.done > i{border-color:#4e9a77;background:#d9f2e5;box-shadow:5px 4px 0 #bdd9ca}.production-station.active > i{border-color:#4f78c9;background:#e1e8ff;box-shadow:5px 4px 0 #c4cee5}
.production-station span{font-size:12px;font-weight:900}.production-station small{font-size:9px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.production-room-progress { height:8px; background:#e8edf3; border-radius:999px; margin-top:10px; overflow:visible; position:relative; }.production-room-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#3977da,#52b18b)}.production-room-progress span{position:absolute;right:0;top:-21px;font-size:10px;color:#637187}

/* mission icons without emoji */
.mission-icon { width:36px; height:36px; border-radius:11px; background:#e8eff8; display:grid; place-items:center; }
.mission-icon i { width:14px; height:14px; border:3px solid #4775ad; border-radius:50%; position:relative; }
.mission-completed i { border-color:#3b9b6c; }.mission-completed i::after{content:"";position:absolute;width:8px;height:4px;border-left:2px solid #3b9b6c;border-bottom:2px solid #3b9b6c;transform:rotate(-45deg);left:1px;top:2px}
.mission-blocked i,.mission-failed i { border-radius:3px; transform:rotate(45deg); border-color:#c65959; }

/* mobile: command composer stays easy to reach, one room at a time */
@media (max-width: 700px) {
  .quick-command.command-launcher { align-items:flex-start; }
  .quick-command-actions { width:100%; display:grid; grid-template-columns:1fr 1fr; }
  .quick-command-actions button { min-width:0; padding:0 9px; font-size:12px; }
  .command-composer-modal { width:100%; max-height:92vh; border-radius:24px 24px 0 0; }
  .command-box.command-box-modal { grid-template-columns:1fr; margin:12px; }
  .command-box-modal .command-side { display:grid; grid-template-columns:1fr 1fr; }
  .command-box-modal .project-select,.command-box-modal .command-file-status { grid-column:1 / -1; }
  .command-box-modal textarea { min-height:170px; }
  .campus-map { min-height:335px; margin:7px 8px 0; }
  .campus-building { transform:scale(.86); transform-origin:center center; }
  .campus-building.hq { transform:translateX(-50%) scale(.88); top:105px; }
  .campus-building.planning{left:0;top:178px}.campus-building.meeting{right:0;top:178px}.campus-building.studio{left:10%;top:50px}.campus-building.operations{right:10%;top:50px}.campus-building.analytics{bottom:2px;transform:translateX(-50%) scale(.85)}
  .tycoon-workspace-grid { grid-template-columns:1fr; }
  .tycoon-workspace-grid[data-space-tab="office"] .meeting-room-card { display:none; }
  .tycoon-workspace-grid[data-space-tab="meeting"] .office-scene-card { display:none; }
  .office-scene { grid-template-columns:repeat(3,1fr); min-height:390px; }
  .production-room { grid-template-columns:repeat(5,minmax(72px,1fr)); overflow-x:auto; justify-content:start; }
  .production-station { min-width:72px; }
}

/* Fold/tablet: use the unfolded screen as a control room */
@media (min-width: 760px) {
  .command-composer-backdrop { align-items:center; }
  .command-composer-modal { border-radius:22px; max-height:82vh; }
  .campus-map { min-height:440px; }
  .tycoon-workspace-grid { grid-template-columns:minmax(0,1.25fr) minmax(320px,.9fr); }
  .office-scene,.meeting-room { min-height:390px; }
  .tycoon-space-tabs { display:none; }
}
:root {
  color-scheme: light;
  --bg: #f4f6fb;
  --paper: #ffffff;
  --ink: #172033;
  --muted: #6c7588;
  --line: #e3e7ef;
  --soft: #eef2f8;
  --navy: #172446;
  --blue: #365cf5;
  --blue-soft: #edf1ff;
  --mint: #13a77b;
  --mint-soft: #e7f8f2;
  --amber: #c47b15;
  --amber-soft: #fff5df;
  --red: #d84d55;
  --red-soft: #fff0f1;
  --violet: #7559d9;
  --shadow: 0 18px 50px rgba(29, 42, 75, 0.08);
  --radius: 22px;
  font-family: Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--bg); }
body { margin: 0; min-height: 100%; color: var(--ink); background: var(--bg); overflow-x: hidden; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }

.shell { min-height: 100vh; display: grid; grid-template-columns: 236px minmax(0, 1fr); }
.sidebar {
  position: sticky; top: 0; height: 100vh; padding: 28px 18px; background: var(--navy); color: white;
  display: flex; flex-direction: column; z-index: 20;
}
.brand { display: flex; align-items: center; gap: 12px; padding: 0 10px 28px; }
.brand-mark { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(145deg, #6b83ff, #3858e8); font-weight: 900; box-shadow: 0 8px 24px rgba(54,92,245,.4); }
.brand-title { font-size: 15px; font-weight: 850; letter-spacing: .04em; }
.brand-sub { color: #aeb8d2; font-size: 11px; margin-top: 2px; }
.nav { display: grid; gap: 5px; }
.nav-button { width: 100%; border: 0; background: transparent; color: #b8c1d8; border-radius: 13px; padding: 13px; display: flex; gap: 11px; align-items: center; text-align: left; cursor: pointer; font-size: 16px; font-weight: 700; }
.nav-button:hover { color: white; background: rgba(255,255,255,.07); }
.nav-button.active { color: white; background: rgba(109,133,255,.22); }
.nav-icon { width: 20px; text-align: center; font-size: 17px; }
.sidebar-foot { margin-top: auto; border-top: 1px solid rgba(255,255,255,.1); padding: 17px 10px 0; }
.system-line { display: flex; align-items: center; gap: 8px; font-size: 12px; color: #c4cbdb; }
.online-dot { width: 8px; height: 8px; border-radius: 999px; background: #42d59f; box-shadow: 0 0 0 4px rgba(66,213,159,.13); }
.sidebar-note { color: #8792ae; font-size: 11px; line-height: 1.5; margin-top: 8px; }

.content { min-width: 0; padding: 0 34px 44px; }
.topbar { height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.page-kicker { color: var(--blue); text-transform: uppercase; font-size: 12px; font-weight: 850; letter-spacing: .13em; }
.page-title { margin: 4px 0 0; font-size: 28px; line-height: 1.2; letter-spacing: -.03em; }
.top-actions { display: flex; gap: 9px; align-items: center; }
.icon-button, .ghost-button { border: 1px solid var(--line); background: var(--paper); border-radius: 12px; cursor: pointer; min-height: 42px; padding: 0 13px; box-shadow: 0 2px 8px rgba(29,42,75,.03); }
.icon-button { width: 42px; padding: 0; display: grid; place-items: center; }
.ghost-button:hover, .icon-button:hover { border-color: #bfc8da; background: #fafbfe; }

.hero {
  overflow: hidden; position: relative; background: linear-gradient(135deg, #18264a 0%, #273a73 68%, #365cf5 130%);
  color: white; border-radius: 28px; padding: 28px; box-shadow: var(--shadow);
}
.owner-action { margin-bottom: 17px; border: 1px solid #cbd6eb; background: linear-gradient(135deg,#ffffff,#f1f5ff); border-radius: 22px; padding: 21px 23px; display: flex; justify-content: space-between; align-items: center; gap: 18px; box-shadow: 0 10px 30px rgba(29,42,75,.05); }
.owner-action-wait { border-color: #edc66f; background: linear-gradient(135deg,#fffdf7,#fff4d9); }
.owner-action-danger { border-color: #e8aeb4; background: linear-gradient(135deg,#fffafa,#fff0f1); }
.owner-action-danger .owner-action-count { color: #b43e47; }
.owner-action-label { color: var(--blue); font-size: 14px; font-weight: 900; }
.owner-action h2 { margin: 6px 0 4px; font-size: 22px; line-height: 1.4; letter-spacing: -.025em; }
.owner-action p { margin: 0; color: #5d6679; font-size: 15px; line-height: 1.6; }
.owner-action-count, .owner-action-state { flex: 0 0 auto; border-radius: 16px; padding: 13px 15px; background: white; color: #9a5e0e; font-size: 18px; font-weight: 900; box-shadow: 0 6px 18px rgba(29,42,75,.06); }
.owner-action-state { color: var(--blue); }
.runtime-summary { margin-bottom: 17px; border: 1px solid var(--line); background: #fff; border-radius: 20px; padding: 18px 22px; display: flex; justify-content: space-between; align-items: center; gap: 18px; }
.runtime-summary-live { border-color: #8eb4ff; background: linear-gradient(135deg,#f8fbff,#eaf2ff); }
.runtime-summary-wait { border-color: #edc66f; background: linear-gradient(135deg,#fffdf8,#fff7e5); }
.runtime-label { color: var(--blue); font-size: 13px; font-weight: 900; }
.runtime-summary h2 { margin: 5px 0 3px; font-size: 19px; line-height: 1.4; }
.runtime-summary p { margin: 0; color: #5d6679; font-size: 14px; line-height: 1.55; }
.runtime-state { flex: 0 0 auto; border: 0; border-radius: 14px; padding: 11px 13px; background: #eef2fa; color: #34415c; font-size: 14px; font-weight: 900; }
button.runtime-state { cursor: pointer; }
.runtime-summary-live .runtime-state { background: #dce9ff; color: #174ea6; }
.runtime-summary-wait .runtime-state { background: #fff; color: #9a5e0e; }
.runtime-pulse { display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: #2463eb; box-shadow: 0 0 0 4px rgba(36,99,235,.14); }
.hero::after { content: ""; position: absolute; width: 270px; height: 270px; border-radius: 50%; right: -110px; top: -150px; background: rgba(124,147,255,.18); }
.hero-eyebrow { color: #bac7ff; font-size: 12px; font-weight: 750; }
.hero h2 { font-size: clamp(22px, 3vw, 31px); margin: 8px 0 7px; letter-spacing: -.035em; }
.hero p { margin: 0; color: #c7d0e8; font-size: 16px; line-height: 1.65; }
.command-box { position: relative; z-index: 1; margin-top: 21px; background: white; border-radius: 18px; padding: 8px; color: var(--ink); display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.command-box textarea { resize: none; border: 0; outline: none; min-height: 82px; max-height: 180px; padding: 12px 13px 8px; line-height: 1.6; width: 100%; color: var(--ink); background: transparent; font-size: 16px; }
.command-box textarea::placeholder { color: #9aa3b5; }
.command-side { display: flex; flex-direction: column; gap: 7px; min-width: 146px; }
.project-select { width: 100%; border: 1px solid var(--line); border-radius: 11px; padding: 9px 30px 9px 10px; background: #f8f9fc; font-size: 12px; color: #465069; }
.primary-button { border: 0; border-radius: 11px; background: var(--blue); color: white; min-height: 42px; padding: 0 16px; font-weight: 800; cursor: pointer; box-shadow: 0 8px 20px rgba(54,92,245,.25); }
.primary-button:hover { filter: brightness(1.04); }
.primary-button:disabled { cursor: not-allowed; opacity: .55; box-shadow: none; }
.command-hint { margin-top: 9px; color: #9faed2; font-size: 11px; display: flex; align-items: center; gap: 6px; }

.metrics { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 13px; margin-top: 17px; }
.metric { background: var(--paper); border: 1px solid var(--line); border-radius: 18px; padding: 17px; min-width: 0; }
.metric-button { text-align: left; cursor: pointer; box-shadow: 0 5px 18px rgba(29,42,75,.025); transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease; }
.metric-button:hover { transform: translateY(-2px); border-color: #b9c6e7; box-shadow: 0 10px 25px rgba(29,42,75,.07); }
.metric-label { color: var(--muted); font-size: 14px; font-weight: 700; }
.metric-row { margin-top: 8px; display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.metric-value { font-size: 25px; font-weight: 850; letter-spacing: -.04em; }
.metric-note { color: var(--muted); font-size: 13px; white-space: nowrap; }
.metric-link { margin-top: 10px; color: var(--blue); font-size: 11px; font-weight: 800; }

.dashboard-grid { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr); gap: 17px; margin-top: 17px; }
.stack { display: grid; gap: 17px; align-content: start; }
.panel { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 8px 28px rgba(29,42,75,.035); min-width: 0; }
.panel-head { display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 19px 20px 14px; }
.panel-title { font-size: 19px; font-weight: 830; letter-spacing: -.025em; }
.panel-sub { color: var(--muted); font-size: 14px; margin-top: 4px; line-height: 1.5; }
.text-button { border: 0; background: transparent; color: var(--blue); padding: 5px; cursor: pointer; font-size: 12px; font-weight: 750; }
.list { padding: 0 10px 10px; }
.list-row { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 13px 10px; border-top: 1px solid #eef1f6; }
.list-row:first-child { border-top: 0; }
.list-main { min-width: 0; }
.list-title { font-size: 15px; font-weight: 760; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.list-meta { margin-top: 6px; color: var(--muted); font-size: 13px; display: flex; flex-wrap: wrap; gap: 5px 11px; }
.status-pill, .model-pill, .tiny-pill { display: inline-flex; align-items: center; gap: 5px; border-radius: 999px; font-size: 12px; line-height: 1; font-weight: 750; padding: 7px 9px; white-space: nowrap; }
.status-pill::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.status-working, .status-in_progress, .status-collaborating { color: #2a62d5; background: #edf3ff; }
.status-review, .status-planned { color: var(--amber); background: var(--amber-soft); }
.status-done { color: var(--mint); background: var(--mint-soft); }
.status-cancelled, .status-offline { color: #8a92a2; background: #f0f2f5; }
.status-idle, .status-break, .status-inbox { color: var(--violet); background: #f2efff; }
.row-action { border: 1px solid var(--line); background: white; border-radius: 10px; padding: 8px 10px; cursor: pointer; font-size: 14px; color: #4e5870; }
.row-action:hover { border-color: #b9c3d6; }
.empty { padding: 34px 20px; text-align: center; color: var(--muted); font-size: 15px; line-height: 1.7; }

.report-top { display: flex; justify-content: space-between; gap: 15px; align-items: center; }
.report-person { display: flex; align-items: center; gap: 11px; min-width: 0; }
.report-person img { width: 48px; height: 48px; object-fit: contain; object-position: center bottom; border-radius: 14px; background: linear-gradient(145deg,#edf1ff,#f8f9fd); border: 1px solid #dde3f0; }
.report-who { font-size: 16px; font-weight: 850; }
.report-position { color: var(--muted); font-size: 13px; margin-top: 3px; }
.report-time { color: #858fa3; font-size: 12px; display: block; margin-top: 7px; text-align: right; }
.report-result { display: inline-flex; border-radius: 999px; padding: 7px 10px; font-size: 12px; font-weight: 850; }
.report-ok { color: #087c5c; background: var(--mint-soft); }
.report-wait { color: #9a5e0e; background: var(--amber-soft); }
.report-danger { color: #b43e47; background: var(--red-soft); }
.report-info { color: #3652bd; background: var(--blue-soft); }
.report-label { color: var(--blue); font-size: 12px; font-weight: 850; letter-spacing: .04em; margin-top: 18px; }
.report-lead { color: #273147; font-size: 17px; line-height: 1.65; font-weight: 720; margin-top: 6px; }
.executive-report { background: white; border: 1px solid var(--line); border-radius: 20px; padding: 20px; box-shadow: 0 8px 26px rgba(29,42,75,.035); }
.executive-report.compact { border: 0; border-top: 1px solid #eef1f6; border-radius: 0; box-shadow: none; padding: 17px 20px; }
.executive-report.compact:first-child { border-top: 0; }
.executive-report.compact .report-person img { width: 40px; height: 40px; }
.executive-report.compact .report-lead { font-size: 15px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.executive-report.compact .report-label { margin-top: 13px; }
.report-decision { display: flex; gap: 12px; align-items: flex-start; margin-top: 16px; border-radius: 13px; background: #f5f7fb; padding: 13px; font-size: 14px; line-height: 1.55; }
.report-decision strong { color: var(--navy); white-space: nowrap; }
.report-decision span { color: #596278; }
.report-details { margin-top: 13px; border-top: 1px solid var(--line); padding-top: 13px; }
.report-details summary { cursor: pointer; color: var(--blue); font-size: 14px; font-weight: 750; }
.report-details div { margin-top: 12px; color: #566078; font-size: 15px; line-height: 1.7; white-space: pre-wrap; max-height: 420px; overflow: auto; }
.report-task-link { margin-top: 13px; border: 0; background: transparent; color: var(--blue); padding: 0; cursor: pointer; font-size: 13px; font-weight: 800; }
.report-briefing { background: linear-gradient(135deg,#172446,#2d468c); color: white; border-radius: 24px; padding: 25px; margin-bottom: 17px; }
.report-briefing .page-kicker { color: #b9c7ff; }
.report-briefing h2 { margin: 7px 0; font-size: 27px; }
.report-briefing p { margin: 0; color: #c9d1e6; font-size: 16px; line-height: 1.6; }
.report-rules { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 17px; }
.report-rules span { background: rgba(255,255,255,.11); border: 1px solid rgba(255,255,255,.13); border-radius: 999px; padding: 8px 11px; font-size: 13px; }
.report-feed { display: grid; gap: 13px; }
.approval-card { margin: 0 10px 10px; border: 1px solid #f1dbab; background: #fffaf0; border-radius: 17px; padding: 17px; }
.approval-card + .approval-card { margin-top: 10px; }
.approval-card h4 { margin: 5px 0 0; font-size: 17px; line-height: 1.45; }
.approval-card p { margin: 9px 0 14px; color: #725a2d; font-size: 14px; line-height: 1.65; white-space: pre-wrap; }
.approval-kind { color: #a06b15; font-size: 12px; font-weight: 900; letter-spacing: .05em; }
.approval-preview { padding: 12px; border-radius: 12px; background: white; border: 1px solid #f0dfbd; color: #3f4656 !important; }
.approval-facts { margin: 0 0 12px; display: grid; gap: 7px; }
.approval-facts div { display: grid; grid-template-columns: 48px minmax(0,1fr); gap: 8px; font-size: 13px; }
.approval-facts dt { color: #9a7a3c; font-weight: 800; }
.approval-facts dd { margin: 0; color: #4f5666; overflow-wrap: anywhere; }
.approval-recommendation { margin: 11px 0; padding: 11px 12px; border-radius: 11px; background: #fff0df; color: #8a4f14; font-size: 14px; font-weight: 800; line-height: 1.5; }
.owner-request-card { border-color: #b9c9f5; background: #f7f9ff; }
.owner-request-card .approval-kind { color: var(--blue); }
.owner-instructions { margin: 12px 0; padding: 13px 14px 13px 34px; border-radius: 13px; background: white; border: 1px solid #dfe6f6; color: #465069; font-size: 14px; line-height: 1.7; }
.owner-instructions li + li { margin-top: 6px; }
.approval-requested { display: grid; gap: 4px; margin: 11px 0; padding: 12px; border-radius: 12px; background: #edf1ff; font-size: 14px; line-height: 1.55; }
.approval-requested strong { color: var(--blue); }
.approval-requested span { color: #465069; }
.modal-instructions { font-size: 15px; }
.form-field textarea { width: 100%; min-height: 95px; resize: vertical; border: 1px solid var(--line); border-radius: 12px; padding: 13px; background: #fafbfc; outline: none; font-size: 16px; line-height: 1.55; }
.form-field textarea:focus { border-color: #9bacef; box-shadow: 0 0 0 3px var(--blue-soft); }
.approval-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.approval-button { border: 1px solid #dfc98e; background: white; color: #745918; border-radius: 10px; padding: 10px 12px; font-size: 14px; font-weight: 800; cursor: pointer; }
.approval-button-primary { border-color: #365cf5; background: #365cf5; color: white; }
.approval-button-danger { border-color: #e7b5b9; color: #b43e47; }
.approval-modal-mark { display: inline-flex; margin-bottom: 13px; border-radius: 999px; padding: 8px 11px; background: var(--blue-soft); color: var(--blue); font-size: 13px; font-weight: 900; }
.approval-modal-mark.danger { background: var(--red-soft); color: #b43e47; }
.approval-modal-facts { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.approval-modal-facts span { padding: 8px 10px; border-radius: 10px; background: #f2f4f8; color: #596278; font-size: 13px; }
.danger-button { background: #bd3f49; box-shadow: 0 8px 20px rgba(189,63,73,.2); }

.toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 14px; }
.search { min-width: 240px; flex: 1; max-width: 440px; border: 1px solid var(--line); background: white; border-radius: 12px; padding: 11px 13px; outline: none; }
.search:focus { border-color: #9cacef; box-shadow: 0 0 0 3px var(--blue-soft); }
.filter-group { display: flex; gap: 7px; overflow-x: auto; padding-bottom: 2px; }
.filter-button { border: 1px solid var(--line); background: white; border-radius: 999px; padding: 8px 11px; white-space: nowrap; cursor: pointer; color: #566078; font-size: 11px; }
.filter-button.active { background: var(--navy); border-color: var(--navy); color: white; }

.agent-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 15px; }
.agent-card { border: 1px solid var(--line); background: var(--paper); border-radius: 21px; padding: 19px; cursor: pointer; transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.agent-card:hover { transform: translateY(-2px); border-color: #c8d1e6; box-shadow: var(--shadow); }
.agent-top { display: flex; align-items: center; gap: 15px; }
.agent-avatar { width: 94px; height: 94px; flex: 0 0 94px; overflow: hidden; display: grid; place-items: center; border-radius: 24px; background: linear-gradient(145deg,#eef2ff,#f8f9fd); border: 1px solid #dce3f1; }
.agent-avatar img { width: 100%; height: 100%; object-fit: contain; object-position: center bottom; }
.agent-identity { min-width: 0; }
.agent-name { font-size: 20px; font-weight: 880; letter-spacing: -.025em; }
.agent-position { color: var(--blue); font-size: 15px; font-weight: 800; margin-top: 6px; }
.agent-age { color: var(--muted); font-size: 14px; margin-top: 5px; line-height: 1.4; }
.agent-card .status-pill { margin-left: auto; }
.agent-duty { margin-top: 16px; color: #4e5870; font-size: 15px; line-height: 1.6; min-height: 48px; }
.agent-model { margin-top: 14px; background: #f5f7fb; border-radius: 13px; padding: 12px; }
.agent-provider { color: var(--blue); font-size: 12px; letter-spacing: .04em; font-weight: 850; }
.agent-model-name { margin-top: 5px; font-size: 14px; color: #485169; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.task-table { overflow: hidden; }
.task-row { width: 100%; display: grid; grid-template-columns: minmax(240px,1.7fr) minmax(110px,.7fr) minmax(100px,.65fr) 90px; gap: 14px; align-items: center; padding: 15px 18px; border: 0; border-top: 1px solid #edf0f5; background: white; text-align: left; cursor: pointer; }
.task-row:first-child { border-top: 0; }
.task-row:hover { background: #f8faff; }
.task-title { font-size: 16px; font-weight: 780; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.task-desc { color: var(--muted); font-size: 14px; margin-top: 6px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.task-cell-label { display: none; color: #9aa2b2; font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.task-cell { min-width: 0; color: #596278; font-size: 14px; }

.project-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.project-card { background: white; border: 1px solid var(--line); border-radius: 21px; padding: 20px; }
.project-card h3 { margin: 0; font-size: 17px; }
.project-count { color: var(--blue); background: var(--blue-soft); border-radius: 999px; padding: 6px 8px; font-size: 10px; font-weight: 800; }
.project-head { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.project-goal { margin: 13px 0; color: #5d6679; font-size: 12px; line-height: 1.65; white-space: pre-wrap; display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }
.project-foot { display: flex; justify-content: space-between; gap: 10px; color: #929aa9; font-size: 10px; border-top: 1px solid #eef1f5; padding-top: 13px; }

.modal-backdrop { position: fixed; inset: 0; background: rgba(18,27,50,.48); backdrop-filter: blur(5px); display: grid; place-items: center; padding: 18px; z-index: 100; }
.modal { width: min(520px,100%); max-height: min(760px,calc(100vh - 36px)); overflow: auto; background: white; border-radius: 24px; padding: 22px; box-shadow: 0 28px 80px rgba(18,27,50,.28); }
.task-flow-modal { width: min(880px,100%); }
.task-modal-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.task-modal-skeleton { height: 160px; margin-top: 16px; }
.task-flow { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 7px; margin: 4px 0 17px; }
.task-stage { position: relative; min-width: 0; border: 1px solid var(--line); border-radius: 13px; padding: 12px 9px; background: #f6f7fa; color: #939bac; }
.task-stage.reached { color: #4b5670; background: white; border-color: #d8dfec; }
.task-stage.current { color: #8a570e; background: var(--amber-soft); border-color: #edc66f; }
.task-stage-dot { display: block; width: 9px; height: 9px; border-radius: 50%; margin-bottom: 8px; background: #c7ccd6; }
.task-stage.reached .task-stage-dot { background: var(--mint); }
.task-stage.current .task-stage-dot { background: var(--amber); box-shadow: 0 0 0 4px rgba(196,123,21,.12); }
.task-stage strong { display: block; font-size: 13px; }
.task-stage small { display: block; margin-top: 4px; font-size: 10px; line-height: 1.4; color: inherit; }
.task-now { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 14px; }
.task-now > div { border-radius: 15px; background: #f3f6fd; padding: 14px; }
.task-now span { display: block; color: var(--blue); font-size: 11px; font-weight: 900; margin-bottom: 6px; }
.task-now strong { display: block; color: #39445b; font-size: 14px; line-height: 1.55; }
.task-owner-clear, .task-owner-callout { display: flex; align-items: center; justify-content: space-between; gap: 14px; border-radius: 14px; padding: 13px 14px; margin: 12px 0; }
.task-owner-clear { background: var(--mint-soft); color: #087c5c; }
.task-owner-callout { background: var(--amber-soft); color: #8a570e; flex-wrap: wrap; }
.task-owner-callout p { margin: 0; flex: 1; min-width: 220px; line-height: 1.5; }
.task-section { margin-top: 20px; }
.task-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.task-section-head h3 { margin: 0; font-size: 18px; }
.task-section-head span { color: var(--muted); font-size: 13px; }
.subtask-list { display: grid; gap: 7px; }
.subtask-row { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: 10px; border: 1px solid var(--line); border-radius: 12px; padding: 11px; }
.subtask-row strong { display: block; color: #3c465b; font-size: 13px; line-height: 1.45; }
.subtask-row span:not(.status-pill) { display: block; color: var(--muted); font-size: 11px; margin-top: 4px; }
.meeting-card { border: 1px solid #dce3f1; border-radius: 17px; padding: 15px; background: #fbfcff; }
.meeting-card + .meeting-card { margin-top: 11px; }
.meeting-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.meeting-kind { color: var(--blue); font-size: 11px; font-weight: 900; }
.meeting-head h4 { margin: 5px 0 0; font-size: 16px; line-height: 1.45; }
.meeting-conclusion { margin-top: 13px; padding: 13px; border-radius: 12px; background: var(--blue-soft); }
.meeting-conclusion strong, .meeting-actions > strong { color: var(--blue); font-size: 12px; }
.meeting-conclusion p { margin: 6px 0 0; color: #44506a; font-size: 13px; line-height: 1.65; white-space: pre-wrap; }
.meeting-actions { margin-top: 13px; }
.meeting-action-row { display: grid; grid-template-columns: 90px minmax(0,1fr); gap: 10px; padding: 9px 0; border-top: 1px solid #e7ebf3; }
.meeting-action-row:first-of-type { margin-top: 7px; }
.meeting-action-row span { color: #39445b; font-size: 12px; font-weight: 850; }
.meeting-action-row p { margin: 0; color: #5b657a; font-size: 12px; line-height: 1.55; }
.meeting-transcript { margin-top: 10px; border-top: 1px solid #e1e6f0; padding-top: 11px; }
.meeting-transcript summary { color: var(--blue); cursor: pointer; font-size: 12px; font-weight: 800; }
.meeting-line { display: grid; grid-template-columns: 135px minmax(0,1fr); gap: 12px; padding: 11px 0; border-bottom: 1px solid #edf0f5; }
.meeting-line > div strong, .meeting-line > div span { display: block; }
.meeting-line > div strong { font-size: 12px; }
.meeting-line > div span { color: var(--muted); font-size: 10px; margin-top: 3px; }
.meeting-line p { margin: 0; color: #566078; font-size: 12px; line-height: 1.6; white-space: pre-wrap; }
.meeting-empty { border: 1px dashed var(--line); border-radius: 14px; }
.attendance-tools { display: flex; align-items: center; gap: 10px; }
.attendance-callout { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-radius: 14px; background: var(--amber-soft); padding: 13px; margin-bottom: 14px; color: #8a570e; }
.modal h2 { margin: 0; font-size: 24px; }
.modal-sub { margin: 8px 0 20px; color: var(--muted); font-size: 15px; line-height: 1.6; }
.form-field { display: grid; gap: 7px; margin-top: 13px; }
.form-field label { color: #4d566b; font-size: 14px; font-weight: 750; }
.form-field input, .form-field select { width: 100%; border: 1px solid var(--line); border-radius: 12px; padding: 13px; background: #fafbfc; outline: none; font-size: 16px; }
.form-field input:focus, .form-field select:focus { border-color: #9bacef; box-shadow: 0 0 0 3px var(--blue-soft); }
.modal-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 20px; }
.secondary-button { border: 1px solid var(--line); background: white; border-radius: 11px; min-height: 42px; padding: 0 15px; cursor: pointer; }
.login-mark { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 17px; color: white; font-weight: 900; background: linear-gradient(145deg,#5f7aff,#365cf5); margin-bottom: 17px; }
.login-help { background: #f5f7fb; border-radius: 13px; padding: 13px; margin-top: 14px; color: #647087; font-size: 14px; line-height: 1.65; }
.detail-block { margin-top: 14px; border: 1px solid var(--line); background: #f8f9fc; border-radius: 14px; padding: 14px; }
.detail-block strong { display: block; font-size: 11px; margin-bottom: 8px; color: #465069; }
.detail-block div { color: #596278; font-size: 12px; line-height: 1.65; white-space: pre-wrap; max-height: 260px; overflow: auto; }

.toast { position: fixed; left: 50%; bottom: 24px; transform: translate(-50%,20px); opacity: 0; pointer-events: none; z-index: 200; background: #172033; color: white; border-radius: 12px; padding: 11px 14px; font-size: 12px; box-shadow: var(--shadow); transition: .2s ease; max-width: calc(100vw - 30px); }
.toast.show { opacity: 1; transform: translate(-50%,0); }
.toast.error { background: #982f39; }
.skeleton { background: linear-gradient(90deg,#edf0f5 25%,#f7f8fb 50%,#edf0f5 75%); background-size: 200% 100%; animation: shimmer 1.2s infinite; border-radius: 9px; height: 48px; }
@keyframes shimmer { to { background-position: -200% 0; } }
.spin { animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

.mobile-nav { display: none; }

@media (max-width: 1050px) {
  .metrics { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .agent-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .task-flow { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  .shell { display: block; }
  .sidebar { display: none; }
  .content { padding: 0 14px calc(92px + env(safe-area-inset-bottom)); }
  .topbar { height: 70px; position: sticky; top: 0; z-index: 15; background: rgba(244,246,251,.9); backdrop-filter: blur(15px); }
  .page-title { font-size: 24px; }
  .ghost-button span { display: none; }
  .hero { border-radius: 22px; padding: 21px 17px; }
  .owner-action { padding: 18px; border-radius: 19px; align-items: flex-start; }
  .owner-action h2 { font-size: 20px; }
  .owner-action-count, .owner-action-state { font-size: 15px; padding: 10px 11px; }
  .runtime-summary { padding: 16px 18px; align-items: flex-start; }
  .runtime-summary h2 { font-size: 17px; }
  .hero p { font-size: 15px; }
  .command-box { grid-template-columns: 1fr; padding: 7px; }
  .command-side { min-width: 0; display: grid; grid-template-columns: minmax(0,1fr) auto; }
  .command-box textarea { min-height: 92px; }
  .project-select { font-size: 14px; }
  .metrics { gap: 9px; }
  .metric { border-radius: 15px; padding: 14px; }
  .metric-value { font-size: 22px; }
  .dashboard-grid { grid-template-columns: 1fr; gap: 13px; margin-top: 13px; }
  .panel { border-radius: 18px; }
  .agent-grid { grid-template-columns: 1fr; gap: 10px; }
  .agent-card { padding: 17px; }
  .agent-top { display: grid; grid-template-columns: 86px minmax(0,1fr) auto; gap: 12px; }
  .agent-avatar { width: 86px; height: 86px; flex-basis: 86px; border-radius: 21px; }
  .agent-name { font-size: 19px; }
  .agent-position { font-size: 14px; }
  .agent-age { font-size: 13px; }
  .agent-duty { min-height: 0; font-size: 15px; }
  .report-top { align-items: flex-start; }
  .report-person img { width: 44px; height: 44px; }
  .report-briefing { padding: 22px 18px; border-radius: 20px; }
  .report-briefing h2 { font-size: 24px; }
  .executive-report { padding: 17px; }
  .project-grid { grid-template-columns: 1fr; }
  .task-row { grid-template-columns: 1fr 1fr; gap: 12px; }
  .task-row > :first-child { grid-column: 1/-1; }
  .task-cell-label { display: block; margin-bottom: 4px; }
  .search { min-width: 0; max-width: none; width: 100%; }
  .toolbar { align-items: stretch; }
  .filter-group { width: 100%; }
  .mobile-nav { position: fixed; left: 10px; right: 10px; bottom: calc(9px + env(safe-area-inset-bottom)); display: grid; grid-template-columns: repeat(5,1fr); padding: 6px; background: rgba(23,36,70,.95); backdrop-filter: blur(16px); border-radius: 18px; z-index: 50; box-shadow: 0 12px 35px rgba(20,31,58,.3); }
  .mobile-nav .nav-button { justify-content: center; display: grid; gap: 2px; padding: 6px 2px; text-align: center; border-radius: 12px; font-size: 12px; }
  .mobile-nav .nav-icon { margin: auto; font-size: 18px; }
  .modal-backdrop { align-items: end; padding: 0; }
  .modal { width: 100%; max-height: 88vh; border-radius: 24px 24px 0 0; padding-bottom: calc(22px + env(safe-area-inset-bottom)); }
  .task-flow { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .task-now { grid-template-columns: 1fr; }
  .meeting-action-row, .meeting-line { grid-template-columns: 1fr; gap: 5px; }
  .task-owner-clear { align-items: flex-start; flex-direction: column; }
  .attendance-tools { width: 100%; justify-content: space-between; }
}

@media (max-width: 390px) {
  .metrics { grid-template-columns: 1fr 1fr; }
  .metric-note { display: none; }
  .runtime-summary { flex-direction: column; }
  .list-row { gap: 8px; }
  .row-action { padding: 7px; }
  .agent-top { grid-template-columns: 78px minmax(0,1fr); }
  .agent-avatar { width: 78px; height: 78px; }
  .agent-card .status-pill { grid-column: 2; margin: -3px 0 0; justify-self: start; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Common operations: one readable trail from directive to verified delivery. */
.operation-overview, .legacy-work { margin-bottom: 24px; }
.operation-list { display: grid; }
.operation-row { width: 100%; text-align: left; padding: 20px; border: 0; border-bottom: 1px solid var(--line, #e2e6ec); background: transparent; color: inherit; cursor: pointer; }
.operation-row:last-child { border-bottom: 0; }
.operation-row:hover { background: #f7f9f8; }
.operation-row:active, .operation-artifact a:active { transform: translateY(1px); }
.operation-row:focus-visible, .operation-artifact a:focus-visible { outline: 2px solid #426556; outline-offset: -3px; }
.operation-row-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.operation-row-top strong { min-width: 0; overflow-wrap: anywhere; font-size: 16px; line-height: 1.5; }
.operation-row-top .status-pill { flex-shrink: 0; }
.operation-row p, .operation-unit p { margin: 10px 0; line-height: 1.7; overflow-wrap: anywhere; white-space: pre-wrap; }
.operation-row-meta, .operation-row-next { display: block; font-size: 13px; line-height: 1.7; color: #627069; }
.operation-row-next { margin-top: 7px; color: #344c41; }
.operation-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 20px 0; }
.operation-flow .task-stage { min-width: 0; padding: 12px; }
.operation-unit { padding: 18px 0; border-bottom: 1px solid #e2e6ec; }
.operation-unit:last-child { border-bottom: 0; }
.operation-unit .report-details > div { max-height: 400px; overflow: auto; overflow-wrap: anywhere; }
.operation-request-modal { width: min(820px, 100%); }
.operation-plan { line-height: 1.7; overflow-wrap: anywhere; }
.operation-steps { padding-left: 24px; }
.operation-steps > li { padding: 10px 0 18px; }
.operation-steps > li > span { display: block; color: #627069; font-size: 13px; }
.operation-steps p { margin: 6px 0; white-space: pre-wrap; }
.operation-deliverable { padding: 12px 16px; margin-top: 10px; border-left: 3px solid #9db3a7; background: #f6f8f7; }
.operation-deliverable span { font-size: 13px; }
.operation-artifacts { display: grid; gap: 12px; }
.operation-artifact { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 7px 16px; padding: 16px; border: 1px solid #e2e6ec; border-radius: 12px; overflow-wrap: anywhere; }
.operation-artifact > span { font-size: 13px; color: #627069; }
.operation-artifact > a { grid-column: 1 / -1; justify-self: start; text-decoration: none; }
.operation-events article { display: grid; grid-template-columns: 105px minmax(0, 1fr); gap: 12px; padding: 12px 0; border-bottom: 1px solid #e2e6ec; }
.operation-events time { font-size: 12px; color: #627069; }
.operation-events p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.7; }
.operation-error { color: #a33939; font-size: 14px; line-height: 1.6; }
.operation-error:not(:empty) { padding: 12px; background: #fff3f1; border-radius: 8px; margin: 12px 0; }
#operation-note { min-height: 110px; resize: vertical; }
.operation-result-section { margin-top: 16px; padding-top: 14px; border-top: 1px solid #e2e6ec; line-height: 1.7; }
.operation-result-section ul { padding-left: 22px; margin: 8px 0; }
.operation-source { padding: 10px 0; font-size: 14px; }
.operation-source a { color: #315c48; overflow-wrap: anywhere; text-decoration: underline; }
.operation-source p { margin: 4px 0; }
.operation-discussion, .operation-check { margin-top: 10px; padding: 14px 16px; background: #f6f8f7; border-left: 3px solid #9db3a7; }
.operation-discussion div > span { font-size: 12px; color: #627069; }
.operation-discussion p { margin: 3px 0 10px; }
@media (max-width: 640px) {
  .operation-row { padding: 16px; }
  .operation-row-top { flex-direction: column; gap: 8px; }
  .operation-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .operation-events article { grid-template-columns: 1fr; gap: 5px; }
  .operation-artifact { grid-template-columns: 1fr; }
}
.artifact-preview-backdrop { z-index: 1200; }
.artifact-preview-modal { width: min(920px, calc(100vw - 24px)); max-height: min(92vh, 980px); overflow: auto; }
.artifact-preview-content { margin: 18px 0; padding: clamp(18px, 4vw, 34px); border: 1px solid #dce2ef; border-radius: 16px; background: #fff; color: #172033; white-space: pre-wrap; overflow-wrap: anywhere; font: 500 clamp(15px, 2.5vw, 17px)/1.85 -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif; letter-spacing: -.01em; }
@media (max-width: 640px) {
  .artifact-preview-modal { width: calc(100vw - 12px); max-height: 96vh; }
  .artifact-preview-content { margin: 12px 0; border-radius: 12px; line-height: 1.75; }
}

/* v6 professional operations console: quieter, denser, less game-like */
:root {
  --bg: #f3f4f6;
  --paper: #ffffff;
  --ink: #111827;
  --muted: #667085;
  --line: #dfe3e8;
  --soft: #f7f8fa;
  --navy: #18212f;
  --blue: #2457c5;
  --blue-soft: #eef4ff;
  --mint: #147a5b;
  --mint-soft: #edf8f4;
  --amber: #9a6700;
  --amber-soft: #fff7df;
  --red: #b42318;
  --red-soft: #fff1f0;
  --shadow: 0 1px 3px rgba(16,24,40,.05);
  --radius: 12px;
}

body { background: var(--bg); }
.shell { grid-template-columns: 220px minmax(0, 1fr); }
.sidebar { padding: 24px 14px; background: #17202d; border-right: 1px solid #293342; }
.brand { padding: 0 8px 22px; gap: 10px; }
.brand-mark { width: 34px; height: 34px; border-radius: 7px; background: #fff; color: #17202d; box-shadow: none; font-size: 12px; }
.brand-title { letter-spacing: .02em; font-size: 14px; }
.brand-sub { font-size: 11px; color: #aab4c2; }
.nav { gap: 3px; }
.nav-button { border-radius: 7px; padding: 11px 12px; font-size: 14px; font-weight: 650; color: #c5ccd6; }
.nav-button:hover { background: #222d3c; }
.nav-button.active { background: #2a3545; color: #fff; box-shadow: inset 3px 0 0 #8eb4ff; }
.nav-icon { display: none; }
.sidebar-foot { padding: 16px 8px 0; }
.online-dot { box-shadow: none; }

.content { padding: 0 28px 40px; }
.topbar { height: 74px; border-bottom: 1px solid transparent; }
.page-kicker { color: #667085; text-transform: none; letter-spacing: 0; font-size: 12px; font-weight: 650; }
.page-title { margin-top: 2px; font-size: 25px; letter-spacing: -.02em; }
.icon-button, .ghost-button { min-height: 38px; border-radius: 7px; box-shadow: none; background: #fff; }

.hero { border-radius: 12px; background: #17202d; padding: 24px; box-shadow: none; }
.hero::after { display: none; }
.hero-eyebrow { color: #b9c1cd; }
.hero h2 { font-size: 25px; }
.hero p { color: #cbd1da; }
.command-box { border-radius: 9px; box-shadow: none; border: 1px solid #d5dae1; }
.project-select, .primary-button { border-radius: 7px; }
.primary-button { box-shadow: none; background: #2457c5; }
.owner-action, .runtime-summary { border-radius: 10px; box-shadow: none; }
.owner-action-count, .owner-action-state, .runtime-state { border-radius: 7px; box-shadow: none; }

.metrics { gap: 10px; }
.metric { border-radius: 9px; padding: 15px; box-shadow: none; }
.metric-button:hover { transform: none; box-shadow: none; background: #fafbfc; }
.metric-value { font-size: 23px; }
.dashboard-grid { gap: 12px; }
.stack { gap: 12px; }
.panel { border-radius: 10px; box-shadow: var(--shadow); }
.panel-head { padding: 17px 18px 12px; }
.panel-title { font-size: 17px; }
.panel-sub { font-size: 13px; }

.toolbar { margin-bottom: 12px; }
.search { border-radius: 7px; box-shadow: none; }
.filter-group { gap: 6px; }
.filter-button { border-radius: 7px; padding: 8px 12px; font-size: 12px; background: #fff; }
.filter-button.active { background: #253142; border-color: #253142; }

.operation-list { display: block; }
.operation-row { padding: 17px 18px; background: #fff; }
.operation-row:hover { background: #fafbfc; }
.operation-row-top { align-items: center; }
.operation-title-wrap { min-width: 0; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.operation-row-top strong { font-size: 16px; font-weight: 720; }
.operation-row p { margin: 8px 0; color: #475467; line-height: 1.55; font-size: 14px; }
.operation-row-meta, .operation-row-next { font-size: 12px; color: #7b8492; line-height: 1.5; }
.operation-row-next { color: #344054; font-weight: 600; }
.work-tier { display: inline-flex; align-items: center; height: 23px; padding: 0 8px; border-radius: 5px; background: #f2f4f7; color: #475467; border: 1px solid #e4e7ec; font-size: 11px; font-weight: 700; white-space: nowrap; }
.work-tier-fast { color: #175cd3; background: #eff8ff; border-color: #d1e9ff; }
.work-tier-complex { color: #6941c6; background: #f4f3ff; border-color: #e9e6ff; }
.status-pill { border-radius: 5px; font-size: 11px; font-weight: 700; }

.report-briefing { background: #fff; color: var(--ink); border: 1px solid var(--line); border-radius: 10px; padding: 20px; box-shadow: var(--shadow); }
.report-briefing .page-kicker { color: #667085; }
.report-briefing h2 { font-size: 21px; margin: 5px 0; }
.report-briefing p { color: #667085; font-size: 14px; }
.report-rules span { border-radius: 5px; background: #f6f7f9; color: #344054; border: 1px solid #e4e7ec; }
.executive-report { border-radius: 10px; box-shadow: none; }
.report-result { border-radius: 5px; }

/* Staff is shown like an org/operations directory, not character cards. */
.staff-table { border: 1px solid var(--line); border-radius: 10px; background: #fff; overflow: hidden; box-shadow: var(--shadow); }
.staff-head, .staff-row { display: grid; grid-template-columns: minmax(120px,.7fr) minmax(220px,1.7fr) minmax(130px,.8fr) 84px; gap: 16px; align-items: center; }
.staff-head { padding: 10px 16px; background: #f8f9fb; color: #667085; border-bottom: 1px solid var(--line); font-size: 11px; font-weight: 700; }
.staff-row { width: 100%; border: 0; border-bottom: 1px solid #edf0f3; background: #fff; padding: 14px 16px; text-align: left; cursor: pointer; color: inherit; }
.staff-row:last-child { border-bottom: 0; }
.staff-row:hover { background: #fafbfc; }
.staff-name, .staff-duty, .staff-model { min-width: 0; display: grid; gap: 3px; }
.staff-name strong, .staff-duty strong, .staff-model strong { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.staff-name small, .staff-duty small, .staff-model small { color: #7b8492; font-size: 11px; line-height: 1.4; overflow: hidden; text-overflow: ellipsis; }
.staff-duty small { white-space: normal; }
.staff-modal-title { display: flex; align-items: center; justify-content: space-between; }

.project-card, .approval-card, .meeting-card, .operation-artifact, .detail-block { border-radius: 8px; box-shadow: none; }
.modal { border-radius: 12px; }
.approval-modal-mark, .login-mark { border-radius: 7px; box-shadow: none; }
.task-flow { border-radius: 8px; }
.task-stage-dot { box-shadow: none; }

@media (max-width: 760px) {
  .content { padding: 0 14px calc(90px + env(safe-area-inset-bottom)); }
  .topbar { height: 70px; }
  .page-title { font-size: 24px; }
  .page-kicker { font-size: 11px; }
  .panel, .hero, .owner-action, .runtime-summary, .report-briefing { border-radius: 9px; }
  .toolbar { gap: 8px; }
  .filter-group { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .filter-button { text-align: center; padding: 9px 5px; }
  .operation-row { padding: 16px 14px; }
  .operation-row-top { flex-direction: row; align-items: flex-start; gap: 8px; }
  .operation-title-wrap { flex: 1; }
  .operation-row-top .status-pill { margin-left: auto; }
  .mobile-nav { left: 0; right: 0; bottom: 0; padding: 4px 8px calc(5px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.98); border-radius: 0; border-top: 1px solid #dfe3e8; box-shadow: 0 -3px 14px rgba(16,24,40,.06); backdrop-filter: blur(12px); }
  .mobile-nav .nav-button { min-height: 54px; border-radius: 6px; color: #667085; font-size: 12px; font-weight: 650; }
  .mobile-nav .nav-button.active { color: #1d4ed8; background: #eff4ff; box-shadow: none; }
  .mobile-nav .nav-icon { display: none; }
  .staff-head { display: none; }
  .staff-row { grid-template-columns: 1fr auto; gap: 8px 12px; padding: 15px 14px; }
  .staff-duty { grid-column: 1 / -1; }
  .staff-model { grid-column: 1; }
  .staff-row > div:last-child { grid-column: 2; grid-row: 1; }
  .staff-name strong { font-size: 15px; }
  .staff-duty strong, .staff-model strong { font-size: 12px; }
}

/* v7 switchable UI modes -------------------------------------------------- */
.current-ui-label { display:inline-flex; align-items:center; min-height:34px; padding:0 10px; border:1px solid var(--line); border-radius:999px; background:#fff; color:#667085; font-size:11px; font-weight:750; white-space:nowrap; }
.ui-settings-backdrop { z-index: 1600; }
.ui-settings-modal { width:min(980px, calc(100vw - 24px)); max-height:92vh; overflow:auto; }
.ui-settings-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.ui-settings-head h2 { margin:4px 0 6px; }
.ui-settings-section { margin-top:22px; padding-top:20px; border-top:1px solid #e4e7ec; }
.ui-settings-section h3 { margin:0 0 12px; font-size:16px; }
.ui-settings-title { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:12px; }
.ui-settings-title h3 { margin:0; }
.ui-settings-title span { color:#667085; font-size:12px; }
.ui-preset-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.ui-preset-card { min-height:126px; padding:14px; border:1px solid #dfe3e8; border-radius:12px; background:#fff; text-align:left; cursor:pointer; display:grid; align-content:start; gap:6px; color:#111827; }
.ui-preset-card:hover { border-color:#9eb5e8; background:#fbfcff; }
.ui-preset-card.selected { border-color:#2457c5; box-shadow:inset 0 0 0 1px #2457c5; background:#f3f7ff; }
.ui-preset-code { width:28px; height:28px; border-radius:8px; display:grid; place-items:center; background:#17202d; color:#fff; font-weight:800; }
.ui-preset-card strong { font-size:14px; }
.ui-preset-card small { color:#667085; line-height:1.5; }
.ui-screen-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 14px; }
.ui-setting-row { display:grid; gap:6px; }
.ui-setting-row > span { color:#475467; font-size:12px; font-weight:700; }
.ui-setting-row select { width:100%; min-height:42px; border:1px solid #d0d5dd; border-radius:8px; background:#fff; padding:0 10px; color:#101828; font:inherit; }
.ui-setting-toggle { display:flex; align-items:center; gap:10px; min-height:58px; padding:10px 12px; border:1px solid #e4e7ec; border-radius:8px; background:#fff; }
.ui-setting-toggle span { display:grid; gap:2px; }
.ui-setting-toggle small { color:#667085; }

/* density and typography */
.shell.text-small { font-size:14px; }
.shell.text-large { font-size:17px; }
.shell.density-compact .panel-head { padding-top:13px; padding-bottom:9px; }
.shell.density-compact .operation-row { padding:12px 14px; }
.shell.density-compact .compact-op { min-height:56px; }
.shell.density-roomy .panel-head { padding:22px 22px 16px; }
.shell.density-roomy .operation-row { padding:21px 22px; }
.shell.density-roomy .compact-op { min-height:76px; }
.shell.motion-reduced *, .shell.motion-reduced *::before, .shell.motion-reduced *::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; }

/* shared compact components */
.quick-command { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:15px 16px; margin-bottom:12px; background:#fff; border:1px solid var(--line); border-radius:10px; box-shadow:var(--shadow); }
.quick-command > div { display:grid; gap:3px; }
.quick-command strong { font-size:14px; }
.quick-command span { color:#667085; font-size:12px; }
.compact-ops { display:grid; }
.compact-op { width:100%; display:grid; grid-template-columns:10px minmax(0,1fr) minmax(110px,.8fr); gap:12px; align-items:center; min-height:62px; padding:10px 16px; border:0; border-bottom:1px solid #edf0f3; background:#fff; color:inherit; text-align:left; cursor:pointer; }
.compact-op:last-child { border-bottom:0; }
.compact-op:hover { background:#fafbfc; }
.compact-op-dot { width:8px; height:8px; border-radius:50%; background:#5485ed; }
.compact-op-dot.stage-completed { background:#22a06b; }
.compact-op-dot.stage-blocked,.compact-op-dot.stage-failed { background:#e5484d; }
.compact-op-dot.stage-awaiting_approval,.compact-op-dot.stage-paused { background:#e79a2a; }
.compact-op > div { min-width:0; display:grid; gap:3px; }
.compact-op strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; }
.compact-op small { color:#7b8492; font-size:11px; }
.compact-op-next { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#475467; font-size:11px; text-align:right; }
.summary-two,.artifact-layout,.editorial-layout,.executive-layout,.control-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr); gap:12px; margin-top:12px; align-items:start; }

/* A — corporate */
.ui-mode-corporate .content { background:#f3f4f6; }
.ui-mode-corporate .page-title { font-weight:760; }

/* B — summary */
.ui-mode-summary { --bg:#f5f8fd; --blue:#2868dc; }
.ui-mode-summary .content { background:linear-gradient(180deg,#f7faff 0,#f4f6fa 40%,#f3f4f6 100%); }
.ui-mode-summary .sidebar { background:#fff; border-right:1px solid #e3e8f0; }
.ui-mode-summary .brand-title { color:#102a56; }
.ui-mode-summary .brand-sub,.ui-mode-summary .sidebar-note,.ui-mode-summary .system-line { color:#667085; }
.ui-mode-summary .nav-button { color:#667085; }
.ui-mode-summary .nav-button:hover { background:#f3f6fb; }
.ui-mode-summary .nav-button.active { background:#eef4ff; color:#205bc6; box-shadow:none; }
.summary-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(330px,.8fr); gap:18px; align-items:center; padding:22px; background:#fff; border:1px solid #e4e9f1; border-radius:16px; box-shadow:0 8px 30px rgba(31,54,94,.05); }
.summary-eyebrow { display:inline-flex; color:#2868dc; font-size:12px; font-weight:800; margin-bottom:6px; }
.summary-hero h2 { margin:0 0 7px; font-size:26px; letter-spacing:-.03em; }
.summary-hero p { margin:0; color:#667085; line-height:1.65; }
.summary-stat-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.summary-stat-grid button { border:0; border-radius:12px; padding:15px; background:#f5f8fd; display:grid; gap:2px; text-align:left; cursor:pointer; }
.summary-stat-grid strong { font-size:24px; color:#173b74; }
.summary-stat-grid span { color:#667085; font-size:12px; }
.ui-mode-summary .panel,.ui-mode-summary .quick-command { border-radius:14px; box-shadow:0 6px 24px rgba(41,65,105,.045); }
.ui-mode-summary .executive-report.compact .report-details { display:none; }
.summary-work-panel { overflow:hidden; }

/* C — tycoon */
.ui-mode-tycoon { --bg:#eef5ff; --paper:#fff; --blue:#3c70e8; }
.ui-mode-tycoon .content { background:linear-gradient(180deg,#eaf4ff,#f8fbff 36%,#eef3fb); }
.ui-mode-tycoon .sidebar { background:linear-gradient(180deg,#193869,#14284d); }
.ui-mode-tycoon .nav-button.active { background:#315a9b; box-shadow:none; }
.tycoon-hq { overflow:hidden; border-radius:20px; border:1px solid #cfe0f5; background:#fff; box-shadow:0 16px 45px rgba(41,87,146,.12); }
.tycoon-sky { position:relative; min-height:260px; padding:22px; background:linear-gradient(180deg,#7fb5ff 0%,#cfe9ff 54%,#dff1d6 55%,#b8d99c 100%); overflow:hidden; }
.tycoon-sky::before,.tycoon-sky::after { content:""; position:absolute; border-radius:50%; background:rgba(255,255,255,.55); filter:blur(1px); }
.tycoon-sky::before { width:120px;height:42px;left:12%;top:50px; }
.tycoon-sky::after { width:160px;height:46px;right:9%;top:80px; }
.tycoon-level { position:absolute; left:18px; top:18px; z-index:3; width:160px; padding:10px 12px; border-radius:13px; color:#fff; background:rgba(18,42,78,.88); }
.tycoon-level > span { font-size:13px; font-weight:800; }
.tycoon-level > div { height:7px; margin:7px 0 4px; border-radius:999px; background:rgba(255,255,255,.22); overflow:hidden; }
.tycoon-level i { display:block; height:100%; background:#ffd662; border-radius:inherit; }
.tycoon-level small { font-size:10px; color:#dfeaff; }
.tycoon-building { position:absolute; left:50%; bottom:20px; transform:translateX(-50%); display:grid; place-items:center; z-index:2; }
.tycoon-building span { font-size:112px; filter:drop-shadow(0 14px 12px rgba(36,76,52,.18)); }
.tycoon-building b { margin-top:-22px; padding:5px 12px; border-radius:8px; background:#fff; color:#234a7b; font-size:12px; box-shadow:0 5px 15px rgba(0,0,0,.12); }
.tycoon-bubble { position:absolute; right:18px; top:18px; max-width:230px; z-index:4; padding:10px 13px; border-radius:14px 14px 3px 14px; background:#fff; color:#2a466f; font-size:12px; box-shadow:0 8px 24px rgba(31,70,124,.14); }
.tycoon-mission { display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:8px; padding:12px; background:#fff; }
.tycoon-mission > strong { align-self:center; padding-left:8px; }
.tycoon-mission button { border:1px solid #d8e4f2; border-radius:10px; background:#f7fbff; padding:10px; color:#46607f; cursor:pointer; }
.tycoon-mission b { color:#173b74; font-size:17px; margin-left:5px; }
.tycoon-panel { border:1px solid #d6e5f7; }
.dept-tiles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:0 14px 14px; }
.dept-tiles > div { display:grid; grid-template-columns:auto 1fr; gap:2px 8px; align-items:center; padding:10px; border-radius:10px; background:#f4f8fe; }
.dept-tiles > div > span { grid-row:1/3; color:#2ba56d; }
.dept-tiles strong { font-size:12px; }
.dept-tiles small { color:#718096; font-size:10px; }
.tycoon-work-head { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:18px 20px; border-radius:16px; background:linear-gradient(135deg,#244c89,#4279d2); color:#fff; margin-bottom:12px; }
.tycoon-work-head span { font-size:12px;color:#dceaff; }
.tycoon-work-head h2 { margin:3px 0 0; font-size:20px; }
.tycoon-missions { display:grid; gap:9px; }
.tycoon-missions > button { display:grid; grid-template-columns:54px minmax(0,1fr) 48px; gap:12px; align-items:center; width:100%; text-align:left; padding:13px; border:1px solid #d4e2f3; border-radius:14px; background:#fff; color:#172033; cursor:pointer; box-shadow:0 5px 16px rgba(49,89,139,.06); }
.mission-icon { width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#edf4ff;font-size:25px; }
.tycoon-missions > button > div:nth-child(2) { display:grid; gap:3px; min-width:0; }
.tycoon-missions span { color:#3569bc;font-size:10px;font-weight:800; }
.tycoon-missions strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.tycoon-missions small { color:#667085;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.mission-progress { height:6px;background:#e8eef6;border-radius:999px;overflow:hidden;margin-top:5px; }
.mission-progress i { display:block;height:100%;background:linear-gradient(90deg,#3d76df,#67c5ff); }

/* D — control room */
.ui-mode-control { --bg:#07111d; --paper:#0d1b2a; --ink:#edf7ff; --muted:#8ea5b9; --line:#20384c; --soft:#102233; --blue:#37c8ff; --shadow:none; }
.ui-mode-control body,.ui-mode-control .content { background:#07111d; color:#edf7ff; }
.ui-mode-control .content { background:radial-gradient(circle at 80% 0%,rgba(35,118,174,.16),transparent 34%),#07111d; }
.ui-mode-control .sidebar { background:#06101b; border-color:#173147; }
.ui-mode-control .brand-mark { background:#0f2940;color:#66d8ff; }
.ui-mode-control .nav-button { color:#8ea5b9; }
.ui-mode-control .nav-button.active { background:#102d45;color:#66d8ff;box-shadow:inset 3px 0 0 #37c8ff; }
.ui-mode-control .topbar,.ui-mode-control .panel,.ui-mode-control .quick-command,.ui-mode-control .current-ui-label,.ui-mode-control .ghost-button,.ui-mode-control .search,.ui-mode-control .filter-button { background:#0b1825; color:#edf7ff; border-color:#20384c; }
.ui-mode-control .panel-sub,.ui-mode-control .page-kicker,.ui-mode-control .compact-op small,.ui-mode-control .compact-op-next { color:#8ea5b9; }
.ui-mode-control .compact-op { background:#0b1825;border-color:#172d40; }
.ui-mode-control .compact-op:hover { background:#102333; }
.control-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px; }
.control-grid.small { margin-bottom:12px; }
.control-stat { padding:16px;border-radius:10px;border:1px solid #1d3b51;background:#0b1b29;display:grid;gap:3px; }
.control-stat span { color:#8ea5b9;font-size:11px;text-transform:uppercase;letter-spacing:.04em; }
.control-stat strong { font-size:29px;color:#eefaff; }
.control-stat small { color:#6f879b;font-size:10px; }
.control-stat.cyan { box-shadow:inset 0 0 0 1px rgba(55,200,255,.12); }
.control-stat.cyan strong { color:#45d1ff; }
.control-stat.amber strong { color:#ffd65c; }
.control-stat.red strong { color:#ff766c; }
.control-stat.green strong { color:#55e1a3; }
.control-panel { border-color:#1e3d54!important;background:#0a1723!important; }
.control-ops { display:grid; }
.control-ops > button { display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.5fr) 45px;gap:12px;align-items:center;padding:12px 16px;border:0;border-bottom:1px solid #183144;background:transparent;color:#eef7ff;text-align:left;cursor:pointer; }
.control-ops > button:last-child { border-bottom:0; }
.control-ops > button > div { display:grid;gap:3px;min-width:0; }
.control-ops strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.control-ops small { color:#7f9ab0; }
.control-progress { height:7px;border-radius:999px;background:#102d40;overflow:hidden; }
.control-progress i { display:block;height:100%;background:linear-gradient(90deg,#1ca7e1,#4ce2d6); }
.control-ops b { color:#4bd7ff;font-size:11px;text-align:right; }
.ui-mode-control .operation-error:not(:empty) { background:#321b21;color:#ff9d98; }
.ui-mode-control .modal { background:#0d1b2a;color:#edf7ff;border:1px solid #25465f; }
.ui-mode-control .ui-settings-modal,.ui-mode-control .ui-preset-card,.ui-mode-control .ui-setting-row select,.ui-mode-control .ui-setting-toggle { background:#0e1d2a;color:#edf7ff;border-color:#28445a; }
.ui-mode-control .ui-settings-section { border-color:#20384c; }

/* E — kanban */
.kanban-home-note { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid #dce4f1;border-radius:12px;background:#fff;margin-bottom:12px; }
.kanban-home-note span { color:#667085; font-size:12px; }
.kanban-board { display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:10px;align-items:start;overflow-x:auto;padding-bottom:6px; }
.kanban-column { min-width:220px;border-radius:12px;background:#f4f6f9;border:1px solid #e1e6ed;overflow:hidden; }
.kanban-column:nth-child(1) { background:#f5f5f7; }
.kanban-column:nth-child(2) { background:#f0f5ff; }
.kanban-column:nth-child(3) { background:#fff8e8; }
.kanban-column:nth-child(4) { background:#eff9f3; }
.kanban-column > header { display:flex;justify-content:space-between;align-items:center;padding:12px 13px;font-size:13px; }
.kanban-column > header span { min-width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:rgba(255,255,255,.8);font-size:11px; }
.kanban-column > div { display:grid;gap:8px;padding:0 8px 8px; }
.kanban-card { display:grid;gap:7px;width:100%;padding:11px;border:1px solid rgba(17,24,39,.08);border-radius:10px;background:#fff;color:#172033;text-align:left;cursor:pointer;box-shadow:0 2px 8px rgba(16,24,40,.035); }
.kanban-card > strong { font-size:13px;line-height:1.4; }
.kanban-card > small { color:#667085; }
.kanban-card footer { display:flex;justify-content:space-between;color:#98a2b3;font-size:10px; }
.kanban-empty { padding:18px 10px;text-align:center;color:#98a2b3;font-size:12px; }

/* F — executive */
.ui-mode-executive .sidebar { background:#132342; }
.executive-greeting { padding:22px 24px;border-radius:14px;background:linear-gradient(135deg,#162d59,#294e89);color:#fff;margin-bottom:12px; }
.executive-greeting span { color:#bcd2f4;font-size:11px;font-weight:800; }
.executive-greeting h2 { margin:4px 0 7px;font-size:27px; }
.executive-greeting p { margin:0;color:#d5e2f5; }
.executive-stats { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px; }
.executive-stats .metric { border-top:3px solid #244e8c; }
.executive-urgent { border:1px solid #f3c8c4!important; }
.executive-urgent .panel-head { background:#fff7f6;border-radius:10px 10px 0 0; }
.ui-mode-executive .report-lead { font-size:16px; }

/* G — artifacts */
.ui-mode-artifacts { --blue:#305fbd; }
.artifact-hero { display:flex;justify-content:space-between;gap:18px;align-items:center;padding:22px;border:1px solid #e0e6ef;border-radius:14px;background:linear-gradient(135deg,#fff,#f4f7ff); }
.artifact-hero > div:first-child { display:grid;gap:4px; }
.artifact-hero span { color:#3564bd;font-size:11px;font-weight:800; }
.artifact-hero h2 { margin:0;font-size:25px; }
.artifact-hero p { margin:0;color:#667085; }
.artifact-actions { display:flex;gap:8px; }
.artifact-browser { display:grid; }
.artifact-browser-row { display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 14px;border-bottom:1px solid #edf0f3; }
.artifact-browser-row:last-child { border-bottom:0; }
.artifact-browser-row > div { display:grid;gap:2px;min-width:0; }
.artifact-browser-row strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.artifact-browser-row small { color:#7d8794; }
.artifact-browser-row button { border:1px solid #d7deea;border-radius:7px;background:#fff;padding:7px 10px;color:#315dba;cursor:pointer; }
.file-badge { width:42px;height:42px;display:grid;place-items:center;border-radius:9px;background:#eef3ff;color:#315dba;font-size:9px;font-weight:900; }

/* H — editorial */
.ui-mode-editorial { --bg:#f8f7f4; --paper:#fffdfa; --ink:#162238; --line:#e9e5dd; --soft:#fbfaf7; }
.ui-mode-editorial .content { background:radial-gradient(circle at 95% 2%,#edf3ff 0,transparent 24%),#f8f7f4; }
.ui-mode-editorial .sidebar { background:#18243a; }
.ui-mode-editorial .panel,.ui-mode-editorial .quick-command { border-color:#ebe5dc;box-shadow:0 12px 40px rgba(56,63,76,.05); }
.editorial-hero { padding:34px 30px;border-radius:18px;background:linear-gradient(120deg,#fffefa,#f5f8ff);border:1px solid #e9e5dd; }
.editorial-kicker { color:#7083a1;font-size:10px;letter-spacing:.16em;font-weight:800; }
.editorial-hero h2 { margin:9px 0;font-family:Georgia,"Noto Serif KR",serif;font-size:34px;line-height:1.25;letter-spacing:-.035em;color:#14243d; }
.editorial-hero p { color:#758093; }
.editorial-numbers { display:flex;gap:26px;margin-top:22px;padding-top:18px;border-top:1px solid #e7e6e2; }
.editorial-numbers span { color:#6f7887;font-size:12px; }
.editorial-numbers b { color:#17253d;font:700 24px Georgia,serif;margin-right:5px; }
.ui-mode-editorial .panel-title { font-family:Georgia,"Noto Serif KR",serif;font-size:18px; }

@media (max-width: 900px) {
  .ui-preset-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .summary-two,.artifact-layout,.editorial-layout,.executive-layout,.control-layout { grid-template-columns:1fr; }
  .summary-hero { grid-template-columns:1fr; }
  .control-grid,.executive-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .current-ui-label { display:none; }
  #ui-settings { width:42px; overflow:hidden; color:transparent; position:relative; }
  #ui-settings::after { content:"설정"; color:#344054; position:absolute; inset:0; display:grid; place-items:center; font-size:11px; }
  .ui-mode-control #ui-settings::after { color:#c7eaff; }
  .ui-settings-modal { width:calc(100vw - 10px); max-height:96vh; border-radius:14px; }
  .ui-preset-grid { grid-template-columns:1fr 1fr; gap:7px; }
  .ui-preset-card { min-height:112px;padding:11px; }
  .ui-screen-grid { grid-template-columns:1fr; }
  .ui-settings-title { display:grid;gap:4px; }
  .quick-command { position:sticky;top:8px;z-index:8; }
  .compact-op { grid-template-columns:9px minmax(0,1fr); gap:10px; }
  .compact-op-next { grid-column:2;text-align:left; }
  .summary-hero { padding:16px; }
  .summary-hero h2 { font-size:22px; }
  .summary-stat-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; }
  .summary-stat-grid button { padding:10px 6px;text-align:center; }
  .summary-stat-grid strong { font-size:20px; }
  .summary-stat-grid span { font-size:10px; }
  .tycoon-sky { min-height:215px; }
  .tycoon-building span { font-size:88px; }
  .tycoon-bubble { max-width:180px;font-size:10px; }
  .tycoon-mission { grid-template-columns:repeat(3,1fr); }
  .tycoon-mission > strong { grid-column:1/-1;padding:0 2px; }
  .control-grid,.executive-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .control-stat { padding:12px; }
  .control-stat strong { font-size:23px; }
  .control-ops > button { grid-template-columns:minmax(0,1fr) 55px; }
  .control-progress { grid-column:1/-1;grid-row:2; }
  .kanban-board { grid-template-columns:repeat(4,78vw); margin-right:-14px; padding-right:14px; scroll-snap-type:x proximity; }
  .kanban-column { scroll-snap-align:start; }
  .executive-greeting { padding:18px; }
  .executive-greeting h2 { font-size:22px; }
  .artifact-hero { align-items:flex-start;flex-direction:column;padding:17px; }
  .artifact-actions { width:100%; }
  .artifact-actions > * { flex:1; }
  .artifact-browser-row { grid-template-columns:40px minmax(0,1fr) auto;padding:10px 12px; }
  .editorial-hero { padding:23px 19px; }
  .editorial-hero h2 { font-size:27px; }
  .editorial-numbers { gap:14px;justify-content:space-between; }
  .editorial-numbers b { display:block;font-size:20px; }
  .ui-mode-control .mobile-nav { background:rgba(6,16,27,.97);border-color:#19364b; }
  .ui-mode-control .mobile-nav .nav-button { color:#7f98ad; }
  .ui-mode-control .mobile-nav .nav-button.active { background:#12324a;color:#59d2ff; }
}

/* v8 mobile polish: native-safe frame, compact owner decisions, mockup-like hierarchy */
html { background: var(--bg, #f3f4f6); }
body { background: var(--bg, #f3f4f6); }

.owner-sheet-backdrop { z-index: 1750; background: rgba(15, 23, 42, .34); backdrop-filter: blur(5px); }
.owner-decision-sheet { width: min(680px, calc(100vw - 24px)); padding: 18px; overflow: auto; }
.owner-sheet-grabber { display: none; width: 42px; height: 4px; border-radius: 99px; background: #d0d5dd; margin: -4px auto 13px; }
.owner-sheet-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.owner-sheet-head h2 { margin: 7px 0 4px; font-size: 23px; line-height: 1.25; letter-spacing: -.025em; }
.owner-sheet-head p { margin: 0; color: #667085; font-size: 13px; line-height: 1.5; }
.owner-sheet-head .icon-button { flex: 0 0 38px; font-size: 22px; line-height: 1; }
.owner-summary-card { display: grid; gap: 7px; margin: 10px 0; padding: 14px 15px; border: 1px solid #e4e7ec; border-radius: 12px; background: #f8fafc; }
.owner-summary-card > span { color: #667085; font-size: 11px; font-weight: 800; }
.owner-summary-card > strong { color: #101828; font-size: 15px; line-height: 1.55; font-weight: 700; }
.owner-summary-action { border-color: #d8e5ff; background: #f2f6ff; }
.owner-summary-action > span { color: #2457c5; }
.owner-related-button { width: 100%; margin: 2px 0 6px; }
.owner-detail-fold { border-top: 1px solid #eaecf0; margin-top: 8px; padding-top: 4px; }
.owner-detail-fold > summary { cursor: pointer; list-style: none; padding: 12px 2px; color: #475467; font-size: 13px; font-weight: 750; }
.owner-detail-fold > summary::-webkit-details-marker { display: none; }
.owner-detail-fold > summary::after { content: "⌄"; float: right; color: #98a2b3; }
.owner-detail-fold[open] > summary::after { content: "⌃"; }
.owner-detail-fold .owner-instructions { margin: 0 0 10px; padding: 0 0 0 22px; color: #475467; font-size: 13px; line-height: 1.6; }
.owner-resolution-form { margin-top: 2px; }
.owner-sheet-actions { position: sticky; bottom: -18px; margin: 10px -18px -18px; padding: 12px 18px calc(12px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.97); border-top: 1px solid #eaecf0; backdrop-filter: blur(12px); }
.owner-sheet-actions .approval-button { min-height: 45px; }
.owner-danger-note { display: grid; gap: 2px; padding: 10px 12px; border-radius: 9px; background: #fff4f3; color: #912018; font-size: 12px; }
.compact-owner-request { padding: 15px; }
.compact-owner-request p { margin: 8px 0; color: #475467; line-height: 1.55; }
.owner-request-next { display: grid; gap: 3px; margin: 10px 0 12px; padding: 10px 12px; border-radius: 9px; background: #f5f8ff; }
.owner-request-next span { color: #667085; font-size: 11px; font-weight: 800; }
.owner-request-next strong { color: #163b7a; font-size: 13px; line-height: 1.5; }

@media (max-width: 760px) {
  /* The current Android wrapper draws edge-to-edge. Reserve a native-status-bar
     strip so web content/modal blur no longer sits behind the phone clock. */
  .android-company-app body { padding-top: max(env(safe-area-inset-top), 26px); }
  .android-company-app .shell { min-height: calc(100dvh - max(env(safe-area-inset-top), 26px)); }
  .android-company-app .modal-backdrop { top: max(env(safe-area-inset-top), 26px); height: calc(100dvh - max(env(safe-area-inset-top), 26px)); }

  .content { padding-left: 12px; padding-right: 12px; }
  .topbar { position: sticky; top: 0; z-index: 30; height: 62px; margin: 0 -12px 8px; padding: 0 12px; background: rgba(255,255,255,.96); border-bottom: 1px solid #eaecf0; backdrop-filter: blur(14px); }
  .ui-mode-control .topbar { background: rgba(7,17,29,.96); border-color: #173147; }
  .page-title { font-size: 21px; }
  .page-kicker { display: none; }
  .top-actions { gap: 5px; }
  #refresh { width: 40px; overflow: hidden; color: transparent; position: relative; }
  #refresh::after { content: "↻"; color: #475467; position: absolute; inset: 0; display: grid; place-items: center; font-size: 18px; }
  .ui-mode-control #refresh::after { color: #c7eaff; }

  .operation-row p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; white-space: normal; }
  .operation-row-meta { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .operation-row-next { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

  .mobile-nav .nav-icon { display: block; font-size: 18px; line-height: 1; }
  .mobile-nav .nav-button { gap: 2px; }

  .owner-sheet-backdrop { align-items: end; padding: 0; }
  .owner-decision-sheet { width: 100%; max-height: min(78dvh, 760px); border-radius: 22px 22px 0 0; padding: 14px 15px calc(10px + env(safe-area-inset-bottom)); }
  .owner-sheet-grabber { display: block; }
  .owner-sheet-head h2 { font-size: 20px; }
  .owner-summary-card { padding: 12px 13px; margin: 8px 0; }
  .owner-summary-card > strong { font-size: 14px; }
  .owner-sheet-actions { bottom: calc(-10px - env(safe-area-inset-bottom)); margin: 8px -15px calc(-10px - env(safe-area-inset-bottom)); padding: 10px 15px calc(10px + env(safe-area-inset-bottom)); display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .owner-sheet-actions .approval-button-danger { grid-column: 1 / -1; }
  .operation-request-modal .approval-recommendation { display: grid; gap: 4px; margin: 8px 0; }

  /* All eight modes share the same compact phone frame, while each mode keeps
     its own content/layout. This makes the implemented UI match the mockups
     much more closely without changing any business features. */
  .panel, .quick-command, .summary-hero, .executive-greeting, .tycoon-work-head, .kanban-home-note { margin-bottom: 10px; }
  .panel-head { padding: 14px 14px 10px; }
  .compact-op { min-height: 56px; padding: 9px 12px; }
  .summary-stat-grid { margin-bottom: 10px; }
}

/* v9 — UI finish pass: fixed settings control, richer mode layouts, denser mobile management UI */
.ui-settings-button,
.refresh-button {
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  padding: 0 !important;
  flex: 0 0 40px !important;
  align-self: center !important;
  display: grid !important;
  place-items: center !important;
  line-height: 1 !important;
  overflow: hidden !important;
}
.ui-settings-button span { font-size: 18px; transform: translateY(-1px); }
.refresh-button span { font-size: 20px; transform: translateY(-1px); }
#ui-settings::after,
#refresh::after { content: none !important; display: none !important; }

.ui-settings-backdrop { z-index: 1800; }
.ui-settings-modal { width:min(1040px,calc(100vw - 28px)); max-height:min(900px,92vh); padding:20px; }
.ui-settings-grabber { display:none; }
.ui-settings-close { font-size:24px; }
.ui-preset-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.ui-preset-card { position:relative; min-height:180px; padding:10px; display:grid; grid-template-rows:92px auto; gap:10px; text-align:left; overflow:hidden; }
.ui-preset-card.selected { border-color:#5280e8; box-shadow:0 0 0 2px rgba(54,92,245,.12); }
.ui-preset-copy { display:grid; grid-template-columns:auto 1fr; gap:3px 7px; align-items:center; }
.ui-preset-copy strong { font-size:13px; line-height:1.2; }
.ui-preset-copy small { grid-column:1/-1; color:#667085; line-height:1.4; }
.preset-preview { position:relative; display:block; height:92px; border-radius:10px; overflow:hidden; background:#f6f7fb; border:1px solid #e7eaf0; }
.preset-preview i { position:absolute; display:block; }
.preset-preview-corporate { background:#eef1f5; }
.preset-preview-corporate .pv-sidebar { left:0;top:0;bottom:0;width:22%;background:#1c2945; }
.preset-preview-corporate .pv-main.a { left:29%;top:14%;right:8%;height:18%;background:#fff;border-radius:5px; }
.preset-preview-corporate .pv-main.b { left:29%;top:41%;right:8%;bottom:12%;background:#fff;border-radius:5px; }
.preset-preview-summary { background:linear-gradient(#f8fbff,#eef4fb); }
.preset-preview-summary .pv-stat { top:16%; width:18%; height:30%; border-radius:6px; background:#fff; box-shadow:0 2px 6px rgba(35,72,130,.08); }
.preset-preview-summary .pv-stat.a { left:7%; } .preset-preview-summary .pv-stat.b { left:29%;background:#eaf4ff; } .preset-preview-summary .pv-stat.c { left:51%;background:#edfbf4; } .preset-preview-summary .pv-stat.d { left:73%;background:#fff5df; }
.preset-preview-summary::after { content:"";position:absolute;left:7%;right:7%;bottom:13%;height:25%;border-radius:6px;background:#fff; }
.preset-preview-tycoon { background:linear-gradient(#84baff 0 48%,#d6f0c5 49% 100%); }
.preset-preview-tycoon .pv-building { left:37%;bottom:12%;width:28%;height:52%;background:#e8f4ff;border:2px solid #487cb4;border-radius:4px 4px 1px 1px;box-shadow:-15px 9px 0 -7px #c6dff4,15px 9px 0 -7px #c6dff4; }
.preset-preview-tycoon .pv-building::before { content:"";position:absolute;inset:8px 7px 14px;background:repeating-linear-gradient(90deg,#50a6dc 0 6px,transparent 6px 10px),repeating-linear-gradient(#50a6dc 0 6px,transparent 6px 10px);opacity:.75; }
.preset-preview-tycoon .pv-card.a { left:6%;top:9%;width:31%;height:27%;border-radius:7px;background:#19345e; }
.preset-preview-tycoon .pv-card.b { right:6%;top:11%;width:27%;height:22%;border-radius:7px;background:#fff; }
.preset-preview-control { background:#07131f; }
.preset-preview-control .pv-chart { bottom:22%;width:12%;border-radius:3px 3px 0 0;background:#27b9ed; }
.preset-preview-control .pv-chart.a { left:16%;height:28%; } .preset-preview-control .pv-chart.b { left:34%;height:46%;background:#49e1c4; } .preset-preview-control .pv-chart.c { left:52%;height:35%;background:#ffd65c; }
.preset-preview-control .pv-line { left:8%;right:8%;bottom:14%;height:1px;background:#27455a; }
.preset-preview-kanban { display:grid; grid-template-columns:repeat(4,1fr); gap:5px; padding:7px; background:#f8f9fb; }
.preset-preview-kanban i { position:relative; inset:auto; border-radius:6px; background:#eceff4; }
.preset-preview-kanban i:nth-child(2){background:#edf4ff}.preset-preview-kanban i:nth-child(3){background:#fff5df}.preset-preview-kanban i:nth-child(4){background:#eaf8ef}
.preset-preview-executive { background:#f8f9fb; }
.preset-preview-executive .pv-alert { left:7%;right:7%;top:10%;height:25%;border-radius:6px;background:#fff0f1;border-left:4px solid #e85b64; }
.preset-preview-executive .pv-row { left:7%;right:7%;height:18%;border-radius:6px;background:#fff; }
.preset-preview-executive .pv-row.a { top:43%; }.preset-preview-executive .pv-row.b { top:67%; }
.preset-preview-artifacts { background:#f8fbff; }
.preset-preview-artifacts .pv-file { top:20%;width:22%;height:58%;border-radius:6px; }
.preset-preview-artifacts .pv-file.a{left:10%;background:#ffeded}.preset-preview-artifacts .pv-file.b{left:39%;background:#f1ecff}.preset-preview-artifacts .pv-file.c{left:68%;background:#eaf7ef}
.preset-preview-editorial { background:linear-gradient(135deg,#fffdf8,#eef3ff); }
.preset-preview-editorial .pv-title { left:9%;top:18%;width:58%;height:12%;background:#20304a;border-radius:2px; }
.preset-preview-editorial .pv-copy { left:9%;height:7%;background:#aeb8c8;border-radius:2px; }
.preset-preview-editorial .pv-copy.a{top:42%;width:76%}.preset-preview-editorial .pv-copy.b{top:57%;width:55%}

/* richer C / tycoon */
.tycoon-sky { min-height:300px; }
.tycoon-resources { position:absolute; right:18px; top:62px; z-index:5; display:flex; gap:6px; }
.tycoon-resources span { padding:6px 9px; border-radius:9px; background:rgba(24,53,94,.88); color:#eaf4ff; font-size:10px; box-shadow:0 5px 14px rgba(30,63,106,.18); }
.tycoon-resources b { color:#ffe073; }
.tycoon-campus { position:absolute; inset:auto 0 0; height:220px; z-index:2; }
.tycoon-campus::before { content:"";position:absolute;left:7%;right:7%;bottom:7px;height:86px;background:linear-gradient(180deg,#a7cf8d,#80b669);border-radius:50% 50% 16px 16px / 30% 30% 16px 16px;box-shadow:0 18px 32px rgba(39,84,58,.16); }
.tycoon-office-main { position:absolute;left:50%;bottom:42px;transform:translateX(-50%);width:132px;height:142px;border:3px solid #44759c;background:linear-gradient(180deg,#e9f6ff,#d9ecf6);border-radius:7px 7px 3px 3px;box-shadow:0 14px 18px rgba(33,74,108,.22); }
.tycoon-office-roof { position:absolute;left:-7px;right:-7px;top:-11px;height:15px;border-radius:6px;background:#d85150;box-shadow:0 3px 0 #b94343; }
.tycoon-windows { position:absolute;left:14px;right:14px;top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px; }
.tycoon-windows i { height:14px;border-radius:2px;background:linear-gradient(#47b8eb,#278bc2);box-shadow:inset 0 0 0 2px rgba(255,255,255,.3); }
.tycoon-door { position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:28px;height:36px;background:#2d92c2;border:3px solid #e8f6ff;border-bottom:0; }
.tycoon-office-main b { position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);white-space:nowrap;padding:5px 10px;border-radius:8px;background:#fff;color:#234a7b;font-size:10px;box-shadow:0 5px 13px rgba(0,0,0,.12); }
.tycoon-office-wing { position:absolute;bottom:48px;width:72px;height:82px;background:#cfe5f0;border:3px solid #507b9a;border-radius:5px; }
.tycoon-office-wing.left{left:calc(50% - 118px);transform:skewY(-4deg)}.tycoon-office-wing.right{right:calc(50% - 118px);transform:skewY(4deg)}
.tycoon-tree { position:absolute;bottom:38px;width:26px;height:48px; }
.tycoon-tree::before { content:"";position:absolute;width:24px;height:28px;border-radius:50%;background:#4ea66b;box-shadow:-8px 8px 0 #69bb7d,8px 8px 0 #3d915c; }
.tycoon-tree::after { content:"";position:absolute;left:11px;top:25px;width:5px;height:21px;background:#8b6a4f;border-radius:2px; }
.tycoon-tree.t1{left:18%}.tycoon-tree.t2{right:18%}.tycoon-tree.t3{right:29%;transform:scale(.8)}
.tycoon-path { position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:86px;height:52px;background:linear-gradient(90deg,transparent 0 18%,#d9d4c4 18% 82%,transparent 82%);clip-path:polygon(36% 0,64% 0,100% 100%,0 100%); }
.tycoon-mission button { display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px;text-align:left; }
.tycoon-mission button span { font-size:10px;color:#6f83a0; }
.tycoon-mission button b { margin:0; }
.tycoon-team-head { display:flex;justify-content:space-between;gap:15px;align-items:center;padding:18px 20px;margin-bottom:12px;border:1px solid #cfe0f5;border-radius:16px;background:linear-gradient(135deg,#fff,#eef6ff); }
.tycoon-team-head span { color:#4775ad;font-size:11px;font-weight:800; }.tycoon-team-head h2 { margin:4px 0 0;font-size:20px; }
.tycoon-team-stats { display:flex;gap:7px; }.tycoon-team-stats b { min-width:60px;padding:10px;border-radius:10px;background:#fff;border:1px solid #dae6f3;text-align:center;color:#224d82;font-size:18px; }.tycoon-team-stats small { display:block;margin-top:2px;color:#7c8fa8;font-size:9px; }
.tycoon-dept-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:12px; }
.tycoon-dept-grid article { display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;padding:12px;border:1px solid #d7e3f1;border-radius:12px;background:#fff; }
.tycoon-dept-grid .dept-icon { width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#edf4ff;color:#2c68bf;font-size:18px; }.tycoon-dept-grid strong,.tycoon-dept-grid small{display:block}.tycoon-dept-grid small{margin-top:2px;color:#7f8da0;font-size:10px}.tycoon-dept-grid i{display:block;height:5px;margin-top:6px;border-radius:99px;background:#e9eef5;overflow:hidden}.tycoon-dept-grid em{display:block;height:100%;background:linear-gradient(90deg,#5e86db,#55b4ff);border-radius:inherit}
.tycoon-floor-panel { overflow:hidden; }.tycoon-floor { position:relative;height:290px;background:linear-gradient(180deg,#d8edff 0 28%,#f1e7d5 28% 100%);overflow:hidden; }.floor-window{position:absolute;left:0;right:0;top:0;height:82px;background:repeating-linear-gradient(90deg,#96c9ec 0 54px,#e6f5ff 54px 60px);border-bottom:7px solid #c9d7df}.floor-room{position:absolute;left:5%;right:5%;bottom:12px;height:190px;border-radius:12px;background:linear-gradient(135deg,#f6efe2,#e8dcc8);box-shadow:inset 0 0 0 1px #d9cab1}.tycoon-desk{position:absolute;width:64px;height:45px;border:0;border-radius:6px;background:#d9c2a3;color:#3f536c;box-shadow:0 5px 9px rgba(74,58,42,.12);cursor:pointer}.tycoon-desk span{display:block;font-size:18px}.tycoon-desk small{display:block;max-width:58px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px}.tycoon-desk.d1{left:6%;top:20%}.tycoon-desk.d2{left:27%;top:16%}.tycoon-desk.d3{left:50%;top:18%}.tycoon-desk.d4{right:6%;top:20%}.tycoon-desk.d5{left:12%;top:55%}.tycoon-desk.d6{left:36%;top:53%}.tycoon-desk.d7{right:30%;top:55%}.tycoon-desk.d8{right:8%;top:52%}.tycoon-desk.d9{left:24%;top:76%}.tycoon-desk.d10{right:24%;top:76%}.floor-center{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);font-size:9px;font-weight:900;color:#8f7c62;letter-spacing:.08em}.floor-plant{position:absolute;width:19px;height:28px;border-radius:50% 50% 45% 45%;background:#4c9e61;bottom:12px}.floor-plant::after{content:"";position:absolute;left:5px;right:5px;bottom:-8px;height:10px;background:#9f7658;border-radius:2px}.floor-plant.p1{left:3%}.floor-plant.p2{right:3%}
.tycoon-facility-head { padding:18px 20px;margin-bottom:12px;border-radius:16px;background:linear-gradient(135deg,#244c89,#4279d2);color:#fff; }.tycoon-facility-head span{font-size:11px;color:#d9e8ff}.tycoon-facility-head h2{margin:4px 0;font-size:21px}.tycoon-facility-head p{margin:0;color:#dbe7fa;font-size:12px}.facility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.facility-card{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:13px;border:1px solid #d6e3f2;border-radius:14px;background:#fff}.facility-visual{height:80px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,#ddecff,#a9cef5);color:#235a98;font-size:32px}.facility-card strong{display:block}.facility-card small{display:block;margin-top:3px;color:#718096;font-size:10px}.facility-card p{margin:7px 0 0;color:#667085;font-size:11px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tycoon-report-banner{padding:18px 20px;margin-bottom:12px;border-radius:16px;background:linear-gradient(135deg,#254d8c,#4b83d7);color:#fff}.tycoon-report-banner span,.tycoon-report-banner small{display:block;color:#dceaff}.tycoon-report-banner strong{display:block;margin:4px 0;font-size:20px}

.report-summary-hero { margin-bottom:12px; }.report-editorial-hero { margin-bottom:12px; }

@media (max-width: 900px) {
  .ui-preset-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tycoon-dept-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  /* hard stop: top actions can never stretch vertically */
  .topbar { min-height:58px !important; height:58px !important; max-height:58px !important; align-items:center !important; }
  .top-actions { height:40px !important; min-height:40px !important; max-height:40px !important; align-self:center !important; align-items:center !important; flex:0 0 auto !important; }
  .ui-settings-button,.refresh-button { width:38px !important;min-width:38px !important;max-width:38px !important;height:38px !important;min-height:38px !important;max-height:38px !important;border-radius:10px !important; }
  .ui-settings-button span{font-size:17px}.refresh-button span{font-size:19px}

  .ui-settings-backdrop { align-items:end !important; padding:0 !important; }
  .ui-settings-modal { width:100% !important; max-width:none !important; max-height:calc(100dvh - max(env(safe-area-inset-top),26px) - 8px) !important; border-radius:22px 22px 0 0 !important; padding:12px 14px calc(16px + env(safe-area-inset-bottom)) !important; }
  .ui-settings-grabber { display:block;width:42px;height:4px;border-radius:999px;background:#d0d5dd;margin:0 auto 12px; }
  .ui-settings-head { align-items:center; }.ui-settings-head h2{font-size:19px;margin:2px 0 3px}.ui-settings-head .modal-sub{font-size:12px;margin:0}.ui-settings-close{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;max-width:36px!important;max-height:36px!important;flex:0 0 36px!important;}
  .ui-settings-section { margin-top:15px;padding-top:14px; }.ui-settings-section h3{font-size:14px;margin-bottom:9px}.ui-settings-title span{font-size:10px}
  .ui-preset-grid { grid-template-columns:1fr 1fr !important;gap:8px!important; }
  .ui-preset-card { min-height:145px!important;grid-template-rows:72px auto!important;padding:8px!important;border-radius:12px!important; }
  .preset-preview { height:72px; }.ui-preset-copy strong{font-size:12px}.ui-preset-copy small{font-size:9px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ui-preset-code{font-size:9px}
  .ui-settings-actions { position:sticky;bottom:calc(-16px - env(safe-area-inset-bottom));margin:12px -14px calc(-16px - env(safe-area-inset-bottom));padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid #eaecf0;backdrop-filter:blur(12px);display:grid;grid-template-columns:1fr 1fr; }

  .android-company-app body { padding-top:max(env(safe-area-inset-top),26px) !important; }
  .android-company-app .content { background-clip:padding-box; }
  .android-company-app .topbar { top:0 !important; }

  .tycoon-sky { min-height:250px; }.tycoon-campus{height:185px}.tycoon-office-main{width:108px;height:118px;bottom:35px}.tycoon-office-wing{width:58px;height:66px;bottom:41px}.tycoon-office-wing.left{left:calc(50% - 96px)}.tycoon-office-wing.right{right:calc(50% - 96px)}.tycoon-resources{top:57px;right:10px}.tycoon-level{left:10px;top:10px;width:145px}.tycoon-bubble{right:10px;top:102px;max-width:185px}.tycoon-mission{grid-template-columns:repeat(3,1fr)}.tycoon-mission>strong{grid-column:1/-1}.tycoon-team-head{display:grid;padding:14px}.tycoon-team-stats{justify-content:space-between}.tycoon-team-stats b{flex:1;min-width:0}.tycoon-dept-grid{grid-template-columns:1fr 1fr}.tycoon-dept-grid article{grid-template-columns:38px 1fr;padding:9px}.tycoon-dept-grid .dept-icon{width:36px;height:36px}.tycoon-floor{height:255px}.facility-grid{grid-template-columns:1fr}.facility-card{grid-template-columns:72px 1fr}.facility-visual{height:68px}
}

/* v9.3 — foldable / wide-touch responsive layout --------------------------
   Folded phones keep the existing mobile UI. When a foldable is unfolded,
   the same app automatically becomes a compact tablet operations console.
   No business logic or UI mode is changed. */
@media (min-width: 700px) and (max-width: 1100px) {
  /* Use the extra width instead of simply stretching phone cards. */
  .shell {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    min-height: 100dvh;
  }
  .sidebar {
    display: flex;
    width: 76px;
    padding: 16px 8px;
    height: 100dvh;
    overflow: hidden;
  }
  .brand { justify-content:center; padding: 0 0 18px; }
  .brand-mark { width: 40px; height:40px; }
  .brand > div:not(.brand-mark), .sidebar-foot .sidebar-note { display:none; }
  .nav { gap:6px; }
  .nav-button {
    min-height: 58px;
    padding: 8px 4px;
    display:grid;
    place-items:center;
    gap:4px;
    text-align:center;
    font-size:10px;
    line-height:1.15;
  }
  .nav-icon { display:block; width:auto; font-size:19px; }
  .sidebar-foot { padding: 13px 0 0; display:grid; place-items:center; }
  .system-line { font-size:0; gap:0; }
  .online-dot { width:9px; height:9px; }

  .content { padding: 0 20px 28px; }
  .topbar {
    position:sticky;
    top:0;
    z-index:30;
    height:66px;
    margin:0 -20px 10px;
    padding:0 20px;
    background:rgba(255,255,255,.96);
    border-bottom:1px solid var(--line);
    backdrop-filter:blur(14px);
  }
  .ui-mode-control .topbar { background:rgba(7,17,29,.96); }
  .page-title { font-size:23px; }
  .page-kicker { display:none; }
  .current-ui-label { display:inline-flex; max-width:165px; overflow:hidden; text-overflow:ellipsis; }
  #ui-settings { width:42px; min-width:42px; padding:0; color:transparent; position:relative; overflow:hidden; }
  #ui-settings::after { content:"⚙"; color:#344054; position:absolute; inset:0; display:grid; place-items:center; font-size:17px; }
  .ui-mode-control #ui-settings::after { color:#c7eaff; }

  /* Unfolded Fold: two useful areas at once. */
  .dashboard-grid,
  .summary-two,
  .artifact-layout,
  .editorial-layout,
  .executive-layout,
  .control-layout {
    grid-template-columns:minmax(0, 1.22fr) minmax(270px, .78fr);
    gap:12px;
  }
  .summary-hero { grid-template-columns:minmax(0,1fr) minmax(280px,.85fr); }
  .metrics { grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
  .metric { padding:13px; }
  .metric-value { font-size:22px; }
  .metric-note { font-size:11px; }
  .panel-head { padding:14px 15px 10px; }
  .panel-title { font-size:16px; }
  .quick-command { position:static; padding:13px 14px; }

  /* Task lists use width for content instead of extra vertical scrolling. */
  .compact-op { grid-template-columns:9px minmax(0,1fr) minmax(150px,.7fr); min-height:58px; padding:9px 13px; }
  .compact-op-next { grid-column:auto; text-align:right; }
  .operation-row { padding:14px 16px; }
  .operation-row p { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

  /* Staff becomes an actual directory/table on the inner screen. */
  .staff-head { display:grid; grid-template-columns:minmax(110px,.75fr) minmax(190px,1.45fr) minmax(110px,.8fr) 78px; gap:10px; padding:9px 12px; }
  .staff-row { display:grid; grid-template-columns:minmax(110px,.75fr) minmax(190px,1.45fr) minmax(110px,.8fr) 78px; gap:10px; padding:12px; }
  .staff-duty,.staff-model,.staff-row > div:last-child { grid-column:auto; grid-row:auto; }
  .staff-name strong { font-size:13px; }

  /* Kanban shows two columns side-by-side on the Fold inner display. */
  .kanban-board {
    grid-template-columns:repeat(4, minmax(285px, calc((100vw - 124px) / 2)));
    gap:10px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    padding-bottom:8px;
  }
  .kanban-column { scroll-snap-align:start; }

  /* Control room and executive modes benefit from the wide canvas. */
  .control-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .executive-stats { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .summary-stat-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }

  /* Tycoon: HQ and management information can coexist on the inner screen. */
  .tycoon-sky { min-height:250px; }
  .tycoon-building span { font-size:105px; }
  .tycoon-mission { grid-template-columns:1.35fr repeat(3,1fr); }
  .tycoon-mission > strong { grid-column:auto; padding-left:6px; }
  .dept-tiles { grid-template-columns:repeat(4,minmax(0,1fr)); }

  /* Settings becomes a tablet control panel rather than a tall phone sheet. */
  .ui-settings-backdrop { align-items:center; padding:18px; }
  .ui-settings-modal { width:min(880px, calc(100vw - 110px)); max-height:88dvh; border-radius:18px; }
  .ui-preset-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
  .ui-screen-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }

  /* Dialogs sit in the center and use the extra horizontal room. */
  .modal-backdrop,.owner-sheet-backdrop { align-items:center; padding:18px; }
  .modal { width:min(720px, calc(100vw - 120px)); max-height:88dvh; border-radius:18px; padding-bottom:22px; }
  .owner-decision-sheet { width:min(720px, calc(100vw - 120px)); max-height:88dvh; border-radius:18px; padding:18px; }
  .owner-sheet-grabber { display:none; }
  .owner-sheet-actions { position:sticky; bottom:-18px; margin:10px -18px -18px; padding:12px 18px; grid-template-columns:auto auto auto; justify-content:end; }
  .owner-sheet-actions .approval-button-danger { grid-column:auto; }
  .artifact-preview-modal { width:min(900px, calc(100vw - 120px)); max-height:88dvh; }

  /* Inner display uses the rail navigation, not the phone bottom bar. */
  .mobile-nav { display:none !important; }

  /* Do not reserve an extra artificial phone-status strip when unfolded. */
  .android-company-app body { padding-top:env(safe-area-inset-top); }
  .android-company-app .shell { min-height:calc(100dvh - env(safe-area-inset-top)); }
  .android-company-app .modal-backdrop { top:env(safe-area-inset-top); height:calc(100dvh - env(safe-area-inset-top)); }
}

/* Very wide inner displays / landscape Fold use more of the canvas. */
@media (min-width: 900px) and (max-width: 1280px) {
  .shell { grid-template-columns:86px minmax(0,1fr); }
  .sidebar { width:86px; }
  .content { padding-left:24px; padding-right:24px; }
  .metrics { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .dashboard-grid { grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); }
  .ui-preset-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

/* ===== AI Company v10 · 운영센터 + 통합 제작실 ===== */
.manual-generation-banner{display:flex;gap:18px;align-items:center;justify-content:space-between;padding:16px 18px;margin-bottom:14px;border:1px solid #dbe4ff;border-radius:18px;background:linear-gradient(135deg,#eef5ff,#f7f2ff);color:#263657}.manual-generation-banner strong{font-size:17px;white-space:nowrap}.manual-generation-banner span{font-size:14px;line-height:1.55;color:#61708e}.production-health{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--line,#e4e8f0);border-radius:18px;background:var(--panel,#fff)}.production-health>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}.production-health strong{font-size:15px}.production-health small{grid-column:2;color:#7a8498;margin-top:2px}.offline-dot{background:#aab1bf!important}.production-health-actions,.production-action-row,.operating-actions,.operating-foot-actions{display:flex;flex-wrap:wrap;gap:8px}.production-shell{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1fr) minmax(250px,330px);gap:14px;align-items:start}.production-project-list,.production-detail,.production-side,.operating-list,.operating-main{min-width:0;border:1px solid var(--line,#e4e8f0);border-radius:20px;background:var(--panel,#fff);box-shadow:0 8px 26px rgba(34,48,83,.05)}.production-project-list,.production-side,.operating-list{padding:14px}.production-detail,.operating-main{padding:16px}.production-column-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.production-column-title strong{font-size:16px}.production-column-title span{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#f0f3f9;color:#526079;font-size:13px}.production-project{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:12px;margin:0 0 8px;border:1px solid #edf0f5;border-radius:14px;background:#fff;text-align:left}.production-project:hover,.production-project.active{border-color:#6c8cff;background:#f6f8ff}.production-project-state,.content-state{font-size:11px;font-weight:800;color:#345fc8;background:#edf3ff;border-radius:999px;padding:4px 8px}.production-project strong{font-size:14px;line-height:1.35}.production-project small{font-size:12px;color:#8a92a3}.production-project-hero{padding:4px 2px 16px}.production-project-hero>span{font-size:12px;font-weight:800;color:#2e63d8}.production-project-hero h2{margin:7px 0 4px;font-size:22px}.production-project-hero p{margin:0;color:#768096}.production-scenes{display:grid;gap:8px;margin-top:16px}.scene-card{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:center;width:100%;padding:11px;border:1px solid #e9edf4;border-radius:13px;background:#fff;text-align:left}.scene-card>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#edf3ff;color:#3564d4;font-weight:800}.scene-card div{display:grid;gap:2px}.scene-card strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-card small{color:#8b93a2}.scene-card.active{border-color:#4d73dd;background:#f4f7ff}.scene-work-panel{display:grid;gap:14px}.scene-work-head span{font-size:12px;color:#66738c}.scene-work-head h3{margin:5px 0 0;font-size:20px}.scene-prompt-box{padding:14px;border-radius:15px;background:#f7f8fb;border:1px solid #e7eaf1}.scene-prompt-box strong{display:block;margin-bottom:8px}.scene-prompt-box p{max-height:260px;overflow:auto;margin:0 0 12px;white-space:pre-wrap;font-size:13px;line-height:1.55;color:#505c73}.manual-steps{display:grid;gap:7px;margin:0;padding:0 0 0 22px;color:#526079;font-size:13px}.magnific-button{width:100%;padding:12px 15px;border:0;border-radius:13px;background:linear-gradient(135deg,#7b4de8,#9a5cf0);color:#fff;font-weight:800}.production-safety{padding:12px 14px;border-radius:14px;background:#fff8e8;border:1px solid #f0dfad}.production-safety strong,.production-safety span{display:block}.production-safety span{margin-top:4px;color:#776849;font-size:12px;line-height:1.5}.production-empty{min-height:170px;display:grid;place-items:center;text-align:center}.production-skeleton{min-height:260px}

.operating-center-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px 20px;margin-bottom:14px;border:1px solid #e5e9f2;border-radius:20px;background:linear-gradient(135deg,#fff,#f5f8ff)}.operating-center-head span{font-size:12px;font-weight:800;color:#3566d6}.operating-center-head h2{margin:6px 0 5px;font-size:22px}.operating-center-head p{margin:0;color:#748096;line-height:1.5}.checkpoint-strip{margin-bottom:14px;padding:14px 16px;border:1px solid #e5e9f2;border-radius:20px;background:#fff}.checkpoint-list{display:flex;gap:10px;overflow:auto;padding-bottom:2px}.checkpoint-card{flex:0 0 min(360px,82vw);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #e7ebf2;border-radius:14px;background:#fbfcff}.checkpoint-card div{min-width:0}.checkpoint-card strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkpoint-card p{margin:4px 0 0;color:#7a8496;font-size:12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.operating-layout{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:14px;align-items:start}.operating-list{display:grid;gap:8px}.operating-item-card{width:100%;padding:13px;border:1px solid #e9edf4;border-radius:15px;background:#fff;text-align:left}.operating-item-card:hover,.operating-item-card.active{border-color:#6282df;background:#f7f9ff}.operating-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.operating-item-top>span{color:#52617b;font-size:11px;font-weight:800}.operating-state{font-style:normal;font-size:11px;font-weight:800;padding:4px 8px;border-radius:999px;background:#eaf7ef;color:#277a50}.operating-state.state-paused{background:#fff4db;color:#946819}.operating-state.state-archived{background:#eff1f5;color:#70798a}.operating-item-card>strong{display:block;font-size:16px}.operating-item-card>p{margin:5px 0 10px;color:#798397;font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.operating-card-stats{display:flex;gap:6px;flex-wrap:wrap}.operating-card-stats span{padding:4px 7px;border-radius:8px;background:#f1f4f9;color:#56647d;font-size:11px}.operating-item-card>small{display:block;margin-top:8px;color:#9299a7}.operating-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.operating-detail-head span{font-size:12px;font-weight:800;color:#3867d3}.operating-detail-head h2{margin:5px 0;font-size:24px}.operating-detail-head p{margin:0;color:#798397;line-height:1.5}.operating-tabs{display:flex;gap:6px;margin:16px 0;padding-bottom:10px;border-bottom:1px solid #e9edf4;overflow:auto}.operating-tabs button{padding:8px 12px;border:0;border-radius:10px;background:transparent;color:#6c778d;font-weight:700;white-space:nowrap}.operating-tabs button.active{background:#1f3e7a;color:#fff}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.metric-grid span{display:grid;gap:3px;padding:14px 10px;border:1px solid #e8ebf2;border-radius:14px;background:#fbfcff;text-align:center}.metric-grid b{font-size:20px}.metric-grid small{color:#858ea0}.metric-grid.mini{grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0}.operating-latest-report,.cumulative-card{margin-top:14px;padding:15px;border:1px solid #e8ebf2;border-radius:15px;background:#fff}.operating-latest-report>p{color:#66738a;line-height:1.55}.operating-content-list,.operating-report-list,.operating-memory{display:grid;gap:9px}.operating-content-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid #e8ecf3;border-radius:13px}.operating-content-list article div{display:grid;gap:3px}.operating-content-list article small{color:#8891a2}.operating-report-card{border:1px solid #e7ebf2;border-radius:14px;background:#fff;overflow:hidden}.operating-report-card summary{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;cursor:pointer}.operating-report-card summary div{display:grid;gap:3px}.operating-report-card summary small{color:#8b93a1}.operating-report-card pre{margin:0;padding:14px 16px;border-top:1px solid #eef0f4;white-space:pre-wrap;font-family:inherit;line-height:1.65;background:#fafbfe}.memory-card{padding:13px 14px;border:1px solid #e8ebf2;border-radius:14px}.memory-card span{font-size:11px;font-weight:800;color:#3968d2}.memory-card strong{display:block;margin:4px 0}.memory-card p{margin:0;color:#68758d;line-height:1.55}.cumulative-card h4{margin:15px 0 6px}.cumulative-card ul{margin:0;padding-left:20px;color:#68758d}.operating-foot-actions{margin-top:14px;padding-top:12px;border-top:1px solid #eceff4}.operating-form-modal{max-width:620px}.metric-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check-line{display:flex;align-items:center;gap:8px;padding:10px 0;color:#59677e}.check-line input{width:auto}.operating-skeleton{min-height:360px}

.ui-mode-tycoon .operating-item-card{background:linear-gradient(150deg,#fff,#f2f7ff);box-shadow:0 5px 0 #dce9fa}.ui-mode-control .production-project-list,.ui-mode-control .production-detail,.ui-mode-control .production-side,.ui-mode-control .operating-list,.ui-mode-control .operating-main,.ui-mode-control .operating-center-head,.ui-mode-control .checkpoint-strip{background:#0b1928;border-color:#20384f;color:#eaf7ff}.ui-mode-control .production-project,.ui-mode-control .scene-card,.ui-mode-control .operating-item-card,.ui-mode-control .operating-latest-report,.ui-mode-control .cumulative-card,.ui-mode-control .memory-card,.ui-mode-control .operating-report-card{background:#0f2132;border-color:#29465e;color:#eaf7ff}.ui-mode-control .production-project small,.ui-mode-control .scene-card small,.ui-mode-control .operating-item-card>p,.ui-mode-control .operating-detail-head p,.ui-mode-control .operating-center-head p{color:#8fabbd}

@media(max-width:699px){.manual-generation-banner{display:grid;gap:6px}.manual-generation-banner strong{white-space:normal}.production-health{align-items:flex-start}.production-health-actions{display:none}.production-shell,.operating-layout{grid-template-columns:1fr}.production-project-list{max-height:230px;overflow:auto}.production-side{order:3}.operating-list{display:flex;overflow:auto}.operating-item-card{flex:0 0 82vw}.operating-detail-head,.operating-center-head{display:grid}.operating-actions{margin-top:4px}.metric-grid{grid-template-columns:1fr 1fr}.metric-form-grid{grid-template-columns:1fr}.operating-content-list article{grid-template-columns:auto minmax(0,1fr)}.operating-content-list article .secondary-button{grid-column:1/-1}.checkpoint-card{flex-direction:column;align-items:stretch}.checkpoint-card button{width:100%}}
@media(min-width:700px) and (max-width:1100px){.production-shell{grid-template-columns:230px minmax(0,1fr) 300px}.operating-layout{grid-template-columns:270px minmax(0,1fr)}.production-project-list,.production-detail,.production-side,.operating-list,.operating-main{max-height:calc(100vh - 210px);overflow:auto}.metric-grid{grid-template-columns:repeat(4,minmax(90px,1fr))}}
.operating-report-shortcuts{display:grid;gap:8px}.operating-report-shortcuts button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 14px;border:1px solid #e8ecf3;border-radius:13px;background:#fff;text-align:left}.operating-report-shortcuts button div{display:grid;gap:3px}.operating-report-shortcuts button small{color:#8790a2}.operating-report-shortcuts button>span{color:#3766d2;font-weight:800;white-space:nowrap}

/* ==========================================================
   AI Company v10.2 — command/voice + living tycoon workplace
   ========================================================== */
.top-actions .icon-button svg,
.command-composer-modal svg,
.quick-command-actions svg,
.tycoon-work-head svg,
.hero-command-launch svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.top-actions .icon-button { color:#24334d; background:#fff; border:1px solid #cfd6e2; box-shadow:0 4px 12px rgba(31,49,78,.08); }
.top-actions .icon-button:hover { background:#f6f8fb; }
.ui-mode-control .top-actions .icon-button { color:#dff8ff; background:#0d1e2d; border-color:#29445a; }

.quick-command.command-launcher { gap:12px; }
.quick-command-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
.quick-command-actions button,
.hero-command-launch button,
.tycoon-work-head button { display:inline-flex; align-items:center; justify-content:center; gap:7px; }
.hero-command-launch { position:relative; z-index:1; display:flex; gap:9px; margin-top:20px; flex-wrap:wrap; }
.hero-command-launch .primary-button,.hero-command-launch .secondary-button { min-height:46px; }

/* Command composer: one place for text, files and long voice dictation */
.command-composer-backdrop { z-index:110; align-items:flex-end; }
.command-composer-modal { width:min(760px, calc(100vw - 24px)); max-height:min(88vh, 860px); overflow:auto; padding:0; border-radius:24px 24px 0 0; background:#f8fafc; }
.command-composer-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:22px 22px 14px; background:#fff; border-bottom:1px solid #e5e9f0; position:sticky; top:0; z-index:4; }
.command-composer-head h2 { margin:3px 0 4px; font-size:24px; }
.command-composer-head p { margin:0; color:#667085; line-height:1.55; font-size:14px; }
.command-composer-head .icon-button { flex:0 0 42px; width:42px; height:42px; display:grid; place-items:center; background:#fff; color:#26344e; border:1px solid #d7dde7; }
.command-box.command-box-modal { margin:16px; display:grid; grid-template-columns:minmax(0,1fr) 190px; background:#fff; border:1px solid #dbe1ea; border-radius:18px; padding:12px; gap:12px; box-shadow:0 14px 40px rgba(31,50,82,.08); }
.command-box-modal .command-main { min-width:0; display:flex; flex-direction:column; }
.command-box-modal textarea { min-height:190px; max-height:42vh; font-size:17px; line-height:1.65; padding:14px; }
.command-box-modal .command-side { min-width:0; display:flex; flex-direction:column; gap:8px; }
.command-box-modal .command-side > button,.command-box-modal .command-side > label,.command-box-modal .project-select { min-height:46px; }
.command-submit { display:inline-flex; align-items:center; justify-content:center; gap:7px; }
.voice-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; transition:.18s ease; }
.voice-button.recording { color:#fff; background:#d83a45; border-color:#d83a45; box-shadow:0 0 0 4px rgba(216,58,69,.12); }
.voice-button.recording svg { animation:voiceMicPulse 1.2s ease-in-out infinite; }
@keyframes voiceMicPulse { 50% { transform:scale(1.12); } }
.voice-status { margin:6px 8px 2px; min-height:54px; padding:10px 12px; border-radius:12px; background:#f5f7fa; color:#5d687a; display:grid; grid-template-columns:auto 1fr; column-gap:8px; align-items:center; }
.voice-status strong { font-size:13px; color:#344054; }
.voice-status small { grid-column:2; font-size:12px; line-height:1.45; }
.voice-status.recording { background:#fff3f4; color:#8e3038; }
.voice-status.recording strong { color:#a62934; }
.voice-pulse { width:10px; height:10px; border-radius:50%; background:#d83a45; box-shadow:0 0 0 0 rgba(216,58,69,.35); animation:voicePulse 1.35s infinite; grid-row:1/3; }
@keyframes voicePulse { 70% { box-shadow:0 0 0 9px rgba(216,58,69,0); } 100% { box-shadow:0 0 0 0 rgba(216,58,69,0); } }
.voice-live-preview { margin:0 8px 4px; padding:9px 11px; border-left:3px solid #3d74d8; background:#f1f6ff; color:#3d5e92; font-size:13px; border-radius:7px; }
.command-composer-foot { display:flex; gap:12px; justify-content:space-between; flex-wrap:wrap; padding:0 18px 18px; color:#778196; font-size:12px; }

/* Tycoon HQ — 2.5D campus built with CSS, no emoji assets */
.tycoon-hq-v2 { overflow:hidden; }
.tycoon-hq-top { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; position:relative; z-index:5; padding:18px 18px 0; }
.tycoon-resources .has-issue { border-color:#ef9c9c!important; color:#9e3434!important; }
.campus-map { position:relative; min-height:390px; margin:8px 14px 0; perspective:900px; border-radius:24px; overflow:hidden; background:linear-gradient(#8fc3ff 0 42%,#b7dfa1 42% 100%); box-shadow:inset 0 -28px 50px rgba(76,125,67,.12); }
.campus-map::before { content:""; position:absolute; left:-10%; right:-10%; top:38%; height:92px; background:rgba(255,255,255,.3); border-radius:50%; filter:blur(3px); }
.campus-ground { position:absolute; left:8%; right:8%; bottom:24px; height:170px; transform:rotateX(61deg); transform-origin:center bottom; background:linear-gradient(150deg,#a6d88f,#84c77b); border-radius:30px; box-shadow:0 20px 30px rgba(47,100,55,.13); }
.campus-building { position:absolute; width:112px; min-height:104px; border:0; background:transparent; color:#163455; cursor:pointer; z-index:3; text-align:center; padding:0; }
.campus-building strong { display:block; margin-top:2px; font-size:13px; }
.campus-building small { display:block; color:#47657d; font-size:10px; margin-top:2px; }
.campus-building.hq { width:148px; left:50%; top:118px; transform:translateX(-50%); z-index:4; }
.campus-building.planning { left:8%; top:190px; }
.campus-building.meeting { right:8%; top:190px; }
.campus-building.studio { left:19%; top:64px; }
.campus-building.operations { right:19%; top:64px; }
.campus-building.analytics { left:50%; bottom:12px; transform:translateX(-50%); }
.building-model { width:86px; height:66px; margin:0 auto; display:block; position:relative; transform:rotateX(56deg) rotateZ(-32deg); transform-style:preserve-3d; transition:transform .2s ease, filter .2s ease; }
.campus-building:hover .building-model { transform:rotateX(54deg) rotateZ(-32deg) translateY(-4px); filter:brightness(1.04); }
.campus-building.hq .building-model { width:118px; height:92px; }
.building-front { position:absolute; left:8px; top:17px; width:72px; height:50px; background:linear-gradient(180deg,#f9fcff,#c9e4f5); border:2px solid #4f87aa; border-radius:4px; box-shadow:0 10px 13px rgba(32,70,98,.22); transform:translateZ(12px); display:grid; grid-template-columns:repeat(2,1fr); gap:6px; padding:8px; }
.hq .building-front { width:98px; height:68px; grid-template-columns:repeat(3,1fr); }
.building-front em { display:block; background:linear-gradient(150deg,#62c1ec,#2589bf); border:1px solid #2f7ca1; border-radius:2px; }
.building-side { position:absolute; right:-3px; top:22px; width:20px; height:49px; background:#aacfe2; transform:skewY(-28deg) translateZ(3px); border:1px solid #4e809e; border-radius:0 3px 3px 0; }
.hq .building-side { height:65px; }
.building-roof { position:absolute; left:3px; top:8px; width:80px; height:22px; background:linear-gradient(90deg,#e54c50,#c93542); transform:skewX(-28deg) translateZ(20px); border-radius:4px; box-shadow:0 4px 8px rgba(115,36,45,.18); }
.hq .building-roof { width:108px; }
.studio .building-roof { background:linear-gradient(90deg,#5b70e8,#384ec9); }
.meeting .building-roof { background:linear-gradient(90deg,#7c67d9,#604dbb); }
.operations .building-roof { background:linear-gradient(90deg,#42ac7b,#2e8e62); }
.analytics .building-roof { background:linear-gradient(90deg,#e1a34d,#c8872e); }
.planning .building-roof { background:linear-gradient(90deg,#51a3d8,#387eae); }
.meeting.busy .building-model { animation:meetingBuildingGlow 2.2s ease-in-out infinite; }
@keyframes meetingBuildingGlow { 50% { filter:drop-shadow(0 0 9px rgba(111,82,206,.55)); } }
.building-door { position:absolute; width:16px; height:24px; background:#327ca4; left:36px; top:48px; z-index:4; border-radius:2px 2px 0 0; }
.hq .building-door { left:51px; top:66px; }
.campus-path { position:absolute; height:16px; background:#e8dfc8; border:1px solid rgba(116,104,75,.12); transform:rotate(-16deg); border-radius:999px; z-index:1; }
.campus-path.p1 { width:270px; left:50%; bottom:69px; transform:translateX(-50%) rotate(-16deg); }
.campus-path.p2 { width:200px; left:50%; bottom:91px; transform:translateX(-50%) rotate(18deg); }
.campus-tree { position:absolute; width:26px; height:32px; border-radius:50% 50% 42% 42%; background:linear-gradient(135deg,#45ad64,#238447); box-shadow:0 9px 0 -6px #7c5a3a; z-index:2; }
.tree-a { left:7%; bottom:58px; }.tree-b { right:8%; bottom:68px; }.tree-c { right:21%; bottom:28px; }
.tycoon-room-shortcuts { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.tycoon-room-shortcuts button { border:1px solid #d9e2ec; background:#f9fbfd; border-radius:14px; min-height:92px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:10px 12px; text-align:left; color:#213852; }
.tycoon-room-shortcuts strong { margin-top:5px; }.tycoon-room-shortcuts small { color:#6c788a; }
.room-mini { width:34px; height:25px; display:block; border:2px solid #5d83ac; background:linear-gradient(145deg,#d9efff,#a8d0e8); transform:skewY(-9deg); border-radius:4px; box-shadow:6px 5px 0 #bdd0dd; }
.meeting-mini { border-color:#7b69bb; background:linear-gradient(145deg,#ece6ff,#cabef2); box-shadow:6px 5px 0 #d0c8e9; }
.production-mini { border-color:#5075c7; background:linear-gradient(145deg,#e4ebff,#b8c8f4); box-shadow:6px 5px 0 #c5cee3; }

/* Tiny 2.5D staff figures */
.staff-figure { width:46px; height:59px; display:block; position:relative; }
.staff-figure i { position:absolute; display:block; }
.staff-shadow { width:34px; height:10px; border-radius:50%; background:rgba(39,53,69,.15); bottom:0; left:6px; }
.staff-body { width:26px; height:30px; border-radius:10px 10px 6px 6px; left:10px; top:24px; background:#557ab6; border:1px solid rgba(24,55,91,.22); }
.staff-head { width:23px; height:23px; border-radius:50%; left:11.5px; top:7px; background:#f2c6a7; border:1px solid rgba(114,77,58,.16); box-shadow:inset -3px -3px 0 rgba(165,101,70,.08); }
.staff-hair { width:24px; height:11px; border-radius:14px 14px 6px 6px; left:11px; top:5px; background:#26364a; }
.staff-figure b { position:absolute; top:57px; left:50%; transform:translateX(-50%); white-space:nowrap; font-size:9px; font-weight:700; color:#415166; }
.staff-figure.tone-1 .staff-body{background:#6f67be}.staff-figure.tone-2 .staff-body{background:#3e9980}.staff-figure.tone-3 .staff-body{background:#d07b55}.staff-figure.tone-4 .staff-body{background:#b06191}.staff-figure.tone-5 .staff-body{background:#477c94}
.staff-figure.working .staff-body { box-shadow:0 0 0 3px rgba(45,112,208,.12); }

/* office / meeting room */
.tycoon-space-tabs { display:flex; gap:6px; margin:0 0 10px; padding:5px; background:#edf1f6; border-radius:12px; width:max-content; max-width:100%; }
.tycoon-space-tabs button { border:0; padding:8px 14px; border-radius:9px; background:transparent; color:#607087; font-weight:800; }
.tycoon-space-tabs button.active { background:#fff; color:#153d72; box-shadow:0 2px 10px rgba(43,63,91,.08); }
.tycoon-space-tabs b { display:inline-grid; place-items:center; min-width:18px; height:18px; border-radius:9px; background:#6b5cc1; color:#fff; font-size:10px; }
.tycoon-workspace-grid { display:grid; grid-template-columns:1.25fr .95fr; gap:12px; margin-bottom:12px; }
.office-scene-card,.meeting-room-card,.production-room-card { background:#fff; border:1px solid #dce3eb; border-radius:18px; padding:14px; box-shadow:0 8px 28px rgba(32,55,85,.055); overflow:hidden; }
.office-scene-head,.meeting-room-head,.production-room-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; margin-bottom:10px; }
.office-scene-head > div,.meeting-room-head > div,.production-room-head > div { display:grid; gap:3px; }
.office-scene-head strong,.meeting-room-head strong,.production-room-head strong { font-size:16px; }
.office-scene-head span,.meeting-room-head span,.production-room-head span { font-size:11px; color:#728094; }
.office-scene-head > span,.meeting-room-head > b,.production-room-head > b { background:#edf4ff; color:#315f9c; padding:5px 8px; border-radius:999px; font-size:11px; }
.office-scene { position:relative; min-height:330px; border-radius:16px; background:linear-gradient(160deg,#eff8ff 0 18%,#d6e3ea 18% 100%); overflow:hidden; display:grid; grid-template-columns:repeat(4,1fr); gap:13px 8px; padding:44px 14px 28px; perspective:800px; }
.office-scene::before { content:""; position:absolute; inset:22px 20px; border:2px solid rgba(82,116,143,.15); transform:skewY(-3deg); border-radius:12px; }
.office-desk { min-height:112px; border:0; background:transparent; position:relative; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; color:#44566d; z-index:2; padding:0 0 6px; }
.desk-top { position:absolute; width:74px; height:43px; top:45px; background:linear-gradient(145deg,#b68b61,#916846); transform:rotateX(58deg) rotateZ(-8deg); border-radius:5px; box-shadow:0 11px 9px rgba(76,60,45,.17); }
.desk-screen { position:absolute; width:37px; height:26px; top:28px; background:#364b61; border:3px solid #1f2d3b; border-radius:3px; box-shadow:0 0 0 2px #88bbe0 inset; }
.office-desk .staff-figure { position:absolute; top:52px; transform:scale(.84); transform-origin:center bottom; }
.office-desk > small { position:relative; z-index:4; margin-top:74px; max-width:88px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:9px; }
.office-desk.state-working .desk-screen { box-shadow:0 0 0 2px #73d4ff inset,0 0 14px rgba(67,174,224,.42); }
.office-desk.state-offline { opacity:.45; filter:grayscale(.65); }
.desk-away { position:absolute; top:62px; z-index:5; padding:5px 7px; border-radius:7px; background:#6c5dc2; color:#fff; font-size:9px; font-weight:800; }
.office-rug { position:absolute; left:32%; right:32%; top:43%; bottom:24%; border-radius:16px; background:rgba(89,133,183,.09); transform:skewY(-4deg); }
.office-plant { position:absolute; width:26px; height:38px; bottom:17px; border-radius:50% 50% 35% 35%; background:#5bb879; box-shadow:0 9px 0 -5px #9a6d48; }.plant-l{left:18px}.plant-r{right:18px}
.meeting-room { min-height:330px; position:relative; border-radius:16px; background:linear-gradient(160deg,#eef3fa,#d9e0e8); overflow:hidden; }
.meeting-wall { position:absolute; left:14px; right:14px; top:14px; height:72px; background:#f8fbff; border:1px solid #cbd7e4; border-radius:10px; display:flex; gap:7px; padding:9px; }
.meeting-wall i { flex:1; background:linear-gradient(180deg,#8ec5e6,#d5edf9); border-radius:5px; }
.meeting-table { position:absolute; width:54%; height:40%; left:23%; top:39%; border-radius:45%; background:linear-gradient(145deg,#9a6d4d,#754d34); transform:rotateX(56deg); box-shadow:0 18px 13px rgba(76,54,40,.19); }
.meeting-seat { border:0; background:transparent; position:absolute; width:54px; height:70px; padding:0; z-index:3; }
.meeting-seat .staff-figure { transform:scale(.9); }
.meeting-seat.seat-1{left:12%;top:33%}.meeting-seat.seat-2{right:12%;top:33%}.meeting-seat.seat-3{left:20%;bottom:11%}.meeting-seat.seat-4{right:20%;bottom:11%}.meeting-seat.seat-5{left:41%;top:24%}.meeting-seat.seat-6{left:42%;bottom:4%}
.meeting-empty-message { position:absolute; left:12%; right:12%; top:48%; padding:12px; border-radius:12px; background:rgba(255,255,255,.86); text-align:center; color:#6f7b8b; font-size:12px; }
.meeting-room-foot { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-top:9px; font-size:11px; color:#66758a; }.meeting-room-foot button{margin-left:auto;border:0;background:#eef4fb;color:#315f99;padding:7px 9px;border-radius:8px;font-weight:800}

/* visual production room */
.production-room-card { margin-bottom:12px; }
.production-room { display:grid; grid-template-columns:repeat(5,1fr); gap:8px; min-height:122px; padding:12px; border-radius:16px; background:linear-gradient(160deg,#eef4fb,#dce5ee); }
.production-station { min-width:0; background:rgba(255,255,255,.72); border:1px solid rgba(123,143,166,.25); border-radius:11px; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; padding:9px 5px; color:#69788b; }
.production-station.active,.production-station.done { color:#234b78; background:#fff; box-shadow:0 6px 14px rgba(50,75,109,.08); }
.production-station > i { width:38px; height:30px; display:block; margin-bottom:8px; position:relative; border:2px solid #6f88a4; background:#d9e9f5; border-radius:4px; transform:skewY(-6deg); box-shadow:5px 4px 0 #b7c7d5; }
.production-station.done > i{border-color:#4e9a77;background:#d9f2e5;box-shadow:5px 4px 0 #bdd9ca}.production-station.active > i{border-color:#4f78c9;background:#e1e8ff;box-shadow:5px 4px 0 #c4cee5}
.production-station span{font-size:12px;font-weight:900}.production-station small{font-size:9px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.production-room-progress { height:8px; background:#e8edf3; border-radius:999px; margin-top:10px; overflow:visible; position:relative; }.production-room-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#3977da,#52b18b)}.production-room-progress span{position:absolute;right:0;top:-21px;font-size:10px;color:#637187}

/* mission icons without emoji */
.mission-icon { width:36px; height:36px; border-radius:11px; background:#e8eff8; display:grid; place-items:center; }
.mission-icon i { width:14px; height:14px; border:3px solid #4775ad; border-radius:50%; position:relative; }
.mission-completed i { border-color:#3b9b6c; }.mission-completed i::after{content:"";position:absolute;width:8px;height:4px;border-left:2px solid #3b9b6c;border-bottom:2px solid #3b9b6c;transform:rotate(-45deg);left:1px;top:2px}
.mission-blocked i,.mission-failed i { border-radius:3px; transform:rotate(45deg); border-color:#c65959; }

/* mobile: command composer stays easy to reach, one room at a time */
@media (max-width: 700px) {
  .quick-command.command-launcher { align-items:flex-start; }
  .quick-command-actions { width:100%; display:grid; grid-template-columns:1fr 1fr; }
  .quick-command-actions button { min-width:0; padding:0 9px; font-size:12px; }
  .command-composer-modal { width:100%; max-height:92vh; border-radius:24px 24px 0 0; }
  .command-box.command-box-modal { grid-template-columns:1fr; margin:12px; }
  .command-box-modal .command-side { display:grid; grid-template-columns:1fr 1fr; }
  .command-box-modal .project-select,.command-box-modal .command-file-status { grid-column:1 / -1; }
  .command-box-modal textarea { min-height:170px; }
  .campus-map { min-height:335px; margin:7px 8px 0; }
  .campus-building { transform:scale(.86); transform-origin:center center; }
  .campus-building.hq { transform:translateX(-50%) scale(.88); top:105px; }
  .campus-building.planning{left:0;top:178px}.campus-building.meeting{right:0;top:178px}.campus-building.studio{left:10%;top:50px}.campus-building.operations{right:10%;top:50px}.campus-building.analytics{bottom:2px;transform:translateX(-50%) scale(.85)}
  .tycoon-workspace-grid { grid-template-columns:1fr; }
  .tycoon-workspace-grid[data-space-tab="office"] .meeting-room-card { display:none; }
  .tycoon-workspace-grid[data-space-tab="meeting"] .office-scene-card { display:none; }
  .office-scene { grid-template-columns:repeat(3,1fr); min-height:390px; }
  .production-room { grid-template-columns:repeat(5,minmax(72px,1fr)); overflow-x:auto; justify-content:start; }
  .production-station { min-width:72px; }
}

/* Fold/tablet: use the unfolded screen as a control room */
@media (min-width: 760px) {
  .command-composer-backdrop { align-items:center; }
  .command-composer-modal { border-radius:22px; max-height:82vh; }
  .campus-map { min-height:440px; }
  .tycoon-workspace-grid { grid-template-columns:minmax(0,1.25fr) minmax(320px,.9fr); }
  .office-scene,.meeting-room { min-height:390px; }
  .tycoon-space-tabs { display:none; }
}

/* v10.2.1 — tycoon mobile nav consistency hotfix
   Keep desktop/sidebar tycoon selection styling, but make the phone bottom bar
   match every other UI mode: compact text emphasis with a very light background. */
@media (max-width: 760px) {
  .ui-mode-tycoon .mobile-nav .nav-button,
  .ui-mode-tycoon .mobile-nav .nav-button:hover {
    min-height: 54px;
    color: #667085;
    background: transparent;
    box-shadow: none;
  }
  .ui-mode-tycoon .mobile-nav .nav-button.active,
  .ui-mode-tycoon .mobile-nav .nav-button.active:hover {
    color: #1d4ed8;
    background: #eff4ff;
    box-shadow: none;
  }
}

/* v11 — integrated studio, real platform identity, and HQ interior */
.hq-exterior-v11{position:relative;min-height:390px;margin:10px 14px 0;border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#91c7ff 0 49%,#b7dfa8 49% 100%);box-shadow:inset 0 -28px 50px rgba(61,105,66,.12);perspective:1000px}
.hq-exterior-v11::before{content:"";position:absolute;left:5%;right:5%;bottom:2%;height:36%;border-radius:50% 50% 10% 10%;background:linear-gradient(180deg,#9fd58e,#83c477)}
.hq-main-building{position:absolute;z-index:3;left:50%;top:46%;width:min(340px,68%);height:245px;transform:translate(-50%,-50%);border:0;background:transparent;color:#16355c;text-align:center;cursor:pointer}
.hq-main-building .hq-tower{position:absolute;left:27%;right:27%;top:24px;bottom:56px;background:linear-gradient(145deg,#f6fbff,#d9e8f2);border:2px solid #7196b4;box-shadow:15px 14px 0 #adc5d5,0 18px 28px rgba(42,78,106,.18);border-radius:5px}
.hq-main-building .hq-roof{position:absolute;z-index:4;left:24%;right:23%;top:12px;height:34px;background:linear-gradient(145deg,#315d92,#21456f);transform:skewX(-16deg);border-radius:5px 5px 2px 2px;box-shadow:9px 8px 0 #183655}
.hq-main-building .hq-wing{position:absolute;top:83px;width:29%;height:101px;background:linear-gradient(145deg,#eef8fd,#cfdee8);border:2px solid #7797ad;box-shadow:11px 10px 0 #adc2d0;border-radius:4px}.hq-main-building .hq-wing.left{left:3%;transform:skewY(-8deg)}.hq-main-building .hq-wing.right{right:3%;transform:skewY(8deg)}
.hq-main-building .hq-wing i{display:inline-block;width:28%;height:24px;margin:21px 5%;background:linear-gradient(180deg,#7ac4e8,#2f87bd);border:2px solid #497d9d;border-radius:2px}
.hq-main-building .window{position:absolute;width:24%;height:29px;background:linear-gradient(180deg,#8bd0ef,#378fc0);border:2px solid #4f809e;border-radius:2px}.hq-main-building .w1{left:10%;top:42px}.hq-main-building .w2{left:38%;top:42px}.hq-main-building .w3{right:10%;top:42px}.hq-main-building .w4{left:10%;top:84px}.hq-main-building .w5{right:10%;top:84px}.hq-main-building .w6{left:38%;top:84px}
.hq-main-building .hq-door{position:absolute;left:39%;width:22%;height:39px;bottom:0;background:linear-gradient(90deg,#275e8a 49%,#397aa7 49%);border:2px solid #1f4c72}.hq-main-building .hq-logo{position:absolute;z-index:4;left:50%;top:7px;transform:translateX(-50%);font-style:normal;font-size:16px;font-weight:950;color:#153f6f;letter-spacing:1px}
.hq-main-building .hq-steps{position:absolute;z-index:2;left:31%;right:29%;bottom:43px;height:18px;background:#d9e0e4;box-shadow:0 7px 0 #bdc8cf,0 14px 0 #aab7c0;transform:perspective(90px) rotateX(48deg)}
.hq-main-building>strong{position:absolute;z-index:7;left:50%;bottom:15px;transform:translateX(-50%);white-space:nowrap;font-size:16px}.hq-main-building>small{position:absolute;z-index:7;left:50%;bottom:-7px;transform:translateX(-50%);white-space:nowrap;font-size:11px;color:#49647c}.hq-main-building>em{position:absolute;z-index:7;right:2%;bottom:8px;padding:7px 9px;border-radius:999px;background:#fff;color:#2862a8;font-style:normal;font-size:11px;font-weight:900;box-shadow:0 4px 14px rgba(35,79,125,.16)}
.hq-landscape .tree{position:absolute;z-index:2;width:28px;height:52px;background:#5b9d4e;border-radius:50% 50% 43% 43%;box-shadow:0 14px 0 -11px #895e42}.hq-landscape .t1{left:9%;bottom:17%}.hq-landscape .t2{left:18%;bottom:9%}.hq-landscape .t3{right:11%;bottom:16%}.hq-landscape .t4{right:20%;bottom:7%}.hq-landscape .driveway{position:absolute;z-index:1;left:44%;bottom:-8%;width:16%;height:43%;background:#e9dfca;transform:perspective(200px) rotateX(35deg);border-radius:40% 40% 0 0}
.hq-skyline{position:absolute;left:5%;right:5%;top:8%;display:flex;justify-content:space-between;opacity:.12}.hq-skyline i{width:18%;height:70px;background:#24618e;border-radius:5px}.hq-skyline i:nth-child(2){height:95px}
.hq-interior-shell{margin:10px 14px 0;padding:12px;border-radius:24px;background:linear-gradient(155deg,#e7f1fa,#d1dde6);border:1px solid #bfcfdb;box-shadow:inset 0 1px #fff}
.hq-interior-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 5px 12px}.hq-interior-head div{display:grid;gap:2px}.hq-interior-head span{font-size:10px;color:#697d90;font-weight:800;letter-spacing:.05em}.hq-interior-head strong{font-size:16px;color:#203c58}
.hq-cutaway{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hq-room{position:relative;min-height:150px;padding:8px;border:1px solid #bdcad6;border-radius:14px;background:linear-gradient(145deg,#fbfdff,#e6edf3);box-shadow:5px 6px 0 rgba(117,139,158,.17);color:#27415a;text-align:left;overflow:hidden}.hq-room:hover,.hq-room.occupied{border-color:#6a9ac2}.hq-room>strong,.hq-room>small{position:relative;z-index:5;display:block}.hq-room>strong{font-size:14px;margin-top:102px}.hq-room>small{font-size:10px;color:#738394;margin-top:2px}.room-architecture{position:absolute;left:7px;right:7px;top:7px;height:92px;perspective:500px}.room-floor{position:absolute;inset:24px 4px 0;background:linear-gradient(145deg,#d8e1e8,#becbd4);transform:skewY(-4deg);border-radius:7px}.room-wall{position:absolute;background:#f6fbfe;border:1px solid #c0d0dc}.wall-a{left:4px;right:36%;top:5px;height:48px;transform:skewY(-4deg)}.wall-b{right:4px;width:37%;top:10px;height:46px;transform:skewY(10deg)}.room-table{position:absolute;left:30%;right:30%;top:43px;height:25px;border-radius:50%;background:#9b7357;transform:rotateX(54deg);box-shadow:0 7px 4px rgba(84,64,50,.17)}
.hq-room.strategy .room-table{background:#567ca4}.hq-room.meeting .room-table{left:22%;right:22%;background:#8c694f}.hq-room.production .room-table{border-radius:4px;background:#48657f}.hq-room.operations .room-table{background:#4e8a73}.hq-room.analytics .room-table{background:#7a6da4}.hq-room.development .room-table{background:#59697a}
.room-person{position:absolute;z-index:4;transform:scale(.48);transform-origin:bottom center}.room-person.person-1{left:13%;top:36px}.room-person.person-2{right:13%;top:36px}.room-person.person-3{left:34%;top:20px}.room-person.person-4{right:34%;top:57px}.hq-interior-note{padding:10px 5px 2px;color:#687b8d;font-size:11px;line-height:1.45}

/* real service identity */
.platform-mark{display:inline-grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:7px;background:#eef2f7;color:#40526b;vertical-align:middle}.platform-mark svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.platform-mark.youtube{background:#fff0f0;color:#e33434}.platform-mark.youtube svg rect{fill:#e33434;stroke:#e33434}.platform-mark.youtube svg path{fill:#fff;stroke:#fff}.platform-mark.instagram{background:#f7efff;color:#8b49bf}.platform-mark.threads{background:#eff0f2;color:#222}.platform-mark.blog{background:#eff9f2;color:#2b8655}.platform-mark.app{background:#eef4ff;color:#3569c6}
.operating-card-identity{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.operating-card-identity>div{min-width:0;display:grid;gap:2px}.operating-card-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.operating-card-identity small{color:#8893a2;font-size:11px}.platform-line{display:flex!important;align-items:center;gap:5px!important;color:#617089!important;font-size:10px!important;font-weight:800}.platform-line .platform-mark{width:17px;height:17px;flex-basis:17px;border-radius:5px}.platform-line svg{width:12px;height:12px}
.operating-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;overflow:hidden;background:#f1f4f8;border:1px solid #e2e8ef}.operating-avatar.large{width:72px;height:72px;border-radius:20px}.operating-avatar img{width:100%;height:100%;object-fit:cover}.operating-avatar .platform-mark{width:100%;height:100%;border-radius:0}.operating-avatar .platform-mark svg{width:48%;height:48%}
.operating-connection{margin:9px 0 7px;padding:6px 8px;border-radius:9px;background:#fff6e9;color:#8b6525;font-size:10px;font-weight:800}.operating-connection.connected{background:#eaf8ef;color:#27754c}
.profile-head{align-items:center}.profile-identity{display:flex;align-items:center;gap:13px;min-width:0}.profile-identity>div{min-width:0}.profile-identity>div>span{display:flex;align-items:center;gap:6px}.profile-handle{color:#60718a!important;font-weight:700}.profile-identity>div>small{display:block;margin-top:5px;color:#7f8b9b}
.youtube-connection-card{margin-top:14px;padding:13px;border:1px solid #efdec1;border-radius:14px;background:#fffaf1}.youtube-connection-card.connected{background:#f2fbf5;border-color:#cae8d6}.youtube-connection-card>div:first-child{display:flex;align-items:center;gap:10px}.youtube-connection-card>div:first-child>div{display:grid;gap:2px}.youtube-connection-card small{color:#768294}.connection-error{margin:8px 0 0;color:#a04444;font-size:11px}.youtube-connection-card .operating-actions{margin-top:10px}
.youtube-top-videos{margin-top:14px;padding:14px;border:1px solid #e7ebf2;border-radius:15px;background:#fff}.youtube-video-list{display:grid;gap:7px}.youtube-video-row{display:grid;grid-template-columns:78px minmax(0,1fr);gap:10px;align-items:center;padding:7px;border:0;border-radius:10px;background:#f8fafc;text-align:left}.youtube-video-row img{width:78px;aspect-ratio:16/9;object-fit:cover;border-radius:7px}.youtube-video-row div{min-width:0;display:grid;gap:3px}.youtube-video-row strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.youtube-video-row small{color:#798699}.video-rank{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eef3fb;color:#315f9d;font-weight:900}
.channel-inspection-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #cfe3d7;border-radius:14px;background:#f4fbf6}.channel-inspection-card>div{display:grid;gap:2px}.channel-inspection-card>div span,.channel-inspection-card>div small{color:#718092}.channel-inspection-card>b{color:#267751;font-size:12px}.inline-input-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.connect-help{padding:10px;border-radius:10px;background:#f7f8fa;color:#728095;font-size:11px}

/* integrated production studio */
.production-health.integrated{border-color:#cfe4da;background:#f5fbf8}.integrated-studio-banner{background:linear-gradient(135deg,#eef7ff,#f3fbf6)}.production-inline-note{align-self:center;color:#758196;font-size:11px}.scene-card{grid-template-columns:40px minmax(0,1fr) auto}.scene-ready-dot{width:9px;height:9px;border-radius:50%;background:#c8ced7}.scene-ready-dot.ready{background:#37a36e}.scene-media-preview{display:grid;gap:7px}.scene-media-preview img,.scene-media-preview video{width:100%;max-height:270px;object-fit:contain;border-radius:12px;background:#111}.scene-media-preview.image img{background:#eef1f4}.scene-upload-box{display:grid;gap:4px;padding:14px;border:1.5px dashed #aebdd0;border-radius:13px;background:#f8fafc;color:#355675;cursor:pointer}.scene-upload-box.video{border-color:#9b8cd0;background:#faf8ff}.scene-upload-box span{font-size:11px;color:#788698}.production-upload-progress{display:block;margin-top:5px;color:#275dcc!important;font-weight:900;font-variant-numeric:tabular-nums}.replace-media{justify-self:start}.scene-prompt-box textarea,.scene-note-field textarea{width:100%;resize:vertical;border:1px solid #dce3eb;border-radius:10px;padding:10px;background:#fff;color:#36455a;font:inherit;line-height:1.5}.scene-prompt-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.scene-prompt-actions .magnific-button{width:auto}.scene-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.scene-edit-grid label,.scene-note-field{display:grid;gap:5px;color:#64738a;font-size:11px;font-weight:800}.scene-edit-grid label:last-child{grid-column:1/-1}.scene-edit-grid input,.scene-edit-grid select{width:100%;padding:9px 10px;border:1px solid #dce3eb;border-radius:9px;background:#fff;color:#34445a;font:inherit}.primary-button.full{width:100%}

@media(max-width:700px){
  .hq-exterior-v11{min-height:320px;margin:7px 8px 0}.hq-main-building{width:82%;height:220px;top:48%}.hq-main-building>small{font-size:9px}.hq-main-building>em{right:0;font-size:9px}.hq-cutaway{grid-template-columns:1fr 1fr}.hq-room{min-height:132px}.hq-room>strong{margin-top:87px}.room-architecture{height:80px}.profile-head{display:grid}.profile-identity{align-items:flex-start}.operating-actions{width:100%}.operating-actions button{flex:1 1 auto}.inline-input-action{grid-template-columns:1fr}.channel-inspection-card{grid-template-columns:auto minmax(0,1fr)}.channel-inspection-card>b{grid-column:2}.scene-edit-grid{grid-template-columns:1fr}.scene-edit-grid label:last-child{grid-column:auto}.scene-prompt-actions{grid-template-columns:1fr}.youtube-video-row{grid-template-columns:70px minmax(0,1fr)}.youtube-video-row img{width:70px}
}
@media(min-width:760px){.hq-exterior-v11{min-height:430px}.hq-main-building{width:430px;height:280px}.hq-cutaway{grid-template-columns:repeat(3,minmax(0,1fr))}.hq-room{min-height:170px}.hq-room>strong{margin-top:118px}}

/* v12 — reusable platform connector framework */
.platform-connection-card{margin-top:14px;padding:13px;border:1px solid #dce6f0;border-radius:14px;background:#f8fbff}.platform-connection-card.connected{background:#f4fbf7;border-color:#cfe6d8}.platform-connection-card>div:first-child{display:flex;align-items:center;gap:10px}.platform-connection-card>div:first-child>div{display:grid;gap:2px}.platform-connection-card small{color:#758398}.platform-connection-card .operating-actions{margin-top:10px}.platform-capability-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.platform-capability-row span{padding:5px 7px;border-radius:999px;background:#edf3f8;color:#5e7084;font-size:10px;font-weight:800}.connector-note{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px;padding:8px 10px;border-radius:10px;background:#f7f9fc;color:#6c788b;font-size:11px}.connector-note span{font-weight:900;color:#43546b}.custom-platform-entry{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0 2px;color:#788598;font-size:11px}.custom-platform-entry .text-button{border:0;background:transparent;color:#315f9d;font-weight:900;cursor:pointer}.metric-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.platform-mark.generic{background:#eef3f7;color:#4c6075}.platform-mark.blog{background:#eef8f1}.platform-mark.app{background:#eef4ff}.operating-item-card .operating-connection{white-space:normal}
@media(max-width:700px){.connector-note,.custom-platform-entry{align-items:flex-start;flex-direction:column}.metric-form-grid{grid-template-columns:1fr}}

/* v12.1 — stable header, OAuth guidance, image proxy UI and rebuilt 2.5D headquarters */
.topbar{
  position:sticky!important;top:0!important;z-index:80!important;
  min-width:0!important;overflow:visible!important;
  background:rgba(247,249,252,.96)!important;
  border-bottom:1px solid rgba(190,201,216,.72)!important;
  backdrop-filter:blur(16px) saturate(1.15)!important;
}
.topbar>div:first-child{min-width:0}.top-actions{position:relative;z-index:81;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex:0 0 auto!important;margin-left:auto!important;overflow:visible!important}
.top-actions .ui-settings-button,.top-actions .refresh-button{
  position:relative!important;inset:auto!important;visibility:visible!important;opacity:1!important;
  width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;
  display:grid!important;place-items:center!important;padding:0!important;flex:0 0 42px!important;
  color:#24364b!important;background:#fff!important;border:1px solid #aebdce!important;border-radius:11px!important;
  box-shadow:0 5px 14px rgba(36,54,75,.11)!important;
}
.top-actions .ui-settings-button svg,.top-actions .refresh-button svg{display:block!important;width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.top-actions .ui-settings-button:active,.top-actions .refresh-button:active{transform:translateY(1px) scale(.98)}
.ui-mode-control .topbar{background:rgba(9,22,34,.97)!important;border-color:#294257!important}.ui-mode-control .top-actions .ui-settings-button,.ui-mode-control .top-actions .refresh-button{background:#132a3d!important;color:#eff9ff!important;border-color:#45617a!important}

.tycoon-hq-v4{display:grid;gap:12px;padding:0 0 16px;overflow:hidden;background:linear-gradient(155deg,#eef4f6,#dfe9ed);border:1px solid #c8d4da;border-radius:24px;box-shadow:0 18px 36px rgba(44,69,79,.09)}
.tycoon-command-bar{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:center;gap:16px;padding:16px 18px 0}.tycoon-command-bar .tycoon-level{position:static;width:min(280px,100%)}.tycoon-command-bar .tycoon-resources{position:static;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.tycoon-command-bar .tycoon-resources span{white-space:nowrap}
.hq-exterior-v12{position:relative;min-height:390px;margin:0 14px;border-radius:20px;overflow:hidden;background:linear-gradient(180deg,#c7e2e9 0 58%,#9ebe9f 58%);border:1px solid rgba(87,117,124,.25);box-shadow:inset 0 1px rgba(255,255,255,.7)}
.hq-exterior-v12::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.32),transparent 36%),repeating-linear-gradient(90deg,transparent 0 79px,rgba(62,104,112,.045) 80px);pointer-events:none}
.hq-main-building-v12{position:absolute;inset:10px;display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,230px);align-items:center;gap:8px;width:calc(100% - 20px);padding:10px 18px;border:0;background:transparent;color:#213b49;text-align:left;cursor:pointer}.hq-main-building-v12:focus-visible{outline:3px solid #2d6f8a;outline-offset:-4px;border-radius:16px}.hq-main-building-v12:active .hq-building-illustration{transform:translateY(2px) scale(.995)}
.hq-building-illustration{width:100%;height:305px;overflow:visible;filter:drop-shadow(0 18px 16px rgba(42,67,72,.18));transition:transform .25s cubic-bezier(.2,.8,.2,1)}.hq-shadow{fill:rgba(45,68,70,.18)}.hq-side{fill:#9cadb4;stroke:#607985;stroke-width:2}.hq-front-face{stroke:#738d98;stroke-width:2}.hq-upper{fill:#e8f0f2;stroke:#718995;stroke-width:2}.hq-roof-svg{fill:#344e5e}.hq-entry{fill:#315d70;stroke:#203f4d;stroke-width:2}.hq-awning{fill:#d19a55}.hq-step{fill:#c9d2d3}.hq-step.s2{fill:#abb9bb}.hq-logo-panel{fill:#263e4d}.hq-building-illustration text{font:800 12px system-ui,sans-serif;letter-spacing:1.4px;fill:#fff}.hq-landscape-svg path:first-child,.hq-landscape-svg path:nth-child(2){fill:#739978}.hq-landscape-svg circle{fill:#4f7e5f}.hq-landscape-svg path{stroke:#5a6f5d;stroke-width:3;fill:none}.hq-landscape-svg .hq-walk{fill:#d7ceb9;stroke:none}.hq-glass-grid path{stroke:#284f60;stroke-width:1.2}
.hq-building-copy{display:grid;align-content:center;gap:8px;padding:20px;border:1px solid rgba(111,137,146,.35);border-radius:18px;background:rgba(247,250,250,.86);box-shadow:inset 0 1px rgba(255,255,255,.92),0 14px 30px rgba(39,62,70,.1);backdrop-filter:blur(10px)}.hq-building-copy strong{font-size:22px;line-height:1.2;color:#243c49}.hq-building-copy small{font-size:12px;line-height:1.55;color:#61747d}.hq-building-copy em{justify-self:start;margin-top:5px;padding:9px 12px;border-radius:9px;background:#2f6075;color:#fff;font-style:normal;font-size:11px;font-weight:850}
.tycoon-guidance{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin:0 18px;padding:10px 12px;border-top:1px solid #cad6da;border-bottom:1px solid #cad6da;color:#465e69}.tycoon-guidance span{padding:5px 8px;border-radius:7px;background:#365b6c;color:#fff;font-size:10px;font-weight:850}.tycoon-guidance strong{font-size:12px;line-height:1.45}
.tycoon-hq-v4 .tycoon-mission{position:static;margin:0 18px;display:grid;grid-template-columns:minmax(150px,1.15fr) repeat(3,minmax(0,1fr));gap:8px}.tycoon-hq-v4 .tycoon-mission>strong{align-self:center;padding-left:2px}.tycoon-hq-v4 .tycoon-mission button{min-width:0}

.hq-interior-shell{margin:0 14px;padding:16px;border-radius:20px;background:#dce6e9;border:1px solid #b6c6cc;box-shadow:inset 0 1px #fff}
.hq-interior-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:0 0 14px}.hq-interior-head div{display:grid;gap:3px}.hq-interior-head span{color:#5c7480}.hq-interior-head strong{font-size:18px}.hq-interior-head small{color:#71858e;font-size:11px;line-height:1.5}
.hq-cutaway{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hq-room{position:relative;display:grid;grid-template-rows:minmax(145px,1fr) auto;min-width:0;min-height:215px;padding:0;border:1px solid #9fb2ba;border-radius:16px;background:#f4f7f7;color:#263f4b;text-align:left;overflow:hidden;box-shadow:0 9px 0 rgba(92,113,121,.13),0 18px 28px rgba(55,79,86,.08);transition:transform .22s cubic-bezier(.2,.8,.2,1),border-color .22s}.hq-room:hover{transform:translateY(-2px);border-color:#4f7d8f}.hq-room:active{transform:translateY(1px)}.hq-room.occupied{border-color:#4f8b78;box-shadow:0 9px 0 rgba(64,113,94,.14),0 18px 28px rgba(55,79,86,.08)}
.room-architecture{position:relative;inset:auto;height:auto;min-height:145px;overflow:hidden;background:linear-gradient(180deg,#d8e6ea,#c8d5d8);perspective:none}.room-scene{display:block;width:100%;height:150px}.iso-wall{fill:#f5f8f8;stroke:#9fb0b5;stroke-width:1.2}.wall-right{fill:#dce5e6}.iso-floor{stroke:#9eafb4;stroke-width:1.2}.floor-seam{fill:none;stroke:rgba(104,127,133,.2);stroke-width:1}.room-furniture .board,.room-furniture .display,.ops-board,.chart-board{fill:#d6e5e8;stroke:#587783;stroke-width:1.5}.board-line,.display-line,.screen-line,.code-line{fill:none;stroke:#52717d;stroke-width:2;stroke-linecap:round}.note.n1,.ops-card.c1{fill:#d7a65b}.note.n2,.ops-card.c2{fill:#75a986}.ops-card.c3{fill:#7999bd}.desk-top,.studio-desk,.console-desk,.analyst-desk,.dev-desk{fill:#a77c59;stroke:#6d523f;stroke-width:1.3}.desk-edge{fill:#7c5e48}.desk-edge.side{fill:#8d6a50}.table-item{fill:#d3e4e5}.meeting-table-svg{fill:#88664d}.chairs path{fill:#59707b;stroke:#3e555f}.monitor,.code-screen,.console-screen{fill:#293f4a;stroke:#152b35;stroke-width:1.5}.timeline{fill:#344d59}.timeline-cut{stroke:#d69c55;stroke-width:2}.studio-light{fill:#f2d18b;stroke:#8b7346}.light-stand{stroke:#52656c;stroke-width:2}.ops-card{stroke:#fff;stroke-width:1}.status-light,.rack-light{fill:#d79b57}.status-light.ok,.rack-light.ok{fill:#62a579}.chart-grid{fill:none;stroke:rgba(76,105,116,.25);stroke-width:1}.chart-line{fill:none;stroke:#3d7e8f;stroke-width:3}.report-stack{fill:#f4f0e4;stroke:#9c8e72}.server-rack{fill:#435863;stroke:#263e49}.hq-room.strategy .room-architecture{background:#d9e7ee}.hq-room.meeting .room-architecture{background:#e6dfd6}.hq-room.production .room-architecture{background:#d5e2e8}.hq-room.operations .room-architecture{background:#d9e7df}.hq-room.analytics .room-architecture{background:#e0ddea}.hq-room.development .room-architecture{background:#d9e0e4}
.hq-room-copy{display:grid;gap:3px;padding:11px 48px 12px 13px;border-top:1px solid #d4dddf;background:rgba(255,255,255,.85)}.hq-room-copy strong{font-size:14px}.hq-room-copy small{color:#6d7d84;font-size:10px;line-height:1.35}.hq-room-open{position:absolute;right:11px;bottom:14px;padding:4px 6px;border-radius:6px;background:#e5ecee;color:#49626e;font-size:9px;font-weight:850}
.room-person{z-index:5;transform:scale(.43);filter:drop-shadow(0 3px 2px rgba(31,50,57,.2))}.room-person.person-1{left:12%;top:58px}.room-person.person-2{right:12%;top:58px}.room-person.person-3{left:38%;top:44px}.room-person.person-4{right:32%;top:77px}.hq-interior-note{padding:13px 2px 0;color:#5f737c;font-size:11px;line-height:1.5}

.oauth-setup-backdrop{z-index:1900}.oauth-setup-modal{width:min(620px,calc(100vw - 28px));padding:20px}.oauth-setup-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.oauth-setup-head h2{margin:5px 0 0;font-size:22px}.oauth-setup-head .icon-button{flex:0 0 42px}.oauth-setup-steps{display:grid;gap:10px;margin:20px 0;padding-left:22px;color:#425469;line-height:1.55}.oauth-uri-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid #b8c8d6;border-radius:12px;background:#f3f7fa}.oauth-uri-box code{min-width:0;overflow-wrap:anywhere;color:#234e61;font-size:12px}.oauth-setup-note{padding:11px 12px;border-radius:10px;background:#fff7e8;color:#745d32;font-size:11px;line-height:1.55}.oauth-setup-note code{font-weight:800}

@media(max-width:700px){
  .topbar{min-height:64px!important;height:64px!important;margin:0 -8px 10px!important;padding:0 8px!important}.page-title{font-size:22px}.current-ui-label{display:none}.top-actions{gap:6px!important}.top-actions .ui-settings-button,.top-actions .refresh-button{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;flex-basis:40px!important}
  .tycoon-hq-v4{border-radius:18px}.tycoon-command-bar{grid-template-columns:1fr;padding:13px 12px 0;gap:9px}.tycoon-command-bar .tycoon-level{width:100%}.tycoon-command-bar .tycoon-resources{justify-content:stretch;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.tycoon-command-bar .tycoon-resources span{text-align:center}
  .hq-exterior-v12{min-height:360px;margin:0 8px}.hq-main-building-v12{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;align-items:end;padding:4px 8px 10px}.hq-building-illustration{height:240px}.hq-building-copy{position:relative;z-index:3;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:11px 12px}.hq-building-copy strong{font-size:16px}.hq-building-copy small{font-size:10px}.hq-building-copy em{grid-column:2;grid-row:1/3;align-self:center;margin:0;font-size:10px}
  .tycoon-guidance{margin:0 12px}.tycoon-hq-v4 .tycoon-mission{margin:0 12px;grid-template-columns:repeat(3,minmax(0,1fr))}.tycoon-hq-v4 .tycoon-mission>strong{grid-column:1/-1}
  .hq-interior-shell{margin:0 8px;padding:11px}.hq-interior-head{grid-template-columns:1fr}.hq-interior-head button{justify-self:start}.hq-cutaway{grid-template-columns:1fr 1fr;gap:9px}.hq-room{min-height:190px;grid-template-rows:minmax(125px,1fr) auto}.room-architecture{min-height:125px}.room-scene{height:132px}.hq-room-copy{padding:9px 9px 10px}.hq-room-open{display:none}.room-person{transform:scale(.37)}
  .oauth-setup-backdrop{align-items:end;padding:0}.oauth-setup-modal{width:100%;border-radius:20px 20px 0 0;padding:16px 14px calc(16px + env(safe-area-inset-bottom))}.oauth-uri-box{grid-template-columns:1fr}.oauth-uri-box button{width:100%}
}
@media(max-width:430px){.hq-cutaway{grid-template-columns:1fr}.hq-room{grid-template-columns:minmax(130px,.9fr) 1fr;grid-template-rows:1fr;min-height:136px}.room-architecture{min-height:136px}.room-scene{height:136px}.hq-room-copy{align-content:center;border-top:0;border-left:1px solid #d4dddf}.room-person.person-3,.room-person.person-4{display:none}}

/* Keep the operating list readable on phones. Earlier horizontal-card rules
   squeezed the section title into a vertical strip beside the card. */
@media(max-width:699px){.operating-list{display:grid;grid-template-columns:minmax(0,1fr);overflow:visible}.operating-item-card{width:100%;max-width:none;flex:none}}
@media(min-width:760px) and (max-width:1180px){.hq-cutaway{grid-template-columns:repeat(2,minmax(0,1fr))}.hq-main-building-v12{grid-template-columns:minmax(0,1fr) 210px}}

/* v12 visual assets: real headquarters, rooms, and state-linked staff sprites. */
.image-hq-exterior{min-height:0!important;background:#f4f7f7!important;overflow:hidden}
.image-hq-exterior::before{display:none!important}
.image-hq-button{position:relative!important;inset:auto!important;width:100%!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(180px,250px)!important;gap:14px!important;padding:14px!important;background:#f4f7f7!important}
.hq-photo-wrap{display:block;min-width:0;overflow:hidden;border-radius:15px;border:1px solid #c6d2d4;background:#fff}
.hq-photo-wrap img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.image-hq-button .hq-building-copy{position:static!important;align-self:center}
.image-room-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.image-room-card{display:grid!important;grid-template-rows:auto auto auto!important;min-height:0!important;background:#fff!important;box-shadow:0 7px 18px rgba(48,72,81,.1)!important}
.room-image-wrap{display:block;overflow:hidden;background:#f7f8f7}
.room-image-wrap img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .25s ease}
.image-room-card:hover .room-image-wrap img{transform:scale(1.025)}
.image-room-card .hq-room-copy{padding:10px 48px 8px 12px;border-top:1px solid #d8e1e2}
.room-agent-strip{display:flex;gap:4px;align-items:center;min-height:34px;padding:4px 10px 8px;overflow:hidden;background:#fff}
.room-agent-strip:empty::after{content:"담당자 대기";color:#87969c;font-size:9px}
.sprite-agent{position:relative;display:inline-flex;align-items:flex-end;gap:5px;min-width:0;padding:3px 5px;border:1px solid rgba(217,225,226,.72);border-radius:9px;background:rgba(255,255,255,.78);color:#334952;text-align:left}
button.sprite-agent{cursor:pointer}.sprite-agent>span{display:grid;min-width:0}.sprite-agent strong{max-width:74px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.sprite-agent small{color:#6d7f86;font-size:8px;white-space:nowrap}
.sprite-figure{display:block;flex:0 0 auto;width:40px;height:110px;background-image:url('/assets/company/office_characters_sprite.png');background-repeat:no-repeat;background-size:1200% 200%;background-position:var(--sprite-a);filter:drop-shadow(0 3px 3px rgba(30,49,54,.3))}
.sprite-agent.compact{padding:1px 3px;border:0;background:transparent}.sprite-agent.compact .sprite-figure{width:28px;height:76px}.sprite-agent.compact>span{display:none}
.sprite-working .sprite-figure{animation:company-sprite-work .9s steps(1,end) infinite}.sprite-meeting .sprite-figure{animation:company-sprite-talk 1.2s steps(1,end) infinite}.sprite-idle .sprite-figure{animation:company-sprite-idle 2.4s steps(1,end) infinite}.sprite-offline{opacity:.48;filter:grayscale(.65)}
.sprite-waiting_approval{border-color:#ddad54;background:#fff9eb}.sprite-waiting_approval::after{content:"!";position:absolute;right:-3px;top:-5px;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:#d9942e;color:#fff;font-size:9px;font-weight:900}
.sprite-error{border-color:#d56c6c;background:#fff2f2}.sprite-error::after{content:"×";position:absolute;right:-3px;top:-5px;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:#c64e4e;color:#fff;font-size:10px;font-weight:900}
@keyframes company-sprite-work{0%,100%{background-position:var(--sprite-b)}50%{background-position:var(--sprite-c)}}
@keyframes company-sprite-talk{0%,100%{background-position:var(--sprite-a)}50%{background-position:var(--sprite-b)}}
@keyframes company-sprite-idle{0%,85%,100%{background-position:var(--sprite-a)}90%{background-position:var(--sprite-b)}}

.company-room-detail{display:grid;gap:14px}.company-room-detail-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px}.company-room-detail-head>div{display:grid;gap:3px}.company-room-detail-head span{color:#55707b;font-size:10px;font-weight:850;letter-spacing:.08em}.company-room-detail-head h3{margin:0;font-size:21px}.company-room-detail-head p{margin:0;color:#6a7b82;font-size:11px}
.company-room-detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,.75fr);gap:13px}.company-room-visual{position:relative;min-width:0;overflow:hidden;border:1px solid #bdcbcf;border-radius:16px;background:#fff}.company-room-visual>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.room-sprite-row{position:absolute;left:4%;right:4%;bottom:3%;display:flex;gap:9px;align-items:flex-end;justify-content:center;min-height:100px;padding:8px 10px;overflow-x:auto;background:transparent}.room-sprite-row .sprite-agent{background:transparent;border:0}.room-empty-staff{align-self:center;color:#334952;font-size:11px;background:rgba(255,255,255,.82);padding:8px;border-radius:10px}.company-room-live{display:grid;align-content:start;gap:7px;padding:12px;border:1px solid #c7d3d6;border-radius:16px;background:#f7f9f9}.company-room-live-head{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 6px}.company-room-live-head span{padding:4px 7px;border-radius:999px;background:#e4ecee;color:#4b6570;font-size:9px;font-weight:850}.company-room-operation{display:grid;gap:3px;padding:10px;border:1px solid #d7e0e2;border-radius:10px;background:#fff;color:#2d434d;text-align:left}.company-room-operation span{font-size:11px;font-weight:800;line-height:1.4}.company-room-operation small{color:#74858c;font-size:9px}.room-empty-work{padding:20px 10px;border:1px dashed #c9d4d7;border-radius:10px;color:#7b8a90;font-size:11px;text-align:center}.company-room-staff-summary{display:grid;gap:3px;margin-top:3px;padding:10px;border-radius:10px;background:#eaf0f1}.company-room-staff-summary strong{font-size:10px}.company-room-staff-summary span{color:#60737b;font-size:9px;line-height:1.5}

.image-workspace-scene{position:relative;overflow:hidden;border:1px solid #ced9dc;border-radius:16px;background:#fff}.image-workspace-scene>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.workspace-sprite-grid{position:absolute;left:4%;right:4%;bottom:3%;display:flex;gap:10px;align-items:flex-end;justify-content:center;min-height:116px;padding:8px 10px;overflow-x:auto;background:transparent}.workspace-sprite-grid .sprite-agent{background:transparent;border:0}.workspace-sprite-grid .meeting-empty-message{position:static;transform:none;margin:auto;padding:10px;color:#334952;background:rgba(255,255,255,.82);box-shadow:none;border-radius:10px}.production-image-scene{overflow:hidden;border:1px solid #d4dddf;border-radius:14px;background:#fff}.production-image-scene img{display:block;width:100%;max-height:440px;aspect-ratio:4/3;object-fit:cover}.production-stage-list{margin-top:10px}

@media(max-width:700px){
  .image-hq-button{grid-template-columns:1fr!important;padding:8px!important}.hq-photo-wrap img{aspect-ratio:4/3}.image-hq-button .hq-building-copy{grid-template-columns:minmax(0,1fr) auto!important}
  .image-room-grid{grid-template-columns:1fr 1fr!important}.image-room-card{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;min-height:0!important}.image-room-card .hq-room-copy{border-left:0!important}.room-image-wrap img{aspect-ratio:4/3}.room-agent-strip{min-height:30px}.sprite-agent.compact .sprite-figure{width:20px;height:56px}
  .company-room-detail-head{grid-template-columns:1fr}.company-room-detail-head button{justify-self:start}.company-room-detail-grid{grid-template-columns:1fr}.company-room-visual>img{aspect-ratio:4/3}.company-room-live{padding:10px}.workspace-sprite-grid{min-height:82px}
}
@media(max-width:430px){.image-room-grid{grid-template-columns:1fr!important}.image-room-card{grid-template-columns:minmax(122px,.9fr) minmax(0,1fr)!important;grid-template-rows:auto auto!important}.image-room-card .room-agent-strip{grid-column:2}.image-room-card .hq-room-copy{align-content:center;border-top:0!important;border-left:1px solid #d8e1e2!important}.room-image-wrap{grid-row:1/3}.room-image-wrap img{height:100%;aspect-ratio:auto}.image-room-card .hq-room-open{display:none}}
@media(min-width:760px) and (max-width:1180px){.image-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-room-detail-grid{grid-template-columns:minmax(0,1.3fr) minmax(220px,.7fr)}}
@media(prefers-reduced-motion:reduce){.sprite-figure,.room-image-wrap img{animation:none!important;transition:none!important}}

/* Notion report connection and safe legacy report wrapping. */
.external-connection-list{display:grid;gap:9px}.external-connection-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 13px;border:1px solid #d8e0e8;border-radius:12px;background:#fff}.external-connection-row>div:first-child{display:grid;gap:3px;min-width:0}.external-connection-row strong{font-size:13px}.external-connection-row small{color:#667085;font-size:11px;overflow-wrap:anywhere}.external-connection-row>span{padding:5px 8px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:10px;font-weight:800}.external-connection-row.connected>span{background:#e8f6ef;color:#18724b}.external-connection-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.external-connection-actions .secondary-button,.external-connection-actions .primary-button{min-height:36px;padding:7px 10px}.secondary-button.danger{color:#a83d3d;border-color:#e6b9b9;background:#fff7f7}.connection-ready{align-self:center;color:#18724b;font-size:11px;font-weight:800}
.notion-report-history,.report-history,.report-history details,.report-history summary,.report-history pre,.operating-memory-layout,.cumulative-card,.memory-card,.operating-latest-report{min-width:0;max-width:100%}.notion-report-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border-bottom:1px solid #e7ebef;background:#fff}.notion-report-row>div{display:grid;gap:3px;min-width:0}.notion-report-row span,.notion-report-row small{color:#667085;font-size:10px}.notion-report-row strong{font-size:13px;overflow-wrap:anywhere;word-break:break-word}.legacy-report summary{display:flex;justify-content:space-between;align-items:center;gap:10px}.legacy-report summary>div{display:grid;gap:3px;min-width:0}.legacy-report summary strong,.legacy-report summary small,.legacy-report summary span{overflow-wrap:anywhere;word-break:break-word}.report-history pre,.legacy-report pre,.memory-card p,.cumulative-card li,.operating-latest-report p{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;overflow-x:hidden}.operating-main,.operating-detail,.operating-detail>*{min-width:0;max-width:100%}
@media(max-width:700px){.external-connection-row{grid-template-columns:1fr}.external-connection-actions{justify-content:flex-start}.external-connection-actions button{flex:1 1 auto}.notion-report-row{grid-template-columns:1fr}.notion-report-row button{width:100%}}

/* Notion reports: the date and title are the link; report bodies stay in Notion. */
.notion-report-row{display:block;padding:0}
.notion-report-title-link{display:grid;width:100%;min-width:0;gap:5px;padding:15px 16px;border:0;background:transparent;color:#17223b;text-align:left;cursor:pointer}
.notion-report-title-link:hover,.notion-report-title-link:focus-visible{background:#f3f6ff;outline:2px solid #3769d5;outline-offset:-2px}
.notion-report-title-link span{color:#667085;font-size:12px;font-weight:700}
.notion-report-title-link strong{font-size:16px;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}
.operating-latest-report>.notion-report-title-link{margin-top:10px;border:1px solid #dce4f3;border-radius:12px;background:#f8faff}

/* Production studio v13: scene details expand directly below the selected card. */
.production-inline-shell{grid-template-columns:minmax(210px,260px) minmax(0,1fr)}
.production-inline-shell .production-detail{max-height:none!important;overflow:visible!important}
.scene-filter-bar{display:flex;gap:7px;overflow:auto;padding:2px 0 8px;scrollbar-width:thin}
.scene-filter-bar button{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:8px 11px;border:1px solid #dfe5ef;border-radius:999px;background:#fff;color:#536177;font-weight:800}
.scene-filter-bar button.active{border-color:#3769d5;background:#eaf1ff;color:#244fae}.scene-filter-bar b{font-size:11px}
.inline-scenes{gap:10px}.scene-accordion-item{min-width:0;border:1px solid #e6eaf1;border-radius:15px;background:#fff;overflow:hidden}.scene-accordion-item>.scene-card{border:0;border-radius:0}.scene-accordion-item>.scene-card.active{background:#f3f7ff}
.scene-card .scene-status{justify-self:end;font-style:normal}.scene-card small b{color:#415a82}.scene-status{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;background:#eef1f5;color:#667085;font-size:11px;font-weight:900;white-space:nowrap}
.scene-status.status-image_ready{background:#e7f0ff;color:#275dc5}.scene-status.status-video_ready{background:#eeeaff;color:#6945bb}.scene-status.status-complete{background:#e4f6ec;color:#24764b}.scene-status.status-error{background:#fff0e3;color:#af4f22}
.scene-work-inline{padding:16px;border-top:1px solid #dfe6f2;background:#fbfcff}.scene-work-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.scene-work-head>div{min-width:0}.scene-media-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.scene-media-compare>.scene-upload-box,.scene-media-compare>.scene-media-preview{min-height:180px;align-content:center}.scene-media-preview>strong{color:#536177;font-size:12px}.scene-media-preview .replace-media{justify-self:start}
.scene-prompt-box.video-prompt{border-color:#cfc1f2;background:#faf8ff}.scene-prompt-box.video-prompt>strong{color:#5f3db4}.scene-prompt-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.scene-connection-details{border:1px solid #e2e7ef;border-radius:13px;background:#fff}.scene-connection-details summary{padding:12px 14px;color:#52617a;font-weight:800;cursor:pointer}.scene-connection-details>div,.scene-connection-details>.scene-note-field{margin:0 14px 12px}.scene-save-actions,.scene-step-nav{display:flex;flex-wrap:wrap;gap:8px}.scene-step-nav button{flex:1 1 140px}.production-safety.compact{padding:9px 11px}.production-safety.compact span{font-size:11px}
@media(max-width:820px){.production-inline-shell{grid-template-columns:1fr}.production-inline-shell .production-project-list{max-height:180px;overflow:auto}.scene-media-compare{grid-template-columns:1fr}.scene-media-compare>.scene-upload-box,.scene-media-compare>.scene-media-preview{min-height:0}.scene-work-inline{padding:12px}.scene-prompt-actions{grid-template-columns:1fr}.scene-step-nav{display:grid;grid-template-columns:1fr 1.35fr}.scene-step-nav button:last-child{display:none}.manual-generation-banner.integrated-studio-banner span{display:none}.production-project-hero h2{font-size:18px}.production-project-hero p{font-size:12px}.scene-card{grid-template-columns:38px minmax(0,1fr) auto;padding:10px}.scene-card strong{font-size:13px}.scene-card small{font-size:11px}.scene-prompt-box textarea{max-height:150px}.scene-connection-details:not([open]){display:block}}
@media(max-width:430px){.scene-work-inline .image-prompt{display:none}.scene-work-head h3{font-size:16px}.scene-status{padding:4px 7px}.scene-filter-bar button{padding:7px 9px}.scene-media-preview img,.scene-media-preview video{max-height:210px}}
.production-pipeline{margin:16px 0;padding:16px;border:1px solid #d9e2f2;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#fff);display:grid;gap:12px}.production-pipeline-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.production-pipeline-head div{display:flex;flex-direction:column;gap:4px}.production-pipeline-head strong{font-size:1.05rem}.production-pipeline-head span{color:#2f5fd0;font-weight:700}.production-pipeline-head small{color:#667085}.production-pipeline-steps{display:flex;flex-wrap:wrap;gap:8px}.production-pipeline-steps span{padding:7px 10px;border-radius:999px;background:#eef2f7;color:#667085;font-size:.82rem}.production-pipeline-steps span.active{background:#e6efff;color:#2458c6}.production-pipeline-steps span.done{background:#e6f7ef;color:#147d4e}.production-pipeline-actions{display:flex;flex-wrap:wrap;gap:8px}.production-pipeline-actions label{cursor:pointer}.production-batch-progress{margin:0;color:#2458c6;font-weight:700}.production-audio-list{display:flex;flex-wrap:wrap;gap:8px;color:#475467;font-size:.82rem}.production-audio-list span{padding:6px 9px;background:#f3f5f8;border-radius:8px}
.production-render-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.production-pipeline-hint{margin:0;color:#667085;font-size:.82rem}
.production-transfer-note{margin:0;color:#596b7a;font-size:.82rem;line-height:1.5}
.production-pipeline-steps button{border:0;padding:8px 12px;border-radius:999px;background:#eef2f7;color:#667085;font:inherit;font-weight:700}.production-pipeline-steps button.active{background:#285fc9;color:#fff}.production-stage-body{display:grid;gap:12px;padding:14px;border-radius:14px;background:#fff;border:1px solid #e7ebf1}.production-stage-body>p{margin:0;color:#596b7a;line-height:1.55}.narration-group-list{display:grid;gap:10px}.narration-group-list article{display:grid;grid-template-columns:36px 1fr;gap:10px;padding:12px;border:1px solid #e5eaf2;border-radius:12px}.narration-group-list article>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eaf1ff;color:#2458c6;font-weight:800}.narration-group-list p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.narration-group-list .secondary-button{display:inline-flex;margin:4px 6px 0 0}.subtitle-instructions{display:grid;gap:7px;font-weight:800}.subtitle-instructions textarea,.subtitle-settings input,.subtitle-settings select{width:100%;box-sizing:border-box}.subtitle-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:12px}.subtitle-settings label{display:grid;gap:5px}.subtitle-preview{display:grid;gap:8px;padding:16px;border-radius:14px;background:#111827;color:white;text-align:center}.subtitle-preview div{font-size:clamp(22px,5vw,46px);font-weight:900;text-shadow:0 2px 4px #000;color:#ffd84d}.scene-media-preview>small{display:block;margin:7px 0;color:#52647b;font-weight:700}
.local-video-meta{display:flex;flex-wrap:wrap;gap:5px 9px;align-items:center;padding:9px 10px;border-radius:10px;background:#eef8f3;color:#365a49;font-size:11px}.local-video-meta b{width:100%;color:#16734a;font-size:13px}.local-video-meta small{width:100%;font-weight:800}.video-thumbnail-placeholder{display:grid;place-items:center;gap:5px;min-height:150px;border-radius:12px;background:#182033;color:#fff;font-size:34px}.video-thumbnail-placeholder small{font-size:11px;color:#c8d2e3}

/* 2026-09-27: one local SVG icon system for every A-H navigation mode. */
.nav-button .nav-icon{display:grid!important;place-items:center!important;flex:0 0 24px;width:24px!important;height:24px!important;line-height:1!important;color:currentColor}
.nav-button .nav-icon svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mobile-nav .nav-button{grid-template-rows:25px auto!important;justify-items:center!important;align-content:center!important;min-width:0!important}
.mobile-nav .nav-button.active{transform:none!important;min-width:0!important;max-width:none!important}
.mobile-nav .nav-button.active .nav-icon,.mobile-nav .nav-button.active>span:last-child{color:currentColor}
@media (min-width:700px) and (max-width:1100px){
  .sidebar{width:168px!important;padding-inline:10px!important}.shell{grid-template-columns:168px minmax(0,1fr)!important}
  .sidebar .nav-button{display:flex!important;justify-content:flex-start!important;place-items:center!important;min-height:48px!important;padding:10px 12px!important;gap:11px!important;text-align:left!important;font-size:12px!important}
}
.push-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.push-status-grid span{display:flex;justify-content:space-between;gap:9px;padding:10px;border:1px solid #dde4ed;border-radius:10px;background:#f8fafc;color:#667085;font-size:11px}.push-status-grid b{color:#25364c}.push-setting-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.push-setting-list .ui-setting-toggle{min-height:52px}.push-setting-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.push-setting-actions button{flex:1 1 150px}
@media(max-width:700px){.push-status-grid,.push-setting-list{grid-template-columns:1fr}.mobile-nav .nav-icon svg{width:23px;height:23px}}

/* 2026-09-27: task details are full content pages instead of backdrop dialogs. */
.task-detail-page{width:100%;max-width:100%;margin:0 0 36px;padding:0 0 clamp(24px,3vw,36px);border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.task-detail-navigation{position:sticky;top:72px;z-index:12;display:flex;margin:-8px 0 20px;padding:8px 0;background:linear-gradient(#fff 72%,rgba(255,255,255,0))}
.task-detail-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 15px;border:1px solid #cfd7e4;border-radius:12px;background:#fff;color:#26364d;font:800 14px/1 -apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;cursor:pointer;box-shadow:0 4px 14px rgba(18,27,50,.08)}
.task-detail-back svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.task-detail-back:focus-visible{outline:3px solid rgba(49,93,206,.24);outline-offset:2px}
.task-detail-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:9px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line,#e2e6ec)}
.artifact-preview-page .artifact-preview-content{box-sizing:border-box;width:100%;max-width:100%;min-height:45vh;margin:18px 0 0;padding:clamp(16px,3vw,28px);overflow-x:hidden;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;border:1px solid var(--line,#e2e6ec);border-radius:18px;background:var(--surface,#fff);font-size:clamp(14px,2vw,18px);line-height:1.75}
.artifact-preview-page .artifact-preview-html{display:block;box-sizing:border-box;width:100%;height:min(72dvh,900px);min-height:480px;margin:18px 0 0;border:1px solid var(--line,#e2e6ec);border-radius:18px;background:#fff}
@media(max-width:740px){.artifact-preview-page .artifact-preview-html{height:72dvh;min-height:420px;border-radius:12px}}
.owner-inline-decisions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:14px}.owner-inline-decisions .approval-button{width:100%;min-height:48px;margin:0}
.ui-mode-control .task-detail-page{background:transparent;color:#e8f3fb}.ui-mode-control .task-detail-navigation{background:linear-gradient(#07111d 72%,rgba(7,17,29,0))}.ui-mode-control .task-detail-back{background:#132538;border-color:#315069;color:#d9f0ff}
@media(max-width:1100px){.task-detail-page{width:calc(100% + 24px);max-width:none;margin:0 -12px calc(82px + env(safe-area-inset-bottom));padding:0 14px 24px}.task-detail-navigation{top:62px;margin:0 0 14px;padding:7px 0}.task-detail-back{min-height:42px;padding:0 13px}.task-detail-page .task-modal-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.task-detail-page .task-modal-head h2{font-size:clamp(21px,4.4vw,32px);line-height:1.35;overflow-wrap:anywhere}.task-detail-actions{display:grid;grid-template-columns:1fr}.task-detail-actions>*{width:100%}.owner-inline-decisions{grid-template-columns:1fr}}

/* 2026-09-28: result follow-up and reversible operating-item lifecycle. */
.result-next-actions{display:grid;gap:12px;margin-top:18px;padding:16px;border:1px solid #dce4f3;border-radius:16px;background:#f8faff}.result-action-grid,.result-action-secondary,.result-followup-buttons,.operating-lifecycle-actions,.operating-list-filters{display:flex;flex-wrap:wrap;gap:8px}.result-action-grid button{flex:1 1 145px}.result-action-secondary{padding-top:10px;border-top:1px solid #e3e8f1}.result-followup-form{display:grid;gap:10px;padding:13px;border:1px solid #dce4f3;border-radius:13px;background:#fff}.result-followup-form textarea,.result-followup-form select{box-sizing:border-box;width:100%;min-height:48px}.result-followup-form small{color:#667085;line-height:1.5}.operating-list-filters{position:sticky;top:0;z-index:2;padding:0 0 6px;background:var(--panel,#fff)}.operating-list-filters .filter-button{flex:1 1 auto;min-height:36px;padding:7px 8px}.operating-state.state-removed,.operating-state.state-trashed{background:#f4e8e8;color:#8b4444}.operating-lifecycle-preview{display:grid;gap:10px;margin:16px 0;padding:15px;border:1px solid #edcf9f;border-radius:14px;background:#fffaf0}.operating-lifecycle-preview h3,.operating-lifecycle-preview p{margin:0}.operating-lifecycle-preview>div:not(.operating-lifecycle-actions){display:grid;gap:4px;padding:10px;border-radius:10px;background:#fff}.operating-lifecycle-preview span{color:#667085;font-size:12px;line-height:1.55}.operating-lifecycle-actions{justify-content:flex-end}
@media(max-width:700px){.result-action-grid,.result-action-secondary,.result-followup-buttons,.operating-lifecycle-actions{display:grid;grid-template-columns:1fr}.result-action-grid button,.result-action-secondary button,.result-followup-buttons button,.operating-lifecycle-actions button{width:100%}.operating-list-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.operating-list-filters .filter-button{min-width:0;font-size:11px}}

/* 2026-09-30: ten user-selectable coded skins. The previous A-H skin choices are retired. */
.ui-skin-clean{--bg:#f5f7fb;--paper:#fff;--ink:#172033;--muted:#6b7485;--line:#e1e6ee;--blue:#1769e0;--radius:16px;--shadow:0 7px 24px rgba(22,43,76,.055)}
.ui-skin-clean .sidebar{background:#fff;color:#172033;border-right:1px solid var(--line)}
.ui-skin-clean .brand-sub,.ui-skin-clean .sidebar-note,.ui-skin-clean .system-line,.ui-skin-clean .nav-button{color:#687386}
.ui-skin-clean .nav-button.active{background:#edf4ff;color:#1769e0;box-shadow:none}
.ui-skin-clean .panel,.ui-skin-clean .quick-command,.ui-skin-clean .owner-action{box-shadow:var(--shadow);border-radius:16px}

.ui-skin-midnight{--bg:#06111d;--paper:#0b1a28;--ink:#eef9ff;--muted:#8ba6b8;--line:#1e3a4d;--blue:#39d7f0;--soft:#102638;--shadow:none}
.ui-skin-midnight .content{background:radial-gradient(circle at 86% 0,rgba(37,163,211,.18),transparent 30%),#06111d;color:var(--ink)}
.ui-skin-midnight .sidebar,.ui-skin-midnight .mobile-nav{background:#071522;color:#dff8ff;border-color:#1d394b}
.ui-skin-midnight .panel,.ui-skin-midnight .quick-command,.ui-skin-midnight .owner-action,.ui-skin-midnight .compact-op,.ui-skin-midnight .approval-card,.ui-skin-midnight .ui-settings-modal{background:#0b1a28;color:var(--ink);border-color:#24485e;box-shadow:none}
.ui-skin-midnight .nav-button.active{background:#123449;color:#65e3f5;box-shadow:inset 3px 0 #39d7f0}

.ui-skin-warm{--bg:#f7f1e7;--paper:#fffaf1;--ink:#30281f;--muted:#766858;--line:#e7dac8;--blue:#9b5f26;--soft:#f5eadb;--radius:20px}
.ui-skin-warm .content{background:linear-gradient(180deg,#fbf6ee,#f5efe5)}
.ui-skin-warm .sidebar{background:#3a2d24}.ui-skin-warm .panel,.ui-skin-warm .quick-command,.ui-skin-warm .owner-action{box-shadow:0 10px 34px rgba(87,62,37,.07)}
.ui-skin-warm .panel-title,.ui-skin-warm .page-title{font-family:Georgia,"Noto Serif KR",serif}

.ui-skin-mono{--bg:#f3f3f3;--paper:#fff;--ink:#050505;--muted:#555;--line:#bdbdbd;--blue:#000;--soft:#ededed;--shadow:none;--radius:8px}
.ui-skin-mono .sidebar{background:#050505}.ui-skin-mono .panel,.ui-skin-mono .quick-command,.ui-skin-mono .owner-action,.ui-skin-mono .approval-card{border:2px solid #111;box-shadow:none;border-radius:8px}
.ui-skin-mono .primary-button,.ui-skin-mono .filter-button.active{background:#000;color:#fff;box-shadow:none}.ui-skin-mono .status-pill{border:1px solid currentColor}

.ui-skin-flow{--bg:#f4f8ff;--paper:#fff;--ink:#172237;--muted:#66728a;--line:#dae3f1;--blue:#146df2;--radius:14px}
.ui-skin-flow .kanban-board{gap:10px}.ui-skin-flow .kanban-column{border-top:4px solid #146df2;background:#eef4ff}.ui-skin-flow .kanban-card{border-left:4px solid #65a0ff}
.ui-skin-flow .compact-op{position:relative;padding-left:28px}.ui-skin-flow .compact-op:before{content:"";position:absolute;left:12px;top:0;bottom:0;width:2px;background:#d1e0fa}

.ui-skin-split{--bg:#f5f6f8;--paper:#fff;--ink:#152035;--muted:#647086;--line:#dce2ea;--blue:#315fd1;--radius:14px}
.ui-skin-split .approval-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:16px;background:#fff;border-color:#cdd8ec}
.ui-skin-split .approval-card>.approval-kind,.ui-skin-split .approval-card>h4,.ui-skin-split .approval-card>p{grid-column:1}
.ui-skin-split .decision-source-report{grid-column:1}.ui-skin-split .approval-options{grid-column:2;grid-row:1/6}

.ui-skin-clearview{--bg:#f7f9fc;--paper:#fff;--ink:#111827;--muted:#596477;--line:#dce3ed;--blue:#075fd8;--radius:18px}
.ui-skin-clearview .page-title{font-size:34px}.ui-skin-clearview .panel-title,.ui-skin-clearview .operation-title-wrap strong{font-size:21px}.ui-skin-clearview .panel-sub,.ui-skin-clearview .operation-row p{font-size:16px;line-height:1.7}
.ui-skin-clearview button{min-height:48px}.ui-skin-clearview .approval-button{font-size:17px;padding:14px 16px}

.ui-skin-compactops{--bg:#eef1f5;--paper:#fff;--ink:#172033;--muted:#687386;--line:#d9dee7;--blue:#2858b8;--radius:8px;--shadow:none}
.ui-skin-compactops .content{padding-inline:20px}.ui-skin-compactops .panel,.ui-skin-compactops .quick-command,.ui-skin-compactops .owner-action{border-radius:8px;box-shadow:none}
.ui-skin-compactops .compact-op,.ui-skin-compactops .operation-row{padding-block:9px}.ui-skin-compactops .panel-head{padding:13px 15px 9px}

.ui-skin-glass{--bg:#dfeaf7;--paper:rgba(255,255,255,.72);--ink:#17233a;--muted:#586982;--line:rgba(255,255,255,.68);--blue:#2567c9;--radius:22px}
.ui-skin-glass .content{background:radial-gradient(circle at 8% 8%,#c5f2df 0,transparent 28%),radial-gradient(circle at 92% 10%,#bcd7ff 0,transparent 32%),#dfeaf7}
.ui-skin-glass .panel,.ui-skin-glass .quick-command,.ui-skin-glass .owner-action,.ui-skin-glass .topbar{background:rgba(255,255,255,.68);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 16px 45px rgba(36,73,116,.11)}
.ui-skin-glass .sidebar,.ui-skin-glass .mobile-nav{background:rgba(25,50,83,.88);backdrop-filter:blur(18px)}

.ui-skin-magazine{--bg:#f4f1ea;--paper:#fff;--ink:#0e1014;--muted:#5f625f;--line:#d8d3c9;--blue:#0d4bd1;--radius:0;--shadow:none}
.ui-skin-magazine .content{background:#f4f1ea}.ui-skin-magazine .page-title{font-size:36px;font-weight:950;letter-spacing:-.07em}.ui-skin-magazine .panel,.ui-skin-magazine .quick-command,.ui-skin-magazine .owner-action{border-width:0 0 3px;border-color:#111;border-radius:0;box-shadow:none}
.ui-skin-magazine .summary-hero,.ui-skin-magazine .editorial-hero{background:#fff;border-left:10px solid #111}.ui-skin-magazine .primary-button{border-radius:0;background:#111;box-shadow:none}

@media(max-width:760px){
  .ui-skin-split .approval-card{display:block}.ui-skin-split .decision-source-report,.ui-skin-split .approval-options{margin-top:12px}
  .ui-skin-clearview .page-title{font-size:29px}.ui-skin-magazine .page-title{font-size:31px}
  .ui-skin-compactops .content{padding-inline:12px}
}
.paperclip-source{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#e9f8f1;color:#08795a;font-size:11px;font-weight:850;white-space:nowrap}.paperclip-source:before{content:"";width:7px;height:7px;border-radius:50%;background:#14a879;flex:0 0 7px}.paperclip-source.is-error{background:#fff0f1;color:#b43e47}.paperclip-source.is-error:before{background:#d84d55}@media(max-width:760px){.paperclip-source:not(.is-error){display:none}.paperclip-source.is-error{position:absolute;right:0;left:auto;top:48px;max-width:min(170px,calc(100vw - 32px));padding:4px 7px;font-size:9px;overflow:hidden;text-overflow:ellipsis}.current-ui-label{display:none}}

/* The Android WebView must never make the whole app wider than the phone. */
html,body,#app,.shell,.content{width:100%;max-width:100%;overflow-x:hidden}
.shell>*,.content>*,.panel,.approval-card,.operation-row,.compact-op,.task-detail-page,.production-shell,.operating-layout{min-width:0;max-width:100%}
pre,code,.decision-source-report div,.detail-block div{max-width:100%;overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap}
@media(max-width:760px){
  .content{padding-left:12px!important;padding-right:12px!important}
  .task-detail-page{width:100%!important;max-width:100%!important;margin:0 0 calc(82px + env(safe-area-inset-bottom))!important;padding-left:0!important;padding-right:0!important}
  .kanban-board{display:grid!important;grid-template-columns:minmax(0,1fr)!important;overflow-x:visible!important;scroll-snap-type:none!important}
  .kanban-column{width:100%!important;min-width:0!important;max-width:100%!important}
  .production-room{grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow-x:hidden!important}
  .production-station{min-width:0!important}
  .checkpoint-list{max-width:100%;overscroll-behavior-inline:contain}
  .top-actions{max-width:50%;justify-content:flex-end}
}

/* Ten coded mobile home screens matching the approved 01-10 concept board. */
.ui-preset-card { isolation:isolate; }
.ui-preset-active { position:absolute; top:15px; right:15px; z-index:3; padding:3px 7px; border-radius:999px; background:#1677ff; color:#fff; font-size:9px; font-weight:850; box-shadow:0 2px 7px rgba(22,119,255,.25); }
.preset-concept { background:#f5f6f8; border-color:#dfe3e9; }
.preset-concept i { position:absolute; display:block; box-sizing:border-box; }
.preset-concept .mini-stats { left:7%; right:7%; top:8%; height:16%; border-radius:3px; background:repeating-linear-gradient(90deg,#fff 0 20%,transparent 20% 25%); }
.preset-concept .mini-title { left:8%; top:31%; width:48%; height:8%; border-radius:3px; background:#162033; }
.preset-concept .mini-choice { top:48%; width:37%; height:25%; border:1px solid #aeb8c8; border-radius:5px; background:#fff; }
.preset-concept .mini-choice.left { left:8%; }.preset-concept .mini-choice.right { right:8%; }
.preset-concept .mini-button { left:8%; right:8%; bottom:7%; height:10%; border-radius:4px; background:#087cff; }
.pv-02 { background:#061725; border-color:#18394d; }
.pv-02 .mini-stats { background:repeating-linear-gradient(90deg,#0d2a3d 0 20%,transparent 20% 25%); }
.pv-02 .mini-title { background:#e9fbff; box-shadow:0 0 7px #39e1e5; }
.pv-02 .mini-choice { background:#0c2434; border-color:#1fe0df; }.pv-02 .mini-button { background:#1fe0df; }
.pv-03 { background:#f7f3ec; }
.pv-03 .mini-hero { inset:0 0 auto 0; height:38%; background:linear-gradient(110deg,#908b7f,#d7d1c4 48%,#74846d); }
.pv-03 .mini-stats { top:43%; background:repeating-linear-gradient(90deg,#fffdf8 0 20%,transparent 20% 25%); }
.pv-03 .mini-card { left:7%; right:7%; top:64%; bottom:7%; border-radius:6px; background:#fffdf8; border:1px solid #ded5c5; }
.pv-03 .mini-button { left:13%; right:13%; bottom:11%; background:#322b25; }
.pv-04 { background:#fff; }
.pv-04 .mini-stats { background:repeating-linear-gradient(90deg,#f1f1f1 0 20%,transparent 20% 25%); }
.pv-04 .mini-black { left:7%; right:7%; top:30%; height:22%; background:#080808; border-radius:4px; }
.pv-04 .mini-row { left:7%; right:7%; height:14%; border:1px solid #161616; border-radius:4px; background:#fff; }.pv-04 .mini-row.a{top:59%}.pv-04 .mini-row.b{top:78%}
.pv-05 { background:#fbfbfc; }
.pv-05 .mini-line { left:14%; top:12%; bottom:10%; width:2px; background:#b8d9ff; }
.pv-05 .mini-dot { left:11%; width:8%; aspect-ratio:1; border-radius:50%; background:#087cff; }.pv-05 .mini-dot.a{top:17%}.pv-05 .mini-dot.b{top:46%;background:#9555e8}.pv-05 .mini-dot.c{top:75%;background:#ff8b37}
.pv-05 .mini-row { left:25%; right:7%; height:17%; border-radius:5px; background:#fff; border:1px solid #e2e5e9; }.pv-05 .mini-row.a{top:13%}.pv-05 .mini-row.b{top:42%}.pv-05 .mini-row.c{top:71%}
.pv-06 { background:#fff; }.pv-06 .mini-title{top:9%;width:58%}.pv-06 .mini-image{top:27%;width:39%;height:36%;border-radius:5px;background:linear-gradient(145deg,#9dc3e9,#e5eef6)}.pv-06 .mini-image.left{left:7%}.pv-06 .mini-image.right{right:7%;background:linear-gradient(145deg,#ded1b8,#f2eee7)}.pv-06 .mini-details{left:7%;right:7%;bottom:8%;height:21%;border:1px solid #dfe3e8;border-radius:5px}
.pv-07 { background:#fff; }.pv-07 .mini-stats{background:repeating-linear-gradient(90deg,#f1f4f8 0 20%,transparent 20% 25%)}.pv-07 .mini-title{top:30%;width:66%}.pv-07 .mini-choice-row{left:7%;right:7%;height:21%;border:1px solid #cbd2db;border-radius:6px;background:#fff}.pv-07 .mini-choice-row.a{top:46%;box-shadow:inset 5px 0 #087cff}.pv-07 .mini-choice-row.b{top:72%}
.pv-08 { background:#fff; }.pv-08 .mini-stats{background:repeating-linear-gradient(90deg,#e7f5eb 0 20%,transparent 20% 25%)}.pv-08 .mini-black{left:6%;right:6%;top:29%;height:18%;border-radius:3px;background:#101010}.pv-08 .mini-op{left:8%;right:8%;height:10%;border-bottom:1px solid #d7dce3;background:linear-gradient(90deg,#36bd77 0 6%,transparent 6%)}.pv-08 .mini-op.a{top:55%}.pv-08 .mini-op.b{top:69%;background:linear-gradient(90deg,#915ce6 0 6%,transparent 6%)}.pv-08 .mini-op.c{top:83%;background:linear-gradient(90deg,#ff943d 0 6%,transparent 6%)}
.pv-09 { background:linear-gradient(145deg,#47799c,#b8d2e0 47%,#e7c5b3); }.pv-09 .mini-glow{inset:0;background:linear-gradient(120deg,rgba(255,255,255,.15),transparent)}.pv-09 .mini-stats{background:repeating-linear-gradient(90deg,rgba(255,255,255,.45) 0 20%,transparent 20% 25%)}.pv-09 .mini-glass-card{left:7%;right:7%;top:34%;height:38%;border:1px solid rgba(255,255,255,.55);border-radius:7px;background:rgba(255,255,255,.38);backdrop-filter:blur(3px)}.pv-09 .mini-row{left:7%;right:7%;bottom:8%;height:13%;border-radius:5px;background:rgba(255,255,255,.55)}
.pv-10 { background:#fff; }.pv-10 .mini-editorial-title{left:7%;top:9%;width:50%;height:20%;background:repeating-linear-gradient(#111 0 5px,transparent 5px 9px)}.pv-10 .mini-photo{right:5%;top:5%;width:34%;height:36%;background:linear-gradient(135deg,#e1ded6,#887c6e);clip-path:polygon(24% 0,100% 0,100% 100%,0 100%)}.pv-10 .mini-dark-card{left:6%;right:6%;top:46%;bottom:7%;border-radius:4px;background:#101318}.pv-10 .mini-choice{top:65%;height:20%;background:#151a20;border-color:#45505b}.pv-10 .mini-choice.left{left:10%}.pv-10 .mini-choice.right{right:10%}
.concept-home{display:grid;gap:12px;width:100%;max-width:100%;margin:0;padding:0 0 18px;color:#101828;box-sizing:border-box}.concept-home button{font:inherit}.concept-home h1,.concept-home h2,.concept-home p{margin:0}.concept-home h1{font-size:22px;line-height:1.25}.concept-home h2{font-size:18px;line-height:1.35}.concept-lead,.concept-focus>p,.concept-editorial-card>p{color:#667085;font-size:12px;line-height:1.55}
.concept-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #e4e7ec;border-radius:12px;background:#fff;overflow:hidden}.concept-stats button{display:grid;gap:2px;min-width:0;padding:11px 5px;border:0;border-right:1px solid #edf0f4;background:transparent;text-align:center;color:inherit}.concept-stats button:last-child{border-right:0}.concept-stats i{font-style:normal;color:#667085;font-size:9px}.concept-stats strong{font-size:17px;line-height:1}.concept-stats small{overflow:hidden;color:#98a2b3;font-size:8px;text-overflow:ellipsis;white-space:nowrap}
.concept-focus{display:grid;gap:10px;padding:16px;border:1px solid #d8e0ea;border-radius:14px;background:#fff}.concept-focus-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.concept-focus-head>span{font-size:11px;font-weight:900}.concept-focus-head>b,.concept-section-head>b{padding:4px 8px;border-radius:999px;background:#fff0f1;color:#e24a58;font-size:9px;white-space:nowrap}.concept-focus>p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.concept-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.concept-choices>button{position:relative;display:grid;gap:3px;min-width:0;padding:11px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;text-align:left;color:#101828}.concept-choices>button:first-child{border-color:#2e79ed;box-shadow:inset 0 0 0 1px #2e79ed}.concept-choices span{color:#2468cf;font-size:9px;font-weight:900}.concept-choices strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.concept-choices small{display:-webkit-box;overflow:hidden;color:#667085;font-size:9px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.concept-choices b{position:absolute;right:9px;top:9px;width:9px;height:9px;border:1.5px solid #98a2b3;border-radius:50%}.concept-choices>button:first-child b{border:3px solid #2e79ed;background:#fff}
.concept-detail{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:39px;padding:9px 12px;border:0;border-radius:8px;background:#1671ea;color:#fff;font-size:11px;font-weight:900}.concept-detail span{font-size:18px;line-height:0}.concept-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 2px}.concept-section-head>strong{font-size:13px}.concept-section-head>button{padding:4px;border:0;background:transparent;color:#667085;font-size:9px;font-weight:800}
.concept-status-list{display:grid;border:1px solid #e4e7ec;border-radius:12px;background:#fff;overflow:hidden}.concept-status-list>button{display:grid;grid-template-columns:24px minmax(0,1fr) auto 10px;align-items:center;gap:7px;min-width:0;padding:10px;border:0;border-bottom:1px solid #edf0f4;background:transparent;text-align:left;color:#101828}.concept-status-list>button:last-child{border-bottom:0}.concept-status-list i{display:grid;place-items:center;width:20px;height:20px;border-radius:5px;background:#e8f2ff;color:#1671ea;font-style:normal;font-size:10px}.concept-status-list i.tone-1{background:#f0e8ff;color:#8647dc}.concept-status-list i.tone-2{background:#fff0df;color:#ed8528}.concept-status-list i.tone-3{background:#e7f8f1;color:#1b9b72}.concept-status-list span{display:grid;min-width:0}.concept-status-list strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.concept-status-list small{color:#98a2b3;font-size:8px}.concept-status-list b{color:#667085;font-size:8px}.concept-status-list em{color:#98a2b3;font-style:normal}.concept-empty{padding:24px 12px;color:#98a2b3;font-size:11px;text-align:center}
.concept-01 .concept-focus{border-color:#b9d2f7;background:linear-gradient(160deg,#fff 0,#f3f7ff 100%)}.concept-01 .concept-focus-head>span{color:#145fc2}
.ui-skin-midnight .content{background:#071520}.concept-02{color:#eef7ff}.concept-02 .concept-stats,.concept-02 .concept-focus,.concept-02 .concept-status-list{border-color:#1f4359;background:#0b1d2a}.concept-02 .concept-stats button{border-color:#17364a}.concept-02 .concept-stats i,.concept-02 .concept-status-list small,.concept-02 .concept-section-head button{color:#92aabe}.concept-02 .concept-stats strong{color:#dff7ff}.concept-02 .concept-focus.neon{border-color:#16d6d0;box-shadow:0 0 0 1px rgba(22,214,208,.25),0 0 20px rgba(22,214,208,.12)}.concept-02 .concept-focus-head>span{color:#20e0d9}.concept-02 .concept-focus>p{color:#a9bdca}.concept-02 .concept-detail{background:#20ded7;color:#001d23}.concept-02 .concept-status-list>button{border-color:#17364a;color:#eef7ff}.concept-02 .concept-status-list b{color:#20ded7}
.concept-03 .concept-photo-hero{position:relative;min-height:118px;overflow:hidden;background:linear-gradient(90deg,rgba(24,20,14,.55),rgba(24,20,14,.05)),url('/assets/company/ai_company_hq.png') center 47%/cover no-repeat}.concept-03 .concept-photo-hero span{position:absolute;left:18px;bottom:17px;color:#fff;font-family:Georgia,'Noto Serif KR',serif;font-size:18px;font-weight:800;line-height:1.35;text-shadow:0 2px 10px rgba(0,0,0,.5)}.concept-03 .concept-focus{border-color:#eadbc9;background:#fffdf9}.concept-03 .concept-detail{background:#30271f}.concept-03 .concept-choices>button:first-child{border-color:#af8d66;box-shadow:inset 0 0 0 1px #af8d66}.concept-03 .concept-choices>button:first-child b{border-color:#af8d66}
.concept-04{gap:8px}.concept-04 .concept-stats{border:0;border-radius:0}.concept-04 .concept-stats strong{font-size:20px}.concept-black-label{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:#111;color:#fff;font-size:10px;font-weight:900}.concept-black-label b{padding:3px 7px;border-radius:999px;background:#ef4b5b;font-size:8px}.concept-04 .concept-focus.flat{padding:10px 0;border:0;border-radius:0}.concept-04 .concept-focus.flat .concept-focus-head{display:none}.concept-04 .concept-focus.flat .concept-choices{grid-template-columns:1fr}.concept-04 .concept-focus.flat .concept-choices>button{display:grid;grid-template-columns:30px minmax(0,1fr) auto;padding:10px 12px;border:1px solid #cfd3d8;border-radius:8px;box-shadow:none}.concept-04 .concept-focus.flat .concept-choices span{grid-row:1/3;color:#111;font-size:10px}.concept-04 .concept-focus.flat .concept-choices b{position:static;grid-column:3;grid-row:1/3;align-self:center}.concept-04 .concept-detail{background:#111}.concept-04 .concept-status-list{border-radius:0;border-right:0;border-left:0}
.concept-05{padding-top:2px}.concept-timeline{display:grid}.concept-timeline>button{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr) auto 10px;align-items:center;gap:7px;min-height:63px;padding:8px 2px;border:0;background:transparent;text-align:left;color:#101828}.concept-timeline>button:before{content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:#dce8f8}.concept-timeline>button:first-child:before{top:50%}.concept-timeline>button:last-child:before{bottom:50%}.concept-timeline i{position:relative;z-index:1;width:11px;height:11px;border:3px solid #4c9cff;border-radius:50%;background:#fff;box-shadow:0 0 0 4px #e8f2ff}.concept-timeline span{display:grid;gap:4px;min-width:0}.concept-timeline small{font-size:9px;font-weight:900}.concept-timeline strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.concept-timeline b{color:#2874d9;font-size:9px}.concept-timeline em{color:#98a2b3;font-style:normal}.concept-bottom-choice{position:sticky;bottom:66px;z-index:5;display:grid;gap:9px;padding:12px;border:1px solid #d9e1ec;border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 -12px 30px rgba(28,55,90,.1);backdrop-filter:blur(12px)}
.concept-06 .concept-focus-head{padding-top:4px}.concept-06>h1{font-size:21px}.concept-06 .concept-choices.visual>button{min-height:150px;padding-top:85px;background:linear-gradient(180deg,rgba(0,0,0,0) 0 48%,rgba(13,23,38,.78)),url('/assets/company/ai_company_hq.png') center/cover no-repeat;color:#fff}.concept-06 .concept-choices.visual>button:nth-child(2){background-position:65% center}.concept-06 .concept-choices.visual span,.concept-06 .concept-choices.visual small{color:#fff}.concept-06 .concept-choices.visual strong{white-space:normal}.concept-06 .concept-reasons{display:grid;gap:8px;margin:0;padding:12px 12px 12px 34px;border:1px solid #e4e7ec;border-radius:12px;background:#fff;color:#475467;font-size:10px;line-height:1.45}.concept-06 .concept-reasons li::marker{color:#1671ea;font-weight:900}
.concept-07 .concept-stats.icon-stats{gap:8px;border:0;background:transparent}.concept-07 .concept-stats.icon-stats button{border:0;border-radius:10px;background:#f5f7fb}.concept-07 .concept-stats.icon-stats i{display:grid;place-items:center;width:21px;height:21px;margin:auto;border-radius:6px;background:#dff6eb;color:#139768}.concept-07 .concept-section-head{padding-top:5px}.concept-07>h1{font-size:19px}.concept-07 .concept-choices.stacked{grid-template-columns:1fr}.concept-07 .concept-choices.stacked>button{grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;min-height:62px;padding:10px 13px}.concept-07 .concept-choices.stacked span{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border:2px solid #1671ea;border-radius:50%;font-size:13px}.concept-07 .concept-choices.stacked strong,.concept-07 .concept-choices.stacked small{grid-column:2}.concept-07 .concept-choices.stacked b{position:static;grid-column:3;grid-row:1/3}.concept-07 .concept-choices.stacked>button:first-child{background:#1671ea;color:#fff}.concept-07 .concept-choices.stacked>button:first-child span,.concept-07 .concept-choices.stacked>button:first-child small{color:#fff}.concept-07 .concept-choices.stacked>button:first-child span{border-color:#fff}
.ui-skin-compactops .content{background:#f4f6f8!important;color:#101828}.ui-skin-compactops .topbar,.ui-skin-compactops .mobile-nav{background:#fff!important;color:#101828!important;border-color:#e4e7ec!important}.ui-skin-compactops .concept-stats strong{color:#101828!important}.ui-skin-compactops .concept-stats small{color:#98a2b3!important}.concept-08{gap:8px;color:#101828}.concept-08 .concept-stats.icon-stats{border-radius:8px}.concept-08 .concept-stats button{padding:7px 3px}.concept-08>h2{padding:2px 4px;color:#101828}.concept-08 .concept-choices>button{padding:9px}.concept-08 .concept-detail{min-height:34px;border-radius:4px;background:#111}.concept-08 .concept-status-list>button{padding:8px}.concept-08 .concept-status-list strong{font-size:9px}
.ui-skin-glass .content{background:linear-gradient(165deg,#2a72a9 0,#79b4d4 32%,#d8e5ea 62%,#f4f6f8 100%)}.concept-09{color:#fff}.concept-09 .concept-stats.glass-stats{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.13);backdrop-filter:blur(16px)}.concept-09 .concept-stats button{border-color:rgba(255,255,255,.2)}.concept-09 .concept-stats i,.concept-09 .concept-stats small{color:rgba(255,255,255,.82)}.concept-09 .concept-glass-stage{padding:22px 10px;border-radius:15px;background:linear-gradient(180deg,rgba(10,54,90,.08),rgba(8,40,68,.35)),url('/assets/company/ai_company_hq.png') center/cover no-repeat}.concept-09 .concept-focus.glass-card{border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.72);color:#12243a;box-shadow:0 12px 40px rgba(8,37,60,.22);backdrop-filter:blur(14px)}.concept-09 .concept-section-head button{color:#fff}.concept-09 .concept-status-list{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.8);color:#101828;backdrop-filter:blur(12px)}
.concept-10{gap:0}.concept-editorial-hero{position:relative;min-height:185px;overflow:hidden;background:#f3f0ea}.concept-editorial-hero span{position:relative;z-index:2;display:block;width:65%;padding:30px 18px;font-size:27px;font-weight:950;line-height:1.13;letter-spacing:-1.4px}.concept-editorial-hero i{position:absolute;top:0;right:-45px;width:62%;height:100%;background:url('/assets/company/ai_company_hq.png') center/cover no-repeat;clip-path:polygon(25% 0,100% 0,100% 100%,0 100%)}.concept-editorial-card{display:grid;gap:10px;padding:16px;background:#101820;color:#fff}.concept-editorial-card .concept-focus-head>span{color:#fff}.concept-editorial-card>p{color:#bcc8d2}.concept-editorial-card .concept-choices>button{border-color:#56616b;background:#131e28;color:#fff;box-shadow:none}.concept-editorial-card .concept-choices>button:first-child{border-color:#1681ff;background:#126bd1}.concept-editorial-card .concept-choices span,.concept-editorial-card .concept-choices small{color:#dce8f3}.concept-editorial-card .concept-detail{background:#fff;color:#111}
@media(max-width:760px){.concept-home{margin:0 -2px;width:calc(100% + 4px)}.concept-focus{padding:14px}.concept-05{padding-bottom:115px}}
