/*
 * AI CEO console styles.
 *
 * Extracted from the pre-merge everyday-quest globals.css so the console can
 * be served standalone. Only the design tokens, resets and admin-side rules
 * came across — the game styles stayed with the product.
 */

/* --- design tokens and resets --- */

:root { --ink:#18231d; --forest:#214c36; --moss:#6c8b58; --sage:#b9caaa; --cream:#f3efe3; --paper:#faf8f1; --gold:#d6a64b; --line:#d8d8c9; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
button, textarea { font:inherit; }
.topbar { height:82px; display:flex; align-items:center; justify-content:space-between; max-width:1280px; margin:auto; padding:0 40px; border-bottom:1px solid rgba(33,76,54,.14); }

/* --- console --- */
.eyebrow { color:#8a6a2c; font-weight:700; letter-spacing:.2em; font-size:10px; margin:0 0 16px; }
.goal-card { margin-top:34px; border:1px solid var(--line); border-left:3px solid var(--forest); padding:16px; display:flex; align-items:center; gap:14px; max-width:520px; background:rgba(255,255,255,.62); }
.goal-card.goal-complete { border-left-color:var(--gold); background:#edf2e8; }
.goal-card small,.goal-card strong { display:block; }
.goal-card small { color:#8b938d; letter-spacing:.14em; font-size:8px; margin-bottom:5px; }
.goal-card strong { font:15px Georgia,serif; }
.admin-shell { min-height:100vh; padding-bottom:70px; background:#eef0e8; }.admin-topbar { height:76px; display:flex; align-items:center; gap:24px; padding:0 5vw; border-bottom:1px solid #d3d7cc; background:rgba(248,248,241,.94); }.admin-topbar>span { margin-left:auto; color:#738076; font-size:9px; font-weight:700; letter-spacing:.18em; }.admin-topbar>a:last-child { color:var(--forest); font-size:10px; font-weight:700; text-decoration:none; }.admin-heading { display:flex; justify-content:space-between; gap:30px; padding:62px 5vw 32px; }.admin-heading h1 { margin:7px 0; font:48px/1.05 Georgia,serif; color:var(--forest); }.admin-heading>div>p:last-child { color:#67736a; }.admin-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:8px; max-width:650px; }.admin-actions small { flex-basis:100%; margin-right:8px; color:#7d867f; font-size:9px; text-align:right; }.admin-actions button,.admin-state button { border:1px solid #9aa69c; background:white; color:var(--forest); padding:9px 12px; font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.admin-actions .admin-logout { border:0; background:var(--forest); color:white; }.export-status { margin-top:10px; color:#4f7058!important; font-size:10px; font-weight:700; }.admin-kpis { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; padding:0 5vw 24px; }.admin-kpis article { min-height:132px; padding:20px; border:1px solid #d7dbd1; background:#fafaf4; }.admin-kpis small,.admin-kpis strong,.admin-kpis span { display:block; }.admin-kpis small { color:#7b867e; font-size:8px; letter-spacing:.14em; }.admin-kpis strong { margin:11px 0 7px; color:var(--forest); font:30px Georgia,serif; }.admin-kpis span { color:#778078; font-size:10px; line-height:1.45; }.admin-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr); gap:16px; padding:0 5vw 16px; }.admin-panel { border:1px solid #d5d9cf; background:#fafaf4; box-shadow:0 10px 35px rgba(38,61,44,.04); }.admin-panel-title { min-height:80px; display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:20px 22px; border-bottom:1px solid #daddd3; }.admin-panel-title h2 { margin:5px 0 0; color:var(--forest); font:25px Georgia,serif; }.admin-panel-title button { border:0; padding:10px 13px; background:var(--forest); color:white; font-size:9px; letter-spacing:.1em; text-transform:uppercase; }.admin-panel-title button:disabled { opacity:.5; }.briefing-body { padding:22px; }.briefing-body>div { margin-bottom:19px; }.briefing-body small { display:block; margin-bottom:5px; color:#8b6b31; font-size:8px; font-weight:700; letter-spacing:.15em; }.briefing-body p,.briefing-body li { color:#536259; font-size:11px; line-height:1.65; }.briefing-body ul { margin:7px 0 0; padding-left:19px; }.briefing-bottom { display:grid; grid-template-columns:1fr 1fr; gap:14px; padding-top:16px; border-top:1px solid #dddcd1; }.briefing-bottom p { margin:0; }.confidence { grid-column:1/-1; width:max-content; padding:5px 8px; border-radius:10px; background:#e4eadf; color:#4c6954; font-size:8px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.confidence-low { background:#f2dfda; color:#89493e; }.confidence-medium { background:#f0ead8; color:#836b2f; }.analytics-table { padding:8px 20px 18px; }.analytics-row { display:grid; grid-template-columns:1fr 54px 54px; gap:8px; align-items:center; min-height:39px; border-bottom:1px solid #e2e3da; color:#627068; font-size:9px; text-transform:capitalize; }.analytics-row strong { text-align:right; color:var(--forest); }.analytics-header { color:#8a938b; font-size:7px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }.analytics-header span:not(:first-child) { text-align:right; }.admin-empty { padding:30px 22px; color:#6d776f; line-height:1.6; }.admin-empty small { color:#92988f; }.feedback-inbox { margin:0 5vw; }.feedback-inbox select { min-width:145px; padding:9px; border:1px solid #ccd2c8; background:white; color:var(--forest); font-size:10px; }.feedback-table { padding:6px 22px 22px; }.feedback-table>article { display:grid; grid-template-columns:190px 1fr 60px; gap:18px; align-items:start; padding:16px 0; border-bottom:1px solid #e0e2d9; }.feedback-table article>div { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }.feedback-table small { flex-basis:100%; margin-top:4px; color:#8a928b; font-size:8px; line-height:1.4; }.feedback-table p { margin:0; color:#4f5d54; font-size:11px; line-height:1.6; white-space:pre-wrap; }.feedback-table article>strong { color:#866c36; font-size:10px; text-align:right; }.feedback-kind,.feedback-mine { padding:4px 7px; background:#e6ece2; color:#4f7058; font-size:7px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.kind-problem { background:#f0ded9; color:#934c40; }.kind-delight { background:#eee5c9; color:#806425; }.feedback-mine { background:#dbe7ef; color:#526f82; }.admin-state,.admin-login { width:min(520px,calc(100% - 40px)); margin:100px auto; padding:42px; border:1px solid #d5d9cf; background:#fafaf4; text-align:center; }.admin-state>span { width:64px; height:64px; display:grid; place-items:center; margin:0 auto 18px; border-radius:50%; background:var(--forest); color:white; font-size:25px; }.admin-state h1,.admin-login h1 { margin:8px 0; color:var(--forest); font:34px Georgia,serif; }.admin-state p,.admin-login>p:not(.eyebrow) { color:#6c766e; line-height:1.55; }.admin-denied>span { background:#934c40; }.admin-login { text-align:left; }.admin-login form { margin-top:24px; }.admin-login label { display:block; margin-top:14px; color:var(--forest); font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.admin-login input { width:100%; margin-top:7px; padding:13px; border:1px solid #ccd2c8; background:white; }.admin-login form>button { width:100%; margin-top:18px; border:0; padding:13px; background:var(--forest); color:white; font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.admin-alert { margin:14px 22px!important; padding:10px; background:#f0ded9; color:#8d473d!important; font-size:10px; }
.ceo-workspace { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr); gap:16px; padding:0 5vw 16px; }
.admin-badge { padding:5px 8px; border-radius:10px; background:#e1e9df; color:#4d6953; font-size:8px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.goal-card,.direction-list>article { padding:16px 0; border-bottom:1px solid #e0e2d9; }
.goal-card>div:first-child { display:flex; align-items:center; gap:7px; color:#899188; font-size:7px; text-transform:uppercase; }
.initiative-list { display:grid; gap:18px; margin-top:10px; }.initiative-card { padding:20px; border:1px solid #cfd6ca; background:#f6f7ef; }.initiative-card>header { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:10px; }.initiative-card>header .task-select { margin-left:auto; }.initiative-card h3 { margin:6px 0 10px; color:var(--forest); font:24px Georgia,serif; }.initiative-card .confidence { grid-column:auto; }.initiative-rank,.initiative-parent { color:#8b6b31; font-size:8px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }.initiative-deselected { opacity:.58; }.initiative-parent { display:block; margin-bottom:10px; }
.goal-card h3 { margin:10px 0 5px; color:var(--forest); font:18px Georgia,serif; }.goal-card p,.direction-list p { margin:5px 0; color:#536259; font-size:10px; line-height:1.6; white-space:pre-wrap; }
.goal-card small,.direction-list small { display:block; margin-top:5px; color:#818a83; font-size:8px; line-height:1.5; }
@media (max-width:900px) { .admin-kpis { grid-template-columns:repeat(2,1fr); }.admin-grid,.ceo-workspace { grid-template-columns:1fr; }.admin-heading { align-items:flex-start; }.admin-actions { flex-wrap:wrap; justify-content:flex-end; }.feedback-table>article { grid-template-columns:140px 1fr 55px; } }
@media (max-width:560px) { .admin-topbar { padding:0 18px; }.admin-topbar>span { display:none; }.admin-heading { display:block; padding:40px 20px 24px; }.admin-heading h1 { font-size:38px; }.admin-actions { justify-content:flex-start; margin-top:20px; }.admin-actions small { flex-basis:100%; }.admin-kpis { grid-template-columns:1fr 1fr; padding:0 20px 18px; }.admin-kpis article { min-height:112px; padding:15px; }.admin-kpis strong { font-size:24px; }.admin-grid,.ceo-workspace { padding:0 20px 14px; }.feedback-inbox { margin:0 20px; }.admin-panel-title { display:block; }.admin-panel-title button,.feedback-inbox select,.admin-badge { margin-top:12px; }.briefing-bottom,.ceo-form-row { grid-template-columns:1fr; }.feedback-table>article { grid-template-columns:1fr; gap:9px; }.feedback-table article>strong { text-align:left; }.admin-state,.admin-login { margin:48px auto; padding:30px 22px; } }
.briefing-status { display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #dddcd1; padding-bottom:14px; }.briefing-status small { margin:0; color:#7d867f; }.decision { padding:5px 9px; border-radius:12px; background:#e9e5d8; color:#725f36; font-size:8px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.decision-approved { background:#dce9dc; color:#416b49; }.decision-rejected { background:#f0deda; color:#8d473d; }.decision-revision_requested { background:#e2e7ee; color:#506d80; }.proposed-task-list { display:grid; gap:9px; margin-top:9px; }.proposed-task-list article { padding:13px; border:1px solid #dddfd7; background:white; }.proposed-task-list article>div { display:flex; justify-content:space-between; gap:12px; }.proposed-task-list strong { color:var(--forest); font-size:11px; }.proposed-task-list span { color:#866c36; font-size:8px; font-weight:700; text-transform:uppercase; }.proposed-task-list p { margin:8px 0 4px; }.proposed-task-list article>small { color:#934c40; }.decision-desk { padding-top:17px; border-top:1px solid #d9dbd2; }.decision-desk textarea { min-height:85px; margin-top:8px; }.decision-desk>div { display:flex; flex-wrap:wrap; gap:7px; margin-top:8px; }.decision-desk button { border:1px solid #98a39a; background:white; color:var(--forest); padding:9px 11px; font-size:8px; font-weight:700; text-transform:uppercase; }.decision-desk button:first-child { background:var(--forest); color:white; }.decision-desk button:disabled { opacity:.45; }.task-board { margin:0 5vw 16px; }.task-board-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:18px 22px 22px; }.ceo-task { padding:16px; border:1px solid #d9ddd4; border-top:3px solid #8a9b8d; background:white; }.task-completed { opacity:.72; border-top-color:#b39a59; }.task-blocked { border-top-color:#a9574c; }.task-meta { display:flex; justify-content:space-between; gap:8px; color:#7e6b3d; font-size:7px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.ceo-task h3 { margin:11px 0 7px; color:var(--forest); font:18px Georgia,serif; }.ceo-task p,.ceo-task li { color:#59675e; font-size:10px; line-height:1.55; }.ceo-task details { margin:12px 0; }.ceo-task summary { color:var(--forest); cursor:pointer; font-size:9px; font-weight:700; }.ceo-task label { display:block; color:#7c857e; font-size:8px; font-weight:700; text-transform:uppercase; }.ceo-task select { width:100%; margin-top:5px; padding:8px; border:1px solid #cdd3ca; background:#fafaf4; color:var(--forest); }.approval-lock { display:block; margin-top:9px; color:#934c40; font-size:8px; }
.experiment-editor { display:grid; gap:10px; padding:16px; border:1px solid #d4d9cf; background:#f2f5ed; }.experiment-editor label,.proposed-task-list label,.experiment-result-form label { display:block; color:#59675e; font-size:8px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }.experiment-editor input,.experiment-editor textarea,.proposed-task-list input:not([type="checkbox"]),.proposed-task-list textarea,.proposed-task-list select,.experiment-result-form input,.experiment-result-form textarea,.experiment-result-form select { width:100%; margin-top:5px; padding:9px; border:1px solid #cbd2c8; background:white; color:#46554b; font:10px/1.45 Arial,sans-serif; letter-spacing:0; text-transform:none; }.experiment-editor textarea,.proposed-task-list textarea,.experiment-result-form textarea { min-height:62px; resize:vertical; }.experiment-fields { display:grid; grid-template-columns:1fr 1fr; gap:9px; }.experiment-reason { margin:0!important; }.repeat-warning { padding:9px; background:#f2e8d2; color:#7b612b!important; }.task-select { display:flex!important; align-items:center; gap:7px; }.task-select input { width:auto; margin:0; }.task-deselected { opacity:.48; }.proposed-task-list article>label { margin-top:9px; }.proposed-task-list article>div select { width:145px; margin:0; }.proposed-task-list article>div { align-items:center; }
.experiment-ledger { margin:0 5vw 16px; }.experiment-ledger-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:18px 22px 22px; }.experiment-record { padding:17px; border:1px solid #d7dcd2; border-top:3px solid #84958a; background:white; }.experiment-completed { border-top-color:#aa8d49; }.experiment-running { border-top-color:#4d7858; }.experiment-record-head { display:flex; justify-content:space-between; gap:10px; }.experiment-record-head>div { display:flex; flex-wrap:wrap; gap:5px; }.experiment-record-head span { padding:4px 6px; background:#e7ece3; color:#56705c; font-size:7px; font-weight:700; text-transform:uppercase; }.experiment-record-head small { color:#8b938c; font-size:8px; }.experiment-record h3 { margin:12px 0 8px; color:var(--forest); font:19px Georgia,serif; }.experiment-record p { margin:6px 0; color:#59675e; font-size:10px; line-height:1.5; }.experiment-record details { margin-top:14px; padding-top:12px; border-top:1px solid #e0e2d9; }.experiment-record summary { cursor:pointer; color:var(--forest); font-size:9px; font-weight:700; }.experiment-result-form { display:grid; gap:9px; margin-top:12px; }.experiment-result-form>div { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.experiment-result-form button { width:max-content; border:0; padding:10px 12px; background:var(--forest); color:white; font-size:8px; font-weight:700; text-transform:uppercase; }.experiment-result-form button:disabled { opacity:.45; }
.product-map { margin:0 5vw 16px; }.product-map-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:18px 22px 22px; }.product-map-grid>article { padding:16px; border:1px solid #d8ddd3; background:white; }.product-map-grid>article>div { display:flex; align-items:center; gap:10px; }.product-map-grid code { padding:4px 7px; background:#e6ece3; color:#3f624a; font-size:9px; }.product-map-grid strong { color:var(--forest); font:17px Georgia,serif; }.product-map-grid ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; padding:0; list-style:none; }.product-map-grid li { padding:9px; background:#f5f5ef; }.product-map-grid li b,.product-map-grid li span,.product-map-grid li small { display:block; }.product-map-grid li b { color:#4d5f53; font-size:9px; }.product-map-grid li span { margin-top:4px; color:#69756d; font-size:8px; line-height:1.4; }.product-map-grid li small,.product-map-grid>article>small { margin-top:5px; color:#92998f; font-size:7px; line-height:1.35; }
.panel-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }.archive-action { border:1px solid #b8bdb5!important; padding:6px 8px!important; background:transparent!important; color:#788078!important; font-size:7px!important; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }.direction-list>article { position:relative; }.direction-list>article>.archive-action { position:absolute; top:13px; right:0; }.archive-vault { margin:0 5vw; }.archive-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:18px 22px 22px; }.archive-list article { display:grid; grid-template-columns:70px 1fr auto; gap:10px; align-items:center; padding:12px; border:1px solid #daddd3; background:white; }.archive-list span { color:#806b3d; font-size:7px; font-weight:700; text-transform:uppercase; }.archive-list p { margin:0; color:#526158; font-size:10px; line-height:1.4; }.archive-list small { grid-column:2; color:#92988f; font-size:7px; }.archive-list button { grid-column:3; grid-row:1/3; border:1px solid #9aa69c; padding:7px 9px; background:white; color:var(--forest); font-size:7px; font-weight:700; text-transform:uppercase; }
.task-ticket-actions { display:flex; flex-wrap:wrap; gap:7px; margin-top:12px; }.task-ticket-actions>a,.task-ticket-actions>button:not(.archive-action) { border:0; padding:8px 9px; background:var(--forest); color:white; font-size:7px; font-weight:700; text-decoration:none; text-transform:uppercase; }
.decision-history { margin:0 5vw 16px; }.decision-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:18px 22px 22px; }.decision-list article { display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center; padding:12px; border:1px solid #daddd3; background:white; }.decision-list p { margin:0; color:#526158; font-size:10px; }.decision-list small { grid-column:2; color:#92988f; font-size:7px; }
@media (max-width:900px) { .task-board-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px) { .experiment-ledger-grid,.experiment-fields,.product-map-grid,.archive-list,.decision-list { grid-template-columns:1fr; }.archive-list article { grid-template-columns:60px 1fr; }.archive-list button { grid-column:1/-1; grid-row:auto; width:max-content; } }
@media (max-width:560px) { .task-board,.experiment-ledger,.product-map,.archive-vault,.decision-history { margin:0 20px 14px; }.task-board-grid,.experiment-ledger-grid,.product-map-grid,.archive-list,.decision-list { grid-template-columns:1fr; padding:14px; }.product-map-grid ul { grid-template-columns:1fr; }.proposed-task-list article>div { align-items:flex-start; flex-direction:column; }.proposed-task-list article>div select { width:100%; } }

/* --- added by the merge --- */
/* Product switcher: which scope the console is showing. */
.scope-switcher { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:14px; }
.scope-switcher button { border:1px solid #c6cec4; background:white; color:var(--forest); padding:7px 11px; font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.scope-switcher button[aria-pressed="true"] { border-color:var(--forest); background:var(--forest); color:white; }

/* Whose feedback this is — essential once two products share the vault. */
.feedback-product { padding:4px 7px; background:#dfe7ee; color:#41586b; font-size:7px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
