/* Graphite, optical glass and restrained light. Presentation only. */
:root {
  --terminal-bg:#080d14;
  --terminal-panel:#101923;
  --terminal-raised:#172330;
  --terminal-line:#263644;
  --terminal-orange:#e7b879;
  --terminal-cyan:#88dce6;
  --terminal-muted:#8e9eae;
  --terminal-positive:#70d6ae;
  --terminal-negative:#f58088;
  --ui-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
}
body { font-family:var(--ui-font);background:radial-gradient(ellipse at 73% 0,#18273766,transparent 50%),#080d14; }
button,input,textarea,select { font-family:var(--ui-font); }
::selection { background:#387b89; }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline-color:#88dce6; }
input,textarea,select { background:#090f18;border-color:#314453;border-radius:7px;transition:border-color .15s,box-shadow .15s; }
input:focus,textarea:focus,select:focus { border-color:#72bcca;box-shadow:0 0 0 3px #72bcca12; }
.sidebar { width:192px;padding:24px 13px 16px;background:linear-gradient(160deg,#141e29,#0a111b 60%);border-right:1px solid #ffffff0b;box-shadow:8px 0 40px #00000012; }
.brand { gap:10px;font-size:17px;letter-spacing:-.5px; }
.brand-mark { color:#a8e5e8;text-shadow:0 0 24px #76d7e645;font-size:38px; }
.brand small { color:#6d8a9c;font-size:8px;letter-spacing:2.2px; }
.fund-identity { margin:25px 0 18px;padding:16px 6px;border-color:#ffffff10;gap:10px; }
.fund-icon { width:30px;height:34px;border-radius:7px;color:#c7dfe4;background:linear-gradient(145deg,#304351,#182833);border:1px solid #7898a32b; }
.fund-identity strong { font-size:14px;max-width:120px; }
.fund-identity small { font-size:10px;color:#748b9e; }
nav { gap:5px; }
.nav-button { border-radius:8px;padding:11px 9px;min-height:50px;border-color:transparent;gap:10px;color:#9eacbd; }
.nav-button>span { background:transparent;border:0;color:#728ea0;font-size:16px; }
.nav-label { font-size:12px; }
.nav-label small { font-size:8px;letter-spacing:1.6px;color:#637c90;margin-top:4px; }
.nav-button i { color:#456073; }
.nav-button:hover { background:#24374766;color:#e6f2f5; }
.nav-button.active { background:linear-gradient(90deg,#31576560,#20364355);border-color:#7fbec324;color:#d5f2f3;box-shadow:inset 2px 0 #8edce2; }
.nav-button.active>span { color:#9adfe5;background:transparent;border:0; }
.nav-button.active small,.nav-button.active i { color:#80afbb; }
.sidebar-quote { color:#4f6a7f;font-size:9px;line-height:2.2; }
.sidebar-bottom .nav-button { padding:8px 5px;font-size:10px;min-height:35px; }
.save-status { color:#799aab; }
.save-status i,.small-dot { width:5px;height:5px;border-radius:50%;background:#8fddc6;box-shadow:0 0 8px #73dcc960; }
.main-shell { margin-left:192px; }
.topbar { height:48px;padding:0 24px;background:#0b121bc9;border-bottom:1px solid #ffffff0a;backdrop-filter:blur(16px); }
.breadcrumb { font-size:11px;color:#758c9f; }
.breadcrumb b { color:#d5e5ed; }
.topbar-right { gap:16px;color:#8ea3b3; }
.actor-label { font:9px var(--terminal-font);letter-spacing:.5px;color:#5e7c90;border-color:#263b4a; }
.avatar { border-radius:50%;background:linear-gradient(135deg,#c1d6d7,#7f9ea8);color:#152632;font-size:11px;width:28px;height:28px; }
.mode-badge { border:1px solid #45657570;border-radius:5px;background:#19303c80;color:#b0d6de;padding:4px 8px; }
.mode-badge.demo { background:#322a2055;border-color:#8b6b3b55;color:#d6bc92; }
.terminal-command { height:42px;padding:4px 24px;background:#0b121b88;border-bottom:1px solid #ffffff09;gap:14px; }
.terminal-command-prompt { font:9px var(--terminal-font);letter-spacing:1.5px;color:#668b9d; }
.terminal-command input { color:#c4dee7;font-size:11px; }
.terminal-command input::placeholder { color:#5e768a; }
.terminal-command:focus-within { box-shadow:inset 0 -1px #7bc3cb; }
.terminal-command kbd { color:#4f6b80; }
.terminal-command button { background:#263f4c;border:1px solid #40616f70;border-radius:5px;color:#a9d5dc;font:10px var(--terminal-font);padding:0 14px;margin:3px 0; }
.terminal-command button:hover { background:#355463; }
main { padding:25px 24px 16px;max-width:1900px; }
.page-intro { margin-bottom:21px; }
.eyebrow { font:9px var(--terminal-font);color:#70b8c6;letter-spacing:2.2px;margin-bottom:9px; }
.page-intro h1 { font-size:26px;font-weight:550;letter-spacing:-.8px;color:#e9f0f3; }
.page-intro p { font-size:11px;color:#758c9f;margin-top:8px; }
.intro-actions { gap:8px; }
.button { border-radius:7px;padding:9px 14px;font-size:11px; }
.button.primary { background:linear-gradient(130deg,#b7e6e5,#80bfcb);border:1px solid #bbebed;color:#102833;box-shadow:0 3px 15px #70bdd517; }
.button.primary:hover { background:linear-gradient(130deg,#d0f2ee,#9ad5dd);box-shadow:0 4px 18px #6ebccc25; }
.button.secondary { background:linear-gradient(150deg,#1b2b38,#14212e);border:1px solid #49637365;color:#bdd1dc; }
.button.secondary:hover { background:#243c4c;border-color:#608995; }
.button.danger { border-radius:7px; }
.metrics { gap:12px;margin-bottom:18px; }
.metric { padding:15px 17px;min-height:104px;background:linear-gradient(130deg,#182632ba,#101923);border:1px solid #92b5c41a;border-top:1px solid #a9d0de25;border-radius:10px;box-shadow:0 7px 22px #0000001a; }
.metric:first-child { background:linear-gradient(130deg,#21333c,#14222d);border-top-color:#a9d0de3d; }
.metric-label { color:#8a9fae;font-size:11px; }
.metric-label>span { color:#577c90;font:8px var(--terminal-font);letter-spacing:1px; }
.metric strong { font:400 28px/1.15 var(--terminal-font);color:#e0edf1;margin:11px 0 7px;letter-spacing:-1.2px; }
.metric:nth-child(2) strong { color:#c2e8ea; }
.metric strong small { color:#7f9daa; }
.metric-sub { font-size:10px;color:#617f92; }
.metric-tag { border-radius:4px;background:#213f3655;padding:3px 6px;font-size:9px; }
.office-layout { grid-template-columns:minmax(0,1fr) 262px;gap:16px; }
.scene-card { border:1px solid #6d95aa38;border-radius:13px;background:#0b131e;box-shadow:0 18px 55px #00000030,inset 0 1px #c3e9f315; }
.scene-top { height:52px;padding:0 19px;background:linear-gradient(110deg,#203241b8,#152330c4);border-bottom:1px solid #769caf26; }
.scene-top>div { display:flex;align-items:center;min-width:0;gap:9px; }
.scene-top .small-dot { margin:0 3px 0 0;flex-shrink:0; }
.scene-kicker { font:8px var(--terminal-font);letter-spacing:1.4px;color:#6b92a8; }
.scene-top strong { font-family:var(--ui-font);color:#dce9ef;font-size:14px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.scene-top span#scene-detail { color:#658296;font-size:10px;margin-left:0;white-space:nowrap; }
.scene-button { border:1px solid #7797a530;background:#182c3b;color:#a9c9d7;border-radius:6px;font-size:10px;padding:6px 9px;white-space:nowrap; }
.scene-button:hover { background:#294554;border-color:#6f9cae; }
.canvas-container { height:550px;background:#0b1520; }
.scene-location { left:22px;top:20px;color:#57798e;font:9px/1.9 var(--terminal-font);letter-spacing:.8px; }
.scene-location strong { color:#a8c3d4;font:10px/2 var(--terminal-font);letter-spacing:1.5px; }
.scene-location:before { content:"WORKSPACE";display:block;color:#3f6074;font:7px/2 var(--terminal-font);letter-spacing:2.4px;margin-bottom:3px; }
.scene-style { display:table;margin-top:9px;padding:2px 7px;border:1px solid #78adbe35;border-radius:4px;color:#8bb8c9;background:#15253290;font:9px/1.6 var(--ui-font);letter-spacing:.5px; }
.scene-style[data-city="hk"] { color:#d3b98e;border-color:#a28b5d44;background:#2c281caa; }
.scene-style[data-city="ny"] { color:#b2c8ee;border-color:#8da9d744;background:#1e2a42aa; }
.office-design-note { display:flex;gap:16px;align-items:center;padding:12px 15px;margin:0 0 16px;border-left:2px solid #7db9cf;background:#192c3a70;border-radius:0 7px 7px 0; }
.office-design-note strong { font-size:12px;font-weight:500;color:#bedce8; }
.office-design-note>span { font-size:11px;color:#86a1b2; }
.office-design-note[data-city="hk"] { border-color:#c5a56f;background:#3c332344; }
.office-design-note[data-city="hk"] strong { color:#dfc59d; }
.office-design-note[data-city="ny"] { border-color:#90a9ed;background:#26395644; }
.office-design-note[data-city="ny"] strong { color:#c5d4f3; }
.scene-hint { max-width:calc(100% - 112px);bottom:18px;background:#152533e8;border:1px solid #7598ab36;color:#bdd0dc;box-shadow:0 8px 24px #0005,inset 0 1px #ffffff07;border-radius:8px;padding:9px 14px;font:10px/1.7 var(--ui-font);backdrop-filter:blur(16px);white-space:normal;text-align:center; }
.scene-reset { right:18px;bottom:18px;width:32px;height:32px;border:1px solid #7598ab36;background:#182c3be0;color:#9bc1d2;border-radius:8px;font-size:20px;backdrop-filter:blur(10px); }
.scene-camera-controls { position:absolute;right:18px;bottom:18px;display:flex;gap:4px;z-index:3; }
.scene-camera-controls button { position:static;width:32px;height:32px;border:1px solid #7598ab36;background:#182c3be0;color:#b5d3e0;border-radius:8px;font:18px sans-serif;cursor:pointer; }
.scene-camera-controls button:hover { background:#294859; }
.scene-camera-controls button:focus-visible { outline:2px solid #9edee7;outline-offset:2px; }
.scene-zoom,.scene-touch-help { display:none; }
.scene-controls { min-height:43px;padding:10px 18px;gap:16px;background:linear-gradient(90deg,#13202d,#101b27);border-top:1px solid #87adbe1c;color:#648399;font-size:9px; }
kbd { border-radius:4px;border:1px solid #4c697c50;background:#253a485c;color:#9bb8ca;font:8px var(--terminal-font);box-shadow:0 1px 2px #0002;padding:3px 5px; }
.scene-control-right { color:#3f6278;font:7px var(--terminal-font);letter-spacing:1.2px; }
.office-feed { gap:13px; }
.feed-card,.content-card,.staff-card,.note-card { background:linear-gradient(145deg,#16232fc9,#101b26);border:1px solid #789fb41c;border-top-color:#a6cddd24;border-radius:10px;padding:18px;box-shadow:0 6px 20px #00000016; }
.feed-card { padding:16px; }
.feed-card h3 { color:#c6dbe4;border-color:#92b7c61a;font-size:12px;font-weight:500;padding-bottom:12px;margin-bottom:12px; }
.feed-card h3 small { color:#5c8197;font:8px var(--terminal-font); }
.daily-card { background:radial-gradient(ellipse at 0 0,#34545a50,transparent 80%),linear-gradient(145deg,#1b2c37,#111c28);border-color:#9fbcbc2b; }
.daily-card .eyebrow { font:8px var(--terminal-font);letter-spacing:1.8px;color:#87b8c1; }
.daily-card h2 { color:#dce9ec;font-size:20px;font-weight:500;line-height:1.65; }
.daily-card p { color:#849eae;font-size:11px;line-height:1.9; }
.person-row { padding:7px 0;border-radius:6px;margin-top:4px;gap:11px; }
.person-row:hover { background:#29435155; }
.person-avatar { background:linear-gradient(135deg,#34505e,#243947)!important;color:#acd4dc;border:1px solid #7d9da330;border-radius:10px; }
.person-row strong { color:#c5d9e3;font-size:11px;font-weight:500; }
.person-row small { color:#658698;font-size:9px; }
.person-row .arrow { color:#557f94; }
.news-item { border-color:#91b5c31a;padding-top:12px;margin-top:12px; }
.news-item small { color:#6a9bb1;font:9px var(--terminal-font); }
.news-item p { color:#b1c8d5;font-size:11px;line-height:1.9; }
.market-strip { margin-top:16px;border-color:#8aadbf22;border-radius:8px;background:#101b27;min-height:58px;overflow:hidden; }
.market-strip-title { color:#7399ac;background:#192b37;border-color:#88a7b71a;font:8px/1.7 var(--terminal-font);letter-spacing:1px; }
.ticker-item { min-width:135px;padding:10px 14px;border-color:#83a5b517; }
.ticker-item strong { color:#abc6d5;font-size:10px; }
.ticker-item b { color:#c4e8eb;font:12px var(--terminal-font); }
.ticker-item small { color:#526f82;font:8px var(--terminal-font); }
.page-footer { margin-top:13px;color:#4c6a7d;font-size:9px; }
.page-footer a { color:#7096a9; }
.section-heading h2,.content-card>h2,.content-card>h3 { color:#cde1e7;font-weight:500; }
.data-table th { background:#1b3040;color:#86a9bc;border-color:#4d6b7e50; }
.data-table td { border-color:#6c90a121; }
.data-table tbody tr:nth-child(even) { background:#1a2b3945; }
.data-table tbody tr:hover { background:#29475555; }
.notice,.badge,.position-direction,.note-counter { border-radius:6px; }
.notice { background:#1b34464d;border-color:#557f9945; }
.city-tabs button,.filter-tabs button { border-radius:6px;background:#172a38;border-color:#3e5c6e6b;color:#87a9bb; }
.city-tabs button.active,.filter-tabs button.active { background:#284855;color:#d2edee;border-color:#679fa9; }
.note-card:hover { background:#1c3441;border-color:#6794a45c; }
.bubble { border-radius:10px;background:#1c3342;border-color:#41677c65; }
.bubble.mine { border-radius:10px;background:#24423f;border-color:#69998a40; }
.dialog-backdrop { background:#020812c9;backdrop-filter:blur(14px); }
.dialog:not(.welcome-dialog) { background:linear-gradient(145deg,#172633,#0d1925);border:1px solid #7297ac55;border-top:1px solid #9bbfce77;border-radius:13px;box-shadow:0 30px 100px #0009; }
.dialog-header { background:#23384766;border-color:#8caabd24;padding:20px 23px; }
.dialog-header h2 { color:#d5e7ed;font-weight:500;font-size:19px; }
.dialog-header small { color:#6f95a9; }
.dialog-body { padding:23px; }
.toast { background:#203a49eb;border-color:#719aab60;border-left-color:#8cd6d7;border-radius:8px;backdrop-filter:blur(12px); }
#toast-stack { pointer-events:none; }
.account-gate { background:radial-gradient(ellipse at 50% 0,#1c3b4c,#080e18 75%); }
.account-shell { border-radius:16px;overflow:hidden;border-color:#7395a83d;background:linear-gradient(130deg,#172633,#0f1b27);box-shadow:0 40px 120px #0008,inset 0 1px #c7e4ed17; }
.account-scene { background:radial-gradient(ellipse at 20% 25%,#69cbd52b,transparent 70%),linear-gradient(160deg,#1f3a4b,#0c1725 75%);border-color:#8eb0bf24; }
.account-scene:after { background:linear-gradient(0deg,#08121dcc,transparent 65%); }
.account-skyline i { border-top-color:#8dd2dc;box-shadow:12px 0 0 #08141e; }
.account-market-line { color:#89bac8; }
.account-scene-copy span { color:#93d3da; }
.account-panel { padding:42px; }
.account-kicker { color:#a0d9df; }
.account-tabs button[aria-selected=true] { border-color:#8ccfd6;color:#b0e4e7; }
.account-form input { border-radius:7px;height:44px;border-color:#496b7b65;background:#09141f; }
.account-form input:focus { border-color:#87cad3;box-shadow:0 0 0 3px #87cad312; }
.account-submit { background:linear-gradient(130deg,#c4e6e6,#85bdc9);border:1px solid #b0dadd;border-radius:7px;color:#112d38; }
.account-submit:hover { background:#b5e0e3; }
.account-submit.secondary { background:transparent;border-color:#51718480;color:#a4c6d7; }
.welcome-experience,.trade-layout { font-family:var(--ui-font); }
.dialog.welcome-dialog { border-radius:14px;border:1px solid #88aabb55;background:#0c1721; }
.welcome-scene { background:#0d1924; }
.welcome-hero { border-radius:9px;border-color:#829dab40; }
.welcome-details { background:linear-gradient(150deg,#1d303c,#111d28); }
.welcome-city,.welcome-office-option,.welcome-enter-button { border-radius:7px; }
.welcome-city.active { background:#bbdfe2;border-color:#bcdee0;color:#14303c; }
.welcome-office-option { background:#162734;border-color:#53758740;overflow:hidden; }
.welcome-office-option.selected { border-color:#8cccd4;box-shadow:0 0 0 1px #8cccd450; }
.welcome-office-option.selected .welcome-option-caption { background:#a5d3d8;color:#14313c; }
.welcome-office-option.selected .welcome-option-caption small,.welcome-office-option.selected .welcome-option-caption i { color:#315e6a; }
.welcome-brand>span>span,.welcome-overline,.welcome-gallery-label,.welcome-details-top>span,.welcome-capital strong,.welcome-office-rent strong,.welcome-staff-price strong { color:#b4d9dd; }
.welcome-office-english,.welcome-budget b { color:#81bbca; }
.welcome-budget { border-color:#7195a43d;border-left-color:#8ac5cc;background:#0b1822; border-radius:7px; }
.welcome-budget strong { color:#b2d9de; }
.welcome-form-fields input,.welcome-form-fields select { border-color:#63818f50;border-radius:6px;background:#0c1721; }
.welcome-details-top,.welcome-office-summary { border-color:#83a2b31f; }
.welcome-pin { color:#b9e0e4; }
.welcome-enter-button { background:linear-gradient(120deg,#c0e5e6,#7ebdca);color:#112b36;border-color:#b1d8df; }
.welcome-enter-button:hover { background:#b6dfe2;border-color:#b6dfe2; }
.office-option { background:#152431;border-color:#6a8b9c33;border-radius:10px;overflow:hidden; }
.office-option:hover { background:#1d3341;border-color:#6e9bab; }
.office-option.selected { border-color:#8bc5ce;box-shadow:inset 0 0 0 1px #8bc5ce55; }
.office-option .office-price { color:#c1dfe4; }
.trade-section-label { color:#78adbe;font:9px var(--terminal-font);letter-spacing:1.7px; }
.trade-discovery h3 { font-weight:500; }
.trade-market-tabs { border-radius:7px;background:#0c1923;border-color:#557a8e40;padding:4px;gap:3px; }
.trade-market-tabs button { border-radius:4px;color:#8daabc;padding:8px 5px; }
.trade-market-tabs button.active { background:#355564;color:#d7edef; }
.stock-search-wrap { border-radius:7px;background:#0b1823;border-color:#638a9c70; }
.stock-search-wrap span { color:#8ac8d3; }
.stock-search-wrap input { color:#c8e0e7; }
.stock-search-wrap:focus-within { border-color:#89c3d0;box-shadow:0 0 0 3px #89c3d011; }
.stock-results { border-color:#6c93a52b; }
.stock-result { border-bottom-color:#7ea1b51b;border-radius:5px;padding:12px 9px; }
.stock-result:nth-child(even) { background:#0d1c294d; }
.stock-result:hover { background:#25425366; }
.stock-result.selected { background:#29465288;border-color:#6c93a52b;box-shadow:inset 2px 0 #93d7dc; }
.stock-market-icon,.stock-market-icon.cn,.stock-market-icon.hk,.stock-market-icon.us { border-radius:6px;background:#1d3544;color:#a7cedb;border-color:#7598ac3b; }
.trade-ticket { background:linear-gradient(150deg,#1d303d,#111f2b);border:1px solid #6c98aa45;border-top-color:#9fc3d25c;border-radius:10px;padding:20px;box-shadow:0 10px 30px #0002,inset 0 1px #b3dce411; }
.trade-selected-label .badge { border-radius:4px;background:#2a4553;color:#b9dce3;border-color:#668b9d4d; }
.trade-stock-name { font-weight:500;color:#e0eef2; }
.trade-stock-symbol { color:#8dc7d5;font-family:var(--terminal-font); }
.trade-ticket .market-quote { color:#d7e9ed;font:400 37px var(--terminal-font);letter-spacing:-1.5px; }
.trade-ticket input,.trade-ticket select { border-radius:6px;background:#0d1a25;border-color:#7492a545; }
.trade-ticket input:focus,.trade-ticket select:focus { border-color:#8dc7d5;box-shadow:0 0 0 3px #8dc7d512; }
.trade-directions { gap:6px; }
.trade-direction { --trade-accent:#85d1b4;background:#152734;border-color:#5a81954a;border-radius:6px;padding:11px 2px; }
.trade-direction[data-trade-side="sell"] { --trade-accent:#dbb480; }
.trade-direction[data-trade-side="short"] { --trade-accent:#e6959b; }
.trade-direction[data-trade-side="cover"] { --trade-accent:#92cadf; }
.trade-direction.active,.trade-direction[data-trade-side="short"].active,.trade-direction[data-trade-side="sell"].active,.trade-direction[data-trade-side="cover"].active { background:#26414b;color:var(--trade-accent);border-color:var(--trade-accent);box-shadow:inset 0 -2px var(--trade-accent); }
.trade-ticket .summary-line { border-color:#7a9aa72e; }
.trade-ticket .summary-line strong { color:#c5e2e8;font-family:var(--terminal-font); }
.trade-risk-summary { border-color:#7a9aa72e; }
.trade-ticket .button.primary { border-radius:7px;background:linear-gradient(120deg,#b5e1ce,#83c0ad);border-color:#abd7c8;color:#123a33;box-shadow:0 4px 17px #0002; }
.trade-ticket .button.primary[data-side="sell"] { background:linear-gradient(120deg,#e4cfac,#ccad7f);border-color:#ddc5a0;color:#3d2b14; }
.trade-ticket .button.primary[data-side="short"] { background:linear-gradient(120deg,#e9b7ba,#d4929a);border-color:#e0a5ad;color:#471e26; }
.trade-ticket .button.primary[data-side="cover"] { background:linear-gradient(120deg,#b9dbe7,#86b7ce);border-color:#aad2e0;color:#193441; }
.portfolio-review-chart { font-family:var(--ui-font); }
.pchart-kicker { color:#83b7c7; }
.pchart-ranges { border-radius:6px;border-color:#5b829644; }
.pchart-ranges button,.pchart-review-head button { background:#1a3040;color:#8faebf; }
.pchart-ranges button+button { border-color:#5b829644; }
.pchart-ranges button[aria-pressed="true"] { color:#d3ecee;background:#3a5c69; }
.pchart-ranges button:hover,.pchart-review-head button:hover:not(:disabled) { background:#365464; }
.pchart-plot { border-color:#5c7f9345;border-radius:8px; }
.pchart-review { background:#132431;border-color:#5c7f933d;border-radius:8px;overflow:hidden; }
.pchart-review-head { border-color:#5c7f9338;background:#21374644; }
.pchart-review-head button { border-radius:4px; }
.pchart-day-metrics strong { font-family:var(--terminal-font); }
.daily-contributions { --dc-orange:#9fd4dc;--dc-line:#365361;--dc-muted:#91aab9; }
.contribution-button { border-radius:6px;background:#223b4a;border-color:#7498aa48;color:#c3dce5; }
.contribution-button.primary { color:#16323e;background:linear-gradient(120deg,#bfdfE3,#88beca);border-color:#a1ced7; }
.contribution-summary { border-radius:9px;overflow:hidden;background:#4d6d7a44;border-color:#7395a441; }
.contribution-summary>div { background:#162734; }
.contribution-summary span { color:#8fabbc; }
.contribution-choices article,.contribution-feed article { background:linear-gradient(145deg,#1c303d,#142430);border-color:#7899ac30;border-radius:9px; }
.contribution-form { background:#142632;border-color:#7899ac45;border-radius:9px; }
.contribution-form input:not([type=checkbox]),.contribution-form textarea { background:#0c1a25;border-color:#678da14d;border-radius:6px; }
.contribution-public,.contribution-hosted,.contribution-notice { border-radius:6px; }
.contribution-pitch-meta strong { color:#b5dbe2; }
.social-kicker,.social-enroll-card h3,.social-contacts h3,.social-chat-header strong { color:#b1d5df; }
.social-workspace,.social-enroll-card,.nomination-form,.nomination-card { background:#122330;border-color:#65889c3d;border-radius:9px;overflow:hidden; }
.social-contact,.social-avatar,.social-message,.social-privacy span,.nomination-vote button,.social-notice,.nomination-public { border-radius:6px; }
.social-avatar { background:#263e4d;color:#badce4;border-color:#7998a746; }
.social-message.mine { background:#254441;border-color:#80ac9c3c; }
.social-shell input,.social-shell textarea,.social-shell select { background:#0c1a25;border-color:#678da14d;border-radius:6px; }
.social-shell input:focus,.social-shell textarea:focus,.social-shell select:focus { outline-color:#8dc8d2;border-color:#8dc8d2; }
.nomination-vote button[aria-pressed="true"] { background:#2a4854;border-color:#9dcdd6;color:#c8e9eb; }
@media(min-width:1101px) { .office-feed { max-height:647px;overflow-y:auto;padding-right:3px;scrollbar-color:#49677866 transparent;scrollbar-width:thin; }.office-feed .feed-card { flex-shrink:0; } }
@media(min-width:1600px) and (min-height:1000px) { .canvas-container { height:640px; }.office-layout { grid-template-columns:minmax(0,1fr) 290px; } }
@media(max-width:1250px) { .scene-kicker { display:none; }.office-layout { grid-template-columns:minmax(0,1fr) 238px;gap:12px; } .canvas-container { height:500px; }.scene-controls { gap:10px; } .scene-control-right { display:none; } }
@media(max-width:1100px) { .metrics { grid-template-columns:1fr 1fr; }.metric strong { white-space:nowrap; }.office-layout { grid-template-columns:1fr; }.office-feed { display:grid;grid-template-columns:repeat(3,minmax(0,1fr)); }.canvas-container { height:540px; } }
@media(max-width:800px) { .office-feed { grid-template-columns:1fr; } .scene-top { padding:0 15px; }.metric strong { font-size:24px; } .page-intro h1 { font-size:23px; } }
@media(max-width:650px) {
  .sidebar { width:48px;padding:17px 5px 12px; }.main-shell { margin-left:48px; }.brand-mark { width:29px;font-size:33px; }
  .sidebar nav { margin-top:22px; }.nav-button { padding:8px 2px;min-height:43px; }.nav-button>span { font-size:16px; }.nav-button.active { box-shadow:inset 2px 0 #8edce2; }.sidebar-bottom .nav-button { font-size:0;padding:8px 2px; }
  .topbar { height:43px;padding:0 12px; }.topbar-right { gap:6px; }.breadcrumb { font-size:9px; }.mode-badge { font-size:10px;padding:3px 5px; }.avatar { width:23px;height:23px; }
  .terminal-command { padding:5px 12px;height:39px;gap:6px; }.terminal-command button { padding:0 8px; }.terminal-command input { font-size:12px; }
  main { padding:18px 11px 12px; }.page-intro { margin-bottom:16px;gap:8px; }.page-intro h1 { font-size:19px;line-height:1.4;letter-spacing:-.6px; }.page-intro p { font-size:10px;line-height:1.7;max-width:190px; }.eyebrow { font-size:7px;letter-spacing:1.3px;margin-bottom:7px; }
  .intro-actions .button { padding:7px 8px;font-size:11px;margin-top:2px; }.metrics { gap:8px;margin-bottom:13px; }.metric { padding:12px;min-height:99px;border-radius:8px; }.metric-label { font-size:10px; }.metric-label>span { font-size:7px; }.metric strong { font-size:23px;margin:10px 0 6px; }.metric-sub { font-size:10px;max-width:80%;color:#8aa6b7; }.metric-tag { font-size:9px;right:8px;bottom:10px; }
  .scene-card { border-radius:10px; }.scene-top { height:44px;padding:0 11px;gap:5px; }.scene-top>div { gap:6px; }.scene-top strong { font-size:11px; }.scene-top .small-dot { margin-right:0; }.scene-button { padding:5px 6px;font-size:10px; }
  .canvas-container { height:395px; }.scene-location { top:15px;left:14px;font-size:8px; }.scene-location strong { font-size:9px; }.scene-location:before { font-size:6px; }.scene-hint { bottom:16px;font-size:9px;padding:7px 10px;max-width:calc(100% - 88px); }.scene-reset { right:12px;bottom:16px;width:28px;height:28px; }
  .scene-controls { padding:9px 11px;gap:8px;font-size:9px;min-height:40px; }.scene-controls kbd { font-size:8px;padding:2px 4px; }.scene-controls>span:nth-child(4) { display:none; }
  .feed-card,.content-card,.staff-card,.note-card { padding:15px; }.market-strip { margin-top:12px; }.page-footer { font-size:10px;line-height:1.9;color:#849fb0; }
  .trade-ticket { padding:16px; }.trade-ticket input,.trade-ticket select,.stock-search-wrap input { font-size:16px; }.contribution-heading h2 { font-size:20px;text-wrap:balance; }
  .office-design-note { flex-direction:column;align-items:flex-start;gap:5px;padding:10px 12px; }.scene-style { font-size:8px;margin-top:6px; }
  .dialog-header { padding:17px; }.dialog-body { padding:17px; }.account-panel { padding:27px; }.account-shell { border-radius:12px; }.account-gate { padding:12px; }
}
@media(prefers-reduced-motion:reduce) { input,textarea,select { transition:none; } }

/* Touch users can scroll across the room and operate the camera without a keyboard. */
@media (pointer:coarse) {
  .sidebar { overflow-y:auto;overscroll-behavior:contain; }
  .sidebar>* { flex-shrink:0; }
  .intro-actions { display:flex;flex-direction:column;align-items:stretch;gap:5px; }
  .intro-actions .secondary { display:block; }
  .intro-actions .button { min-height:40px;white-space:nowrap; }
  .scene-camera-controls { right:10px;bottom:10px; }
  .scene-camera-controls button { display:block;min-width:44px;min-height:44px; }
  .scene-controls>span { display:none; }
  .scene-controls>.scene-touch-help { display:block;font-size:10px;line-height:1.6; }
  .scene-hint { bottom:65px;max-width:calc(100% - 24px); }
  .close-button,.scene-button,.text-button,.nav-button,.terminal-command button { min-height:44px; }
  .close-button { min-width:44px; }
  input:not([type=checkbox]):not([type=radio]),select,textarea { font-size:16px; }
  .dialog-backdrop { padding-top:max(10px,env(safe-area-inset-top));padding-bottom:max(10px,env(safe-area-inset-bottom)); }
}
