@charset "UTF-8";

@font-face { font-family: Rubik; src: url('/fonts/rubik-400.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: Rubik; src: url('/fonts/rubik-500.woff2') format('woff2'); font-weight: 500; font-display: swap; }
@font-face { font-family: Rubik; src: url('/fonts/rubik-600.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: Rubik; src: url('/fonts/rubik-700.woff2') format('woff2'); font-weight: 700 900; font-display: swap; }

:root {
  color-scheme: dark;
  --bg: #07100e;
  --bg-deep: #040807;
  --panel: rgba(14, 28, 24, 0.82);
  --panel-strong: #10231e;
  --panel-soft: rgba(19, 39, 33, 0.58);
  --line: rgba(161, 230, 196, 0.14);
  --line-strong: rgba(161, 230, 196, 0.27);
  --text: #f2f7f3;
  --muted: #8da69b;
  --faint: #5e746c;
  --green: #19bd87;
  --green-deep: #087253;
  --mint: #a5f1c9;
  --blue: #72b8ff;
  --gold: #e9bd6b;
  --danger: #f28f80;
  --shadow: 0 28px 80px rgba(0, 0, 0, 0.32);
  --radius-xl: 30px;
  --radius-lg: 22px;
  --radius-md: 14px;
  --max: 1240px;
}

html[data-theme="light"] {
  color-scheme: light;
  --bg: #f2f7f3;
  --bg-deep: #e7f0ea;
  --panel: rgba(255, 255, 255, 0.86);
  --panel-strong: #ffffff;
  --panel-soft: rgba(231, 243, 235, 0.85);
  --line: rgba(4, 53, 38, 0.14);
  --line-strong: rgba(4, 53, 38, 0.27);
  --text: #0d211a;
  --muted: #50675d;
  --faint: #71867c;
  --green: #07845d;
  --green-deep: #056448;
  --mint: #075f48;
  --blue: #1673bf;
  --gold: #9d6d15;
  --shadow: 0 28px 80px rgba(32, 82, 56, 0.12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  min-width: 320px;
  margin: 0;
  overflow-x: hidden;
  background: var(--bg);
  color: var(--text);
  font-family: Rubik, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.5;
  transition: background 260ms ease, color 260ms ease;
}
body::selection { background: var(--green); color: #02130d; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
button:focus-visible, a:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }

.ambient, .grid-overlay { position: fixed; pointer-events: none; z-index: -2; }
.ambient { border-radius: 50%; filter: blur(2px); opacity: 0.24; }
.ambient-one { width: 580px; height: 580px; top: -230px; right: -120px; background: radial-gradient(circle, rgba(21, 190, 135, 0.42), transparent 69%); }
.ambient-two { width: 680px; height: 680px; bottom: 5%; left: -390px; background: radial-gradient(circle, rgba(79, 133, 255, 0.19), transparent 69%); }
.grid-overlay { inset: 0; z-index: -1; opacity: 0.28; background-image: linear-gradient(rgba(158, 226, 196, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(158, 226, 196, 0.035) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, black, transparent 72%); }
html[data-theme="light"] .grid-overlay { opacity: 0.45; background-image: linear-gradient(rgba(5, 91, 62, 0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(5, 91, 62, 0.04) 1px, transparent 1px); }

.section-shell, .site-header { width: min(calc(100% - 64px), var(--max)); margin-inline: auto; }
.site-header { display: flex; align-items: center; justify-content: space-between; gap: 22px; min-height: 92px; padding: 17px 0; }
.brand { display: inline-flex; align-items: center; gap: 11px; min-width: 230px; }
.brand-mark { display: grid; place-items: center; width: 42px; height: 42px; color: var(--green); filter: drop-shadow(0 0 18px rgba(25, 189, 135, 0.22)); }
.brand-mark svg, .closing-queen svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2.8; stroke-linecap: round; stroke-linejoin: round; }
.brand-mark circle, .closing-queen circle { fill: currentColor; stroke: none; }
.brand-copy { display: grid; gap: 0; }
.brand-copy strong { font-family: Georgia, "Times New Roman", serif; font-size: 1.15rem; letter-spacing: -0.03em; }
.brand-copy strong em { color: var(--green); font-style: normal; }
.brand-copy small, .footer-brand small { color: var(--muted); font-size: 0.61rem; letter-spacing: 0.11em; text-transform: uppercase; white-space: nowrap; }
.top-nav { display: flex; gap: 28px; align-items: center; margin-left: auto; }
.top-nav a { color: var(--muted); font-size: 0.78rem; font-weight: 700; letter-spacing: 0.04em; transition: color 180ms ease; }
.top-nav a:hover { color: var(--green); }
.header-actions { display: flex; align-items: center; gap: 8px; }
.quiet-button, .header-login, .primary-button, .outline-button, .card-link { border: 0; cursor: pointer; }
.quiet-button { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; padding: 0 10px; color: var(--muted); background: transparent; border-radius: 999px; font-size: 0.72rem; font-weight: 700; transition: color 180ms ease, background 180ms ease; }
.quiet-button:hover { color: var(--text); background: var(--panel-soft); }
.button-icon { display: inline-grid; place-items: center; width: 19px; height: 19px; border: 1px solid var(--line-strong); border-radius: 50%; font-size: 0.69rem; }
.header-login { display: inline-flex; align-items: center; gap: 10px; min-height: 40px; padding: 0 15px; color: #04110b; background: var(--mint); border-radius: 10px; font-size: 0.76rem; font-weight: 800; box-shadow: 0 10px 30px rgba(24, 190, 135, 0.14); transition: transform 180ms ease, box-shadow 180ms ease; }
.header-login:hover, .primary-button:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(24, 190, 135, 0.22); }

.hero { display: grid; grid-template-columns: minmax(0, 0.93fr) minmax(0, 1.07fr); align-items: center; min-height: 690px; gap: clamp(40px, 7vw, 102px); padding-top: 48px; padding-bottom: 83px; }
.hero-copy { position: relative; z-index: 1; }
.eyebrow { display: inline-flex; align-items: center; gap: 9px; margin: 0 0 18px; color: var(--green); font-size: 0.64rem; font-weight: 900; letter-spacing: 0.17em; }
.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 5px rgba(25, 189, 135, 0.1), 0 0 16px var(--green); }
h1, h2, h3, p { margin-top: 0; }
h1 { max-width: 700px; margin-bottom: 24px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(3.5rem, 6.3vw, 6.5rem); font-weight: 600; letter-spacing: -0.075em; line-height: 0.92; }
h1 > span { display: block; }
.gradient-text { color: var(--mint); background: linear-gradient(115deg, var(--mint), var(--green), #e7ce86); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.hero-lead { max-width: 540px; margin-bottom: 31px; color: var(--muted); font-size: 1.02rem; line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; }
.primary-button { display: inline-flex; align-items: center; justify-content: center; gap: 22px; min-height: 49px; padding: 0 17px 0 19px; color: #03140e; background: var(--mint); border-radius: 11px; font-size: 0.78rem; font-weight: 900; letter-spacing: 0.01em; transition: transform 180ms ease, box-shadow 180ms ease; }
.button-arrow { display: inline-grid; place-items: center; width: 27px; height: 27px; color: var(--mint); background: #0a2b20; border-radius: 50%; font-size: 1.05rem; }
.text-link { display: inline-flex; align-items: center; gap: 10px; padding: 8px 0; color: var(--text); background: transparent; border: 0; cursor: pointer; font-size: 0.8rem; font-weight: 800; }
.text-link span:last-child { color: var(--green); font-size: 1rem; transition: transform 180ms ease; }
.text-link:hover span:last-child { transform: translateY(3px); }
.hero-notes { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 43px; color: var(--faint); font-size: 0.66rem; font-weight: 700; }
.hero-notes span { display: inline-flex; align-items: center; gap: 6px; }
.note-icon { display: inline-grid; place-items: center; min-width: 18px; height: 18px; color: var(--green); border: 1px solid var(--line-strong); border-radius: 50%; font-size: 0.62rem; font-style: normal; }

.hero-visual { position: relative; min-height: 475px; display: grid; place-items: center; }
.visual-glow { position: absolute; inset: 8% 5% 12%; border-radius: 50%; background: radial-gradient(ellipse, rgba(22, 190, 135, 0.24), transparent 66%); filter: blur(20px); }
.console-window { position: relative; width: min(100%, 580px); overflow: hidden; padding: 16px; background: linear-gradient(140deg, rgba(19, 44, 35, 0.94), rgba(7, 15, 13, 0.96)); border: 1px solid rgba(175, 242, 205, 0.2); border-radius: 20px; box-shadow: 0 42px 85px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.05); transform: perspective(1500px) rotateY(-5deg) rotateX(2deg); }
html[data-theme="light"] .console-window { background: linear-gradient(140deg, #ffffff, #e8f4ec); box-shadow: 0 42px 85px rgba(21, 105, 67, 0.18); }
.console-topbar { display: flex; align-items: center; gap: 12px; padding-bottom: 16px; border-bottom: 1px solid var(--line); color: var(--faint); font-size: 0.54rem; font-weight: 800; letter-spacing: 0.13em; }
.window-dots { display: flex; gap: 4px; }
.window-dots span { width: 5px; height: 5px; border-radius: 50%; background: var(--faint); }
.window-dots span:nth-child(1) { background: #ef8270; }.window-dots span:nth-child(2) { background: var(--gold); }.window-dots span:nth-child(3) { background: var(--green); }
.console-label { flex: 1; }
.secure-state { color: var(--green); font-size: 0.5rem; }.secure-state i, .state-pill i, .table-status i { display: inline-block; width: 6px; height: 6px; margin-right: 4px; border-radius: 50%; background: currentColor; box-shadow: 0 0 9px currentColor; }
.console-context { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 22px 4px 17px; }.console-context div { display: grid; gap: 2px; }.console-context small, .mini-metric small, .owner-dashboard-top small, .owner-stats small, .owner-table-head, .resource-copy small { color: var(--faint); font-size: 0.5rem; font-weight: 900; letter-spacing: 0.16em; }.console-context strong { font-size: 0.88rem; }.console-context span:not(.state-pill) { color: var(--muted); font-size: 0.62rem; }
.state-pill { color: var(--green); border: 1px solid rgba(25, 189, 135, 0.28); border-radius: 999px; padding: 6px 9px; font-size: 0.58rem; font-weight: 800; white-space: nowrap; }
.mini-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }.mini-metric { min-height: 84px; padding: 12px 10px; background: rgba(148, 225, 188, 0.045); border: 1px solid var(--line); border-radius: 10px; }.mini-metric b { display: block; margin: 5px 0 3px; font-size: 1.18rem; letter-spacing: -0.05em; }.mini-metric b em { color: var(--muted); font-size: 0.55rem; font-style: normal; letter-spacing: 0.03em; }.mini-metric span { font-size: 0.53rem; font-weight: 800; }.metric-up { color: var(--green); }.metric-neutral { color: var(--blue); }
.process-panel { position: relative; min-height: 180px; margin-top: 12px; border: 1px solid var(--line); border-radius: 12px; background: radial-gradient(circle at 50% 50%, rgba(24, 183, 127, 0.08), transparent 62%); }.process-line { position: absolute; top: 78px; height: 1px; background: linear-gradient(90deg, transparent, var(--green), transparent); opacity: 0.65; }.line-one { left: 23%; width: 25%; }.line-two { left: 53%; width: 25%; }.process-node { position: absolute; top: 31px; display: grid; justify-items: center; gap: 3px; min-width: 90px; color: var(--muted); font-size: 0.48rem; font-weight: 800; text-align: center; }.process-node small { font-size: 0.46rem; font-weight: 900; letter-spacing: 0.08em; }.process-node b { color: var(--text); font-size: 0.61rem; }.source-node { left: 7%; }.vfd-node { left: 42%; }.motor-node { right: 7%; }.node-icon { display: grid; place-items: center; width: 45px; height: 45px; border: 1px solid var(--line-strong); color: var(--green); background: rgba(19, 189, 132, 0.1); border-radius: 14px; box-shadow: 0 0 24px rgba(19, 189, 132, 0.12); }.solar-icon { font-size: 1.8rem; line-height: 1; }.vfd-icon { font-size: 1.5rem; font-weight: 900; }.fan-icon { display: grid; place-items: center; width: 45px; height: 45px; border: 1px solid var(--line-strong); border-radius: 50%; color: var(--green); background: rgba(19, 189, 132, 0.1); animation: spin 5s linear infinite; }.fan-icon::after { content: ""; width: 6px; height: 6px; position: absolute; border-radius: 50%; background: var(--green); }.fan-icon i { position: absolute; width: 17px; height: 4px; border-radius: 100%; background: currentColor; transform-origin: 50% 50%; }.fan-icon i:nth-child(1) { transform: rotate(0deg) translateX(9px); }.fan-icon i:nth-child(2) { transform: rotate(90deg) translateX(9px); }.fan-icon i:nth-child(3) { transform: rotate(180deg) translateX(9px); }.fan-icon i:nth-child(4) { transform: rotate(270deg) translateX(9px); }.flow-label { position: absolute; top: 64px; color: var(--green); font-size: 0.49rem; font-weight: 900; }.flow-one { left: 40%; }.flow-two { left: 75%; }.console-footer { display: flex; justify-content: space-between; gap: 10px; padding: 13px 4px 1px; color: var(--faint); font-size: 0.5rem; font-weight: 800; }.footer-signal { display: inline-block; width: 6px; height: 6px; margin-right: 5px; border-radius: 50%; background: var(--green); }
.floating-tag { position: absolute; z-index: 2; display: inline-flex; align-items: center; gap: 8px; padding: 8px 10px; color: var(--muted); background: var(--panel-strong); border: 1px solid var(--line-strong); border-radius: 8px; box-shadow: var(--shadow); font-size: 0.54rem; font-weight: 900; letter-spacing: 0.1em; }.floating-tag span { display: inline-grid; place-items: center; width: 20px; height: 20px; color: #07130e; background: var(--green); border-radius: 5px; font-size: 0.61rem; }.tag-top { top: 9%; right: -2%; }.tag-bottom { bottom: 8%; left: -3%; }.tag-bottom span { color: var(--green); background: rgba(25, 189, 135, 0.12); }

.pathways { padding: 83px 0 118px; }.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 38px; margin-bottom: 31px; }.section-heading h2, .story-copy h2, .owner-intro h2, .closing-card h2 { max-width: 660px; margin-bottom: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.15rem, 4vw, 4.1rem); font-weight: 600; letter-spacing: -0.07em; line-height: 0.98; }.section-heading > p { max-width: 300px; margin-bottom: 5px; color: var(--muted); font-size: 0.86rem; line-height: 1.7; }
.pathway-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }.pathway-card { min-height: 365px; padding: 24px 23px 22px; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius-lg); box-shadow: 0 18px 55px rgba(0, 0, 0, 0.07); transition: transform 220ms ease, border-color 220ms ease, background 220ms ease; }.pathway-card:hover { transform: translateY(-7px); border-color: var(--line-strong); background: var(--panel-strong); }.featured-card { background: linear-gradient(145deg, rgba(19, 84, 61, 0.72), var(--panel)); border-color: rgba(32, 208, 148, 0.29); }.owner-card { background: linear-gradient(145deg, rgba(49, 52, 93, 0.48), var(--panel)); }.card-topline { display: flex; justify-content: space-between; align-items: center; }.card-index { color: var(--green); font-size: 0.65rem; font-weight: 900; letter-spacing: 0.12em; }.card-badge { color: var(--faint); font-size: 0.51rem; font-weight: 900; letter-spacing: 0.1em; }.live-badge { color: var(--green); }.owner-badge { color: #b9a8ef; }.pathway-icon { display: grid; place-items: center; position: relative; width: 76px; height: 76px; margin: 34px 0 26px; border: 1px solid var(--line-strong); border-radius: 20px; background: rgba(5, 17, 13, 0.24); color: var(--green); }.monitor-icon span, .monitor-icon i, .monitor-icon b { position: absolute; display: block; width: 33px; height: 20px; border: 1px solid currentColor; border-radius: 5px; }.monitor-icon span { transform: translate(-8px, -7px); opacity: .45; }.monitor-icon i { transform: translate(8px, 7px); }.monitor-icon b { width: 15px; height: 3px; bottom: 12px; border-radius: 2px; background: currentColor; border: 0; }.book-icon span { width: 29px; height: 39px; border: 1px solid currentColor; border-radius: 3px 8px 8px 3px; transform: translateX(-7px); }.book-icon i { width: 29px; height: 39px; border: 1px solid currentColor; border-left: 0; border-radius: 0 8px 8px 0; transform: translateX(7px); }.book-icon b { position: absolute; width: 23px; height: 1px; background: currentColor; box-shadow: 0 7px currentColor, 0 14px currentColor; }.map-icon span { width: 42px; height: 36px; border: 1px solid currentColor; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); }.map-icon i { width: 7px; height: 7px; border: 1px solid currentColor; border-radius: 50%; }.map-icon b { position: absolute; bottom: 13px; width: 23px; height: 1px; background: currentColor; transform: rotate(-16deg); }.pathway-card h3 { margin-bottom: 11px; font-size: 1.25rem; letter-spacing: -0.04em; }.pathway-card p { max-width: 320px; min-height: 84px; margin-bottom: 21px; color: var(--muted); font-size: 0.8rem; line-height: 1.7; }.card-link { display: inline-flex; align-items: center; gap: 10px; padding: 0; color: var(--text); background: transparent; font-size: 0.72rem; font-weight: 900; }.card-link span:last-child { color: var(--green); font-size: 1.05rem; transition: transform 180ms ease; }.card-link:hover span:last-child { transform: translate(3px, -3px); }

.platform-story { display: grid; grid-template-columns: 0.78fr 1.22fr; gap: clamp(45px, 9vw, 120px); align-items: center; padding: 75px 0 115px; border-top: 1px solid var(--line); }.story-copy p:not(.eyebrow), .owner-intro > p:not(.eyebrow) { max-width: 460px; margin: 23px 0 0; color: var(--muted); font-size: 0.88rem; line-height: 1.8; }.architecture-card { padding: 22px; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius-lg); box-shadow: var(--shadow); }.architecture-row { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 12px; }.architecture-step { min-height: 125px; display: grid; align-content: center; justify-items: center; gap: 5px; padding: 14px 7px; text-align: center; border: 1px solid var(--line); border-radius: 14px; }.architecture-step.active-step { border-color: rgba(25, 189, 135, 0.5); background: rgba(25, 189, 135, 0.08); }.architecture-number { color: var(--green); font-size: 0.57rem; font-weight: 900; }.architecture-step b { font-size: 0.92rem; }.architecture-step small { color: var(--muted); font-size: 0.58rem; }.architecture-arrow { color: var(--green); font-size: 1.3rem; }.architecture-note { display: flex; align-items: center; gap: 9px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--line); color: var(--muted); font-size: 0.63rem; font-weight: 800; }.lock-icon { display: grid; place-items: center; width: 22px; height: 22px; color: var(--green); background: rgba(25, 189, 135, 0.11); border-radius: 7px; }

.knowledge-section { padding: 85px 0 113px; border-top: 1px solid var(--line); }.compact-heading { align-items: center; }.outline-button { display: inline-flex; align-items: center; gap: 17px; min-height: 44px; padding: 0 14px 0 17px; color: var(--text); background: transparent; border: 1px solid var(--line-strong); border-radius: 10px; font-size: 0.7rem; font-weight: 900; transition: border-color 180ms ease, color 180ms ease, transform 180ms ease; }.outline-button span:last-child { color: var(--green); font-size: 1rem; }.outline-button:hover { color: var(--green); border-color: var(--green); transform: translateY(-2px); }.resource-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 11px; }.resource-card { overflow: hidden; background: var(--panel); border: 1px solid var(--line); border-radius: 17px; }.resource-visual { position: relative; display: grid; place-items: center; height: 142px; background: linear-gradient(135deg, rgba(14, 88, 60, 0.75), rgba(4, 16, 12, 0.94)); border-bottom: 1px solid var(--line); }.manual-resource .resource-visual { background: linear-gradient(135deg, rgba(48, 46, 89, 0.82), rgba(11, 11, 26, 0.97)); }.note-resource .resource-visual { background: linear-gradient(135deg, rgba(124, 75, 42, 0.76), rgba(27, 13, 10, 0.97)); }.resource-visual::after { content: ""; position: absolute; inset: 0; opacity: 0.35; background-image: linear-gradient(125deg, transparent 20%, rgba(255,255,255,.12) 20.5%, transparent 21%), linear-gradient(20deg, transparent 65%, rgba(255,255,255,.08) 65.5%, transparent 66%); }.play-button, .document-symbol, .warning-symbol { position: relative; z-index: 1; display: grid; place-items: center; width: 48px; height: 48px; color: var(--mint); background: rgba(4, 16, 12, 0.3); border: 1px solid rgba(174, 246, 209, 0.45); border-radius: 50%; font-size: 1.1rem; }.document-symbol { border-radius: 12px; font-size: 1.5rem; }.warning-symbol { color: #ffd590; border-color: rgba(255, 213, 144, 0.5); font-size: 1.6rem; }.resource-label { position: absolute; z-index: 1; top: 13px; left: 14px; color: rgba(255,255,255,.6); font-size: 0.52rem; font-weight: 900; letter-spacing: .14em; }.resource-copy { padding: 16px 16px 18px; }.resource-copy small { display: block; margin-bottom: 8px; }.resource-copy h3 { margin-bottom: 5px; font-size: 0.98rem; letter-spacing: -0.03em; }.resource-copy > span { color: var(--muted); font-size: 0.67rem; }

.owner-section { display: grid; grid-template-columns: 0.78fr 1.22fr; gap: clamp(44px, 8vw, 105px); align-items: center; padding: 84px 0 120px; border-top: 1px solid var(--line); }.owner-intro h2 { max-width: 480px; }.small-button { margin-top: 27px; }.owner-dashboard { padding: 20px; background: var(--panel); border: 1px solid var(--line-strong); border-radius: var(--radius-lg); box-shadow: var(--shadow); }.owner-dashboard-top { display: flex; align-items: end; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid var(--line); }.owner-dashboard-top div { display: grid; gap: 2px; }.owner-dashboard-top strong { font-family: Georgia, "Times New Roman", serif; font-size: 1.4rem; }.live-date { color: var(--faint); font-size: 0.52rem; font-weight: 900; letter-spacing: .13em; }.owner-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; padding: 14px 0; }.owner-stats > div { position: relative; min-height: 120px; padding: 13px 10px; border: 1px solid var(--line); border-radius: 12px; }.stat-mark { display: grid; place-items: center; width: 22px; height: 22px; margin-bottom: 13px; border-radius: 7px; font-size: 0.62rem; font-weight: 900; }.green-mark { color: var(--green); background: rgba(25, 189, 135, 0.13); }.blue-mark { color: var(--blue); background: rgba(114, 184, 255, 0.13); }.gold-mark { color: var(--gold); background: rgba(233, 189, 107, 0.13); }.owner-stats small { display: block; }.owner-stats b { display: block; margin: 3px 0; font-size: 1.46rem; letter-spacing: -0.06em; }.owner-stats em { color: var(--muted); font-size: 0.55rem; font-style: normal; }.owner-table-head, .owner-site-row { display: grid; grid-template-columns: 1.55fr .62fr .85fr; gap: 10px; align-items: center; }.owner-table-head { padding: 10px 9px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.owner-site-row { min-height: 58px; padding: 9px; border-bottom: 1px solid var(--line); font-size: 0.66rem; }.owner-site-row:last-child { border-bottom: 0; }.owner-site-row > span:first-child { display: grid; gap: 1px; }.owner-site-row b { font-size: 0.69rem; }.owner-site-row small { color: var(--muted); font-size: 0.56rem; }.table-status { font-size: 0.57rem; font-weight: 800; white-space: nowrap; }.active-status { color: var(--green); }.warning-status { color: var(--gold); }

.closing { padding: 11px 0 86px; }.closing-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; padding: 27px 31px; background: linear-gradient(110deg, rgba(16, 77, 57, 0.78), rgba(17, 35, 30, 0.66)); border: 1px solid rgba(149, 236, 188, 0.22); border-radius: var(--radius-lg); }.closing-queen { display: block; width: 58px; height: 58px; color: var(--green); }.closing-card .eyebrow { margin-bottom: 5px; }.closing-card h2 { font-size: clamp(1.65rem, 3vw, 2.7rem); }.site-footer { display: flex; justify-content: space-between; gap: 20px; padding: 24px 0 32px; border-top: 1px solid var(--line); }.footer-brand { display: flex; align-items: center; gap: 9px; }.small-mark { width: 30px; height: 30px; }.footer-brand span:last-child { display: grid; gap: 0; }.footer-brand b { font-family: Georgia, "Times New Roman", serif; font-size: .8rem; }.footer-copy { display: flex; align-items: center; gap: 22px; color: var(--faint); font-size: .58rem; font-weight: 700; }

.toast { position: fixed; z-index: 11000; right: 24px; bottom: 24px; max-width: min(370px, calc(100% - 48px)); padding: 13px 16px; color: var(--text); background: var(--panel-strong); border: 1px solid var(--line-strong); border-radius: 11px; box-shadow: var(--shadow); font-size: .72rem; font-weight: 800; opacity: 0; pointer-events: none; transform: translateY(12px); transition: opacity 180ms ease, transform 180ms ease; }.toast.visible { opacity: 1; transform: translateY(0); }.modal-backdrop { position: fixed; z-index: 10000; inset: 0; display: grid; place-items: center; padding: 22px; background: rgba(2, 9, 7, .72); backdrop-filter: blur(14px); opacity: 0; pointer-events: none; transition: opacity 180ms ease; }.modal-backdrop.open { opacity: 1; pointer-events: auto; }.demo-modal { position: relative; width: min(100%, 465px); padding: 34px; background: var(--panel-strong); border: 1px solid var(--line-strong); border-radius: 22px; box-shadow: var(--shadow); transform: translateY(10px) scale(.98); transition: transform 180ms ease; }.modal-backdrop.open .demo-modal { transform: translateY(0) scale(1); }.modal-close { position: absolute; top: 12px; right: 14px; width: 30px; height: 30px; color: var(--muted); background: transparent; border: 0; cursor: pointer; font-size: 1.5rem; line-height: 1; }.modal-kicker { color: var(--green); font-size: .59rem; font-weight: 900; letter-spacing: .14em; }.demo-modal h2 { margin: 13px 0 10px; font-family: Georgia, "Times New Roman", serif; font-size: 2.2rem; letter-spacing: -.06em; }.demo-modal p { margin-bottom: 25px; color: var(--muted); font-size: .86rem; line-height: 1.7; }.modal-actions { display: flex; align-items: center; gap: 19px; }.modal-actions .text-link { color: var(--muted); }

@keyframes spin { to { transform: rotate(360deg); } }
@media (max-width: 980px) { .top-nav { display: none; }.hero { grid-template-columns: 1fr; min-height: auto; padding-top: 67px; }.hero-copy { max-width: 730px; }.hero-visual { margin-top: 12px; }.platform-story, .owner-section { grid-template-columns: 1fr; }.story-copy, .owner-intro { max-width: 700px; }.owner-dashboard { max-width: 720px; }.pathway-grid { grid-template-columns: repeat(3, minmax(210px, 1fr)); overflow-x: auto; padding-bottom: 7px; }.pathway-card { min-width: 230px; }.resource-strip { grid-template-columns: repeat(3, minmax(210px, 1fr)); overflow-x: auto; padding-bottom: 7px; }.resource-card { min-width: 240px; } }
@media (max-width: 650px) { .section-shell, .site-header { width: min(calc(100% - 34px), var(--max)); }.site-header { min-height: 76px; }.brand { min-width: 0; }.brand-copy small { display: none; }.brand-copy strong { font-size: 1rem; }.brand-mark { width: 35px; height: 35px; }.header-actions { gap: 3px; }.quiet-button { padding: 0 5px; }.quiet-button span:last-child { display: none; }.header-login { min-height: 35px; padding: 0 10px; font-size: .66rem; }.hero { padding-top: 52px; padding-bottom: 65px; }.hero h1 { font-size: clamp(3.2rem, 16vw, 5rem); }.hero-lead { font-size: .91rem; }.hero-notes { margin-top: 29px; }.hero-visual { min-height: 385px; }.console-window { padding: 11px; transform: none; }.console-topbar { padding-bottom: 12px; }.console-label { font-size: .46rem; }.secure-state { display: none; }.console-context { padding-top: 16px; }.mini-metric { min-height: 72px; padding: 9px 7px; }.mini-metric b { font-size: .94rem; }.mini-metric small { font-size: .43rem; }.mini-metric span { font-size: .45rem; }.process-panel { min-height: 155px; }.process-node { top: 25px; min-width: 65px; }.node-icon, .fan-icon { width: 36px; height: 36px; }.source-node { left: 2%; }.vfd-node { left: 36%; }.motor-node { right: 2%; }.process-node small { font-size: .38rem; }.process-node b { font-size: .48rem; }.process-line { top: 62px; }.flow-label { top: 51px; font-size: .42rem; }.tag-top { right: -4%; top: 0; }.tag-bottom { left: -4%; bottom: 0; }.floating-tag { font-size: .43rem; padding: 6px 7px; }.floating-tag span { width: 16px; height: 16px; font-size: .5rem; }.section-heading { display: block; }.section-heading > p { margin-top: 17px; }.pathways, .knowledge-section, .owner-section { padding-top: 65px; padding-bottom: 78px; }.pathway-grid, .resource-strip { display: flex; overflow-x: auto; margin-inline: -17px; padding-inline: 17px 17px; scroll-snap-type: x mandatory; }.pathway-card, .resource-card { scroll-snap-align: start; }.pathway-card { min-height: 350px; }.platform-story { padding: 65px 0 78px; }.architecture-card { padding: 12px; }.architecture-row { gap: 5px; }.architecture-step { min-height: 104px; }.architecture-step b { font-size: .76rem; }.architecture-step small { font-size: .48rem; }.architecture-arrow { font-size: .9rem; }.owner-stats { gap: 5px; }.owner-stats > div { min-height: 108px; padding: 9px 7px; }.owner-stats b { font-size: 1.18rem; }.owner-stats em { font-size: .46rem; }.owner-table-head, .owner-site-row { grid-template-columns: 1.4fr .52fr .8fr; gap: 5px; }.owner-site-row { padding-inline: 4px; }.owner-site-row b { font-size: .57rem; }.owner-site-row small, .table-status { font-size: .47rem; }.closing-card { grid-template-columns: auto 1fr; padding: 22px 17px; gap: 14px; }.closing-card .primary-button { grid-column: 1 / -1; width: 100%; }.closing-queen { width: 42px; height: 42px; }.site-footer { display: grid; }.footer-copy { display: grid; gap: 4px; }.demo-modal { padding: 29px 22px; } }

html[dir="rtl"] body { font-family: Tahoma, Arial, sans-serif; }
html[dir="rtl"] .hero, html[dir="rtl"] .section-heading, html[dir="rtl"] .architecture-row, html[dir="rtl"] .owner-dashboard-top { direction: rtl; }
html[dir="rtl"] .hero-actions, html[dir="rtl"] .hero-notes { direction: rtl; }
html[dir="rtl"] .header-actions { direction: ltr; }
html[dir="rtl"] .card-link span:last-child, html[dir="rtl"] .button-arrow { transform: scaleX(-1); }
html[dir="rtl"] .top-nav { direction: rtl; }

/* Self-hosted hero artwork keeps the front door available without a third-party
   video/CDN dependency. */
body {
  background: #000;
  color: #fff;
  font-family: 'Inter', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.hero {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 100vh;
  min-height: 100svh;
  margin: 0;
  overflow: hidden;
  isolation: isolate;
  background:
    linear-gradient(90deg, rgba(0, 8, 6, .82), rgba(0, 8, 6, .28)),
    url("/assets/hero-base.webp") center / cover no-repeat,
    #000;
  color: #fff;
}

.hero-frame {
  position: relative;
  z-index: 1;
  display: flex;
  flex: 1;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  min-height: 100svh;
  padding: 24px clamp(24px, 4vw, 64px) 48px;
}

.liquid-glass {
  position: relative;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.4);
  background-blend-mode: luminosity;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border: none;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.1);
}

.liquid-glass::before {
  content: '';
  position: absolute;
  z-index: 0;
  inset: 0;
  padding: 1.4px;
  border-radius: inherit;
  background: linear-gradient(180deg,
    rgba(255,255,255,0.3) 0%, rgba(255,255,255,0.1) 20%,
    rgba(255,255,255,0) 40%, rgba(255,255,255,0) 60%,
    rgba(255,255,255,0.1) 80%, rgba(255,255,255,0.3) 100%);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}

.hero-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
  min-height: 52px;
  padding: 8px 16px;
  border-radius: 12px;
}

.hero-header > * { position: relative; z-index: 1; }
.hero-brand { display: inline-flex; align-items: center; gap: 9px; min-width: 176px; color: #fff; }
.hero-brand-mark { display: inline-grid; place-items: center; width: 31px; height: 31px; color: #fff; }
.hero-brand-mark svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2.8; stroke-linecap: round; stroke-linejoin: round; }
.hero-brand-mark circle { fill: currentColor; stroke: none; }
.hero-brand-text { font-size: 1.5rem; font-weight: 600; letter-spacing: -0.045em; white-space: nowrap; }
.hero-brand-text em { font-style: normal; font-weight: 400; }
.hero-nav { display: flex; align-items: center; justify-content: center; gap: 32px; margin-inline: auto; }
.hero-nav a { color: #fff; font-size: .875rem; font-weight: 400; transition: color 180ms ease; }
.hero-nav a:hover { color: #d1d5db; }
.hero-header-actions { display: flex; align-items: center; gap: 8px; min-width: 176px; justify-content: flex-end; }
.hero-utility { display: inline-flex; align-items: center; gap: 6px; padding: 6px; color: rgba(255, 255, 255, .8); background: transparent; border: 0; cursor: pointer; font-size: .65rem; }
.hero-utility span { display: inline-grid; place-items: center; width: 19px; height: 19px; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; }
.hero-utility b { font-weight: 500; }
.hero-utility:hover { color: #fff; }
.hero-chat-button { min-height: 40px; padding: 0 24px; color: #000; background: #fff; border: 0; border-radius: 8px; cursor: pointer; font-size: .875rem; font-weight: 500; transition: background 180ms ease, transform 180ms ease; }
.hero-chat-button:hover { background: #f3f4f6; transform: translateY(-1px); }

.hero-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  padding-bottom: 0;
}

.hero-main-column { max-width: 780px; }
.hero-kicker { margin: 0 0 18px; color: rgba(255,255,255,.72); font-size: .64rem; font-weight: 500; letter-spacing: .18em; }
.hero h1 {
  max-width: 920px;
  margin: 0 0 16px;
  color: #fff;
  font-family: 'Inter', sans-serif;
  font-size: clamp(2.25rem, 6.4vw, 5.8rem);
  font-weight: 400;
  letter-spacing: -0.04em;
  line-height: 1.02;
}
.heading-line { display: block; white-space: nowrap; }
.heading-char { display: inline-block; opacity: 0; transform: translateX(-18px); transition-property: opacity, transform; transition-duration: 500ms; transition-timing-function: ease-out; }
.heading-char.heading-space { width: .28em; }
.hero.heading-ready .heading-char { opacity: 1; transform: translateX(0); }
.hero-subheading { max-width: 610px; margin: 0 0 20px; color: #d1d5db; font-size: clamp(1rem, 1.4vw, 1.125rem); font-weight: 400; line-height: 1.6; }
.hero-button-row { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.hero-primary-button, .hero-glass-button { display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 49px; padding: 0 32px; border-radius: 8px; cursor: pointer; font-size: .92rem; font-weight: 500; transition: background 180ms ease, color 180ms ease, border-color 180ms ease, transform 180ms ease; }
.hero-primary-button { color: #000; background: #fff; border: 1px solid #fff; }.hero-primary-button:hover { background: #f3f4f6; transform: translateY(-1px); }.hero-primary-button span:last-child, .hero-glass-button span:last-child { font-size: 1.05rem; }
.hero-glass-button { color: #fff; border: 1px solid rgba(255,255,255,.2); }.hero-glass-button:hover { color: #000; background: #fff; border-color: #fff; }
.hero-tag-column { display: flex; align-items: flex-end; justify-content: flex-start; margin-top: 36px; }
.hero-tag-card { padding: 12px 24px; border-radius: 12px; color: #fff; font-size: clamp(1.125rem, 2.2vw, 1.5rem); font-weight: 300; line-height: 1.2; }

.fade-in { opacity: 0; transition-property: opacity; transition-timing-function: ease; }
.fade-in.is-visible { opacity: 1; }

.usfull-story-quote { display: grid; gap: 7px; max-width: 500px; margin: 27px 0 0; padding: 17px 19px; border-left: 2px solid var(--green); color: var(--muted); background: rgba(255,255,255,.035); border-radius: 0 12px 12px 0; font-size: .82rem; line-height: 1.6; }.usfull-story-quote strong { color: var(--text); font-size: .92rem; font-weight: 600; }

/* Keep the lower preview neutral as well: no purple or indigo accents. */
:root { --blue: #a8b2bb; }
.owner-card { background: linear-gradient(145deg, rgba(40, 40, 40, .72), var(--panel)); }
.manual-resource .resource-visual { background: linear-gradient(135deg, rgba(61, 61, 61, .82), rgba(11, 11, 11, .97)); }

@media (min-width: 1024px) {
  .hero-content { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 36px; }
  .hero-tag-column { justify-content: flex-end; margin-top: 0; }
}

@media (max-width: 767px) {
  .hero-frame { padding: 24px 24px 48px; }
  .hero-header { padding-inline: 12px; }
  .hero-brand { min-width: 0; }.hero-brand-mark { width: 27px; height: 27px; }.hero-brand-text { font-size: 1.25rem; }
  .hero-nav { display: none; }
  .hero-header-actions { min-width: 0; }.hero-utility b { display: none; }.hero-utility { padding: 3px; }.hero-chat-button { padding-inline: 16px; font-size: .78rem; }
  .hero-content { padding-top: 120px; }
  .hero h1 { font-size: clamp(2.35rem, 11vw, 4rem); line-height: 1.04; }.heading-line { white-space: normal; }
  .hero-tag-column { margin-top: 34px; }.hero-tag-card { padding-inline: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .heading-char { opacity: 1; transform: none; transition: none; }
  .fade-in { opacity: 1; transition: none; }
  .hero-chat-button, .hero-primary-button, .hero-glass-button { transition: none; }
}

/* Knowledge Center and Owner Portal preview pages. */
.product-page {
  min-height: 100vh;
  background: #070707;
  color: #f5f5f5;
  --page-panel: rgba(20, 20, 20, .82);
  --page-panel-strong: #151515;
  --page-line: rgba(255, 255, 255, .13);
  --page-line-soft: rgba(255, 255, 255, .08);
  --page-muted: #a2a2a2;
  --page-faint: #6e6e6e;
  --page-green: #b6efcf;
  --page-green-deep: #3ab67a;
  --page-gold: #e7bf79;
  --page-red: #ed8e83;
}
.product-page a { color: inherit; }
.subsite-header { display: flex; align-items: center; justify-content: space-between; gap: 25px; min-height: 86px; padding-block: 17px; border-bottom: 1px solid var(--page-line-soft); }
.subsite-brand { display: inline-flex; align-items: center; gap: 9px; min-width: 220px; }.subsite-mark { display: grid; place-items: center; width: 35px; height: 35px; color: var(--page-green); }.subsite-mark svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2.8; stroke-linecap: round; stroke-linejoin: round; }.subsite-mark circle { fill: currentColor; stroke: none; }.subsite-brand > span:last-child { display: grid; gap: 0; }.subsite-brand strong { font-family: Georgia, "Times New Roman", serif; font-size: 1rem; letter-spacing: -.035em; }.subsite-brand em { color: var(--page-green); font-style: normal; font-weight: 400; }.subsite-brand small { color: var(--page-faint); font-size: .52rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.subsite-nav { display: flex; align-items: center; justify-content: center; gap: 26px; margin-inline: auto; }.subsite-nav a { color: var(--page-muted); font-size: .72rem; font-weight: 600; transition: color 180ms ease; }.subsite-nav a:hover, .subsite-nav a.active { color: #fff; }.subsite-nav a.active { position: relative; }.subsite-nav a.active::after { content: ""; position: absolute; right: 0; bottom: -10px; left: 0; height: 1px; background: var(--page-green-deep); }
.subsite-actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; min-width: 220px; }.page-utility { display: inline-flex; align-items: center; gap: 5px; padding: 5px; color: var(--page-muted); background: transparent; border: 0; cursor: pointer; font-size: .62rem; }.page-utility span { display: grid; place-items: center; width: 19px; height: 19px; border: 1px solid var(--page-line); border-radius: 50%; }.page-utility:hover { color: #fff; }.page-chat-button { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 0 17px; color: #050505; background: #fff; border: 0; border-radius: 8px; cursor: pointer; font-size: .7rem; font-weight: 700; transition: background 180ms ease, transform 180ms ease; }.page-chat-button:hover { background: #e5e5e5; transform: translateY(-1px); }
.page-eyebrow { display: flex; align-items: center; gap: 8px; margin: 0 0 14px; color: var(--page-green); font-size: .58rem; font-weight: 800; letter-spacing: .16em; }.page-eyebrow-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--page-green-deep); box-shadow: 0 0 12px var(--page-green-deep); }
.page-hero { display: grid; grid-template-columns: minmax(0, 1fr) 370px; align-items: end; gap: 50px; min-height: 425px; padding-top: 68px; padding-bottom: 64px; }.page-hero-copy h1, .owner-portal-heading h1 { max-width: 770px; margin: 0 0 20px; color: #fff; font-family: 'Inter', sans-serif; font-size: clamp(2.7rem, 5.8vw, 5.7rem); font-weight: 400; letter-spacing: -.07em; line-height: .98; }.page-hero-copy h1 br { display: block; }.page-hero-copy > p:not(.page-eyebrow), .owner-portal-heading > div:first-child > p:not(.page-eyebrow) { max-width: 610px; margin: 0; color: var(--page-muted); font-size: .92rem; line-height: 1.75; }.page-hero-chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 25px; }.page-hero-chips span { padding: 6px 9px; color: var(--page-faint); border: 1px solid var(--page-line); border-radius: 999px; font-size: .51rem; font-weight: 800; letter-spacing: .1em; }
.library-signal-card { min-height: 260px; padding: 20px; background: linear-gradient(145deg, rgba(23, 62, 46, .75), rgba(12, 12, 12, .98)); border: 1px solid rgba(177, 241, 204, .2); border-radius: 20px; box-shadow: 0 27px 72px rgba(0,0,0,.3); }.signal-card-top, .signal-card-foot { display: flex; align-items: center; justify-content: space-between; gap: 9px; color: var(--page-faint); font-size: .49rem; font-weight: 800; letter-spacing: .12em; }.signal-status { color: var(--page-green); }.signal-status i { display: inline-block; width: 5px; height: 5px; margin-right: 4px; border-radius: 50%; background: currentColor; box-shadow: 0 0 9px currentColor; }.signal-orbit { display: flex; gap: 3px; }.signal-orbit i { width: 5px; height: 5px; border-radius: 50%; background: var(--page-green-deep); }.signal-orbit i:nth-child(2) { background: var(--page-gold); }.signal-card-main { display: flex; align-items: center; gap: 13px; padding: 39px 0 31px; }.signal-number { color: var(--page-green); font-size: 4.8rem; font-weight: 300; letter-spacing: -.12em; line-height: .8; }.signal-card-main div { display: grid; gap: 4px; }.signal-card-main strong { font-size: .95rem; font-weight: 500; }.signal-card-main small { color: var(--page-muted); font-size: .66rem; }.signal-card-lines { display: flex; align-items: end; gap: 5px; height: 45px; margin-bottom: 22px; }.signal-card-lines span { flex: 1; height: 18%; background: var(--page-green-deep); border-radius: 2px 2px 0 0; opacity: .68; }.signal-card-lines span:nth-child(2) { height: 47%; }.signal-card-lines span:nth-child(3) { height: 28%; background: var(--page-gold); }.signal-card-lines span:nth-child(4) { height: 78%; }.signal-card-lines span:nth-child(5) { height: 58%; }.signal-card-foot { padding-top: 13px; border-top: 1px solid var(--page-line); font-size: .45rem; letter-spacing: .08em; }
.knowledge-workspace { padding: 20px 0 92px; border-top: 1px solid var(--page-line-soft); }.knowledge-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 20px; }.knowledge-search, .owner-inline-search { display: flex; align-items: center; gap: 9px; width: min(100%, 440px); min-height: 42px; padding: 0 13px; background: var(--page-panel); border: 1px solid var(--page-line); border-radius: 9px; color: var(--page-faint); }.knowledge-search input, .owner-inline-search input { width: 100%; padding: 0; color: #fff; background: transparent; border: 0; outline: 0; font: inherit; font-size: .7rem; }.knowledge-search input::placeholder, .owner-inline-search input::placeholder { color: var(--page-faint); }.knowledge-view-toggle { display: flex; gap: 5px; }.knowledge-view-toggle button { display: grid; place-items: center; width: 33px; height: 33px; color: var(--page-faint); background: transparent; border: 1px solid var(--page-line); border-radius: 7px; cursor: pointer; }.knowledge-view-toggle button.active, .knowledge-view-toggle button:hover { color: #fff; border-color: var(--page-green-deep); background: rgba(58,182,122,.1); }
.knowledge-content-layout { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 27px; }.knowledge-filter-panel { align-self: start; padding: 15px; background: var(--page-panel); border: 1px solid var(--page-line-soft); border-radius: 14px; }.filter-heading { display: flex; justify-content: space-between; gap: 8px; margin-bottom: 12px; color: #fff; font-size: .68rem; font-weight: 600; }.filter-heading small { color: var(--page-faint); font-size: .52rem; font-weight: 500; }.category-list { display: grid; gap: 4px; }.category-list button { display: grid; grid-template-columns: 21px 1fr auto; align-items: center; gap: 7px; min-height: 36px; padding: 0 7px; color: var(--page-muted); background: transparent; border: 0; border-radius: 7px; cursor: pointer; text-align: left; font-size: .63rem; }.category-list button:hover, .category-list button.active { color: #fff; background: rgba(182,239,207,.1); }.category-list button.active { box-shadow: inset 2px 0 var(--page-green-deep); }.category-list b { color: var(--page-faint); font-size: .52rem; font-weight: 500; }.category-icon { display: grid; place-items: center; color: var(--page-green); font-size: .73rem; }.filter-note { display: grid; gap: 8px; margin-top: 23px; padding-top: 16px; border-top: 1px solid var(--page-line-soft); }.filter-note > span { display: grid; place-items: center; width: 24px; height: 24px; color: #070707; background: var(--page-green); border-radius: 7px; font-size: .54rem; font-weight: 900; }.filter-note p { margin: 0; color: var(--page-faint); font-size: .59rem; line-height: 1.65; }.knowledge-results { min-width: 0; }.results-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 18px; }.results-heading .page-eyebrow { margin-bottom: 7px; }.results-heading h2, .knowledge-bottom h2 { margin: 0; font-size: clamp(1.55rem, 3vw, 2.55rem); font-weight: 400; letter-spacing: -.06em; }.results-heading > span { color: var(--page-faint); font-size: .62rem; }.resource-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }.knowledge-resource-card { overflow: hidden; background: var(--page-panel); border: 1px solid var(--page-line-soft); border-radius: 14px; transition: transform 180ms ease, border-color 180ms ease; }.knowledge-resource-card:hover { border-color: rgba(182,239,207,.35); transform: translateY(-4px); }.knowledge-resource-card[hidden] { display: none; }.resource-art { position: relative; display: grid; place-items: center; height: 138px; overflow: hidden; background: linear-gradient(140deg, #0d3b2b, #0a100e); }.resource-art::before { content: ""; position: absolute; inset: 18px; border: 1px solid rgba(182,239,207,.15); border-radius: 50%; transform: rotate(-21deg) scaleX(1.5); }.resource-art::after { content: ""; position: absolute; inset: 0; opacity: .35; background-image: linear-gradient(135deg, transparent 40%, rgba(255,255,255,.15) 40.4%, transparent 41%), linear-gradient(25deg, transparent 62%, rgba(255,255,255,.08) 62.4%, transparent 63%); }.resource-art-manual { background: linear-gradient(140deg, #343434, #0c0c0c); }.resource-art-wave { background: linear-gradient(140deg, #193c33, #0d1210); }.resource-art-alarm { background: linear-gradient(140deg, #4a2c25, #100b0a); }.resource-art-gateway { background: linear-gradient(140deg, #1c3f4a, #0b1011); }.resource-art-resonance { background: linear-gradient(140deg, #4a3a22, #110e08); }.resource-art-owner { background: linear-gradient(140deg, #253c2d, #0b100c); }.resource-art-register { background: linear-gradient(140deg, #2e373e, #0b0e10); }.resource-type { position: absolute; z-index: 1; top: 12px; left: 13px; color: rgba(255,255,255,.66); font-size: .47rem; font-weight: 800; letter-spacing: .12em; }.resource-art-icon { position: relative; z-index: 1; display: grid; place-items: center; width: 48px; height: 48px; color: var(--page-green); border: 1px solid rgba(182,239,207,.48); border-radius: 50%; font-size: 1.3rem; font-weight: 300; }.document-icon { border-radius: 11px; font-size: 1.5rem; }.warning-art { color: #ffd18c; border-color: rgba(255,209,140,.55); }.resource-art-line { position: absolute; z-index: 1; right: 17px; bottom: 14px; left: 17px; height: 1px; background: rgba(255,255,255,.16); }.resource-info { padding: 15px 15px 16px; }.resource-meta { display: flex; justify-content: space-between; gap: 8px; color: var(--page-green); font-size: .48rem; font-weight: 800; letter-spacing: .1em; }.resource-meta b { color: var(--page-faint); font-weight: 500; }.resource-info h3 { min-height: 42px; margin: 10px 0 6px; font-size: .9rem; font-weight: 500; letter-spacing: -.025em; }.resource-info p { min-height: 58px; margin: 0 0 13px; color: var(--page-muted); font-size: .65rem; line-height: 1.65; }.resource-open, .row-action { padding: 0; color: var(--page-green); background: transparent; border: 0; cursor: pointer; font-size: .62rem; font-weight: 700; }.resource-open span { display: inline-block; margin-left: 5px; font-size: .86rem; transition: transform 180ms ease; }.resource-open:hover span { transform: translate(2px, -2px); }.resource-list-view { grid-template-columns: 1fr; }.resource-list-view .knowledge-resource-card { display: grid; grid-template-columns: 170px 1fr; }.resource-list-view .resource-art { height: 100%; min-height: 125px; }.empty-results { padding: 60px 20px; color: var(--page-muted); border: 1px dashed var(--page-line); border-radius: 14px; text-align: center; }.empty-results span { color: var(--page-green); font-size: 1.7rem; }.empty-results h3 { margin: 8px 0 4px; font-size: 1rem; }.empty-results p { margin: 0; color: var(--page-faint); font-size: .7rem; }.knowledge-bottom { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 50px; padding: 58px 0 90px; border-top: 1px solid var(--page-line-soft); }.learning-path { display: flex; align-items: center; justify-content: flex-end; gap: 13px; }.learning-path > i { color: var(--page-faint); font-style: normal; }.learning-step { display: grid; gap: 2px; min-width: 112px; padding: 13px; background: var(--page-panel); border: 1px solid var(--page-line-soft); border-radius: 10px; }.learning-step.active { border-color: rgba(182,239,207,.35); }.learning-step b { color: var(--page-green); font-size: .55rem; }.learning-step strong { font-size: .67rem; }.learning-step small { color: var(--page-faint); font-size: .54rem; }
.resource-modal { position: relative; width: min(100%, 540px); padding: 32px; background: #141414; border: 1px solid var(--page-line); border-radius: 17px; box-shadow: 0 30px 90px rgba(0,0,0,.6); }.resource-modal h2 { margin: 10px 0 12px; font-size: 1.8rem; font-weight: 400; letter-spacing: -.055em; }.resource-modal p { color: var(--page-muted); font-size: .82rem; line-height: 1.75; }.resource-modal-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 24px; padding-top: 15px; border-top: 1px solid var(--page-line-soft); color: var(--page-faint); font-size: .53rem; font-weight: 800; letter-spacing: .1em; }

.owner-portal-heading { display: flex; align-items: end; justify-content: space-between; gap: 36px; padding-top: 61px; padding-bottom: 39px; }.owner-portal-heading h1 { max-width: 700px; font-size: clamp(2.55rem, 5.5vw, 5.2rem); }.owner-identity-card { display: flex; align-items: center; gap: 10px; min-width: 285px; padding: 12px; background: var(--page-panel); border: 1px solid var(--page-line); border-radius: 12px; }.identity-avatar { display: grid; place-items: center; width: 38px; height: 38px; color: #060606; background: var(--page-green); border-radius: 10px; font-size: .57rem; font-weight: 900; }.owner-identity-card div { display: grid; flex: 1; gap: 2px; }.owner-identity-card small { color: var(--page-green); font-size: .48rem; font-weight: 800; letter-spacing: .11em; }.owner-identity-card strong { font-size: .74rem; }.owner-identity-card span:not(.identity-avatar) { color: var(--page-faint); font-size: .55rem; }.owner-identity-card button { color: var(--page-muted); background: transparent; border: 0; cursor: pointer; letter-spacing: 2px; }
.owner-portal-shell { display: grid; grid-template-columns: 194px minmax(0, 1fr); min-height: 790px; overflow: hidden; background: var(--page-panel); border: 1px solid var(--page-line); border-radius: 17px; box-shadow: 0 28px 90px rgba(0,0,0,.23); }.owner-sidebar { display: flex; flex-direction: column; padding: 18px 11px; background: rgba(0,0,0,.25); border-right: 1px solid var(--page-line-soft); }.owner-sidebar-top { display: grid; gap: 4px; padding: 0 9px 18px; border-bottom: 1px solid var(--page-line-soft); }.sidebar-kicker { color: var(--page-green); font-size: .5rem; font-weight: 800; letter-spacing: .13em; }.owner-sidebar-top strong { font-family: Georgia, "Times New Roman", serif; font-size: 1.15rem; font-weight: 400; letter-spacing: -.04em; }.demo-badge { justify-self: start; margin-top: 5px; padding: 3px 6px; color: var(--page-gold); border: 1px solid rgba(231,191,121,.28); border-radius: 4px; font-size: .45rem; font-weight: 800; letter-spacing: .11em; }.owner-tabs { display: grid; gap: 3px; padding-top: 15px; }.owner-tabs button { position: relative; display: grid; grid-template-columns: 25px 1fr auto; align-items: center; gap: 6px; min-height: 36px; padding: 0 9px; color: var(--page-muted); background: transparent; border: 0; border-radius: 7px; cursor: pointer; text-align: left; font-size: .63rem; }.owner-tabs button span { display: grid; place-items: center; color: var(--page-faint); font-size: .73rem; }.owner-tabs button:hover, .owner-tabs button.active { color: #fff; background: rgba(182,239,207,.1); }.owner-tabs button.active { box-shadow: inset 2px 0 var(--page-green-deep); }.owner-tabs button.active span { color: var(--page-green); }.owner-tabs b { font-weight: 600; }.tab-alert { display: grid; place-items: center; width: 17px; height: 17px; color: #070707; background: var(--page-gold); border-radius: 50%; font-size: .5rem; font-style: normal; }.owner-sidebar-foot { display: flex; gap: 7px; align-items: start; margin-top: auto; padding: 13px 8px 4px; border-top: 1px solid var(--page-line-soft); }.scope-lock { display: grid; place-items: center; flex: 0 0 auto; width: 22px; height: 22px; color: var(--page-green); background: rgba(182,239,207,.1); border-radius: 6px; font-size: .7rem; }.owner-sidebar-foot p { margin: 0; color: var(--page-faint); font-size: .54rem; line-height: 1.5; }.owner-main-panel { min-width: 0; padding: 24px 27px 30px; }.owner-main-top { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding-bottom: 21px; border-bottom: 1px solid var(--page-line-soft); }.owner-main-top .page-eyebrow { margin-bottom: 7px; }.owner-main-top h2 { margin: 0; font-size: 1.45rem; font-weight: 400; letter-spacing: -.055em; }.owner-main-actions { display: flex; align-items: center; gap: 7px; }.secondary-action, .owner-add-button { min-height: 34px; padding: 0 11px; color: var(--page-muted); background: transparent; border: 1px solid var(--page-line); border-radius: 7px; cursor: pointer; font-size: .58rem; font-weight: 700; }.owner-add-button { color: #060606; background: var(--page-green); border-color: var(--page-green); }.secondary-action:hover { color: #fff; border-color: rgba(255,255,255,.35); }.owner-add-button:hover { background: #d7f7e3; }.owner-view { padding-top: 20px; }.owner-kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }.owner-kpi { position: relative; min-height: 130px; padding: 13px; background: rgba(255,255,255,.035); border: 1px solid var(--page-line-soft); border-radius: 11px; }.kpi-symbol { display: grid; place-items: center; width: 24px; height: 24px; margin-bottom: 15px; color: var(--page-green); background: rgba(182,239,207,.1); border-radius: 7px; font-size: .65rem; font-weight: 800; }.owner-kpi small { display: block; color: var(--page-faint); font-size: .48rem; font-weight: 800; letter-spacing: .12em; }.owner-kpi b { display: block; margin-top: 4px; font-size: 1.65rem; font-weight: 400; letter-spacing: -.08em; }.owner-kpi em { color: var(--page-muted); font-size: .53rem; font-style: normal; }.owner-overview-grid { display: grid; grid-template-columns: 1.35fr .65fr; gap: 10px; margin-top: 10px; }.owner-panel-card, .model-table-card, .model-relationship-card { padding: 18px; background: rgba(255,255,255,.025); border: 1px solid var(--page-line-soft); border-radius: 12px; }.panel-card-heading { display: flex; align-items: start; justify-content: space-between; gap: 15px; margin-bottom: 17px; }.panel-card-heading .page-eyebrow { margin-bottom: 6px; }.panel-card-heading h3 { margin: 0; font-size: .98rem; font-weight: 500; letter-spacing: -.03em; }.owner-record-count, .model-readonly { color: var(--page-faint); font-size: .51rem; font-weight: 800; letter-spacing: .09em; }.attention-count { display: grid; place-items: center; width: 28px; height: 28px; color: #070707; background: var(--page-gold); border-radius: 8px; font-size: .58rem; font-weight: 900; }.owner-table { width: 100%; }.owner-table-labels, .owner-table-row { display: grid; grid-template-columns: 1.35fr .65fr .67fr auto; gap: 10px; align-items: center; }.owner-table-labels { padding: 0 7px 9px; color: var(--page-faint); border-bottom: 1px solid var(--page-line-soft); font-size: .46rem; font-weight: 800; letter-spacing: .1em; }.owner-table-row { min-height: 57px; padding: 8px 7px; border-bottom: 1px solid var(--page-line-soft); font-size: .61rem; }.owner-table-row:last-child { border-bottom: 0; }.owner-table-row > span:first-child { display: grid; gap: 2px; }.owner-table-row b { font-weight: 600; }.owner-table-row small { display: block; color: var(--page-faint); font-size: .52rem; }.owner-status { display: inline-flex; align-items: center; gap: 5px; color: var(--page-green); font-size: .54rem; font-weight: 700; white-space: nowrap; }.owner-status i { width: 5px; height: 5px; border-radius: 50%; background: currentColor; box-shadow: 0 0 8px currentColor; }.owner-status-stopped, .owner-status-standby { color: var(--page-muted); }.owner-status-service-due, .owner-status-warning, .owner-status-expiring-soon { color: var(--page-gold); }.owner-status-offline, .owner-status-expired, .owner-status-open { color: var(--page-red); }.owner-status-closed, .owner-status-active { color: var(--page-green); }.owner-status-waiting { color: var(--page-gold); }.attention-item { display: grid; grid-template-columns: 27px 1fr auto; align-items: center; gap: 8px; min-height: 62px; border-bottom: 1px solid var(--page-line-soft); }.attention-item:last-child { border-bottom: 0; }.attention-icon { display: grid; place-items: center; width: 25px; height: 25px; border-radius: 7px; font-size: .72rem; }.gold-attention { color: var(--page-gold); background: rgba(231,191,121,.1); }.red-attention { color: var(--page-red); background: rgba(237,142,131,.1); }.gray-attention { color: var(--page-muted); background: rgba(255,255,255,.08); }.attention-item div { display: grid; gap: 2px; }.attention-item b { font-size: .62rem; }.attention-item small { color: var(--page-faint); font-size: .51rem; }.owner-context-panel { display: flex; align-items: center; justify-content: space-between; gap: 25px; margin-top: 10px; }.owner-context-panel h3 { max-width: 450px; margin: 0 0 8px; font-size: 1rem; font-weight: 500; }.owner-context-panel p:not(.page-eyebrow) { max-width: 520px; margin: 0; color: var(--page-muted); font-size: .65rem; line-height: 1.65; }.context-chain, .entity-chain { display: flex; align-items: center; gap: 7px; color: var(--page-green); font-size: .55rem; font-weight: 800; white-space: nowrap; }.context-chain span, .entity-chain span { padding: 7px 9px; border: 1px solid rgba(182,239,207,.22); border-radius: 6px; }.context-chain i, .entity-chain i { color: var(--page-faint); font-style: normal; }
.map-view-layout { display: grid; grid-template-columns: minmax(0, 1fr) 275px; gap: 10px; }.fake-site-map { position: relative; min-height: 540px; overflow: hidden; background: radial-gradient(circle at 56% 43%, rgba(50,98,74,.28), transparent 27%), #111; border: 1px solid var(--page-line-soft); border-radius: 12px; }.fake-site-map::before { content: ""; position: absolute; inset: 18% 10% 12% 15%; border: 1px solid rgba(182,239,207,.1); border-radius: 49% 37% 48% 32% / 38% 55% 40% 52%; transform: rotate(-12deg); }.fake-site-map::after { content: ""; position: absolute; inset: 28% 23% 22% 31%; border: 1px solid rgba(182,239,207,.07); border-radius: 37% 52% 44% 45%; transform: rotate(24deg); }.map-grid-lines { position: absolute; inset: 0; opacity: .45; background-image: linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px); background-size: 46px 46px; }.map-waterline { position: absolute; top: 44%; left: -10%; width: 120%; height: 1px; background: rgba(105,159,191,.22); transform: rotate(-8deg); }.map-label { position: absolute; z-index: 1; color: var(--page-faint); font-size: .46rem; font-weight: 800; letter-spacing: .16em; }.map-label-north { top: 7%; left: 8%; }.map-label-west { bottom: 13%; left: 7%; }.map-label-east { top: 38%; right: 7%; }.map-scale { position: absolute; z-index: 1; right: 15px; bottom: 13px; color: var(--page-faint); font-size: .46rem; letter-spacing: .1em; }.map-pin { position: absolute; z-index: 2; display: grid; place-items: center; width: 28px; height: 28px; color: #070707; background: var(--page-green); border: 4px solid rgba(182,239,207,.18); border-radius: 50% 50% 50% 0; cursor: pointer; transform: rotate(-45deg); box-shadow: 0 0 0 7px rgba(182,239,207,.08), 0 10px 24px rgba(0,0,0,.4); }.map-pin span { width: 5px; height: 5px; background: #070707; border-radius: 50%; }.map-pin b { position: absolute; top: -20px; left: 23px; color: #fff; font-size: .5rem; font-weight: 800; transform: rotate(45deg); }.map-pin.stopped, .map-pin.service-due { background: var(--page-gold); }.map-pin.offline { background: var(--page-red); }.map-site-list { padding: 17px; background: rgba(255,255,255,.025); border: 1px solid var(--page-line-soft); border-radius: 12px; }.map-site-item { display: grid; grid-template-columns: 9px 1fr auto; align-items: center; gap: 8px; width: 100%; min-height: 58px; padding: 8px 0; color: #fff; background: transparent; border: 0; border-bottom: 1px solid var(--page-line-soft); cursor: pointer; text-align: left; }.map-site-item:last-of-type { border-bottom: 0; }.map-site-item > span:nth-child(2) { display: grid; gap: 2px; }.map-site-item b { font-size: .62rem; font-weight: 600; }.map-site-item small { color: var(--page-faint); font-size: .49rem; }.map-site-item strong { color: var(--page-green); font-size: .72rem; font-weight: 500; }.map-site-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--page-green); box-shadow: 0 0 8px currentColor; }.map-site-dot.stopped, .map-site-dot.service-due { color: var(--page-gold); background: var(--page-gold); }.map-site-dot.offline { color: var(--page-red); background: var(--page-red); }.map-legend { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 18px; padding-top: 13px; border-top: 1px solid var(--page-line-soft); color: var(--page-faint); font-size: .48rem; }.map-legend span { display: inline-flex; align-items: center; gap: 4px; }.map-legend i { width: 5px; height: 5px; border-radius: 50%; background: var(--page-green); }.map-legend .legend-warning { background: var(--page-gold); }.map-legend .legend-offline { background: var(--page-red); }
.owner-inline-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 12px; }.owner-inline-search { width: min(100%, 390px); }.owner-table-three .owner-table-labels, .owner-table-three .owner-table-row { grid-template-columns: 1.35fr .65fr .67fr auto; }.customers-table .owner-table-labels, .customers-table .owner-table-row { grid-template-columns: 1.3fr 1fr .4fr .7fr auto; }.sites-table .owner-table-labels, .sites-table .owner-table-row { grid-template-columns: 1.3fr .8fr .5fr .72fr auto; }.inverters-table .owner-table-labels, .inverters-table .owner-table-row { grid-template-columns: 1.25fr .72fr .8fr .72fr auto; }.owner-table-row[hidden] { display: none; }.table-number { color: var(--page-green); font-size: .76rem; font-weight: 500; }.inverter-state { margin-top: 4px; }.owner-panel-card > .owner-table { margin-top: -3px; }
.warranty-summary { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-bottom: 10px; }.warranty-summary-card { padding: 18px; background: rgba(182,239,207,.07); border: 1px solid rgba(182,239,207,.2); border-radius: 11px; }.warranty-summary-card span { color: var(--page-green); font-size: .5rem; font-weight: 800; letter-spacing: .1em; }.warranty-summary-card b { display: block; margin: 7px 0 2px; font-size: 1.6rem; font-weight: 400; }.warranty-summary-card small { color: var(--page-muted); font-size: .55rem; }.warning-summary { background: rgba(231,191,121,.07); border-color: rgba(231,191,121,.2); }.warning-summary span { color: var(--page-gold); }.expired-summary { background: rgba(237,142,131,.07); border-color: rgba(237,142,131,.2); }.expired-summary span { color: var(--page-red); }.warranty-list { background: rgba(255,255,255,.025); border: 1px solid var(--page-line-soft); border-radius: 12px; }.warranty-row { display: grid; grid-template-columns: 28px 1fr auto auto auto; align-items: center; gap: 11px; min-height: 64px; padding: 9px 15px; border-bottom: 1px solid var(--page-line-soft); }.warranty-row:last-child { border-bottom: 0; }.warranty-icon { display: grid; place-items: center; width: 25px; height: 25px; color: var(--page-gold); background: rgba(231,191,121,.1); border-radius: 7px; }.warranty-row > div { display: grid; gap: 2px; }.warranty-row b { font-size: .64rem; }.warranty-row small { color: var(--page-faint); font-size: .52rem; }.warranty-days { color: var(--page-muted); font-size: .55rem; }.service-board, .notes-board, .document-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }.service-card, .service-add-card, .note-card, .note-add-card, .document-card { min-height: 190px; padding: 16px; background: rgba(255,255,255,.025); border: 1px solid var(--page-line-soft); border-radius: 12px; }.service-card-top, .note-card-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }.service-id { color: var(--page-faint); font-size: .52rem; font-weight: 800; letter-spacing: .1em; }.service-card .page-eyebrow { margin-top: 18px; font-size: .48rem; }.service-card h3, .note-card h3, .document-card h3 { margin: 0 0 7px; font-size: .86rem; font-weight: 500; }.service-card > p:not(.page-eyebrow), .note-card p { min-height: 55px; margin: 0; color: var(--page-muted); font-size: .61rem; line-height: 1.65; }.service-card-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 17px; padding-top: 10px; border-top: 1px solid var(--page-line-soft); color: var(--page-faint); font-size: .54rem; }.service-add-card, .note-add-card { display: grid; align-content: center; justify-items: center; gap: 6px; color: var(--page-green); background: rgba(182,239,207,.035); border-style: dashed; cursor: pointer; text-align: center; }.service-add-card > span, .note-add-card > span { font-size: 1.4rem; }.service-add-card b, .note-add-card b { color: #fff; font-size: .68rem; }.service-add-card small, .note-add-card small { color: var(--page-faint); font-size: .53rem; }.note-card { min-height: 170px; }.note-card-top { color: var(--page-faint); font-size: .51rem; }.note-card-top b { color: var(--page-green); font-size: .5rem; }.note-card h3 { margin-top: 17px; }.note-card > small { display: block; margin-top: 14px; color: var(--page-faint); font-size: .53rem; }.document-grid { grid-template-columns: repeat(3, 1fr); }.document-card { min-height: 205px; }.document-card-icon { display: grid; place-items: center; width: 36px; height: 36px; margin-bottom: 14px; color: var(--page-green); background: rgba(182,239,207,.1); border-radius: 9px; font-size: 1rem; }.document-type { color: var(--page-green); font-size: .49rem; font-weight: 800; letter-spacing: .1em; }.document-card h3 { min-height: 38px; margin-top: 8px; }.document-card p { margin: 0 0 13px; color: var(--page-muted); font-size: .57rem; }.document-card > div:last-child { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding-top: 10px; border-top: 1px solid var(--page-line-soft); }.document-card small { color: var(--page-faint); font-size: .5rem; }
.model-relationship-card { margin-bottom: 10px; }.entity-chain { justify-content: center; gap: 8px; padding: 15px 0 16px; }.entity-chain span { color: #fff; background: rgba(182,239,207,.07); }.entity-support { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; padding-top: 14px; border-top: 1px solid var(--page-line-soft); }.entity-support span { padding: 6px 9px; color: var(--page-muted); border: 1px solid var(--page-line); border-radius: 6px; font-size: .52rem; }.entity-table, .permission-table { overflow: hidden; border: 1px solid var(--page-line-soft); border-radius: 9px; }.entity-table-head, .entity-table-row, .permission-head, .permission-row { display: grid; grid-template-columns: .8fr .8fr 1.5fr; gap: 12px; align-items: center; min-height: 41px; padding: 6px 10px; border-bottom: 1px solid var(--page-line-soft); }.entity-table-head, .permission-head { color: var(--page-faint); font-size: .47rem; font-weight: 800; letter-spacing: .1em; }.entity-table-row:last-child, .permission-row:last-child { border-bottom: 0; }.entity-table-row { color: var(--page-muted); font-size: .58rem; }.entity-table-row b, .permission-row b { color: #fff; font-size: .61rem; font-weight: 600; }.entity-table-row code { color: var(--page-green); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .53rem; }.permission-table { margin-top: 5px; }.permission-head, .permission-row { grid-template-columns: .7fr .9fr 1.8fr; }.permission-row { color: var(--page-muted); font-size: .58rem; }.model-footnote { margin: 13px 0 0; color: var(--page-faint); font-size: .56rem; line-height: 1.6; }
.subsite-footer { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-block: 22px 30px; border-top: 1px solid var(--page-line-soft); color: var(--page-faint); font-size: .55rem; }.subsite-footer a { color: var(--page-green); font-weight: 700; }.subsite-footer span:last-child { white-space: nowrap; }

html[data-theme="light"] .product-page {
  background: #f4f5f4;
  color: #111;
  --page-panel: rgba(255,255,255,.9);
  --page-panel-strong: #fff;
  --page-line: rgba(0,0,0,.18);
  --page-line-soft: rgba(0,0,0,.1);
  --page-muted: #4c5751;
  --page-faint: #68746d;
  --page-green: #0a6844;
  --page-green-deep: #167a50;
  --page-gold: #8a5d0a;
  --page-red: #a6342a;
}
html[data-theme="light"] .product-page .page-hero-copy h1,
html[data-theme="light"] .product-page .owner-portal-heading h1,
html[data-theme="light"] .product-page .owner-main-top h2,
html[data-theme="light"] .product-page .panel-card-heading h3,
html[data-theme="light"] .product-page .owner-kpi b,
html[data-theme="light"] .product-page .resource-modal h2,
html[data-theme="light"] .product-page .resource-info h3,
html[data-theme="light"] .product-page .document-card h3,
html[data-theme="light"] .product-page .service-card h3,
html[data-theme="light"] .product-page .note-card h3,
html[data-theme="light"] .product-page .subsite-brand strong,
html[data-theme="light"] .product-page .owner-table-row b,
html[data-theme="light"] .product-page .entity-table-row b,
html[data-theme="light"] .product-page .permission-row b,
html[data-theme="light"] .product-page .filter-heading,
html[data-theme="light"] .product-page .map-site-item,
html[data-theme="light"] .product-page .entity-chain span,
html[data-theme="light"] .product-page .service-add-card b,
html[data-theme="light"] .product-page .note-add-card b { color: #111; }
html[data-theme="light"] .product-page .subsite-nav a:hover,
html[data-theme="light"] .product-page .subsite-nav a.active,
html[data-theme="light"] .product-page .page-utility:hover,
html[data-theme="light"] .product-page .category-list button:hover,
html[data-theme="light"] .product-page .category-list button.active,
html[data-theme="light"] .product-page .owner-tabs button:hover,
html[data-theme="light"] .product-page .owner-tabs button.active { color: #102019; }
html[data-theme="light"] .product-page .subsite-header,
html[data-theme="light"] .product-page .owner-table-row,
html[data-theme="light"] .product-page .owner-table-labels { border-color: var(--page-line-soft); }
html[data-theme="light"] .product-page .owner-portal-shell,
html[data-theme="light"] .product-page .resource-modal { box-shadow: 0 24px 70px rgba(0,0,0,.08); }
html[data-theme="light"] .product-page .library-signal-card,
html[data-theme="light"] .product-page .fake-site-map { background: linear-gradient(145deg, #dcece2, #fff); }
html[data-theme="light"] .product-page .fake-site-map::before,
html[data-theme="light"] .product-page .fake-site-map::after { border-color: rgba(7,100,62,.15); }
html[data-theme="light"] .product-page .owner-sidebar { background: rgba(228,237,231,.75); }
html[data-theme="light"] .product-page .owner-panel-card,
html[data-theme="light"] .product-page .model-table-card,
html[data-theme="light"] .product-page .model-relationship-card,
html[data-theme="light"] .product-page .service-card,
html[data-theme="light"] .product-page .note-card,
html[data-theme="light"] .product-page .document-card,
html[data-theme="light"] .product-page .map-site-list { background: rgba(255,255,255,.72); }

@media (max-width: 1000px) { .subsite-nav { gap: 15px; }.page-hero { grid-template-columns: 1fr 300px; }.resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.owner-portal-shell { grid-template-columns: 165px minmax(0, 1fr); }.owner-overview-grid { grid-template-columns: 1fr; }.service-board, .notes-board, .document-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) { .section-shell { width: min(calc(100% - 34px), var(--max)); }.subsite-header { flex-wrap: wrap; gap: 12px; padding-block: 15px; }.subsite-brand { min-width: 0; }.subsite-nav { order: 3; width: 100%; justify-content: flex-start; overflow-x: auto; padding-top: 5px; }.subsite-nav a { white-space: nowrap; }.subsite-nav a.active::after { bottom: -7px; }.subsite-actions { min-width: 0; margin-left: auto; }.page-utility b { display: none; }.page-chat-button { padding-inline: 13px; }.page-hero { display: block; min-height: auto; padding-top: 49px; padding-bottom: 55px; }.library-signal-card { margin-top: 35px; }.knowledge-content-layout { grid-template-columns: 1fr; }.knowledge-filter-panel { order: 2; }.category-list { grid-template-columns: repeat(2, 1fr); }.filter-note { display: none; }.resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.knowledge-bottom { display: block; padding-top: 45px; }.learning-path { justify-content: flex-start; overflow-x: auto; margin-top: 25px; padding-bottom: 5px; }.owner-portal-heading { display: block; padding-top: 49px; }.owner-identity-card { margin-top: 28px; }.owner-portal-shell { display: block; }.owner-sidebar { border-right: 0; border-bottom: 1px solid var(--page-line-soft); }.owner-sidebar-top { display: flex; align-items: center; gap: 9px; padding-bottom: 13px; }.owner-sidebar-top strong { margin-right: auto; }.owner-tabs { display: flex; overflow-x: auto; gap: 4px; padding-top: 12px; }.owner-tabs button { min-width: max-content; grid-template-columns: auto auto auto; padding: 0 10px; }.owner-sidebar-foot { display: none; }.owner-main-panel { padding: 20px 15px 25px; }.owner-main-top { align-items: start; flex-direction: column; }.owner-main-actions { width: 100%; justify-content: flex-end; }.owner-kpi-grid { grid-template-columns: repeat(2, 1fr); }.map-view-layout { grid-template-columns: 1fr; }.fake-site-map { min-height: 410px; }.owner-context-panel { display: block; }.context-chain { justify-content: flex-start; flex-wrap: wrap; margin-top: 18px; }.owner-inline-toolbar { align-items: start; flex-direction: column; }.owner-inline-search { width: 100%; }.owner-table { overflow-x: auto; }.owner-table-labels, .owner-table-row { min-width: 610px; }.warranty-row { min-width: 650px; }.warranty-list { overflow-x: auto; }.warranty-summary { grid-template-columns: 1fr; }.service-board, .notes-board, .document-grid { grid-template-columns: 1fr; }.entity-chain { justify-content: flex-start; overflow-x: auto; }.entity-table, .permission-table { overflow-x: auto; }.entity-table-head, .entity-table-row, .permission-head, .permission-row { min-width: 660px; }.subsite-footer { display: grid; gap: 6px; } }
@media (max-width: 520px) { .resource-grid { grid-template-columns: 1fr; }.knowledge-toolbar { align-items: stretch; flex-direction: column; }.knowledge-search { width: 100%; }.results-heading { align-items: start; flex-direction: column; gap: 9px; }.owner-kpi-grid { gap: 5px; }.owner-kpi { min-height: 112px; padding: 10px; }.owner-kpi b { font-size: 1.35rem; }.owner-main-actions { justify-content: stretch; }.secondary-action, .owner-add-button { flex: 1; }.entity-chain span { white-space: nowrap; } }

/* Rubik is the site default; the Owner Portal gets a deliberately more
   readable operational scale without changing its layout or data density. */
.owner-page { font-family: Rubik, ui-sans-serif, system-ui, sans-serif; font-size: 16px; }
.owner-page button, .owner-page input, .owner-page select, .owner-page textarea { font-family: inherit; }
.owner-page .owner-tabs button { min-height: 41px; font-size: .75rem; }
.owner-page .owner-tabs button span { font-size: .82rem; }
.owner-page .owner-sidebar-top .sidebar-kicker, .owner-page .demo-badge { font-size: .58rem; }
.owner-page .owner-sidebar-foot p { font-size: .66rem; }
.owner-page .page-eyebrow, .owner-page .modal-kicker { font-size: .64rem; }
.owner-page .owner-main-top h2 { font-size: 1.58rem; }
.owner-page .secondary-action, .owner-page .owner-add-button, .owner-page .owner-danger-button { min-height: 39px; font-size: .72rem; }
.owner-page .owner-global-search input, .owner-page .owner-inline-search input { font-size: .75rem; }
.owner-page .owner-kpi small { font-size: .6rem; }
.owner-page .owner-kpi em { font-size: .64rem; }
.owner-page .owner-table-labels { font-size: .59rem; }
.owner-page .owner-table-row { min-height: 62px; font-size: .73rem; }
.owner-page .owner-table-row small, .owner-page .attention-item small { font-size: .62rem; }
.owner-page .owner-status, .owner-page .attention-item b { font-size: .67rem; }
.owner-page .panel-card-heading h3 { font-size: 1.08rem; }
.owner-page .owner-record-count, .owner-page .model-readonly { font-size: .62rem; }
.owner-page .owner-context-panel p:not(.page-eyebrow) { font-size: .74rem; }
.owner-page .context-chain, .owner-page .entity-chain { font-size: .65rem; }
.owner-page .owner-auth-copy > p:not(.page-eyebrow) { font-size: .82rem; }
.owner-page .owner-auth-form label, .owner-page .owner-record-form label { font-size: .64rem; }
.owner-page .owner-auth-form input, .owner-page .owner-auth-form select, .owner-page .owner-record-form input, .owner-page .owner-record-form select, .owner-page .owner-record-form textarea { min-height: 43px; font-size: .79rem; }
.owner-page .owner-form-error, .owner-page .owner-auth-form > small { font-size: .66rem; }
.owner-page .owner-global-results small { font-size: .59rem; }
.owner-page .owner-global-results b { font-size: .72rem; }
.owner-page .owner-global-results em { font-size: .61rem; }

[hidden] { display: none !important; }
.live-portal-badge { color: var(--page-green); border-color: rgba(182,239,207,.28); }
.owner-auth-panel { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr); gap: 30px; align-items: center; margin-top: 16px; padding: 25px; background: var(--page-panel); border: 1px solid var(--page-line-soft); border-radius: 15px; box-shadow: 0 24px 70px rgba(0,0,0,.18); }
.owner-auth-copy h2 { margin: 0 0 11px; font-size: clamp(1.35rem, 3vw, 2.1rem); font-weight: 400; letter-spacing: -.06em; }
.owner-auth-copy > p:not(.page-eyebrow) { max-width: 620px; margin: 0; color: var(--page-muted); font-size: .72rem; line-height: 1.75; }
.auth-safety-note { display: flex; align-items: center; gap: 9px; margin-top: 19px; color: var(--page-green); font-size: .58rem; }
.auth-safety-note span:first-child { display: grid; place-items: center; width: 24px; height: 24px; background: rgba(182,239,207,.1); border-radius: 7px; }
.owner-auth-form { display: grid; gap: 12px; padding: 18px; background: rgba(255,255,255,.035); border: 1px solid var(--page-line-soft); border-radius: 12px; }
.owner-auth-form label, .owner-record-form label { display: grid; gap: 6px; color: var(--page-faint); font-size: .53rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.owner-auth-form input, .owner-record-form input, .owner-record-form select, .owner-record-form textarea { width: 100%; min-height: 38px; padding: 9px 10px; color: inherit; background: rgba(0,0,0,.24); border: 1px solid var(--page-line); border-radius: 7px; outline: none; font: inherit; font-size: .68rem; letter-spacing: normal; text-transform: none; }
.owner-auth-form input:focus, .owner-record-form input:focus, .owner-record-form select:focus, .owner-record-form textarea:focus { border-color: var(--page-green); box-shadow: 0 0 0 3px rgba(182,239,207,.1); }
.owner-record-form textarea { min-height: 96px; resize: vertical; }
.owner-record-form select { appearance: auto; }
.owner-form-error { min-height: 16px; margin: 0; color: var(--page-red); font-size: .58rem; line-height: 1.45; }
.owner-record-dialog { position: relative; width: min(720px, calc(100% - 30px)); max-height: min(780px, calc(100vh - 30px)); overflow: auto; padding: 26px; color: #fff; background: #101512; border: 1px solid rgba(182,239,207,.2); border-radius: 16px; box-shadow: 0 28px 90px rgba(0,0,0,.55); }
.owner-record-dialog h2 { margin: 4px 0 20px; font-size: 1.35rem; font-weight: 400; letter-spacing: -.05em; }
.owner-record-form { display: grid; gap: 14px; }
.owner-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.owner-form-grid .full-field { grid-column: 1 / -1; }
.owner-record-actions { display: flex; justify-content: flex-end; align-items: center; gap: 14px; padding-top: 12px; border-top: 1px solid var(--page-line-soft); }
.owner-record-actions .owner-add-button { min-width: 130px; }
.owner-record-dialog .text-link { color: var(--page-muted); background: transparent; border: 0; cursor: pointer; font: inherit; font-size: .62rem; }
.owner-record-dialog .text-link:hover { color: #fff; }
.record-readonly { padding: 10px; color: var(--page-muted); background: rgba(255,255,255,.035); border: 1px solid var(--page-line-soft); border-radius: 7px; font-size: .62rem; line-height: 1.55; }
.record-detail-button { color: var(--page-green); background: transparent; border: 0; cursor: pointer; font: inherit; font-size: .55rem; font-weight: 700; }
.owner-table-row .row-action, .service-card .row-action, .note-card .row-action, .document-card .row-action { white-space: nowrap; }
html[data-theme="light"] .owner-record-dialog { color: #111; background: #fff; }
html[data-theme="light"] .owner-auth-form input, html[data-theme="light"] .owner-record-form input, html[data-theme="light"] .owner-record-form select, html[data-theme="light"] .owner-record-form textarea { color: #111; background: rgba(0,0,0,.035); }
@media (max-width: 760px) { .owner-auth-panel { display: block; padding: 18px; }.owner-auth-form { margin-top: 20px; }.owner-form-grid { grid-template-columns: 1fr; }.owner-form-grid .full-field { grid-column: auto; }.owner-record-dialog { padding: 19px; } }

/* Production Owner Portal controls. */
.organizations-table .owner-table-labels,
.organizations-table .owner-table-row,
.users-table .owner-table-labels,
.users-table .owner-table-row,
.notifications-table .owner-table-labels,
.notifications-table .owner-table-row { grid-template-columns: 1.25fr .95fr .75fr .65fr auto; }
.owner-empty-state { grid-column: 1 / -1; display: grid; justify-items: center; gap: 6px; width: 100%; padding: 42px 18px; color: var(--page-muted); text-align: center; border: 1px dashed var(--page-line); border-radius: 10px; }
.owner-empty-state > span { color: var(--page-green); font-size: 1.45rem; }
.owner-empty-state h3 { margin: 0; color: inherit; font-size: .86rem; }
.owner-empty-state p { max-width: 420px; margin: 0; color: var(--page-faint); font-size: .62rem; }
.password-field { position: relative; display: flex; align-items: center; }
.password-field input { padding-right: 58px; }
.password-field button { position: absolute; right: 7px; min-height: 26px; padding: 0 7px; color: var(--page-green); background: transparent; border: 0; cursor: pointer; font-size: .58rem; font-weight: 700; }
.owner-auth-form input,
.owner-record-form input,
.owner-record-form select,
.owner-record-form textarea,
.knowledge-search input,
.owner-inline-search input { color: #fff; }
.owner-record-form select[multiple] { min-height: 138px; }
.owner-record-form input[type="file"] { min-height: 47px; padding: 8px; }
.owner-record-form input[type="file"]::file-selector-button { margin-right: 10px; padding: 7px 10px; color: #06120d; background: var(--page-green); border: 0; border-radius: 5px; cursor: pointer; font: inherit; }
.owner-switch-field { grid-column: 1 / -1; display: flex !important; flex-direction: row; align-items: center; gap: 9px !important; min-height: 44px; padding: 8px 10px; border: 1px solid var(--page-line); border-radius: 7px; }
.owner-switch-field > span:first-child { margin-right: auto; }
.owner-switch-copy { color: var(--page-muted); font-size: .56rem; letter-spacing: normal; text-transform: none; }
.owner-switch { position: relative; width: 42px; height: 22px; }
.owner-switch input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.owner-switch i { position: absolute; inset: 0; background: #7c2d28; border-radius: 999px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.16); transition: background 180ms ease; }
.owner-switch i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; background: #fff; border-radius: 50%; transition: transform 180ms ease; }
.owner-switch input:checked + i { background: #16845a; }
.owner-switch input:checked + i::after { transform: translateX(20px); }
.owner-switch input:focus-visible + i { outline: 3px solid var(--page-gold); outline-offset: 3px; }
.owner-action-spacer { flex: 1; }
.owner-danger-button { min-height: 34px; padding: 0 11px; color: #fff; background: #9f342d; border: 1px solid #c95b52; border-radius: 7px; cursor: pointer; font-size: .58rem; font-weight: 700; }
.owner-danger-button:hover { background: #bd4037; }
.resource-modal-actions { display: flex; align-items: center; gap: 8px; }
.resource-modal-actions .hero-primary-button { min-height: 38px; padding: 0 16px; font-size: .67rem; letter-spacing: normal; }
.document-card > div:last-child { flex-wrap: wrap; }
.document-card .record-detail-button { margin-left: auto; }
.owner-inline-toolbar .record-readonly { flex: 1; }
.owner-inline-toolbar > .owner-add-button { display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; }
.owner-status-critical,
.owner-status-disabled,
.owner-status-inactive { color: var(--page-red); }
.owner-status-info,
.owner-status-ready,
.owner-status-resolved { color: var(--page-green); }
.owner-status-internet-only,
.owner-status-unknown { color: var(--page-gold); }
html[data-theme="light"] .owner-auth-form input,
html[data-theme="light"] .owner-record-form input,
html[data-theme="light"] .owner-record-form select,
html[data-theme="light"] .owner-record-form textarea,
html[data-theme="light"] .knowledge-search input,
html[data-theme="light"] .owner-inline-search input { color: #111; }
html[data-theme="light"] .record-readonly { background: rgba(10,104,68,.04); }
html[data-theme="light"] .owner-switch-copy { color: #45514a; }

@media (max-width: 760px) {
  .organizations-table .owner-table-labels,
  .organizations-table .owner-table-row,
  .users-table .owner-table-labels,
  .users-table .owner-table-row,
  .notifications-table .owner-table-labels,
  .notifications-table .owner-table-row { min-width: 720px; }
  .owner-record-actions { flex-wrap: wrap; }
  .owner-danger-button { order: 2; width: 100%; }
  .resource-modal-footer { align-items: flex-start; flex-direction: column; }
}

html[data-theme="light"] body:not(.product-page) { background: var(--bg); color: var(--text); }
html[data-theme="light"] body:not(.product-page) .pathways,
html[data-theme="light"] body:not(.product-page) .platform-story,
html[data-theme="light"] body:not(.product-page) .knowledge-section,
html[data-theme="light"] body:not(.product-page) .owner-section,
html[data-theme="light"] body:not(.product-page) .closing,
html[data-theme="light"] body:not(.product-page) .site-footer { color: var(--text); }
html[data-theme="light"] body:not(.product-page) .pathway-card,
html[data-theme="light"] body:not(.product-page) .resource-card,
html[data-theme="light"] body:not(.product-page) .architecture-card,
html[data-theme="light"] body:not(.product-page) .owner-dashboard,
html[data-theme="light"] body:not(.product-page) .closing-card { background-color: var(--panel-strong); }

/* 2.6 public platform and full-screen Owner Portal. */
.pathway-card[data-card-href], .resource-card[data-card-href], .knowledge-resource-card[role="link"] { cursor: pointer; }
.pathway-card[data-card-href]:focus-visible, .resource-card[data-card-href]:focus-visible, .knowledge-resource-card[role="link"]:focus-visible { outline: 3px solid var(--green, var(--page-green)); outline-offset: 4px; }
html[data-theme="dark"] .product-page { background: #020504; --page-panel: rgba(9, 14, 12, .9); --page-panel-strong: #090e0c; --page-muted: #a9b7b0; --page-faint: #78877f; }
html[data-theme="dark"] body:not(.product-page) { --bg: #020504; --bg-deep: #010202; --panel: rgba(8, 15, 12, .9); --panel-strong: #09100d; --panel-soft: rgba(11, 21, 17, .72); }

.owner-page { overflow-x: hidden; }
.owner-page .section-shell { width: calc(100% - 32px); max-width: none; }
.owner-page .subsite-header { min-height: 72px; }
.owner-page .owner-portal-heading { align-items: center; min-height: 152px; padding-block: 24px; }
.owner-page .owner-portal-heading h1 { margin-bottom: 10px; font-size: clamp(2rem, 3.8vw, 3.65rem); }
.owner-page .owner-portal-heading > div:first-child > p:not(.page-eyebrow) { max-width: 880px; font-size: .76rem; }
.owner-page .owner-portal-shell { min-height: calc(100svh - 250px); margin-bottom: 18px; border-radius: 14px; }
.owner-page .owner-sidebar { max-height: calc(100svh - 105px); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.owner-page .owner-main-panel { min-height: calc(100svh - 250px); }
.owner-profile-button { gap: 8px; padding-inline: 9px 14px; }
.owner-profile-avatar { display: grid; place-items: center; width: 25px; height: 25px; color: #06120d; background: var(--page-green); border-radius: 8px; font-size: .62rem; font-weight: 900; }
.owner-auth-panel { min-height: calc(100svh - 250px); margin-bottom: 24px; }
.owner-auth-tabs { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4px; padding: 4px; background: rgba(0,0,0,.22); border: 1px solid var(--page-line-soft); border-radius: 9px; }
.owner-auth-tabs button { min-height: 35px; color: var(--page-muted); background: transparent; border: 0; border-radius: 6px; cursor: pointer; font: inherit; font-size: .66rem; font-weight: 700; }
.owner-auth-tabs button.active { color: #06120d; background: var(--page-green); }
.owner-register-fields { display: contents; }
.owner-auth-form select { width: 100%; min-height: 38px; padding: 9px 10px; color: #fff; background: rgba(0,0,0,.24); border: 1px solid var(--page-line); border-radius: 7px; outline: none; font: inherit; font-size: .68rem; }
.owner-auth-form > small { color: var(--page-faint); font-size: .57rem; line-height: 1.5; }
.owner-kpi-grid-six { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.owner-kpi-grid-six .owner-kpi { min-height: 122px; }

.owner-lifecycle { display: flex; align-items: center; justify-content: center; gap: 8px; overflow-x: auto; margin-bottom: 12px; padding: 12px; color: var(--page-green); background: rgba(182,239,207,.035); border: 1px solid var(--page-line-soft); border-radius: 10px; font-size: .58rem; font-weight: 800; white-space: nowrap; }
.owner-lifecycle span { padding: 7px 10px; border: 1px solid rgba(182,239,207,.2); border-radius: 6px; }
.owner-lifecycle i { color: var(--page-faint); font-style: normal; }
.warehouse-grid, .project-board { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.warehouse-card, .project-card, .report-card, .profile-card, .roadmap-card { min-width: 0; padding: 17px; background: rgba(255,255,255,.028); border: 1px solid var(--page-line-soft); border-radius: 12px; }
.warehouse-card-top, .project-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.warehouse-card .kpi-symbol { margin-bottom: 11px; }
.warehouse-card h3, .project-card h3, .report-actions h3, .calendar-month h3, .profile-card h3 { margin: 4px 0 8px; font-size: 1rem; font-weight: 600; letter-spacing: -.035em; }
.warehouse-card > p:not(.page-eyebrow), .project-card > p { margin: 0 0 13px; color: var(--page-muted); font-size: .63rem; line-height: 1.55; }
.warehouse-card > small { color: var(--page-faint); font-size: .53rem; }
.warehouse-quantities { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; margin: 14px 0; }
.warehouse-quantities span { display: grid; gap: 2px; padding: 9px; background: rgba(255,255,255,.03); border: 1px solid var(--page-line-soft); border-radius: 7px; }
.warehouse-quantities b { font-size: 1.05rem; font-weight: 500; }
.warehouse-quantities small { color: var(--page-faint); font-size: .49rem; text-transform: uppercase; }
.warehouse-actions { display: flex; align-items: center; justify-content: flex-end; gap: 14px; margin-top: 14px; padding-top: 11px; border-top: 1px solid var(--page-line-soft); }
.project-dates { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px; margin: 12px 0; }
.project-dates span { display: grid; gap: 2px; padding: 8px; border: 1px solid var(--page-line-soft); border-radius: 7px; }
.project-dates small { color: var(--page-faint); font-size: .45rem; letter-spacing: .1em; }
.project-dates b { font-size: .58rem; font-weight: 600; }
.project-plan { min-height: 48px; }
.project-equipment-list { display: grid; gap: 4px; min-height: 28px; }
.project-equipment-list > span { display: flex; justify-content: space-between; gap: 8px; padding: 6px 8px; color: var(--page-muted); background: rgba(255,255,255,.03); border-radius: 6px; font-size: .56rem; }
.project-equipment-list button { color: var(--page-green); background: transparent; border: 0; cursor: pointer; font: inherit; font-size: .5rem; }

.map-command-bar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 10px; padding: 12px 15px; background: rgba(255,255,255,.025); border: 1px solid var(--page-line-soft); border-radius: 10px; }
.map-command-bar > div { display: grid; gap: 3px; }
.map-command-bar b { font-size: .7rem; }
.map-command-bar small { color: var(--page-faint); font-size: .55rem; }
.owner-leaflet-map { position: relative; z-index: 0; isolation: isolate; min-height: 640px; overflow: hidden; color: #111; background: #dbe4dd; border: 1px solid var(--page-line-soft); border-radius: 12px; }
.owner-leaflet-map .leaflet-control-container { font-size: .72rem; }
.map-fallback-grid { position: absolute; inset: 0; display: grid; place-items: center; color: #35433c; background-image: linear-gradient(rgba(18,65,44,.1) 1px, transparent 1px), linear-gradient(90deg, rgba(18,65,44,.1) 1px, transparent 1px); background-size: 48px 48px; }
.map-fallback-active { background: radial-gradient(circle at 65% 42%, rgba(40,116,76,.25), transparent 30%), #dfe9e2; }
.map-fallback-note { position: absolute; z-index: 1; top: 12px; left: 12px; padding: 7px 9px; color: #1d3b2c; background: rgba(255,255,255,.88); border-radius: 6px; font-size: .53rem; font-weight: 700; }
.map-site-summary { margin-bottom: 12px; padding: 12px; color: var(--page-muted); background: rgba(182,239,207,.04); border: 1px solid var(--page-line-soft); border-radius: 9px; font-size: .58rem; }
.map-site-summary > p { margin: 0; line-height: 1.6; }
.map-summary-head { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 8px; }
.map-summary-head > div { display: grid; gap: 2px; }
.map-summary-head b { color: inherit; font-size: .65rem; }
.map-summary-head small { color: var(--page-faint); font-size: .52rem; }
.map-site-summary dl, .profile-card dl, .site-detail-columns dl { display: grid; gap: 0; margin: 12px 0; }
.map-site-summary dl > div, .profile-card dl > div, .site-detail-columns dl > div { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border-bottom: 1px solid var(--page-line-soft); }
.map-site-summary dt, .profile-card dt, .site-detail-columns dt { color: var(--page-faint); }
.map-site-summary dd, .profile-card dd, .site-detail-columns dd { margin: 0; color: inherit; text-align: end; }
.map-summary-actions { display: flex; gap: 7px; }

.calendar-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); gap: 10px; }
.calendar-month, .calendar-agenda { padding: 17px; background: rgba(255,255,255,.025); border: 1px solid var(--page-line-soft); border-radius: 12px; }
.calendar-month-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.calendar-month-head > span { color: var(--page-faint); font-size: .54rem; }
.calendar-week-head, .calendar-cells { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.calendar-week-head { margin-top: 14px; color: var(--page-faint); font-size: .46rem; font-weight: 800; text-align: center; }
.calendar-week-head span { padding: 8px 2px; border-bottom: 1px solid var(--page-line-soft); }
.calendar-cell { display: grid; align-content: start; gap: 4px; min-height: 94px; padding: 8px; overflow: hidden; color: inherit; background: transparent; border: 0; border-right: 1px solid var(--page-line-soft); border-bottom: 1px solid var(--page-line-soft); cursor: default; text-align: start; }
button.calendar-cell { cursor: pointer; }
.calendar-cell.today { background: rgba(182,239,207,.07); box-shadow: inset 0 0 0 1px rgba(182,239,207,.25); }
.calendar-cell.muted { opacity: .25; }
.calendar-cell > b { font-size: .58rem; }
.calendar-cell > small { color: var(--page-faint); font-size: .44rem; }
.calendar-dot { overflow: hidden; padding: 3px 4px; color: #06120d; background: var(--page-green); border-radius: 4px; font-size: .44rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.calendar-dot-maintenance, .calendar-dot-warranty, .calendar-dot-planned_shutdown { background: var(--page-gold); }
.calendar-agenda { max-height: 720px; overflow-y: auto; }
.calendar-agenda-row { display: grid; grid-template-columns: 92px minmax(0,1fr) auto auto; align-items: center; gap: 8px; min-height: 66px; padding: 8px 0; border-bottom: 1px solid var(--page-line-soft); }
.calendar-agenda-row time, .calendar-agenda-row > span:nth-child(2) { display: grid; gap: 3px; }
.calendar-agenda-row time b, .calendar-agenda-row > span:nth-child(2) b { font-size: .58rem; }
.calendar-agenda-row time small, .calendar-agenda-row > span:nth-child(2) small { color: var(--page-faint); font-size: .49rem; }
.plans-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 10px; }
.roadmap-card { margin-bottom: 8px; }
.roadmap-card > span { color: var(--page-green); font-size: .52rem; }
.roadmap-card h3 { margin: 7px 0; font-size: .83rem; }
.roadmap-card p { color: var(--page-muted); font-size: .62rem; line-height: 1.6; }

.report-actions { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 12px; }
.report-card-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
.report-card { display: grid; min-height: 128px; }
.report-card small { color: var(--page-faint); font-size: .48rem; font-weight: 800; letter-spacing: .11em; }
.report-card b { align-self: end; font-size: 1.7rem; font-weight: 400; letter-spacing: -.07em; }
.report-card span { color: var(--page-muted); font-size: .54rem; }
.report-table { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 18px; margin-top: 10px; }
.report-table .panel-card-heading { grid-column: 1 / -1; }
.report-table > div:not(.panel-card-heading) { display: flex; justify-content: space-between; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--page-line-soft); color: var(--page-muted); font-size: .61rem; }
.report-table > div b { color: inherit; }
.profile-layout { display: grid; grid-template-columns: minmax(260px, .36fr) minmax(0, .64fr); gap: 10px; }
.profile-card { text-align: center; }
.profile-large-avatar { display: grid; place-items: center; width: 76px; height: 76px; margin: 4px auto 15px; color: #06120d; background: var(--page-green); border-radius: 24px; font-size: 1.5rem; font-weight: 900; }
.profile-card > p { color: var(--page-muted); font-size: .65rem; }
.profile-card .owner-status { justify-content: center; }
.profile-card dl { margin-top: 20px; text-align: start; font-size: .61rem; }
.profile-sessions article { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px; min-height: 66px; border-bottom: 1px solid var(--page-line-soft); }
.profile-sessions article .kpi-symbol { margin: 0; }
.profile-sessions article > div { display: grid; gap: 3px; }
.profile-sessions article b { font-size: .64rem; }
.profile-sessions article small { color: var(--page-faint); font-size: .52rem; }
.profile-security { margin-top: 24px; padding: 16px; background: rgba(182,239,207,.04); border: 1px solid var(--page-line-soft); border-radius: 10px; }
.profile-security > p:not(.page-eyebrow) { color: var(--page-muted); font-size: .62rem; line-height: 1.65; }

.owner-site-detail-dialog { width: min(960px, calc(100% - 30px)); }
.owner-loading-inline { padding: 50px; color: var(--page-muted); text-align: center; }
.site-detail-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 7px; }
.site-detail-kpis > div { display: grid; gap: 5px; padding: 12px; background: rgba(255,255,255,.035); border: 1px solid var(--page-line-soft); border-radius: 8px; }
.site-detail-kpis small { color: var(--page-faint); font-size: .48rem; letter-spacing: .1em; }
.site-detail-kpis b { font-size: .72rem; }
.site-detail-columns { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 10px; }
.site-detail-columns > section { padding: 15px; border: 1px solid var(--page-line-soft); border-radius: 9px; }
.site-detail-columns h3 { margin: 0 0 10px; font-size: .82rem; }
.site-detail-columns p, .site-detail-columns dl { color: var(--page-muted); font-size: .61rem; line-height: 1.6; }
.site-detail-columns article { display: grid; gap: 3px; padding: 8px 0; border-bottom: 1px solid var(--page-line-soft); }
.site-detail-columns article b { font-size: .62rem; }
.site-detail-columns article small, .site-detail-columns article span { color: var(--page-faint); font-size: .53rem; }

html[data-theme="light"] .owner-auth-form select { color: #111; background: rgba(0,0,0,.035); }
html[data-theme="light"] .owner-auth-tabs { background: rgba(10,104,68,.04); }
html[data-theme="light"] .warehouse-card,
html[data-theme="light"] .project-card,
html[data-theme="light"] .report-card,
html[data-theme="light"] .profile-card,
html[data-theme="light"] .roadmap-card,
html[data-theme="light"] .calendar-month,
html[data-theme="light"] .calendar-agenda { color: #111; background: rgba(255,255,255,.76); }
html[data-theme="light"] .warehouse-card h3,
html[data-theme="light"] .project-card h3,
html[data-theme="light"] .report-card b,
html[data-theme="light"] .profile-card h3,
html[data-theme="light"] .roadmap-card h3,
html[data-theme="light"] .calendar-month h3,
html[data-theme="light"] .calendar-agenda-row b,
html[data-theme="light"] .site-detail-columns h3,
html[data-theme="light"] .site-detail-kpis b { color: #111; }

html[dir="rtl"] .owner-tabs button, html[dir="rtl"] .map-site-item, html[dir="rtl"] .calendar-cell { text-align: right; }
html[dir="rtl"] .owner-sidebar { border-right: 0; border-left: 1px solid var(--page-line-soft); }

@media (max-width: 1250px) {
  .owner-kpi-grid-six, .report-card-grid { grid-template-columns: repeat(3, 1fr); }
  .warehouse-grid, .project-board { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .calendar-layout, .plans-layout, .profile-layout { grid-template-columns: 1fr; }
  .owner-leaflet-map { min-height: 500px; }
  .report-table { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 760px) {
  .owner-page .section-shell { width: calc(100% - 20px); }
  .owner-page .owner-portal-heading { min-height: auto; padding-block: 22px; }
  .owner-page .owner-sidebar { max-height: none; overflow: visible; }
  .warehouse-grid, .project-board { grid-template-columns: 1fr; }
  .map-command-bar, .report-actions { align-items: stretch; flex-direction: column; }
  .calendar-month { overflow-x: auto; }
  .calendar-week-head, .calendar-cells { min-width: 690px; }
  .calendar-agenda-row { grid-template-columns: 82px minmax(0, 1fr) auto; }
  .calendar-agenda-row .row-action { grid-column: 2 / -1; justify-self: end; }
  .site-detail-kpis, .site-detail-columns { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px) {
  .owner-kpi-grid-six, .report-card-grid, .report-table, .site-detail-kpis, .site-detail-columns { grid-template-columns: 1fr 1fr; }
  .map-summary-actions { flex-direction: column; }
}

/* 2.7 public platform: richer landing, practical Knowledge tools and owner command center. */
.session-button { max-width: 220px; }
.session-avatar { display: inline-grid; place-items: center; width: 24px; height: 24px; color: #07100e; background: #b6efcf; border-radius: 7px; font-size: .66rem; font-weight: 900; }
.session-avatar[hidden] { display: none; }
.platform-capabilities, .use-cases, .public-demo-section, .app-roles, .support-section { padding-block: 88px; border-top: 1px solid var(--line); }
.capability-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.capability-grid article, .use-case-grid article { min-width: 0; padding: 22px; background: var(--panel); border: 1px solid var(--line); border-radius: 17px; transition: transform 180ms ease, border-color 180ms ease, background 180ms ease; }
.capability-grid article:hover, .use-case-grid article:hover { transform: translateY(-4px); border-color: var(--line-strong); background: var(--panel-strong); }
.capability-grid article > span { display: inline-grid; place-items: center; width: 32px; height: 32px; margin-bottom: 28px; color: var(--green); border: 1px solid var(--line-strong); border-radius: 9px; font-size: .62rem; font-weight: 900; }
.capability-grid h3, .use-case-grid h3, .app-role-grid h3 { margin-bottom: 9px; font-size: 1rem; letter-spacing: -.035em; }
.capability-grid p, .use-case-grid p, .app-role-grid p { margin: 0; color: var(--muted); font-size: .74rem; line-height: 1.7; }
.use-case-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.use-case-grid article { min-height: 200px; }
.use-case-icon { display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 25px; color: var(--green); background: rgba(25,189,135,.08); border: 1px solid var(--line-strong); border-radius: 14px; font-size: 1.1rem; font-weight: 900; }
.public-demo-section { display: grid; grid-template-columns: minmax(280px, .78fr) minmax(440px, 1.22fr); align-items: center; gap: clamp(38px, 8vw, 105px); }
.public-demo-copy h2, .support-card h2 { max-width: 650px; margin-bottom: 18px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.15rem, 4vw, 4rem); font-weight: 600; letter-spacing: -.07em; line-height: .98; }
.public-demo-copy > p:not(.eyebrow), .support-card > div:first-child > p:not(.eyebrow) { max-width: 520px; color: var(--muted); font-size: .85rem; line-height: 1.75; }
.demo-site-buttons { display: flex; flex-wrap: wrap; gap: 7px; margin: 26px 0 20px; }
.demo-site-buttons button { min-height: 35px; padding: 0 12px; color: var(--muted); background: var(--panel); border: 1px solid var(--line); border-radius: 9px; cursor: pointer; font-size: .65rem; font-weight: 800; }
.demo-site-buttons button:hover, .demo-site-buttons button.active { color: #03140e; background: var(--mint); border-color: var(--mint); }
.public-demo-card { overflow: hidden; padding: 20px; background: linear-gradient(145deg, rgba(13,38,30,.92), rgba(5,12,10,.98)); border: 1px solid var(--line-strong); border-radius: 22px; box-shadow: var(--shadow); }
html[data-theme="light"] .public-demo-card { background: linear-gradient(145deg, #fff, #e7f2eb); }
.public-demo-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.public-demo-head > span { display: grid; gap: 3px; }
.public-demo-head small, .public-demo-flow small, .public-demo-stats small { color: var(--faint); font-size: .48rem; font-weight: 900; letter-spacing: .12em; }
.public-demo-head b { font-size: .78rem; }
.public-demo-head em { color: var(--green); font-size: .5rem; font-style: normal; font-weight: 900; letter-spacing: .1em; }
.public-demo-head em i { display: inline-block; width: 6px; height: 6px; margin-right: 5px; background: currentColor; border-radius: 50%; box-shadow: 0 0 9px currentColor; }
.public-demo-flow { display: grid; grid-template-columns: 1fr .35fr 1fr .35fr 1fr; align-items: center; gap: 6px; min-height: 260px; }
.public-demo-flow > div { display: grid; justify-items: center; gap: 6px; text-align: center; }
.public-demo-flow > i { height: 1px; overflow: hidden; background: var(--line-strong); }
.public-demo-flow > i span { display: block; width: 45%; height: 1px; background: var(--green); animation: demo-flow 1.5s linear infinite; }
.demo-symbol { display: grid; place-items: center; width: 68px; height: 68px; margin-bottom: 8px; color: var(--green); background: rgba(25,189,135,.08); border: 1px solid var(--line-strong); border-radius: 18px; font-size: 1.5rem; }
.queen-vfd { color: #07100e; background: var(--mint); font-weight: 900; }
.demo-motor { border-radius: 50%; animation: demo-spin 2.4s linear infinite; }
.public-demo-flow b { font-size: .8rem; }
.public-demo-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; padding-top: 15px; border-top: 1px solid var(--line); }
.public-demo-stats span { display: grid; gap: 5px; padding: 12px; background: rgba(255,255,255,.025); border: 1px solid var(--line); border-radius: 10px; }
.public-demo-stats b { font-size: 1.05rem; }
@keyframes demo-flow { from { transform: translateX(-110%); } to { transform: translateX(260%); } }
@keyframes demo-spin { to { transform: rotate(360deg); } }
.app-role-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.app-role-grid article { display: grid; grid-template-columns: auto 1fr; gap: 20px; padding: 27px; background: var(--panel); border: 1px solid var(--line); border-radius: 20px; }
.app-role-mark { display: grid; place-items: center; width: 58px; height: 58px; color: #07100e; background: var(--mint); border-radius: 17px; font-size: 1.15rem; font-weight: 900; }
.gateway-mark { color: var(--green); background: rgba(25,189,135,.1); border: 1px solid var(--line-strong); }
.app-role-grid small { color: var(--green); font-size: .5rem; font-weight: 900; letter-spacing: .12em; }
.app-role-grid ul { display: grid; gap: 7px; margin: 18px 0 0; padding: 0; color: var(--muted); list-style: none; font-size: .66rem; }
.app-role-grid li::before { content: "✓"; margin-right: 8px; color: var(--green); }
.support-card { display: flex; align-items: center; justify-content: space-between; gap: 48px; padding: clamp(26px, 5vw, 60px); background: linear-gradient(140deg, rgba(19,84,61,.56), var(--panel)); border: 1px solid var(--line-strong); border-radius: 28px; }
.support-actions { display: grid; min-width: min(100%, 270px); gap: 10px; }
.support-actions .primary-button, .support-actions .outline-button { justify-content: space-between; width: 100%; }
.support-actions .text-link { justify-content: center; font-size: .66rem; }

/* Knowledge discovery and self-service diagnostic workbench. */
.knowledge-quick-paths { display: flex; gap: 7px; overflow-x: auto; margin: -34px auto 34px; padding: 8px; background: var(--page-panel); border: 1px solid var(--page-line-soft); border-radius: 11px; scrollbar-width: thin; }
.knowledge-quick-paths button { min-height: 36px; padding: 0 13px; color: var(--page-muted); background: transparent; border: 1px solid transparent; border-radius: 7px; cursor: pointer; font-size: .59rem; font-weight: 700; white-space: nowrap; }
.knowledge-quick-paths button:hover, .knowledge-quick-paths button.active { color: #06120d; background: var(--page-green); }
.knowledge-toolbar-filters { display: flex; gap: 7px; }
.knowledge-toolbar select { min-height: 39px; padding: 0 33px 0 10px; color: #fff; background: rgba(255,255,255,.035); border: 1px solid var(--page-line); border-radius: 8px; font: inherit; font-size: .61rem; }
html[data-theme="light"] .knowledge-toolbar select { color: #111; background: #fff; }
.resource-card-actions { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 13px; }
.resource-bookmark { display: grid; place-items: center; width: 31px; height: 31px; color: var(--page-faint); background: transparent; border: 1px solid var(--page-line); border-radius: 8px; cursor: pointer; font-size: .9rem; }
.resource-bookmark.active, .resource-bookmark:hover { color: var(--page-gold); border-color: var(--page-gold); }
.knowledge-tool-section { padding-block: 75px; border-top: 1px solid var(--page-line-soft); }
.knowledge-tool-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.knowledge-tool-card { padding: 20px; background: var(--page-panel); border: 1px solid var(--page-line-soft); border-radius: 13px; }
.knowledge-tool-card > span { display: inline-grid; place-items: center; width: 38px; height: 38px; margin-bottom: 18px; color: var(--page-green); background: rgba(182,239,207,.08); border: 1px solid rgba(182,239,207,.18); border-radius: 10px; font-weight: 900; }
.knowledge-tool-card h3 { margin-bottom: 7px; font-size: .93rem; }
.knowledge-tool-card > p { min-height: 54px; color: var(--page-muted); font-size: .62rem; line-height: 1.65; }
.knowledge-tool-input { display: flex; gap: 6px; margin-top: 16px; }
.knowledge-tool-input input, .knowledge-tool-input select { min-width: 0; min-height: 37px; flex: 1; padding: 0 10px; color: #fff; background: rgba(0,0,0,.2); border: 1px solid var(--page-line); border-radius: 7px; font: inherit; font-size: .65rem; }
html[data-theme="light"] .knowledge-tool-input input, html[data-theme="light"] .knowledge-tool-input select { color: #111; background: #fff; }
.knowledge-tool-input button { min-width: 72px; color: #07100e; background: var(--page-green); border: 0; border-radius: 7px; cursor: pointer; font-size: .58rem; font-weight: 800; }
.knowledge-tool-result { min-height: 92px; margin-top: 12px; padding: 12px; color: var(--page-muted); background: rgba(182,239,207,.035); border: 1px solid var(--page-line-soft); border-radius: 8px; font-size: .61rem; line-height: 1.65; }
.knowledge-tool-result b { display: block; margin-bottom: 4px; color: var(--page-green); font-size: .68rem; }
.troubleshoot-steps { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.troubleshoot-steps button { min-height: 34px; padding: 0 10px; color: var(--page-muted); background: transparent; border: 1px solid var(--page-line); border-radius: 7px; cursor: pointer; font-size: .56rem; }
.troubleshoot-steps button:hover { color: #06120d; background: var(--page-green); }
.knowledge-history { margin-top: 12px; color: var(--page-faint); font-size: .54rem; }
.knowledge-history button { padding: 2px 5px; color: var(--page-green); background: transparent; border: 0; cursor: pointer; font: inherit; text-decoration: underline; text-underline-offset: 3px; }

/* Owner Portal global command center, action board and 360-degree records. */
.owner-global-search { position: relative; width: min(34vw, 420px); }
.owner-global-search > span { position: absolute; z-index: 1; top: 50%; left: 11px; color: var(--page-faint); transform: translateY(-50%); }
.owner-global-search input { width: 100%; min-height: 39px; padding: 0 12px 0 34px; color: #fff; background: rgba(255,255,255,.035); border: 1px solid var(--page-line); border-radius: 8px; outline: none; font: inherit; font-size: .62rem; }
.owner-global-search input:focus { border-color: var(--page-green); }
html[data-theme="light"] .owner-global-search input { color: #111; background: #fff; }
.owner-global-results { position: absolute; z-index: 120; top: calc(100% + 6px); right: 0; left: 0; max-height: min(430px, 60vh); overflow-y: auto; padding: 6px; background: var(--page-panel-strong); border: 1px solid var(--page-line); border-radius: 10px; box-shadow: 0 24px 70px rgba(0,0,0,.3); }
.owner-global-results[hidden] { display: none; }
.owner-global-results button { display: grid; grid-template-columns: 70px 1fr; gap: 8px; width: 100%; padding: 10px; color: #fff; background: transparent; border: 0; border-bottom: 1px solid var(--page-line-soft); cursor: pointer; text-align: start; }
.owner-global-results button:last-child { border-bottom: 0; }
.owner-global-results button:hover { background: rgba(182,239,207,.08); }
.owner-global-results small { color: var(--page-green); font-size: .48rem; font-weight: 800; }
.owner-global-results span { display: grid; gap: 2px; }
.owner-global-results b { font-size: .62rem; }
.owner-global-results em { overflow: hidden; color: var(--page-faint); font-size: .5rem; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
html[data-theme="light"] .owner-global-results button { color: #111; }
.owner-action-board { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-bottom: 10px; }
.owner-action-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; min-height: 82px; padding: 13px; color: inherit; background: rgba(255,255,255,.025); border: 1px solid var(--page-line-soft); border-radius: 10px; cursor: pointer; text-align: start; }
.owner-action-card:hover { border-color: rgba(182,239,207,.28); background: rgba(182,239,207,.045); }
.owner-action-card > span:first-child { display: grid; place-items: center; width: 32px; height: 32px; color: var(--page-green); background: rgba(182,239,207,.08); border-radius: 8px; }
.owner-action-card > span:nth-child(2) { display: grid; gap: 2px; }
.owner-action-card b { font-size: .61rem; }
.owner-action-card small { color: var(--page-faint); font-size: .48rem; }
.owner-action-card strong { color: var(--page-green); font-size: .95rem; font-weight: 500; }
.owner-row-actions { display: flex; justify-content: flex-end; gap: 5px; }
.project-view-switch { display: inline-flex; gap: 4px; padding: 3px; border: 1px solid var(--page-line-soft); border-radius: 8px; }
.project-view-switch button { min-height: 30px; padding: 0 9px; color: var(--page-muted); background: transparent; border: 0; border-radius: 5px; cursor: pointer; font-size: .54rem; }
.project-view-switch button.active { color: #06120d; background: var(--page-green); }
.project-kanban { display: grid; grid-template-columns: repeat(4, minmax(230px, 1fr)); gap: 8px; overflow-x: auto; padding-bottom: 6px; }
.project-column { min-width: 230px; padding: 10px; background: rgba(255,255,255,.02); border: 1px solid var(--page-line-soft); border-radius: 11px; }
.project-column-head { display: flex; justify-content: space-between; gap: 8px; margin-bottom: 9px; padding: 2px 3px 9px; border-bottom: 1px solid var(--page-line-soft); }
.project-column-head b { font-size: .58rem; }
.project-column-head span { color: var(--page-green); font-size: .56rem; }
.project-column .project-card { margin-bottom: 7px; }
.owner-audit-table .owner-table-labels, .owner-audit-table .owner-table-row { grid-template-columns: .82fr 1fr .9fr 1.2fr auto; }
.owner-detail-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }

@media (max-width: 1050px) {
  .capability-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .public-demo-section { grid-template-columns: 1fr; }
  .public-demo-card { width: min(100%, 760px); }
  .knowledge-tool-grid { grid-template-columns: 1fr 1fr; }
  .owner-action-board { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .owner-global-search { width: min(48vw, 380px); }
}
@media (max-width: 760px) {
  .platform-capabilities, .use-cases, .public-demo-section, .app-roles, .support-section { padding-block: 62px; }
  .use-case-grid, .app-role-grid, .knowledge-tool-grid { grid-template-columns: 1fr; }
  .support-card { align-items: stretch; flex-direction: column; }
  .support-actions { width: 100%; min-width: 0; }
  .public-demo-flow { min-height: 220px; }
  .demo-symbol { width: 54px; height: 54px; font-size: 1.15rem; }
  .knowledge-quick-paths { margin-top: -20px; }
  .knowledge-toolbar-filters { width: 100%; }
  .knowledge-toolbar select { min-width: 0; flex: 1; }
  .owner-global-search { width: 100%; }
  .owner-main-actions { flex-wrap: wrap; }
  .owner-global-search { order: -1; }
  .owner-row-actions { justify-content: flex-start; }
}
@media (max-width: 520px) {
  .capability-grid, .owner-action-board { grid-template-columns: 1fr; }
  .public-demo-card { padding: 14px; }
  .public-demo-flow { grid-template-columns: 1fr .16fr 1fr .16fr 1fr; gap: 2px; min-height: 190px; }
  .demo-symbol { width: 45px; height: 45px; border-radius: 13px; }
  .public-demo-flow b { font-size: .6rem; }
  .public-demo-stats span { padding: 9px 7px; }
  .public-demo-stats b { font-size: .8rem; }
  .app-role-grid article { grid-template-columns: 1fr; }
}

/* Approved Super Admin operations UI — shared by every Owner Portal view. */
.owner-page {
  --page-panel: rgba(11, 17, 15, .96);
  --page-panel-strong: #0d1512;
  --page-line: rgba(255, 255, 255, .11);
  --page-line-soft: rgba(255, 255, 255, .065);
  --page-muted: #a7b0ac;
  --page-faint: #707b76;
  --page-green: #79d6ad;
  --page-green-deep: #24a875;
  --page-gold: #f59e0b;
  --page-red: #f06e65;
  --owner-orange: #f59e0b;
  --owner-orange-soft: rgba(245, 158, 11, .12);
  --owner-canvas: #070b09;
  background:
    radial-gradient(circle at 84% -12%, rgba(36, 168, 117, .13), transparent 33rem),
    radial-gradient(circle at 8% 42%, rgba(245, 158, 11, .055), transparent 28rem),
    var(--owner-canvas);
  font-family: Rubik, ui-sans-serif, system-ui, sans-serif;
}
.owner-page .section-shell { width: min(calc(100% - 40px), 1540px); }
.owner-page .subsite-header {
  position: sticky;
  z-index: 320;
  top: 0;
  min-height: 68px;
  background: rgba(7, 11, 9, .84);
  border-color: var(--page-line-soft);
  backdrop-filter: blur(18px) saturate(1.25);
}
.owner-page .subsite-brand strong,
.owner-page .owner-sidebar-top strong,
.owner-page .owner-portal-heading h1 { font-family: Rubik, ui-sans-serif, system-ui, sans-serif; }
.owner-page .subsite-brand em { color: var(--owner-orange); }
.owner-page .subsite-mark { color: var(--owner-orange); }
.owner-page .subsite-nav a.active::after { height: 2px; background: var(--owner-orange); }
.owner-page .page-chat-button,
.owner-page .owner-profile-avatar { color: #1a1103; background: var(--owner-orange); }
.owner-page .page-utility:active,
.owner-page .page-chat-button:active,
.owner-page button:active { transform: translateY(1px) scale(.985); }
.owner-page .owner-portal-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(290px, 330px);
  align-items: center;
  min-height: 174px;
  padding-block: 30px;
}
.owner-page .owner-portal-heading > div:first-child { min-width: 0; }
.owner-page .owner-portal-heading h1 {
  max-width: 820px;
  margin-bottom: 12px;
  font-size: clamp(2rem, 4vw, 4.25rem);
  font-weight: 500;
  letter-spacing: -.058em;
}
.owner-page .page-eyebrow,
.owner-page .sidebar-kicker,
.owner-page .modal-kicker { color: var(--owner-orange); }
.owner-page .page-eyebrow-dot { background: var(--owner-orange); box-shadow: 0 0 14px var(--owner-orange); }
.owner-page .owner-identity-card {
  min-width: 0;
  width: 100%;
  padding: 11px 12px;
  background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.022));
  border-color: var(--page-line);
  border-radius: 13px;
  box-shadow: 0 18px 48px rgba(0,0,0,.2);
}
.owner-page .identity-avatar { color: #1a1103; background: var(--owner-orange); }
.owner-page .owner-identity-card small { color: var(--page-green); }
.owner-page .owner-portal-shell {
  grid-template-columns: 242px minmax(0, 1fr);
  overflow: clip;
  background: rgba(8, 13, 11, .94);
  border-color: var(--page-line);
  border-radius: 18px;
  box-shadow: 0 32px 100px rgba(0,0,0,.32);
}
.owner-page .owner-sidebar {
  padding: 20px 13px;
  background: linear-gradient(180deg, rgba(19,29,25,.94), rgba(8,13,11,.98));
  border-color: var(--page-line-soft);
  scrollbar-color: rgba(245,158,11,.35) transparent;
}
.owner-page .owner-sidebar-top { padding: 0 10px 18px; }
.owner-page .owner-sidebar-top strong { font-size: 1.08rem; font-weight: 600; letter-spacing: -.035em; }
.owner-page .live-portal-badge {
  color: var(--page-green);
  background: rgba(121,214,173,.07);
  border-color: rgba(121,214,173,.22);
  border-radius: 999px;
}
.owner-page .owner-tabs { gap: 4px; }
.owner-page .owner-nav-group {
  display: block;
  padding: 9px 10px 4px;
  color: var(--page-faint);
  font-size: .55rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.owner-page.owner-preview-mode .live-portal-badge { color: var(--owner-orange); background: var(--owner-orange-soft); border-color: rgba(245,158,11,.24); }
.owner-page .owner-tabs button {
  grid-template-columns: 30px 1fr auto;
  min-height: 41px;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: 9px;
  font-size: .7rem;
  transition: color 160ms ease, background 160ms ease, border-color 160ms ease, transform 160ms ease;
}
.owner-page .owner-tabs button span {
  width: 25px;
  height: 25px;
  border-radius: 7px;
  font-size: .7rem;
}
.owner-page .owner-tabs button:hover {
  color: var(--text, #fff);
  background: rgba(255,255,255,.045);
  border-color: var(--page-line-soft);
}
.owner-page .owner-tabs button.active {
  color: #fff;
  background: var(--owner-orange-soft);
  border-color: rgba(245,158,11,.22);
  box-shadow: inset 3px 0 var(--owner-orange);
}
.owner-page .owner-tabs button.active span { color: var(--owner-orange); background: rgba(245,158,11,.12); }
.owner-page .tab-alert { color: #1a1103; background: var(--owner-orange); }
.owner-page .scope-lock { color: var(--owner-orange); background: var(--owner-orange-soft); }
.owner-page .owner-main-panel { padding: 26px clamp(18px, 2.2vw, 34px) 36px; background: rgba(255,255,255,.008); }
.owner-page .owner-main-top {
  position: relative;
  align-items: center;
  min-height: 72px;
  padding-bottom: 20px;
}
.owner-page .owner-main-top h2 { font-size: clamp(1.35rem, 2.3vw, 1.9rem); font-weight: 500; }
.owner-page .owner-main-actions { flex-wrap: wrap; justify-content: flex-end; }
.owner-page .owner-global-search input,
.owner-page .owner-inline-search,
.owner-page .knowledge-search {
  background: rgba(255,255,255,.035);
  border-color: var(--page-line);
  border-radius: 10px;
}
.owner-page .owner-global-search input:focus,
.owner-page .owner-inline-search:focus-within,
.owner-page .knowledge-search:focus-within { border-color: var(--owner-orange); box-shadow: 0 0 0 3px rgba(245,158,11,.1); }
.owner-page .secondary-action,
.owner-page .owner-add-button,
.owner-page .owner-danger-button,
.owner-page .row-action {
  border-radius: 9px;
  transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}
.owner-page .secondary-action { color: #d6ddd9; background: rgba(255,255,255,.035); }
.owner-page .secondary-action:hover { background: rgba(255,255,255,.075); border-color: rgba(255,255,255,.2); }
.owner-page .owner-add-button {
  color: #211503;
  background: var(--owner-orange);
  border-color: var(--owner-orange);
  box-shadow: 0 9px 24px rgba(245,158,11,.12);
}
.owner-page .owner-add-button:hover { background: #ffb329; border-color: #ffb329; }
.owner-page .row-action { color: var(--owner-orange); }
.owner-page .owner-view { padding-top: 22px; }
.owner-page .owner-kpi,
.owner-page .owner-panel-card,
.owner-page .model-table-card,
.owner-page .model-relationship-card,
.owner-page .warehouse-card,
.owner-page .project-card,
.owner-page .report-card,
.owner-page .profile-card,
.owner-page .roadmap-card,
.owner-page .calendar-month,
.owner-page .calendar-agenda,
.owner-page .owner-action-card,
.owner-page .service-card,
.owner-page .note-card,
.owner-page .document-card {
  background: linear-gradient(145deg, rgba(255,255,255,.038), rgba(255,255,255,.017));
  border-color: var(--page-line-soft);
  border-radius: 13px;
  box-shadow: 0 12px 34px rgba(0,0,0,.09);
}
.owner-page .owner-kpi { overflow: hidden; min-height: 136px; padding: 16px; }
.owner-page .owner-kpi::after {
  content: "";
  position: absolute;
  inset: auto 16px 0;
  height: 2px;
  background: linear-gradient(90deg, var(--owner-orange), transparent);
  opacity: .75;
}
.owner-page .kpi-symbol,
.owner-page .owner-action-card > span:first-child { color: var(--owner-orange); background: var(--owner-orange-soft); }
.owner-page .owner-action-card:hover,
.owner-page .owner-panel-card:hover { border-color: rgba(245,158,11,.18); }
.owner-page .owner-table-labels { color: #89948f; }
.owner-page .owner-table-row { border-color: var(--page-line-soft); transition: background 140ms ease; }
.owner-page .owner-table-row:hover { background: rgba(245,158,11,.035); }
.owner-page .table-number,
.owner-page .owner-action-card strong,
.owner-page .record-detail-button { color: var(--owner-orange); }
.owner-page .owner-auth-panel {
  background: linear-gradient(145deg, rgba(16,25,21,.98), rgba(8,13,11,.98));
  border-color: var(--page-line);
}
.owner-page .owner-auth-form,
.owner-page .owner-record-dialog {
  color: #f4f6f5;
  background: #101815;
  border-color: var(--page-line);
}
.owner-page .owner-auth-tabs { display: block; padding: 12px 13px; background: var(--owner-orange-soft); border-color: rgba(245,158,11,.2); }
.owner-page .owner-auth-tabs strong { color: var(--owner-orange); font-size: .72rem; }
.owner-page .owner-auth-form input,
.owner-page .owner-auth-form select,
.owner-page .owner-record-form input,
.owner-page .owner-record-form select,
.owner-page .owner-record-form textarea {
  color: #f4f6f5;
  background: #0b110f;
  border-color: var(--page-line);
  border-radius: 9px;
  color-scheme: dark;
}
.owner-page .owner-auth-form input:focus,
.owner-page .owner-record-form input:focus,
.owner-page .owner-record-form select:focus,
.owner-page .owner-record-form textarea:focus { border-color: var(--owner-orange); box-shadow: 0 0 0 3px rgba(245,158,11,.11); }
.owner-page .password-field button { color: var(--owner-orange); }
.owner-page .owner-remember-account input { accent-color: var(--owner-orange); }
.owner-page .owner-remember-account span { min-width: 0; white-space: normal; overflow-wrap: anywhere; }
.owner-page .owner-switch-field { background: rgba(255,255,255,.018); border-radius: 9px; }
.owner-page .owner-switch { flex: 0 0 44px; width: 44px; height: 24px; }
.owner-page .owner-switch i { background: #493a35; box-shadow: inset 0 0 0 1px var(--page-line); }
.owner-page .owner-switch i::after { top: 3px; left: 3px; width: 18px; height: 18px; box-shadow: 0 2px 7px rgba(0,0,0,.3); }
.owner-page .owner-switch input:checked + i { background: var(--owner-orange); }
.owner-page .owner-switch input:checked + i::after { transform: translateX(20px); }
.owner-page .owner-switch input:focus-visible + i { outline-color: var(--owner-orange); }
.owner-page .project-view-switch button.active { color: #211503; background: var(--owner-orange); }
.owner-page .modal-backdrop { background: rgba(2,4,3,.76); backdrop-filter: blur(8px); }
.owner-page .owner-record-dialog { width: min(760px, calc(100% - 28px)); border-radius: 18px; box-shadow: 0 34px 110px rgba(0,0,0,.58); }
.owner-page .owner-leaflet-map { border-radius: 14px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.025); }

html[data-theme="light"] .owner-page {
  --page-panel: rgba(255,255,255,.96);
  --page-panel-strong: #fff;
  --page-line: rgba(30, 45, 38, .15);
  --page-line-soft: rgba(30, 45, 38, .085);
  --page-muted: #52615a;
  --page-faint: #77847e;
  --page-green: #177655;
  --page-green-deep: #0d6848;
  --owner-canvas: #f3f6f4;
  color: #142019;
  background:
    radial-gradient(circle at 88% -8%, rgba(36,168,117,.11), transparent 33rem),
    radial-gradient(circle at 7% 42%, rgba(245,158,11,.075), transparent 26rem),
    var(--owner-canvas);
}
html[data-theme="light"] .owner-page .subsite-header { background: rgba(248,251,249,.87); }
html[data-theme="light"] .owner-page .owner-portal-shell { background: rgba(255,255,255,.84); box-shadow: 0 28px 80px rgba(34,61,47,.12); }
html[data-theme="light"] .owner-page .owner-sidebar { background: linear-gradient(180deg, #eef3f0, #f7f9f8); }
html[data-theme="light"] .owner-page .owner-tabs button.active { color: #281804; }
html[data-theme="light"] .owner-page .owner-main-panel { background: rgba(255,255,255,.42); }
html[data-theme="light"] .owner-page .owner-kpi,
html[data-theme="light"] .owner-page .owner-panel-card,
html[data-theme="light"] .owner-page .model-table-card,
html[data-theme="light"] .owner-page .model-relationship-card,
html[data-theme="light"] .owner-page .warehouse-card,
html[data-theme="light"] .owner-page .project-card,
html[data-theme="light"] .owner-page .report-card,
html[data-theme="light"] .owner-page .profile-card,
html[data-theme="light"] .owner-page .roadmap-card,
html[data-theme="light"] .owner-page .calendar-month,
html[data-theme="light"] .owner-page .calendar-agenda,
html[data-theme="light"] .owner-page .owner-action-card,
html[data-theme="light"] .owner-page .service-card,
html[data-theme="light"] .owner-page .note-card,
html[data-theme="light"] .owner-page .document-card { color: #142019; background: rgba(255,255,255,.82); box-shadow: 0 10px 28px rgba(34,61,47,.055); }
html[data-theme="light"] .owner-page .owner-auth-panel { background: linear-gradient(145deg, #fff, #f2f6f3); }
html[data-theme="light"] .owner-page .owner-auth-form,
html[data-theme="light"] .owner-page .owner-record-dialog { color: #142019; background: #fff; }
html[data-theme="light"] .owner-page .owner-auth-form input,
html[data-theme="light"] .owner-page .owner-auth-form select,
html[data-theme="light"] .owner-page .owner-record-form input,
html[data-theme="light"] .owner-page .owner-record-form select,
html[data-theme="light"] .owner-page .owner-record-form textarea { color: #142019; background: #f7f9f8; color-scheme: light; }
html[data-theme="light"] .owner-page .secondary-action { color: #34463d; background: #fff; }

@media (max-width: 1100px) {
  .owner-page .owner-portal-shell { grid-template-columns: 205px minmax(0, 1fr); }
  .owner-page .owner-global-search { width: min(100%, 360px); }
}
@media (max-width: 900px) {
  .owner-page .owner-portal-heading { grid-template-columns: 1fr; }
  .owner-page .owner-identity-card { max-width: 420px; margin-top: 6px; }
}
@media (max-width: 760px) {
  .owner-page .section-shell { width: min(calc(100% - 20px), 1540px); }
  .owner-page .subsite-header { position: relative; }
  .owner-page .subsite-nav { overflow-x: auto; overflow-y: hidden; scrollbar-width: none; }
  .owner-page .subsite-nav::-webkit-scrollbar { display: none; }
  .owner-page .owner-portal-heading { padding-block: 24px; }
  .owner-page .owner-identity-card { min-width: 0; }
  .owner-page .owner-sidebar { padding: 14px 10px; }
  .owner-page .owner-nav-group { display: none; }
  .owner-page .owner-tabs button { min-height: 39px; }
  .owner-page .owner-main-actions > button { flex: 1; }
  .owner-page .owner-record-dialog { padding: 20px; }
}
