/* Component appearance from the supplied React/Tailwind UI kit. */
body { font-family:var(--font-sans); }
button, input, select, textarea { font-family:inherit; }
.primary, .secondary { height:40px; border-radius:var(--radius-md); font-size:12px; font-weight:500; transition:background-color .15s,border-color .15s; }
.primary { background:var(--awa-navy); color:var(--awa-white); }
.primary:hover { background:color-mix(in srgb,var(--awa-navy) 90%,white); }
.secondary { background:var(--awa-cream); border-color:var(--awa-cream); color:var(--awa-dark); }
.secondary:hover { background:color-mix(in srgb,var(--awa-cream) 80%,white); }
.primary:focus-visible, .secondary:focus-visible, .icon-button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline:2px solid hsl(var(--ring)); outline-offset:2px; }
input, select, textarea { border-radius:var(--radius-md); border-color:hsl(var(--input)); background:white; color:var(--awa-black); }
input, select { min-height:40px; }
.icon-button { width:40px; height:40px; display:inline-grid; place-items:center; border-radius:var(--radius-md); }
.icon-button:hover { color:var(--awa-black); background:var(--awa-gold); }
.icon-button svg, nav svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.card, .kpi, .advisor-card { border-radius:var(--radius); border:1px solid hsl(var(--border)); background:hsl(var(--card)); color:hsl(var(--card-foreground)); box-shadow:0 1px 2px #00000004; }
.kpi.primary-kpi { background:var(--awa-navy); border-color:var(--awa-navy); }
.kpi.potential-kpi { border-top:3px solid var(--awa-gold); }
.closed-kpi .kpi-value { color:var(--green); }
.metric-note { display:block; margin-top:4px; color:#87621c; }
.detail-potential { padding-bottom:12px; margin-bottom:12px; border-bottom:1px solid hsl(var(--border)); }
.card-head { padding:24px 24px 18px; }
.card-head h2 { font-size:14px; font-weight:600; }
.card-head p { font-size:11px; line-height:1.6; color:hsl(var(--muted-foreground)); }
.badge, .status-pill { border-radius:999px; border:1px solid transparent; padding:5px 10px; font-size:10px; font-weight:500; }
.badge { background:var(--awa-cream); color:var(--awa-dark); }
.status-pill.new { background:#efede3; color:#686352; }
.filters { border-radius:var(--radius); }
.filters label span { color:#666; font-size:9px; }
.filters input, .filters select { height:40px; font-size:12px; background:white; }
.reset { color:#666; min-height:40px; }
.kpi-label { font-size:10px; color:#666; line-height:1.5; }
.kpi-sub { font-size:10px; line-height:1.6; color:#77766e; }
.kpi-value { font-size:28px; letter-spacing:-1.2px; }
th { height:48px; padding:12px 16px; font-size:10px; color:#666; background:#f6f5f0; }
td { padding:16px; font-size:12px; }
tbody tr:hover { background:color-mix(in srgb,var(--awa-cream) 27%,white); }
tbody tr:last-child td { border-bottom:0; }
.client-code { font-size:12px; font-weight:600; }
.cell-sub { color:#77766e; font-size:10px; }
.advisor-info b { font-size:12px; }
.advisor-amount { font-size:12px; }
.advisor-amount small { font-size:10px; color:#77766e; }
.pipeline-row .stage-label { font-size:11px; color:#666; }
.pipeline-row { grid-template-columns:145px 1fr 28px; }
.pipeline-note { color:#77766e; line-height:1.7; font-size:10px; }
.advisor-card h2 { font-weight:600; font-size:14px; }
.advisor-card p { color:#77766e; font-size:11px; }
.advisor-card .card-bottom { color:#666; line-height:1.6; }
.advisor-card .avatar { border-radius:var(--radius-md); background:var(--awa-cream); color:var(--awa-navy); }
.page-title h1 { font-weight:600; letter-spacing:-1.3px; }
.page-title p { color:#666; line-height:1.7; }
.sync-line { color:#77766e; }
.notice { border-radius:var(--radius); }
dialog { border-radius:var(--radius); }
.detail-summary { border-radius:var(--radius); background:#f3f2ec; }
.table-footer { color:#77766e; }
.pagination button { border-radius:var(--radius-sm); color:var(--awa-dark); background:var(--awa-cream); min-height:32px; }
.wordmark { display:flex; flex-direction:column; align-items:flex-start; gap:20px; }
.wordmark img { width:246px; max-width:100%; height:auto; display:block; }
.wordmark>span { font-size:10px; letter-spacing:.28em; color:var(--awa-cream); }
.sidebar .wordmark { padding:0 10px; margin:12px 0 0; }
.sidebar .wordmark .logo-full { width:180px; }
.sidebar .wordmark .logo-compact { display:none; }
.product-name { margin:23px 12px 38px; color:var(--awa-cream); font-size:10px; letter-spacing:.2em; }
nav button { border-radius:var(--radius-md); color:#c0c9dd; min-height:44px; gap:10px; }
nav button>span { font-size:11px; width:auto; text-align:left; }
nav button.active { border-radius:var(--radius-md); }
.auth-story { background:var(--awa-navy); padding:52px 58px; }
.story-body { padding:60px 0; }
.story-body h1 { font-weight:500; font-size:clamp(35px,3.7vw,58px); letter-spacing:-2.4px; line-height:1.22; }
.story-body p { color:var(--awa-cream); font-size:13px; line-height:1.9; }
.story-rule { width:40px; }
.story-foot { color:var(--awa-cream); letter-spacing:.1em; }
.auth-form-wrap { background:var(--awa-white); }
.auth-form-content { max-width:374px; }
.auth-form-content h2 { font-size:27px; letter-spacing:-1.1px; font-weight:600; }
.brand-symbol { display:block; width:124px; margin-bottom:35px; }
.brand-symbol img { display:block; width:100%; height:auto; }
.auth-form-content>.overline { font-size:9px; }
.auth-foot { color:#77766e; }
.verify { color:#666; line-height:1.6; }
footer { color:#77766e; }
.error-box { border-radius:var(--radius); }
@media(max-width:1200px) {
  .sidebar .wordmark { padding:0 5px; }
  .sidebar .wordmark .logo-full { width:150px; }
  main { padding:25px; }
  .pipeline-row { grid-template-columns:135px 1fr 22px; }
  .kpi-value { font-size:24px; }
  .auth-story { padding:42px; }
  .wordmark img { width:220px; }
}
@media(max-width:900px) {
  .sidebar .wordmark { margin:5px 0 0; padding:0; align-items:center; }
  .sidebar .wordmark .logo-full { display:none; }
  .sidebar .wordmark .logo-compact { display:block; width:48px; }
  nav button>span { display:none; }
  nav button { min-height:44px; }
  .auth-story { padding:30px; }
  .wordmark img { width:200px; }
  .story-body h1 { font-size:37px; letter-spacing:-1.6px; }
}
@media(max-width:600px) {
  main { padding:22px 14px; }
  .page-title h1 { font-size:23px; }
  .card-head { padding:20px 16px 15px; }
  .card-head h2 { font-size:13px; }
  .card-head p { font-size:10px; }
  .kpi-value { font-size:21px; }
  .kpi-label,.kpi-sub { font-size:9px; }
  .advisor-info b,.advisor-amount { font-size:10px; }
  .advisor-amount small { font-size:9px; }
  .pipeline-row { grid-template-columns:133px 1fr 20px; }
  .pipeline-row .stage-label { font-size:10px; }
  .auth-story { padding:28px; }
  .auth-story .wordmark { gap:15px; }
  .auth-story .wordmark img { width:195px; }
  .story-body { padding:34px 0 8px; }
  .story-body h1 { font-size:31px; letter-spacing:-1.5px; }
  .brand-symbol { display:none; }
  .auth-form-wrap { padding:35px 28px; }
}
@media(max-width:420px) {
  .kpis { grid-template-columns:1fr; }
  .kpi { padding:18px; }
  .kpi-value { font-size:28px; }
  .kpi-label,.kpi-sub { font-size:10px; }
}
