/* Signal Design System v2.0 — function-preserving final visual layer. */
:root { --sds-purple:#9d4dff; }
:root { color-scheme:dark; --sds-primary:#020817; --sds-accent:#00e5ff; --sds-accent-strong:#00bfd5; --sds-accent-soft:rgba(0,229,255,.12); --sds-success:#22e58b; --sds-warning:#ffc107; --sds-danger:#ff4d4d; --sds-background:#020817; --sds-card:#07162a; --sds-border:rgba(118,169,220,.18); --sds-text:#f7faff; --sds-muted:#aab7c9; --sds-page-max:1240px; --background:var(--sds-background); --surface:var(--sds-card); --surface-soft:#061225; --line:var(--sds-border); --text:var(--sds-text); --text-soft:var(--sds-muted); --text-faint:#73829a; --navy:#020817; --blue:var(--sds-accent); --blue-soft:rgba(0,229,255,.1); --green:#22e58b; --red:#ff4d4d; }
html,body { min-width:0; background:#020817; color:#f7faff; }
body { background:radial-gradient(ellipse 70% 46% at 68% -12%,rgba(0,229,255,.13),transparent 64%),radial-gradient(ellipse 54% 38% at 14% 0%,rgba(157,77,255,.12),transparent 65%),#020817; }
.sidebar { background:linear-gradient(180deg,#061225,#020817); border-right:1px solid rgba(118,169,220,.18); box-shadow:none; }
.brand { border-color:rgba(118,169,220,.18); }.nav-item { color:#aab7c9; }.nav-item:hover,.nav-item:focus-visible { color:#f7faff; background:rgba(0,229,255,.1); transform:none; outline:2px solid #00e5ff; outline-offset:2px; }.nav-item.active { background:linear-gradient(90deg,rgba(0,229,255,.18),rgba(157,77,255,.1)); color:#f7faff; box-shadow:inset 3px 0 0 #00e5ff; }
.main-content { padding:32px 40px 72px; }.topbar,.content-section,.dashboard-area,.empty-state { border-color:rgba(118,169,220,.18); }.topbar { background:linear-gradient(135deg,rgba(7,22,42,.94),rgba(6,18,37,.92)); border:1px solid rgba(118,169,220,.18); box-shadow:0 24px 70px rgba(0,0,0,.22); }.topbar h1,.topbar h2,.content-section h2,.dashboard-area h2,.dashboard-area h3 { color:#f7faff; }.topbar .hero-description,.topbar p,.content-section p,.dashboard-area p { color:#aab7c9; }
.search-form { background:#020817; border-color:rgba(0,229,255,.38); box-shadow:0 0 0 1px rgba(0,229,255,.08); }.search-form:focus-within { box-shadow:0 0 0 3px rgba(0,229,255,.22); }.search-form input { color:#f7faff; background:transparent; }.search-form button,.primary-button { background:#00e5ff; color:#020817; border-color:#00e5ff; font-weight:800; }.search-form button:hover,.primary-button:hover { background:#82f4ff; color:#020817; }
.search-results { background:#07162a; border-color:rgba(0,229,255,.38); box-shadow:0 20px 48px rgba(0,0,0,.48); }.search-result { background:transparent; color:#f7faff; border-color:rgba(118,169,220,.18); }.search-result:hover,.search-result:focus-visible { background:rgba(0,229,255,.1); outline:2px solid #00e5ff; outline-offset:-2px; }
.dashboard-area,.content-section,.decision-card,.account-panel,.account-management-card,.legal-section { background:#07162a; border-color:rgba(118,169,220,.18); box-shadow:none; color:#f7faff; }.decision-card { background:linear-gradient(135deg,#07162a,#0a1b31); }.evaluation-subgroup { border-color:rgba(118,169,220,.18); }.evaluation-subgroup-heading>span,.dashboard-area-heading>span { color:#00e5ff; background:rgba(0,229,255,.12); }
.ai-chat-bubble,.evidence-card,.metric-card,.apartment-basic-info-card,.account-management-card { background:#0a1b31; border-color:rgba(118,169,220,.18); color:#f7faff; }.ai-chat-bubble.ai-chat-conclusion { border-color:rgba(0,229,255,.45); box-shadow:inset 0 0 20px rgba(0,229,255,.04); }.coverage-panel { background:#020817; border-color:rgba(118,169,220,.18); }
.service-footer { border-color:rgba(118,169,220,.18); color:#aab7c9; }.service-footer strong,.service-footer a,.signup-consents a { color:#62f2ff; }.account-panel>h2,.account-form label,.account-management-heading h3,.legal-section>h2 { color:#f7faff; }.account-form input,.account-tab,.account-record-item,.account-record-actions button { background:#020817; border-color:rgba(118,169,220,.28); color:#f7faff; }.account-tab.active { background:rgba(0,229,255,.14); border-color:#00e5ff; color:#f7faff; }
.legal-document-page { background:#020817; color:#f7faff; }.legal-policy-content { background:#07162a; border-color:rgba(118,169,220,.18); box-shadow:none; }.legal-policy-content h1,.legal-policy-content h2,.legal-policy-content h3,.legal-policy-content p,.legal-policy-content li { color:#f7faff; }.legal-policy-content blockquote { background:rgba(0,229,255,.1); border-color:#00e5ff; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible { outline:3px solid #00e5ff!important; outline-offset:3px; }.mobile-bottom-nav { display:none; }
@media (max-width:900px) { .sidebar { display:none; }.main-content { margin-left:0; padding:16px 16px 92px; }.topbar { border-radius:18px; }.topbar .signal-character-hero { display:none; }.mobile-bottom-nav { position:fixed; z-index:30; left:0; right:0; bottom:0; display:grid; grid-template-columns:repeat(4,1fr); min-height:66px; padding:max(7px,env(safe-area-inset-bottom)) 8px 7px; background:rgba(2,8,23,.96); border-top:1px solid rgba(118,169,220,.25); backdrop-filter:blur(16px); }.mobile-nav-item { display:grid; place-items:center; gap:2px; min-height:48px; border:0; background:transparent; color:#aab7c9; font-size:11px; }.mobile-nav-item span:first-child { font-size:20px; line-height:1; }.mobile-nav-item.active { color:#00e5ff; } }
@media (max-width:520px) { .main-content { padding-left:12px; padding-right:12px; }.topbar { padding:24px 18px; } }

/* Detail IA: conclusion first, optional evidence second. */
.evidence-accordion { display:block; margin-top:18px; border:1px solid rgba(0,229,255,.28); border-radius:16px; background:#061225; overflow:hidden; }
.evidence-accordion summary { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:54px; padding:14px 18px; color:#f7faff; cursor:pointer; font-weight:800; list-style:none; }
.evidence-accordion summary::-webkit-details-marker { display:none; }
.evidence-accordion summary::after { content:"＋"; color:#00e5ff; font-size:22px; }.evidence-accordion[open] summary::after { content:"−"; }
.evidence-accordion summary span { color:#aab7c9; font-size:12px; font-weight:500; }.evidence-accordion .evidence-grid { padding:0 18px 18px; }
.search-result-simple { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px; min-height:78px; padding:15px 18px; }.search-result-simple .search-result-main { display:grid; gap:5px; }.search-result-simple .search-result-meta { color:#aab7c9; }.search-result-state { border:1px solid rgba(0,229,255,.28); border-radius:999px; padding:6px 9px; color:#62f2ff; font-size:11px; font-weight:700; white-space:nowrap; }
@media (max-width:520px) { .evidence-accordion summary { align-items:flex-start; flex-wrap:wrap; }.evidence-accordion summary span { width:100%; }.evidence-accordion .evidence-grid { padding:0 12px 12px; }.search-result-simple { padding:14px; }.search-result-state { align-self:start; } }

/* One language for members, subscriptions, legal surfaces and exceptional states. */
.subscription-section,.account-section { color:#f7faff; }.subscription-section .subscription-results-section,.subscription-section .subscription-filter-panel,.subscription-section .subscription-card { background:#07162a; border-color:rgba(118,169,220,.18); color:#f7faff; }.subscription-section input,.subscription-section select,.subscription-section textarea { background:#020817; border-color:rgba(118,169,220,.28); color:#f7faff; }.subscription-section details[open] { background:#0a1b31; border-color:rgba(118,169,220,.18); }.subscription-section .subscription-notice-summary summary,.subscription-section .subscription-notice-summary-grid strong { color:#f7faff!important; }.subscription-section .subscription-notice-summary-grid p { background:#020817; border-color:rgba(118,169,220,.18); }.subscription-section .subscription-notice-summary-grid small { color:#aab7c9; }
.empty-state { background:linear-gradient(135deg,#07162a,#0a1b31); border:1px solid rgba(118,169,220,.18); }.notice { border-color:rgba(0,229,255,.38); background:rgba(0,229,255,.1); color:#f7faff; }.signal-waiting-note { max-width:280px; margin:8px 0 0; color:#aab7c9!important; font-size:12px; line-height:1.55; }.decision-card[data-signal="waiting"] .coverage-panel { border-color:rgba(170,183,201,.35); }.decision-card[data-signal="waiting"] .signal-label { color:#d9e2ef; }
.feedback-floating-button { background:#00e5ff; color:#020817; }.feedback-panel { background:#07162a; border-color:rgba(0,229,255,.5); }.feedback-panel select,.feedback-panel textarea { background:#020817; border-color:rgba(118,169,220,.28); color:#f7faff; }
@media (max-width:900px) { .subscription-section,.account-section { padding-bottom:12px; }.signal-waiting-note { max-width:none; } }
