:root {
  --ink: #0b3297;
  --muted: #5f6682;
  --paper: #fbecdd;
  --card: rgba(255,250,244,.82);
  --line: rgba(11,50,151,.15);
  --lime: #f8df08;
  --lime-dark: #8a7800;
  --teal: #0b3297;
  --teal-soft: #e8ebfb;
  --coral: #f8df08;
  --blue: #0b3297;
  --shadow: 0 20px 60px rgba(11,50,151,.12);
  --radius: 22px;
  --surface-solid: #fffaf4;
  --surface-soft: rgba(255,250,244,.72);
  --danger-bg: #ffe0db;
  --danger-text: #8a2b22;
  --success: #23623a;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: "Inter", "SF Pro Display", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}
button, input, select { font: inherit; }
button { color: inherit; }
a { color: inherit; }
.hidden { display: none !important; }
:where(a,button,input,select,textarea):focus-visible { outline:3px solid var(--lime);outline-offset:3px; }

.ambient { position: fixed; border-radius: 50%; filter: blur(90px); opacity: .22; pointer-events: none; z-index: -1; }
.ambient-one { width: 440px; height: 440px; background: var(--lime); top: -220px; right: 4vw; }
.ambient-two { width: 360px; height: 360px; background: #4268c7; bottom: -180px; left: -120px; }

.topbar {
  height: 78px;
  padding: 0 clamp(20px, 4vw, 68px);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  border-bottom: 1px solid var(--line);
  background: rgba(251,236,221,.88);
  backdrop-filter: blur(18px);
  position: sticky;
  top: 0;
  z-index: 20;
}
.brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; width: fit-content; }
.brand > span:last-child { display: flex; flex-direction: column; line-height: 1.05; }
.brand strong { letter-spacing: .13em; font-size: 14px; }
.brand small { color: var(--muted); margin-top: 5px; font-size: 11px; }
.brand-logo { width: 38px; height: 38px; display: block; flex: 0 0 auto; }
.primary-nav { justify-self: center; display: flex; gap: 5px; padding: 5px; background: rgba(255,255,255,.6); border: 1px solid var(--line); border-radius: 999px; }
.nav-item { border: 0; background: transparent; border-radius: 999px; padding: 9px 17px; color: var(--muted); cursor: pointer; font-size: 14px; }
.nav-item.active { background: var(--ink); color: var(--paper); }
.nav-item span { display: inline-grid; place-items: center; min-width: 20px; height: 20px; margin-left: 4px; padding: 0 6px; background: var(--lime); color: var(--ink); border-radius: 999px; font-size: 11px; font-weight: 800; }
.topbar-actions { justify-self:end;display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0; }
.data-status { display: flex; align-items: center; gap: 9px; }
.status-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 0 5px rgba(248,223,8,.2); }
.data-status > span:last-child { display: flex; flex-direction: column; }
.data-status b { font-size: 12px; }
.data-status small { color: var(--muted); font-size: 10px; margin-top: 2px; }
.account-trigger,.profile-trigger { min-height:44px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.64);padding:7px 14px;color:var(--ink);font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap; }
.account-trigger:hover,.profile-trigger:hover { background:var(--ink);border-color:var(--ink);color:var(--paper); }
.profile-trigger { display:flex;align-items:center;gap:8px;padding:5px 12px 5px 6px;max-width:150px; }
.profile-trigger > span:last-child { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.account-avatar { width:32px;height:32px;border-radius:50%;background:var(--lime);color:var(--ink);display:grid;place-items:center;font-weight:900;flex:0 0 auto; }
.menu-button { display:none;justify-self:end;min-height:44px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.62);padding:8px 13px;color:var(--ink);font-size:13px;font-weight:800;cursor:pointer; }

main { min-height: 80vh; }
.page-section { max-width: 1440px; margin: 0 auto; padding-left: clamp(20px,4vw,68px); padding-right: clamp(20px,4vw,68px); }
.eyebrow { font-size: 11px; font-weight: 800; letter-spacing: .19em; color: var(--teal); text-transform: uppercase; margin: 0 0 17px; }

.home-page { position:relative;overflow:hidden;padding-bottom:100px; }
.home-page::before { content:"";position:absolute;width:520px;height:520px;border-radius:50%;border:1px solid rgba(11,50,151,.1);right:-230px;top:80px;box-shadow:0 0 0 75px rgba(11,50,151,.035),0 0 0 150px rgba(11,50,151,.025);pointer-events:none; }
.home-hero { min-height:calc(100vh - 78px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:clamp(45px,7vw,110px);align-items:center;padding:70px 0 76px;position:relative;z-index:1; }
.home-hero-copy { max-width:780px; }
.home-kicker { display:flex;align-items:center;gap:10px;color:var(--ink);font-size:11px;font-weight:900;letter-spacing:.21em;margin:0 0 25px; }
.home-kicker span { width:38px;height:3px;background:var(--lime);border-radius:99px; }
.home-hero h1 { color:var(--ink);font:600 clamp(54px,6.6vw,96px)/.98 Georgia,"Noto Serif SC",serif;letter-spacing:-.052em;margin:0; }
.home-hero h1 > span { display:inline-block;font:900 clamp(20px,2vw,28px)/1 "Inter","PingFang SC",sans-serif;letter-spacing:.28em;background:var(--ink);color:var(--paper);padding:10px 12px 10px 19px;margin-bottom:22px; }
.home-hero h1 em { color:var(--ink);font-style:normal;position:relative;z-index:0;white-space:nowrap; }
.home-hero h1 em::after { content:"";position:absolute;left:-2%;right:-3%;height:.27em;bottom:.03em;background:var(--lime);z-index:-1;transform:rotate(-1.5deg); }
.home-intro { max-width:670px;color:var(--muted);font-size:16px;line-height:1.85;margin:28px 0 31px; }
.home-actions { display:flex;align-items:center;gap:11px;flex-wrap:wrap; }
.home-actions button,.solution-card button { cursor:pointer;font:inherit; }
.home-primary-action { border:0;border-radius:16px;background:var(--ink);color:var(--paper);display:flex;align-items:center;gap:28px;padding:15px 18px;font-size:14px;font-weight:800;box-shadow:0 18px 45px rgba(11,50,151,.18); }
.home-primary-action span { color:var(--lime);font-size:11px; }
.home-secondary-action { border:1px solid var(--line);border-radius:16px;background:rgba(255,250,244,.58);color:var(--ink);padding:15px 20px;font-size:13px;font-weight:800; }
.home-actions button:hover { transform:translateY(-2px); }
.home-logo-stage { min-height:520px;border-radius:48% 48% 44px 44px;background:var(--ink);position:relative;display:grid;place-items:center;overflow:hidden;box-shadow:0 35px 90px rgba(11,50,151,.24); }
.home-logo-stage::before { content:"";position:absolute;inset:auto -20% -44% 20%;height:75%;background:var(--lime);transform:rotate(-29deg); }
.home-logo-stage::after { content:"";position:absolute;width:140px;height:140px;border:1px solid rgba(251,236,221,.45);border-radius:50%;top:42px;right:45px; }
.home-logo-card { width:255px;min-height:300px;border-radius:36px;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:2;box-shadow:0 24px 60px rgba(2,20,65,.28);transform:rotate(-2deg); }
.home-logo-card img { width:128px;height:128px;margin-bottom:20px; }
.home-logo-card strong { font-size:48px;line-height:1;letter-spacing:.19em;margin-left:.19em; }
.home-logo-card small { margin-top:10px;font-size:14px;font-weight:800;letter-spacing:.45em;margin-left:.45em; }
.home-logo-orbit { position:absolute;border:1px solid rgba(251,236,221,.2);border-radius:50%;z-index:1; }
.home-logo-orbit.orbit-one { width:410px;height:410px; }
.home-logo-orbit.orbit-two { width:520px;height:520px;border-color:rgba(248,223,8,.34); }
.home-stage-note { position:absolute;z-index:3;color:var(--paper);font-size:9px;font-weight:800;letter-spacing:.22em; }
.home-stage-note::before { content:"";display:inline-block;width:17px;height:2px;background:var(--lime);margin-right:7px;vertical-align:middle; }
.note-one { left:29px;top:42px; }.note-two { right:25px;bottom:72px;color:var(--ink); }.note-three { left:34px;bottom:35px; }
.home-solutions { border-top:1px solid var(--line);padding-top:88px;position:relative;z-index:1; }
.home-section-heading { display:grid;grid-template-columns:minmax(260px,.8fr) minmax(400px,1.4fr);column-gap:7vw;align-items:end;margin-bottom:38px; }
.home-section-heading .eyebrow { grid-column:1/-1; }
.home-section-heading h2 { color:var(--ink);font:600 clamp(38px,4.7vw,64px)/1.08 Georgia,"Noto Serif SC",serif;letter-spacing:-.04em;margin:0; }
.home-section-heading > p:last-child { max-width:440px;color:var(--muted);line-height:1.8;margin:0 0 5px; }
.solution-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px; }
.solution-card { min-height:310px;border:1px solid var(--line);border-radius:26px;background:rgba(255,250,244,.68);padding:25px;display:flex;flex-direction:column;position:relative;overflow:hidden; }
.solution-card > span { color:var(--ink);font:700 13px Georgia,serif; }
.solution-card h3 { color:var(--ink);font:600 22px/1.32 Georgia,"Noto Serif SC",serif;margin:45px 0 13px; }
.solution-card p { color:var(--muted);font-size:12px;line-height:1.75;margin:0; }
.solution-card button { border:0;background:none;color:var(--ink);font-size:11px;font-weight:800;text-align:left;margin-top:auto;padding:22px 0 0; }
.solution-card-primary { background:var(--ink);border-color:var(--ink); }
.solution-card-primary > span,.solution-card-primary h3,.solution-card-primary button { color:var(--paper); }
.solution-card-primary p { color:rgba(251,236,221,.72); }
.solution-card-primary::after { content:"";position:absolute;width:140px;height:140px;border-radius:50%;background:var(--lime);right:-80px;top:-70px; }
.solution-card-future { background:var(--lime);border-color:var(--lime); }
.solution-card-label { position:absolute;right:18px;top:18px;border:1px solid rgba(11,50,151,.25);border-radius:99px;padding:6px 9px;color:var(--ink);font-size:9px;font-weight:800;letter-spacing:.08em; }

.model-page { padding-bottom:0; }
.model-hero { padding-top:76px;padding-bottom:48px;display:grid;grid-template-columns:minmax(0,1fr) 340px;column-gap:7vw;align-items:start; }
.model-hero h1 { max-width:900px; }
.model-hero > div:first-child > p:last-child { max-width:720px;line-height:1.8; }
.model-hero > div:first-child,.model-hero .hero-search,.model-hero .quick-needs { grid-column:1; }
.model-hero .hero-search { margin-top:30px; }
.model-metrics { grid-column:2;grid-row:1/4;align-self:stretch;display:grid;gap:1px;margin:0;background:rgba(251,236,221,.2);border:1px solid var(--line);border-radius:27px;overflow:hidden;min-height:350px;box-shadow:var(--shadow); }
.model-metrics div { background:var(--ink);padding:24px;display:flex;flex-direction:column;justify-content:flex-end;gap:5px; }
.model-metrics div:first-child { background:var(--lime); }
.model-metrics strong { color:var(--paper);font:600 38px Georgia,serif; }
.model-metrics span { color:rgba(251,236,221,.72);font-size:10px; }
.model-metrics div:first-child strong,.model-metrics div:first-child span { color:var(--ink); }
.hero { min-height: 570px; padding-top: 75px; padding-bottom: 70px; display: grid; grid-template-columns: minmax(0,1.5fr) minmax(320px,.7fr); gap: 8vw; align-items: center; }
.hero-copy h1 { font-family: Georgia, "Noto Serif SC", serif; font-size: clamp(45px,5.6vw,82px); line-height: 1.04; letter-spacing: -.045em; margin: 0; font-weight: 500; }
.hero-copy h1 em { color: var(--teal); font-style: italic; }
.hero-description { max-width: 690px; margin: 25px 0 30px; color: var(--muted); font-size: 17px; line-height: 1.8; }
.hero-search { max-width: 850px; display: flex; align-items: center; gap: 12px; background: white; border: 1px solid rgba(12,27,25,.17); border-radius: 18px; padding: 7px 9px 7px 17px; box-shadow: var(--shadow); transition: .2s; }
.hero-search:focus-within { border-color: var(--teal); box-shadow: 0 20px 60px rgba(12,97,88,.14); transform: translateY(-2px); }
.hero-search svg { width: 22px; fill: none; stroke: var(--teal); stroke-width: 1.8; }
.hero-search input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; padding: 13px 0; font-size: 15px; }
.hero-search kbd { border: 1px solid var(--line); border-bottom-width: 2px; background: var(--paper); color: var(--muted); padding: 6px 9px; border-radius: 8px; font-size: 11px; }
.quick-needs { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 18px; }
.quick-needs span { color: var(--muted); font-size: 12px; margin-right: 3px; }
.quick-needs button, .category-chips button { border: 1px solid var(--line); background: transparent; border-radius: 999px; padding: 7px 11px; cursor: pointer; color: var(--ink); font-size: 12px; transition: .15s; }
.quick-needs button:hover, .category-chips button:hover, .category-chips button.active { background: var(--ink); color: white; border-color: var(--ink); }
.hero-panel { min-height: 380px; border-radius: 38px; background: var(--ink); color: white; padding: 28px; box-shadow: 0 30px 80px rgba(12,27,25,.22); display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; position: relative; }
.hero-panel::after { content:""; position:absolute; width: 180px; height: 180px; background:var(--lime); filter:blur(90px); opacity:.25; top:-70px; right:-50px; }
.ijle-brand-panel { background: #f7e5d4; color: var(--ink); padding: 17px; }
.ijle-brand-panel::after { display: none; }
.ijle-brand-art { display: block; width: 100%; height: 245px; object-fit: cover; border-radius: 25px; border: 1px solid rgba(12,27,25,.08); }
.ijle-brand-panel .hero-metrics { border-top-color: rgba(12,27,25,.13); padding: 18px 8px 3px; }
.ijle-brand-panel .hero-metrics span { color: var(--muted); }
.orbit { width: 230px; height: 230px; margin: 10px auto 0; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; position: relative; display: grid; place-items: center; }
.orbit::before, .orbit::after { content:""; position:absolute; inset:28px; border:1px solid rgba(255,255,255,.12); border-radius:50%; }
.orbit::after { inset:58px; }
.orbit-core { width: 73px; height: 73px; background: var(--lime); color: var(--ink); border-radius: 23px; display:grid; place-items:center; font:700 25px Georgia; transform:rotate(8deg); }
.orbit i { position:absolute; width:11px; height:11px; border-radius:50%; background:white; box-shadow:0 0 20px rgba(255,255,255,.8); }
.orbit i:nth-child(2){top:13px;left:107px}.orbit i:nth-child(3){top:83px;right:-5px;background:var(--coral)}.orbit i:nth-child(4){bottom:8px;left:55px;background:var(--paper)}.orbit i:nth-child(5){left:5px;top:65px;background:var(--lime)}
.hero-metrics { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; border-top: 1px solid rgba(255,255,255,.13); padding-top: 21px; }
.hero-metrics div { display:flex; flex-direction:column; gap:5px; }
.hero-metrics strong { font-family: Georgia,serif; font-size: 31px; font-weight: 500; }
.hero-metrics span { color: rgba(255,255,255,.58); font-size: 10px; }

.workspace { padding-bottom: 90px; }
.section-heading { padding-top: 70px; border-top: 1px solid var(--line); display: flex; align-items: end; justify-content: space-between; gap: 30px; }
.section-heading h2 { font: 500 clamp(32px,4vw,54px)/1.1 Georgia,"Noto Serif SC",serif; letter-spacing:-.03em; margin:0 0 10px; }
.section-heading > div > p:last-child { color:var(--muted); margin:0; }
.ghost-button { border: 1px solid var(--line); background: rgba(255,255,255,.55); border-radius: 999px; padding: 10px 15px; cursor: pointer; white-space: nowrap; }
.ghost-button:hover { border-color: var(--ink); }
.need-builder { margin-top: 34px; background: var(--ink); padding: 16px; display:grid; grid-template-columns: repeat(4,minmax(130px,1fr)) auto; gap:1px; border-radius:24px; overflow:hidden; box-shadow:var(--shadow); }
.need-builder label { background:#153fa5; padding:12px 17px; display:flex; flex-direction:column; gap:7px; }
.need-builder label:first-child { border-radius: 12px 0 0 12px; }
.need-builder label span { color:#ccd6ff; font-size:10px; letter-spacing:.08em; }
.need-builder select { color:white; border:0; outline:0; background:transparent; font-weight:650; min-width:0; }
.need-builder option { color:var(--ink); background:white; }
.primary-button { border:0; background:var(--lime); color:var(--ink); border-radius:14px; padding:13px 20px; font-weight:800; cursor:pointer; transition:.15s; }
.primary-button:hover { transform:translateY(-2px); box-shadow:0 10px 30px rgba(201,255,74,.22); }
.primary-button span { margin-left:8px; }
.catalog-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:35px; margin-top:55px; }
.filter-panel { align-self:start; position:sticky; top:100px; display:flex; flex-direction:column; gap:20px; }
.filter-title { display:flex; align-items:center; justify-content:space-between; }
.filter-title h3 { margin:0; font-size:17px; }
.filter-title button { display:none; border:0;background:transparent;font-size:25px; }
.filter-panel label { display:flex; flex-direction:column; gap:8px; }
.filter-panel label > span { font-weight:700; font-size:12px; }
.filter-panel input[type="search"], .filter-panel select { width:100%; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.66); padding:11px 12px; outline:none; }
.toggle-row { display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--line); padding-top:15px; font-size:13px; font-weight:600; }
input[type="checkbox"] { appearance:none; width:34px; height:20px; padding:2px; background:#c9cee4; border-radius:99px; cursor:pointer; transition:.2s; }
input[type="checkbox"]::after { content:""; display:block; width:16px; height:16px; border-radius:50%; background:white; box-shadow:0 1px 4px rgba(0,0,0,.25); transition:.2s; }
input[type="checkbox"]:checked { background:var(--teal); }
input[type="checkbox"]:checked::after { transform:translateX(14px); }
.filter-tip { border-radius:16px; background:var(--teal-soft); padding:16px; margin-top:8px; }
.filter-tip b { font-size:12px; color:var(--teal); }
.filter-tip p { font-size:11px; color:#56618a; line-height:1.7; margin:7px 0 0; }
.results-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:15px; }
.results-toolbar > div:first-child { display:flex; align-items:baseline; flex-wrap:wrap; }
.results-toolbar strong { font:500 29px Georgia,serif; }
.results-toolbar span { color:var(--muted); font-size:13px; }
.results-toolbar small { width:100%; color:var(--muted); font-size:10px; margin-top:3px; }
.toolbar-actions { display:flex; align-items:center; gap:8px; }
.toolbar-actions select { background:transparent; border:1px solid var(--line); border-radius:10px; padding:8px; font-size:12px; }
.view-toggle { display:flex; border:1px solid var(--line); padding:3px; border-radius:10px; }
.view-toggle button { border:0; background:transparent; padding:5px 8px; border-radius:7px; cursor:pointer; color:var(--muted); }
.view-toggle button.active { background:var(--ink); color:white; }
.mobile-filter-button { display:none; border:1px solid var(--line); border-radius:10px; background:transparent; padding:8px 12px; }
.active-filters { display:flex; flex-wrap:wrap; gap:7px; min-height:28px; margin-bottom:17px; }
.active-filters button { border:0; background:var(--teal-soft); color:var(--teal); padding:6px 10px; border-radius:999px; cursor:pointer; font-size:11px; }
.model-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.model-card { background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:20px; position:relative; overflow:clip; box-shadow:0 9px 30px rgba(31,46,42,.04); transition:.22s; }
.model-card:hover { transform:translateY(-4px); border-color:rgba(12,97,88,.38); box-shadow:var(--shadow); }
.model-card::after { content:""; position:absolute; width:100px;height:100px;border-radius:50%;background:var(--teal-soft);right:-40px;top:-55px; }
.card-top { display:flex; justify-content:space-between; gap:15px; position:relative; z-index:1; }
.vendor-line { display:flex; align-items:center; gap:8px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.vendor-avatar { width:25px;height:25px;border-radius:8px;background:var(--ink);color:var(--lime);display:grid;place-items:center;font-weight:800;font-size:10px; }
.model-card h3 { font:600 22px/1.2 Georgia,"Noto Serif SC",serif; margin:13px 0 7px; letter-spacing:-.02em; }
.model-id { color:var(--muted); font:10px ui-monospace,SFMono-Regular,Consolas,monospace; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:260px; }
.match-score { flex:0 0 auto; width:49px;height:49px;border-radius:50%;background:var(--ink);color:white;display:grid;place-items:center; font:700 12px Georgia; }
.match-score.high { background:var(--teal); color:white; box-shadow:0 0 0 5px var(--teal-soft); }
.tag-row { display:flex;flex-wrap:wrap;gap:5px;margin:16px 0 13px; }
.tag { background:#eef0fb;color:#41517e;border-radius:6px;padding:5px 7px;font-size:9px;font-weight:700; }
.tag.accent { background:var(--lime);color:var(--ink); }
.capability-spotlight { display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;background:var(--lime);color:var(--ink);border-radius:13px;padding:11px 13px;margin:0 0 13px;position:relative;z-index:1; }
.capability-spotlight span { border:1px solid rgba(8,31,81,.24);border-radius:999px;padding:4px 7px;font-size:10px;font-weight:850;white-space:nowrap; }
.capability-spotlight strong { font-size:14px;line-height:1.45; }
.model-card .intro { color:#4e587b;font-size:13px;line-height:1.7;margin:0;min-height:44px; }
.best-for { color:var(--ink);font-size:12px;line-height:1.6;margin:11px 0 0; }
.best-for span { color:var(--muted);font-size:10px;font-weight:800;margin-right:8px; }
.spec-grid { display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:16px 0;padding:12px 0;gap:8px; }
.spec-grid div { display:flex;flex-direction:column;gap:4px;min-width:0; }
.spec-grid span { color:var(--muted);font-size:9px; }
.spec-grid b { font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.card-actions { display:flex; gap:7px; }
.card-actions button, .card-actions a { flex:1;border:1px solid var(--line);background:transparent;border-radius:10px;padding:9px;text-align:center;text-decoration:none;font-size:11px;cursor:pointer;font-weight:700; }
.card-actions .compare-button.selected { background:var(--ink);color:white;border-color:var(--ink); }
.card-actions .detail-button:hover { background:#eef0fb; }
.model-table-wrap { overflow:auto; border:1px solid var(--line); border-radius:16px; background:var(--card); }
.model-table { width:100%;border-collapse:collapse;font-size:11px;min-width:850px; }
.model-table th { text-align:left;background:var(--ink);color:white;padding:13px;position:sticky;top:0; }
.model-table td { border-bottom:1px solid var(--line);padding:12px 13px;vertical-align:top; }
.model-table td:first-child b { display:block;font-size:13px;margin-bottom:4px; }
.table-compare { border:0;background:var(--teal-soft);color:var(--teal);padding:7px 9px;border-radius:8px;cursor:pointer; }
.table-compare.selected { background:var(--ink);color:white; }
.load-more { display:block;margin:23px auto 0;border:1px solid var(--line);background:rgba(255,255,255,.5);border-radius:999px;padding:11px 26px;cursor:pointer; }
.empty-state { grid-column:1/-1;text-align:center;padding:70px 20px;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted); }

.subpage-hero { padding-top:90px;padding-bottom:48px;border-bottom:1px solid var(--line); }
.subpage-hero h1 { font:500 clamp(45px,6vw,78px)/1 Georgia,"Noto Serif SC",serif;letter-spacing:-.04em;margin:0 0 20px; }
.subpage-hero > p:last-of-type { color:var(--muted);font-size:16px; }
.compact-search { max-width:700px;display:flex;margin-top:29px;background:white;border:1px solid var(--line);border-radius:15px;padding:6px;box-shadow:var(--shadow); }
.compact-search input { flex:1;border:0;outline:0;padding:10px 13px;background:transparent; }
.compact-search button { border:0;background:var(--ink);color:white;border-radius:10px;padding:0 20px; }
.agent-controls { display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:30px 0 22px; }
.agent-purpose-filter { display:flex;flex:1 1 auto;flex-direction:column;gap:10px;min-width:0;width:100%; }
.agent-purpose-filter > b { font-size:13px; }
.category-chips { display:flex;flex-wrap:wrap;gap:7px; }
.agent-mode-filter { display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:3px; }
.agent-mode-filter > span { color:var(--muted);font-size:11px;font-weight:750;margin-right:2px; }
.agent-mode-filter button { border:1px solid var(--line);background:rgba(255,255,255,.5);color:var(--ink);border-radius:999px;padding:6px 10px;font-size:11px;cursor:pointer; }
.agent-mode-filter button.active { background:var(--lime);border-color:var(--lime);font-weight:800; }
.agent-toggles { display:flex;gap:13px;flex:0 0 auto; }
.agent-toggles label { display:flex;align-items:center;gap:6px;font-size:11px; }
.agent-summary { color:var(--muted);font-size:12px;margin-bottom:14px; }
.agent-summary strong { color:var(--ink);font:500 26px Georgia; }
.agent-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-bottom:5px; }
.agent-card { background:var(--card);border:1px solid var(--line);border-radius:20px;padding:19px;display:flex;flex-direction:column;min-height:350px;transition:.2s; }
.agent-card:hover { transform:translateY(-3px);box-shadow:var(--shadow);border-color:rgba(12,97,88,.35); }
.agent-card-head { display:flex;justify-content:space-between;gap:10px; }
.agent-card h3 { margin:12px 0 4px;font:600 20px Georgia,"Noto Serif SC",serif; }
.agent-company { color:var(--muted);font-size:10px; }
.agent-type { color:var(--teal);background:var(--teal-soft);border-radius:99px;padding:5px 8px;font-size:9px;height:fit-content;white-space:nowrap; }
.agent-spotlight { margin:18px 0 0; }
.agent-card .core { color:#4e587b;font-size:13px;line-height:1.65;margin:12px 0;flex:1; }
.agent-meta-line { display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:10px 0 9px;font-size:11px; }
.agent-meta-line span { color:var(--muted); }
.agent-meta-line b { color:var(--teal); }
.lifecycle-note { display:flex;align-items:center;gap:8px;background:#fff1d8;color:#765218;border:1px solid #efd5a2;border-radius:10px;padding:8px 10px;font-size:11px;line-height:1.45;margin:10px 0 12px; }
.lifecycle-note span { flex:0 0 auto;background:#f3c766;color:#563b0c;border-radius:999px;padding:3px 6px;font-size:9px;font-weight:850; }
.agent-flags { display:flex;gap:5px;flex-wrap:wrap;margin-bottom:14px; }
.agent-flags span { border:1px solid var(--line);border-radius:7px;padding:4px 6px;font-size:9px; }
.agent-card footer { display:flex;padding:0;border:0;gap:7px; }
.agent-card footer a,.agent-card footer button { flex:1;border:1px solid var(--line);border-radius:9px;background:transparent;padding:8px;text-align:center;text-decoration:none;font-size:10px;cursor:pointer; }
.modal-strength { background:var(--lime);color:var(--ink);border-radius:17px;padding:18px 20px;margin-bottom:19px; }
.modal-strength span { display:block;font-size:10px;font-weight:850;letter-spacing:.08em;margin-bottom:7px; }
.modal-strength strong { display:block;font-size:19px;line-height:1.4; }
.modal-strength p { font-size:13px;line-height:1.65;margin:8px 0 0; }
.quick-needs button:focus-visible,.category-chips button:focus-visible,.agent-mode-filter button:focus-visible,.compact-search input:focus-visible,.filter-panel input:focus-visible,.filter-panel select:focus-visible { outline:3px solid rgba(11,50,151,.28);outline-offset:2px; }

.guide-page { padding-bottom: 110px; }
.guide-hero { display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:8vw;align-items:center;padding-bottom:70px; }
.guide-hero h1 { max-width:760px; }
.guide-hero > div > p:last-of-type { max-width:690px;line-height:1.8; }
.guide-hero-actions { display:flex;align-items:center;gap:10px;margin-top:30px; }
.guide-hero-actions a { text-decoration:none;display:inline-block; }
.guide-route-card { border-radius:30px;background:var(--ink);color:white;padding:28px;box-shadow:0 28px 70px rgba(12,27,25,.2);position:relative;overflow:hidden; }
.guide-route-card::after { content:"";position:absolute;width:160px;height:160px;border-radius:50%;background:var(--lime);filter:blur(80px);opacity:.22;right:-50px;top:-70px; }
.route-label { display:inline-block;color:var(--lime);font-size:10px;font-weight:800;letter-spacing:.15em;margin-bottom:18px; }
.guide-route-card ol { list-style:none;padding:0;margin:0;counter-reset:route;position:relative;z-index:1; }
.guide-route-card li { display:grid;grid-template-columns:46px 1fr;column-gap:13px;align-items:center;position:relative;padding:12px 0; }
.guide-route-card li::before { counter-increment:route;content:"0" counter(route);grid-row:1/3;width:42px;height:42px;border:1px solid rgba(255,255,255,.16);border-radius:13px;display:grid;place-items:center;color:var(--lime);font:600 13px Georgia; }
.guide-route-card li:not(:last-child)::after { content:"";position:absolute;left:21px;bottom:-6px;height:13px;border-left:1px solid rgba(255,255,255,.16); }
.guide-route-card b { font-size:15px; }
.guide-route-card small { color:#c3cdf0;font-size:11px;margin-top:4px; }
.guide-jump-nav { position:sticky;top:78px;z-index:12;display:flex;justify-content:center;gap:5px;margin:0 auto;padding:12px;background:rgba(245,243,236,.91);border-bottom:1px solid var(--line);backdrop-filter:blur(16px); }
.guide-jump-nav a { color:var(--muted);text-decoration:none;border-radius:999px;padding:8px 13px;font-size:11px;font-weight:700;white-space:nowrap; }
.guide-jump-nav a:hover { background:var(--ink);color:white; }
.guide-section { scroll-margin-top:150px;padding:90px 0;border-bottom:1px solid var(--line); }
.guide-section-title { display:flex;align-items:flex-start;gap:20px;margin-bottom:38px; }
.guide-section-title > span { flex:0 0 auto;width:44px;height:44px;border-radius:14px;background:var(--lime);display:grid;place-items:center;font:600 13px Georgia; }
.guide-section-title .eyebrow { margin-bottom:8px; }
.guide-section-title h2 { font:500 clamp(31px,4vw,50px)/1.08 Georgia,"Noto Serif SC",serif;letter-spacing:-.035em;margin:0; }
.concept-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px; }
.concept-card { min-height:260px;padding:25px;border:1px solid var(--line);border-radius:24px;background:var(--card);display:flex;flex-direction:column; }
.concept-card.featured { background:var(--teal-soft);border-color:transparent; }
.concept-icon { width:46px;height:46px;border-radius:14px;background:var(--ink);color:var(--lime);display:grid;place-items:center;font:700 14px Georgia; }
.concept-card h3 { font:600 23px Georgia,"Noto Serif SC",serif;margin:22px 0 10px; }
.concept-card p { color:#56618a;font-size:13px;line-height:1.75;margin:0; }
.concept-card small { color:var(--teal);font-size:10px;font-weight:700;margin-top:auto;padding-top:20px; }
.guide-callout { margin-top:16px;padding:17px 20px;border-radius:15px;background:var(--ink);color:#dce3ff;font-size:12px;line-height:1.7; }
.guide-callout b { color:var(--lime); }
.prompt-layout { display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:45px;align-items:stretch; }
.prompt-steps { display:flex;flex-direction:column; }
.prompt-steps article { display:grid;grid-template-columns:48px 1fr;gap:15px;padding:18px 0;border-bottom:1px solid var(--line); }
.prompt-steps article:first-child { padding-top:0; }
.prompt-steps article > b { width:40px;height:40px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font:600 13px Georgia;color:var(--teal); }
.prompt-steps h3 { margin:0 0 6px;font-size:15px; }
.prompt-steps p { margin:0;color:var(--muted);font-size:12px;line-height:1.7; }
.prompt-example { padding:28px;border-radius:26px;background:#f7e5d4;border:1px solid var(--line); }
.example-label,.path-badge { display:inline-block;border-radius:999px;background:var(--lime);padding:6px 9px;font-size:9px;font-weight:800;letter-spacing:.08em; }
.prompt-formula { font:600 22px/1.4 Georgia,"Noto Serif SC",serif;margin:18px 0; }
.prompt-bubble { background:white;border:1px solid var(--line);border-radius:18px;padding:18px; }
.prompt-bubble span { color:var(--teal);font-size:9px;font-weight:800;letter-spacing:.1em; }
.prompt-bubble p { margin:9px 0 0;color:#4d587f;font-size:12px;line-height:1.8; }
.prompt-tip { color:var(--muted);font-size:10px;line-height:1.6;margin:17px 0 0; }
.need-route-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.need-route-grid article { display:grid;grid-template-columns:45px 1fr auto;gap:15px;align-items:center;padding:20px;border:1px solid var(--line);background:var(--card);border-radius:19px;transition:.2s; }
.need-route-grid article:hover { transform:translateY(-2px);box-shadow:var(--shadow); }
.need-route-grid article > span { width:43px;height:43px;border-radius:13px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;font-size:19px; }
.need-route-grid h3 { margin:0 0 5px;font-size:14px; }
.need-route-grid p { margin:0;color:var(--muted);font-size:10px;line-height:1.6; }
.need-route-grid button { border:0;background:transparent;color:var(--teal);font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap; }
.usage-paths { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }
.usage-paths article { border:1px solid var(--line);background:var(--card);border-radius:25px;padding:27px; }
.usage-paths .api-path { background:var(--ink);color:white; }
.usage-paths h3 { font:600 24px Georgia,"Noto Serif SC",serif;margin:18px 0 10px; }
.usage-paths article > p { color:var(--muted);font-size:12px;line-height:1.75; }
.usage-paths .api-path > p { color:#bdc8ed; }
.usage-paths ol { padding-left:21px;margin:20px 0;color:#4f5b83;font-size:11px;line-height:2; }
.usage-paths .api-path ol { color:#d4dcf8; }
.usage-paths pre { margin:18px 0 0;padding:18px;border-radius:15px;background:#061c5e;color:var(--paper);overflow:auto;font:10px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace; }
.security-note { display:flex;align-items:center;gap:15px;margin-top:15px;padding:17px 20px;border-radius:16px;background:#fff8cf;border:1px solid rgba(248,223,8,.65); }
.security-note > span { flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--coral);color:white;display:grid;place-items:center;font-weight:800; }
.security-note p { margin:0;color:#605900;font-size:11px;line-height:1.65; }
.agent-checklist { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.agent-checklist > div { padding:25px;border-radius:22px;border:1px solid var(--line);background:var(--card); }
.agent-checklist h3 { margin:0 0 15px;font:600 21px Georgia,"Noto Serif SC",serif; }
.agent-checklist ul { list-style:none;padding:0;margin:0; }
.agent-checklist li { position:relative;padding:10px 0 10px 24px;border-bottom:1px solid var(--line);color:#56618a;font-size:12px;line-height:1.6; }
.agent-checklist li:last-child { border-bottom:0; }
.agent-checklist li::before { content:"✓";position:absolute;left:0;top:10px;color:var(--teal);font-weight:900; }
.guide-cta { margin-top:16px;border-radius:25px;background:var(--teal);color:white;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:30px; }
.guide-cta .eyebrow { color:var(--lime);margin-bottom:9px; }
.guide-cta h3 { font:600 25px Georgia,"Noto Serif SC",serif;margin:0 0 8px; }
.guide-cta p:last-child { color:#cbd5f5;font-size:11px;margin:0; }
.guide-cta button { flex:0 0 auto; }
.safety-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.safety-grid article { min-height:180px;padding:23px;border-radius:20px;border:1px solid var(--line);background:var(--card); }
.safety-grid b { display:block;font:600 19px Georgia,"Noto Serif SC",serif;margin-bottom:13px; }
.safety-grid p { color:var(--muted);font-size:11px;line-height:1.75;margin:0; }
.guide-finish { margin-top:90px;padding:70px 30px;border-radius:32px;background:#f7e5d4;text-align:center; }
.guide-finish h2 { font:500 clamp(32px,4vw,52px)/1.15 Georgia,"Noto Serif SC",serif;letter-spacing:-.03em;margin:0 0 28px; }
.guide-finish > div { display:flex;justify-content:center;gap:10px; }

.academy-page { padding-top:54px;padding-bottom:110px; }
.academy-hero { min-height:540px;border-radius:36px;background:var(--ink);color:white;padding:clamp(35px,6vw,78px);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:7vw;align-items:center;position:relative;overflow:hidden;box-shadow:0 34px 90px rgba(12,27,25,.22); }
.academy-hero::before { content:"";position:absolute;width:380px;height:380px;border-radius:50%;background:var(--teal);filter:blur(130px);opacity:.35;left:28%;bottom:-240px; }
.academy-hero::after { content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:var(--lime);filter:blur(110px);opacity:.18;right:-50px;top:-80px; }
.academy-hero-copy,.academy-stats { position:relative;z-index:1; }
.academy-hero .eyebrow { color:var(--lime); }
.academy-hero h1 { font:500 clamp(54px,7vw,92px)/.98 Georgia,"Noto Serif SC",serif;letter-spacing:-.045em;margin:0; }
.academy-subtitle { color:var(--lime);font:500 clamp(23px,3vw,36px)/1.25 Georgia,"Noto Serif SC",serif;margin:16px 0 20px; }
.academy-intro { max-width:700px;color:#d7dfff;font-size:14px;line-height:1.85;margin:0; }
.academy-hero-actions { display:flex;align-items:center;gap:22px;margin-top:31px; }
.academy-hero-actions a { text-decoration:none; }
.academy-text-link { color:white;font-size:12px;font-weight:700; }
.academy-stats { display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.12);border-radius:25px;overflow:hidden; }
.academy-stats > div { min-height:112px;background:#153fa5;padding:19px;display:flex;flex-direction:column;justify-content:flex-end; }
.academy-stats .academy-stat-primary { grid-column:1/-1;min-height:145px;background:var(--lime);color:var(--ink); }
.academy-stats strong { font:500 34px Georgia,serif; }
.academy-stats .academy-stat-primary strong { font-size:60px;line-height:1; }
.academy-stats span { color:#c4cef2;font-size:10px;margin-top:6px; }
.academy-stats .academy-stat-primary span { color:#615800;font-weight:700; }
.academy-stats > p { grid-column:1/-1;margin:0;background:#061c5e;color:#aebbed;padding:13px 18px;font-size:9px; }
.academy-jump-nav { position:sticky;top:78px;z-index:12;display:flex;justify-content:center;gap:6px;margin-top:22px;padding:11px;border:1px solid var(--line);border-radius:999px;background:rgba(245,243,236,.92);backdrop-filter:blur(16px); }
.academy-jump-nav a { text-decoration:none;color:var(--muted);padding:8px 15px;border-radius:999px;font-size:11px;font-weight:700; }
.academy-jump-nav a:hover { background:var(--ink);color:white; }
.academy-section { scroll-margin-top:150px;padding:95px 0;border-bottom:1px solid var(--line); }
.academy-heading { display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:38px; }
.academy-heading .eyebrow { margin-bottom:10px; }
.academy-heading h2 { font:500 clamp(34px,4.2vw,56px)/1.08 Georgia,"Noto Serif SC",serif;letter-spacing:-.038em;margin:0 0 12px; }
.academy-heading > div > p:last-child { color:var(--muted);font-size:13px;line-height:1.7;margin:0; }
.academy-section-index { color:#a5a9bc;font:500 42px Georgia,serif; }
.academy-category-chips { margin-bottom:23px; }
.academy-track-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px; }
.academy-track-card { min-height:390px;border:1px solid var(--line);border-radius:23px;background:var(--card);padding:23px;display:flex;flex-direction:column;transition:.2s;position:relative;overflow:hidden; }
.academy-track-card:hover { transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(12,97,88,.38); }
.academy-track-top { display:flex;justify-content:space-between;align-items:center; }
.academy-track-top > span { color:var(--teal);font-size:9px;font-weight:900;letter-spacing:.12em; }
.academy-track-top small { border:1px solid var(--line);border-radius:99px;padding:5px 8px;color:var(--muted);font-size:9px; }
.academy-track-number { position:absolute;right:18px;top:55px;color:rgba(12,27,25,.055);font:500 82px/1 Georgia,serif; }
.academy-track-card h3 { position:relative;font:600 24px/1.25 Georgia,"Noto Serif SC",serif;margin:53px 0 12px; }
.academy-track-card > p { color:var(--muted);font-size:11px;line-height:1.75;margin:0 0 18px; }
.academy-topic-list { display:flex;flex-wrap:wrap;gap:5px;margin-top:auto; }
.academy-topic-list span { border-radius:7px;background:#eef0fb;color:#4b5780;padding:5px 7px;font-size:9px; }
.academy-track-card > button { border:0;border-top:1px solid var(--line);background:transparent;margin:18px -23px -23px;padding:15px 23px;text-align:left;color:var(--teal);font-size:10px;font-weight:800;cursor:pointer;display:flex;justify-content:space-between; }
.academy-prompt-board { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:14px; }
.prompt-blueprint,.academy-prompt-example { min-height:290px;border-radius:26px;padding:30px; }
.prompt-blueprint { background:var(--ink);color:white; }
.academy-prompt-example { background:#f7e5d4;border:1px solid var(--line); }
.prompt-blueprint > span,.academy-prompt-example > span { color:var(--lime);font-size:9px;font-weight:900;letter-spacing:.13em; }
.academy-prompt-example > span { color:var(--teal); }
.prompt-blueprint > p { font:500 clamp(25px,3vw,38px)/1.4 Georgia,"Noto Serif SC",serif;margin:24px 0; }
.prompt-parts { display:flex;flex-wrap:wrap;gap:6px; }
.prompt-parts i { font-style:normal;border:1px solid rgba(255,255,255,.14);border-radius:99px;padding:6px 9px;color:#c4cef2;font-size:9px; }
.academy-prompt-example > p { color:#4b567d;font-size:13px;line-height:1.9;margin:22px 0; }
.academy-principles { display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:13px; }
.academy-principles article { border:1px solid var(--line);border-radius:16px;background:var(--card);padding:18px; }
.academy-principles b { font-size:12px; }
.academy-principles p { color:var(--muted);font-size:10px;line-height:1.65;margin:7px 0 0; }
.camera-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px; }
.camera-card { min-height:225px;border:1px solid var(--line);border-radius:20px;background:var(--card);padding:21px;display:flex;flex-direction:column; }
.camera-number { color:var(--teal);font:600 11px Georgia; }
.camera-card > div { margin:24px 0 12px; }
.camera-card h3 { font:600 21px Georgia,"Noto Serif SC",serif;margin:0 0 3px; }
.camera-card small { color:var(--teal);font-size:9px;text-transform:uppercase;letter-spacing:.08em; }
.camera-card p { color:var(--muted);font-size:11px;line-height:1.75;margin:0; }
.camera-card > b { margin-top:auto;color:#56618a;font-size:9px;padding-top:15px; }
.academy-filter-bar { display:grid;grid-template-columns:minmax(260px,1fr) 210px 170px;gap:9px;margin-bottom:20px; }
.academy-filter-bar select,.academy-search { min-height:48px;border:1px solid var(--line);border-radius:13px;background:white; }
.academy-filter-bar select { padding:0 12px;color:#41517e; }
.academy-search { display:flex;align-items:center;gap:9px;padding:0 14px; }
.academy-search > span { color:var(--teal);font-size:19px; }
.academy-search input { flex:1;min-width:0;border:0;outline:0;background:transparent; }
.academy-results-summary { display:flex;align-items:baseline;gap:5px;margin-bottom:15px; }
.academy-results-summary strong { font:500 30px Georgia,serif; }
.academy-results-summary span { color:var(--muted);font-size:12px; }
.academy-results-summary small { color:var(--muted);font-size:9px;margin-left:7px; }
.academy-resource-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px; }
.academy-resource-card { min-height:285px;border:1px solid var(--line);border-radius:19px;background:var(--card);padding:19px;display:flex;flex-direction:column;transition:.18s; }
.academy-resource-card:hover { transform:translateY(-3px);border-color:rgba(12,97,88,.35);box-shadow:var(--shadow); }
.academy-resource-meta { display:flex;justify-content:space-between;gap:10px;align-items:center; }
.academy-resource-meta span { color:var(--teal);font-size:9px;font-weight:800; }
.academy-resource-meta b { border-radius:6px;background:var(--lime);padding:4px 6px;font-size:8px; }
.academy-resource-card h3 { font:600 18px/1.35 Georgia,"Noto Serif SC",serif;margin:20px 0 9px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden; }
.academy-resource-card > p { color:var(--muted);font-size:10px;line-height:1.65;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden; }
.academy-resource-tags { display:flex;gap:5px;flex-wrap:wrap;margin-top:13px; }
.academy-resource-tags span,.academy-reading-tags span { border:1px solid var(--line);border-radius:999px;background:#fff8f1;color:#5d6687;padding:4px 7px;font-size:8px; }
.academy-resource-footer { margin-top:auto;padding-top:15px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center; }
.academy-resource-footer > span { color:#5d6687;font-size:9px; }
.academy-resource-footer small { grid-column:1;color:var(--coral);font-size:8px; }
.academy-resource-footer button { grid-column:2;border:0;background:var(--teal-soft);color:var(--teal);border-radius:8px;padding:8px;font-size:9px;font-weight:800;cursor:pointer; }
.academy-source-note { margin-top:30px;border-radius:17px;background:#f7e5d4;padding:20px; }
.academy-source-note b { font-size:11px; }
.academy-source-note p { color:var(--muted);font-size:10px;line-height:1.7;margin:7px 0 0; }
.academy-modal-hero { background:var(--teal); }
.academy-reading-stats { margin-bottom:18px; }
.academy-reading-tags { display:flex;gap:7px;flex-wrap:wrap;margin:0 0 25px; }
.academy-key-points { margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:9px;list-style:none; }
.academy-key-points li { border-radius:12px;background:var(--teal-soft);color:#354f9a;padding:13px;font-size:11px;line-height:1.6; }
.academy-reading-content { display:grid;gap:10px; }
.academy-reading-content p { display:grid;grid-template-columns:30px 1fr;gap:10px;margin:0!important;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:white;color:#4f5b83!important;font-size:12px!important;line-height:1.75!important; }
.academy-reading-content p > span { color:var(--teal);font:700 9px/1.9 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.04em; }

.compare-page { padding-bottom:100px; }
.compare-hero { text-align:center; }
.compare-empty { max-width:650px;margin:70px auto;text-align:center;background:var(--card);border:1px dashed var(--line);border-radius:28px;padding:60px 30px; }
.compare-empty > span { width:75px;height:75px;border-radius:24px;background:var(--teal-soft);color:var(--teal);font-size:35px;display:grid;place-items:center;margin:0 auto 20px; }
.compare-empty h2 { font:500 30px Georgia;margin:0 0 10px; }
.compare-empty p { color:var(--muted); }
.compare-actions { display:flex;justify-content:flex-end;margin:25px 0 12px; }
.compare-table-wrap { overflow:auto;border:1px solid var(--line);border-radius:20px;background:var(--card); }
.compare-table { border-collapse:collapse;width:100%;min-width:850px;table-layout:fixed; }
.compare-table th,.compare-table td { padding:16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:top;text-align:left;font-size:12px;line-height:1.6; }
.compare-table th:first-child,.compare-table td:first-child { width:135px;background:#eef0fb;font-weight:800;color:#596181; }
.compare-table .compare-name { font:600 20px Georgia;display:block;margin-bottom:5px; }
.compare-table .remove-model { border:0;background:transparent;color:var(--coral);padding:0;cursor:pointer;font-size:10px;margin-top:10px; }

.compare-dock { position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:30;width:min(780px,calc(100% - 30px));background:var(--ink);color:white;border-radius:20px;padding:12px 12px 12px 18px;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;box-shadow:0 25px 70px rgba(0,0,0,.3); }
.compare-dock > div:first-child { display:flex;flex-direction:column;font-size:11px; }.compare-dock > div:first-child strong{font-size:10px;color:#bdc8ed;margin-top:3px}.compare-dock > div:first-child b{color:var(--lime)}
.compare-mini-list { display:flex;gap:6px;overflow:hidden; }
.compare-mini { white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:rgba(255,255,255,.09);padding:8px 10px;border-radius:9px;font-size:10px;max-width:150px; }
.compare-dock > button { border:0;background:var(--lime);border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer; }

.detail-modal { width:min(820px,calc(100% - 30px));max-height:88vh;border:0;border-radius:28px;padding:0;background:#fff8f1;color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.32); }
.detail-modal::backdrop { background:rgba(8,19,17,.58);backdrop-filter:blur(6px); }
.modal-close { position:sticky;float:right;top:15px;right:15px;z-index:2;width:36px;height:36px;border:0;border-radius:50%;background:white;box-shadow:0 6px 20px rgba(0,0,0,.12);cursor:pointer;font-size:20px; }
.modal-hero { background:var(--ink);color:white;padding:45px 45px 35px; }
.modal-hero .eyebrow { color:var(--lime); }
.modal-hero h2 { font:500 38px Georgia,"Noto Serif SC",serif;margin:0 0 10px; }
.modal-hero p { color:#ccd6f7;margin:0;line-height:1.7; }
.modal-body { padding:32px 45px 45px; }
.modal-section { margin-bottom:25px; }
.modal-section h4 { font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);margin:0 0 8px; }
.modal-section p { margin:0;color:#56618a;line-height:1.8;font-size:13px; }
.modal-two { display:grid;grid-template-columns:1fr 1fr;gap:15px; }
.modal-stat { background:white;border:1px solid var(--line);border-radius:14px;padding:14px; }
.modal-stat span { display:block;color:var(--muted);font-size:9px;margin-bottom:5px; }.modal-stat b{font-size:12px;}
.modal-links { display:flex;gap:8px; }.modal-links a{background:var(--teal-soft);color:var(--teal);text-decoration:none;border-radius:10px;padding:10px 13px;font-size:11px;font-weight:700;}
.toast { position:fixed;right:25px;top:95px;background:var(--ink);color:white;padding:12px 16px;border-radius:12px;z-index:50;box-shadow:var(--shadow);opacity:0;transform:translateY(-10px);pointer-events:none;transition:.2s;font-size:12px; }
.toast.show { opacity:1;transform:none; }

body > footer { max-width:1440px;margin:0 auto;padding:45px clamp(20px,4vw,68px);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:50px; }
body > footer b { font-size:11px;letter-spacing:.08em; }
body > footer p { color:var(--muted);font-size:11px;line-height:1.7; }
.footer-brand { align-self:start; }

.profile-page { padding-top:72px;padding-bottom:100px; }
.profile-hero { display:flex;align-items:end;justify-content:space-between;gap:30px;padding-bottom:38px;border-bottom:1px solid var(--line); }
.profile-hero h1 { font:600 clamp(43px,5vw,70px)/1.05 Georgia,"Noto Serif SC",serif;letter-spacing:-.045em;margin:0; }
.profile-hero p:last-child { color:var(--muted);font-size:16px;line-height:1.7;margin:17px 0 0; }
.profile-logout { min-height:46px;border:1px solid rgba(153,44,32,.2);border-radius:14px;background:#ffe0db;color:#8a2b22;padding:10px 17px;font-weight:850;cursor:pointer; }
.profile-loading { margin-top:24px;border:1px solid var(--line);border-radius:18px;background:var(--card);padding:22px;color:var(--muted); }
.profile-layout { display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:14px;margin-top:30px;align-items:start; }
.profile-card { border:1px solid var(--line);border-radius:24px;background:var(--card);padding:26px;box-shadow:0 16px 42px rgba(11,50,151,.07); }
.profile-identity-card { grid-row:span 2;min-height:390px;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;justify-content:space-between; }
.profile-identity { display:flex;align-items:center;gap:20px; }
.profile-avatar { width:76px;height:76px;border-radius:24px;background:var(--lime);color:var(--ink);display:grid;place-items:center;font:800 34px Georgia,serif;flex:0 0 auto; }
.profile-identity > div > span,.profile-card-kicker { display:block;color:var(--lime);font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase; }
.profile-identity h2 { font:600 34px/1.15 Georgia,"Noto Serif SC",serif;margin:7px 0 5px; }
.profile-identity p { color:rgba(251,236,221,.7);margin:0;font-size:14px;overflow-wrap:anywhere; }
.profile-meta { margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
.profile-meta div { border-top:1px solid rgba(251,236,221,.16);padding-top:16px; }
.profile-meta dt { color:rgba(251,236,221,.55);font-size:12px; }
.profile-meta dd { margin:7px 0 0;font-size:14px;font-weight:800;line-height:1.5; }
.profile-card > h2 { font:600 25px/1.28 Georgia,"Noto Serif SC",serif;margin:17px 0 20px; }
.profile-card form { display:grid;gap:8px; }
.profile-card form label { font-size:13px;font-weight:850; }
.profile-card form input { min-height:48px;border:1px solid var(--line);border-radius:13px;background:white;padding:0 14px;font-size:16px;color:var(--ink); }
.profile-card form button { min-height:46px;border:0;border-radius:13px;background:var(--lime);color:var(--ink);font-weight:900;cursor:pointer;margin-top:4px; }
.profile-next-card { background:#f7e5d4; }
.profile-next-card .profile-card-kicker { color:var(--ink); }
.profile-next-card > p { color:var(--muted);font-size:15px;line-height:1.7;margin:-7px 0 20px; }
.profile-next-card > div { display:flex;flex-wrap:wrap;gap:7px; }
.profile-next-card > div span { border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.55);padding:8px 10px;font-size:12px;font-weight:750; }

.auth-dialog { width:min(480px,calc(100% - 30px));max-height:calc(100dvh - 30px);border:0;border-radius:28px;background:var(--paper);color:var(--ink);padding:0;box-shadow:0 30px 100px rgba(4,22,70,.35);overflow:auto; }
.auth-dialog::backdrop { background:rgba(4,19,60,.58);backdrop-filter:blur(8px); }
.auth-shell { padding:30px;position:relative; }
.auth-close { position:absolute;right:17px;top:17px;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.65);font-size:24px;line-height:1;cursor:pointer; }
.auth-close:disabled { cursor:wait;opacity:.55; }
.auth-brand { display:flex;align-items:center;gap:9px;margin-bottom:33px;font-size:12px;font-weight:900;letter-spacing:.08em; }
.auth-brand img { width:34px;height:34px; }
.auth-dialog .eyebrow { margin-bottom:11px; }
.auth-dialog h2 { font:600 36px/1.12 Georgia,"Noto Serif SC",serif;letter-spacing:-.035em;margin:0; }
.auth-intro { color:var(--muted);font-size:14px;line-height:1.65;margin:13px 0 21px; }
.auth-mode-switch { display:grid;grid-template-columns:repeat(2,1fr);gap:5px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.5);padding:5px;margin-bottom:20px; }
.auth-mode-switch button { min-height:42px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-size:14px;font-weight:850;cursor:pointer; }
.auth-mode-switch button.active { background:var(--ink);color:var(--paper); }
.auth-form { display:grid;gap:14px; }
.auth-field { display:grid;gap:7px; }
.auth-field label { font-size:13px;font-weight:850; }
.auth-field input { width:100%;min-height:50px;border:1px solid var(--line);border-radius:13px;background:white;color:var(--ink);padding:0 14px;font-size:16px; }
.auth-field input[aria-invalid="true"] { border-color:#b23a2c;box-shadow:0 0 0 3px rgba(178,58,44,.1); }
.auth-field small { color:var(--muted);font-size:12px;line-height:1.55; }
.field-error { min-height:0;color:#9a2d21;font-size:12px;line-height:1.45;margin:0; }
.field-error:empty { display:none; }
.auth-submit { min-height:50px;border:0;border-radius:14px;background:var(--lime);color:var(--ink);font-weight:900;cursor:pointer;margin-top:2px; }
.auth-submit:hover { transform:translateY(-1px);box-shadow:0 13px 30px rgba(138,120,0,.14); }
.auth-submit:disabled,.profile-page button:disabled { cursor:wait;opacity:.65; }
.auth-help { color:var(--muted);font-size:12px;line-height:1.55;margin:0;text-align:center; }
.auth-text-action { width:fit-content;min-height:34px;border:0;background:transparent;color:var(--teal);padding:4px 2px;margin:0 auto;font-size:12px;font-weight:850;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px; }
.auth-text-action:disabled { cursor:wait;opacity:.65; }
.auth-checkbox { width:fit-content;display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px;font-weight:750;cursor:pointer; }
.auth-checkbox input { width:18px;height:18px;accent-color:var(--ink); }
.password-strength { --strength-color:var(--muted);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);padding:10px 12px; }
.password-strength[data-strength="1"] { --strength-color:#a43528; }
.password-strength[data-strength="2"] { --strength-color:#8a6500; }
.password-strength[data-strength="3"] { --strength-color:#23623a; }
.password-strength[data-strength="4"] { --strength-color:#0b3297; }
.password-strength span,.password-strength strong { font-size:11px;line-height:1.4; }
.password-strength span { color:var(--muted); }
.password-strength strong { color:var(--strength-color);text-align:right; }
.password-strength meter { grid-column:1/-1;width:100%;height:8px;border:0;background:var(--line);accent-color:var(--strength-color); }
.password-strength meter::-webkit-meter-bar { border:0;border-radius:999px;background:var(--line);height:7px; }
.password-strength meter::-webkit-meter-optimum-value { border-radius:999px;background:var(--strength-color);transition:width .18s ease; }
.password-strength meter::-moz-meter-bar { border-radius:999px;background:var(--strength-color); }
.auth-feedback { min-height:19px;color:#23623a;font-size:13px;line-height:1.5;margin:14px 0 0;text-align:center;overflow-wrap:anywhere; }
.auth-feedback.error { color:#9a2d21; }

.delete-account-dialog { width:min(540px,calc(100% - 30px));max-height:calc(100dvh - 30px);border:0;border-radius:28px;background:var(--paper);color:var(--ink);padding:0;box-shadow:0 30px 100px rgba(54,8,8,.4);overflow:auto; }
.delete-account-dialog::backdrop { background:rgba(28,5,12,.68);backdrop-filter:blur(8px); }
.delete-account-shell { position:relative;padding:32px; }
.delete-account-close { position:absolute;right:17px;top:17px;width:44px;height:44px;border:1px solid color-mix(in srgb,var(--danger-text) 24%,var(--line));border-radius:50%;background:var(--surface-solid);color:var(--danger-text);font-size:24px;line-height:1;cursor:pointer; }
.delete-account-close:disabled { cursor:wait;opacity:.52; }
.delete-account-dialog .eyebrow { color:var(--danger-text);margin-bottom:11px; }
.delete-account-dialog h2 { max-width:380px;font:600 38px/1.12 Georgia,"Noto Serif SC",serif;letter-spacing:-.035em;margin:0; }
.delete-account-intro { max-width:440px;color:var(--muted);font-size:14px;line-height:1.7;margin:13px 0 20px; }
.delete-account-warning { border:1px solid color-mix(in srgb,var(--danger-text) 34%,transparent);border-radius:15px;background:var(--danger-bg);padding:16px 18px;margin-bottom:20px; }
.delete-account-warning strong { display:block;color:var(--danger-text);font-size:13px;margin-bottom:8px; }
.delete-account-warning ul { margin:0;padding-left:20px; }
.delete-account-warning li { color:var(--danger-text);font-size:12px;line-height:1.65;padding:2px 0;overflow-wrap:anywhere; }
.delete-account-form { display:grid;gap:15px; }
.delete-account-field { display:grid;gap:7px;min-width:0; }
.delete-account-field label { font-size:13px;font-weight:850; }
.delete-account-field input { width:100%;min-width:0;min-height:50px;border:1px solid var(--line);border-radius:13px;background:var(--surface-solid);color:var(--ink);padding:0 14px;font-size:16px; }
.delete-account-field input[aria-invalid="true"] { border-color:var(--danger-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger-text) 13%,transparent); }
.delete-account-field small { color:var(--muted);font-size:12px;line-height:1.55; }
.delete-account-feedback { min-height:19px;color:var(--muted);font-size:13px;line-height:1.5;margin:0;text-align:left;overflow-wrap:anywhere; }
.delete-account-feedback.error { color:var(--danger-text); }
.delete-account-actions { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;margin-top:2px; }
.delete-account-actions button { min-width:0;min-height:50px;border-radius:14px;padding:10px 14px;font-size:13px;font-weight:900;cursor:pointer; }
.delete-account-actions button:disabled { cursor:wait;opacity:.58; }
.delete-account-cancel { border:1px solid var(--line);background:transparent;color:var(--ink); }
.delete-account-submit { border:1px solid #9a2d21;background:#9a2d21;color:#fffaf4; }
.delete-account-submit:hover:not(:disabled) { transform:translateY(-1px);box-shadow:0 13px 28px color-mix(in srgb,var(--danger-text) 22%,transparent); }

@media (max-width: 1180px) and (min-width: 821px) {
  .topbar .data-status { display:none; }
}

@media (max-width: 1100px) {
  .home-hero { grid-template-columns:1fr;min-height:0;padding-top:65px; }
  .home-hero-copy { max-width:860px; }
  .home-logo-stage { min-height:430px;max-width:720px;width:100%;justify-self:center; }
  .home-section-heading { grid-template-columns:1fr;gap:16px; }
  .home-section-heading .eyebrow { grid-column:auto; }
  .solution-grid { grid-template-columns:repeat(2,1fr); }
  .model-hero { display:block; }
  .model-metrics { display:grid;grid-template-columns:repeat(3,1fr);min-height:0;margin-top:36px; }
  .model-metrics div { min-height:105px; }
  .hero { grid-template-columns:1fr;gap:35px; }
  .hero-panel { min-height:260px;display:grid;grid-template-columns:1fr 1fr;align-items:center; }
  .orbit { width:190px;height:190px; }.hero-metrics{grid-template-columns:1fr;padding-left:25px;border-top:0;border-left:1px solid rgba(255,255,255,.13)}
  .need-builder { grid-template-columns:repeat(2,1fr); }.need-builder .primary-button{grid-column:span 2;}
  .agent-grid { grid-template-columns:repeat(2,1fr); }
  .guide-hero { gap:45px; }
  .safety-grid { grid-template-columns:repeat(2,1fr); }
  .nav-item { padding-left:11px;padding-right:11px; }
  .academy-hero { gap:45px; }
  .academy-track-grid { grid-template-columns:repeat(2,1fr); }
  .camera-grid,.academy-resource-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 820px) {
  .topbar { grid-template-columns:1fr auto;height:68px; }
  .primary-nav { position:absolute;top:69px;left:15px;right:15px;display:none;border-radius:18px;background:var(--paper);box-shadow:var(--shadow);padding:10px; }
  .primary-nav.open { display:grid;grid-template-columns:repeat(2,1fr); }
  .nav-item { text-align:left;padding:12px 14px; }
  .data-status { display:none; }.menu-button{display:block;}
  .topbar-actions { gap:7px; }
  .profile-trigger > span:last-child { display:none; }
  .profile-trigger { padding:5px; }
  .account-trigger { padding:7px 11px; }
  .home-page { padding-bottom:75px; }
  .home-hero { padding-top:48px;padding-bottom:60px;gap:42px; }
  .home-logo-stage { min-height:390px;border-radius:34px; }
  .home-logo-card { width:220px;min-height:265px; }
  .home-logo-card img { width:110px;height:110px; }
  .home-logo-card strong { font-size:40px; }
  .home-logo-orbit.orbit-one { width:330px;height:330px; }
  .home-logo-orbit.orbit-two { width:420px;height:420px; }
  .home-solutions { padding-top:68px; }
  .model-hero { padding-top:58px; }
  .hero { padding-top:55px;min-height:0; }.hero-copy h1{font-size:44px}.hero-description{font-size:14px}.hero-panel{display:none}.hero-search kbd{display:none}
  .section-heading { padding-top:50px;align-items:start; }.section-heading .ghost-button{display:none}
  .need-builder { grid-template-columns:1fr; }.need-builder .primary-button{grid-column:auto}.need-builder label:first-child{border-radius:12px 12px 0 0}
  .catalog-layout { grid-template-columns:1fr;margin-top:35px; }
  .filter-panel { display:none;position:fixed;inset:0 0 0 20%;background:var(--paper);z-index:40;top:0;padding:28px;overflow:auto;box-shadow:-20px 0 60px rgba(0,0,0,.18); }
  .filter-panel.open { display:flex; }.filter-title button{display:block}.mobile-filter-button{display:block}
  .model-grid { grid-template-columns:1fr; }
  .agent-controls { align-items:flex-start;flex-direction:column; }.agent-grid{grid-template-columns:1fr}.agent-toggles{flex-wrap:wrap}
  .guide-hero { grid-template-columns:1fr;padding-top:60px; }
  .guide-route-card { display:none; }
  .guide-jump-nav { top:68px;justify-content:flex-start;overflow:auto;margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px; }
  .guide-section { padding:65px 0; }
  .concept-grid,.usage-paths,.agent-checklist { grid-template-columns:1fr; }
  .prompt-layout { grid-template-columns:1fr;gap:28px; }
  .need-route-grid { grid-template-columns:1fr; }
  .guide-cta { align-items:flex-start;flex-direction:column; }
  .academy-page { padding-top:25px; }
  .academy-hero { grid-template-columns:1fr;padding:45px 30px; }
  .academy-stats { grid-template-columns:repeat(3,1fr); }.academy-stats .academy-stat-primary{grid-column:1/-1}.academy-stats>p{grid-column:1/-1}
  .academy-jump-nav { top:68px;justify-content:flex-start;overflow:auto;border-radius:14px;margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px; }
  .academy-section { padding:70px 0; }
  .academy-prompt-board { grid-template-columns:1fr; }
  .academy-principles { grid-template-columns:repeat(2,1fr); }
  .academy-filter-bar { grid-template-columns:1fr 1fr; }.academy-search{grid-column:1/-1}
  .compare-dock { grid-template-columns:auto 1fr; }.compare-mini-list{display:none}.compare-dock>button{justify-self:end}
  body > footer { grid-template-columns:1fr;gap:20px; }
  .profile-layout { grid-template-columns:1fr; }
  .profile-identity-card { grid-row:auto;min-height:330px; }
}

@media (max-width: 540px) {
  .page-section { padding-left:16px;padding-right:16px; }
  .home-hero h1 { font-size:47px;line-height:1.02; }
  .home-hero h1 > span { font-size:16px;margin-bottom:17px; }
  .home-intro { font-size:14px;margin-top:23px; }
  .home-actions { align-items:stretch;flex-direction:column; }
  .topbar { padding-left:14px;padding-right:14px; }
  .brand small { display:none; }
  .brand-logo { width:34px;height:34px; }
  .account-trigger { font-size:11px;padding:6px 9px; }
  .auth-dialog { width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:20px; }
  .auth-shell { padding:24px 19px; }
  .auth-dialog h2 { font-size:32px; }
  .auth-brand { margin-bottom:28px; }
  .delete-account-dialog { width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:20px; }
  .delete-account-shell { padding:26px 19px; }
  .delete-account-dialog h2 { padding-right:42px;font-size:32px; }
  .delete-account-actions { grid-template-columns:1fr; }
  .profile-page { padding-top:48px;padding-bottom:75px; }
  .profile-hero { align-items:stretch;flex-direction:column; }
  .profile-logout { width:100%; }
  .profile-card { padding:21px; }
  .profile-identity { align-items:flex-start;flex-direction:column; }
  .profile-meta { grid-template-columns:1fr; }
  .home-actions button { width:100%;justify-content:space-between;text-align:left; }
  .home-logo-stage { min-height:340px; }
  .home-logo-card { width:190px;min-height:225px;border-radius:27px; }
  .home-logo-card img { width:90px;height:90px;margin-bottom:15px; }
  .home-logo-card strong { font-size:34px; }
  .home-logo-card small { font-size:11px; }
  .home-logo-orbit.orbit-one { width:280px;height:280px; }
  .home-logo-orbit.orbit-two { width:350px;height:350px; }
  .home-stage-note { display:none; }
  .home-section-heading h2 { font-size:38px; }
  .solution-grid { grid-template-columns:1fr; }
  .solution-card { min-height:265px; }
  .model-metrics { display:grid;grid-template-columns:repeat(3,1fr); }
  .model-metrics div { padding:13px 10px; }
  .model-metrics strong { font-size:23px; }
  .hero-copy h1 { font-size:38px; }.quick-needs span{width:100%}
  .section-heading h2 { font-size:35px; }
  .results-toolbar { align-items:flex-start; }.toolbar-actions{flex-wrap:wrap;justify-content:flex-end}.view-toggle{display:none}
  .model-card { padding:17px; }.spec-grid{grid-template-columns:1fr 1fr}.spec-grid div:last-child{display:none}
  .capability-spotlight { grid-template-columns:1fr;gap:7px; }.capability-spotlight span{width:max-content}
  .subpage-hero { padding-top:60px; }.subpage-hero h1{font-size:44px}
  .guide-hero h1 { font-size:44px; }
  .guide-hero-actions { align-items:stretch;flex-direction:column; }
  .guide-hero-actions a,.guide-hero-actions button { text-align:center; }
  .guide-section-title { gap:13px; }.guide-section-title > span{width:38px;height:38px;border-radius:12px}.guide-section-title h2{font-size:31px}
  .need-route-grid article { grid-template-columns:40px 1fr; }.need-route-grid article > span{width:40px;height:40px}.need-route-grid button{grid-column:2;text-align:left;padding:0}
  .safety-grid { grid-template-columns:1fr; }.safety-grid article{min-height:0}
  .guide-finish { padding:52px 20px; }.guide-finish > div{align-items:stretch;flex-direction:column}.guide-finish button{width:100%}
  .academy-hero { border-radius:25px;padding:38px 22px; }.academy-hero h1{font-size:48px}.academy-subtitle{font-size:22px}.academy-hero-actions{align-items:flex-start;flex-direction:column;gap:15px}
  .academy-stats { grid-template-columns:1fr 1fr; }.academy-stats>div{min-height:92px}.academy-stats .academy-stat-primary{min-height:120px}.academy-stats strong{font-size:27px}.academy-stats .academy-stat-primary strong{font-size:48px}
  .academy-heading { gap:15px; }.academy-heading h2{font-size:34px}.academy-section-index{font-size:29px}
  .academy-category-chips { flex-wrap:nowrap;overflow:auto;width:100%;padding-bottom:5px}.academy-category-chips button{flex:0 0 auto}
  .academy-track-grid,.camera-grid,.academy-resource-grid,.academy-principles { grid-template-columns:1fr; }
  .academy-track-card { min-height:350px; }
  .academy-filter-bar { grid-template-columns:1fr; }.academy-search{grid-column:auto}.academy-filter-bar select{min-height:46px}
  .academy-results-summary { flex-wrap:wrap; }.academy-results-summary small{width:100%;margin-left:0}
  .category-chips { flex-wrap:nowrap;overflow:auto;width:100%;padding-bottom:5px}.category-chips button{flex:0 0 auto}
  .agent-mode-filter { flex-wrap:nowrap;overflow:auto;width:100%;padding-bottom:4px}.agent-mode-filter>*{flex:0 0 auto}
  .modal-hero{padding:42px 24px 27px}.modal-body{padding:25px 24px 35px}.modal-two{grid-template-columns:1fr}.modal-hero h2{font-size:29px}.academy-key-points{grid-template-columns:1fr}.academy-reading-content p{grid-template-columns:24px 1fr;padding:12px 10px}
  .compare-dock { bottom:10px;border-radius:16px; }.compare-dock>button{padding:10px 12px;font-size:11px}
}

/* IJLE zero-basics learning hub */
.beginner-hero { min-height:620px;padding:76px 0 66px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.72fr);gap:clamp(44px,8vw,112px);align-items:center; }
.beginner-hero-copy h1 { max-width:820px;font:600 clamp(54px,6vw,84px)/1.02 Georgia,"Noto Serif SC",serif;letter-spacing:-.05em;margin:0; }
.beginner-hero-copy h1 em { color:var(--ink);font-style:normal;position:relative;z-index:0;white-space:nowrap; }
.beginner-hero-copy h1 em::after { content:"";position:absolute;left:-1%;right:-2%;height:.25em;bottom:.02em;background:var(--lime);z-index:-1;transform:rotate(-1deg); }
.beginner-hero-copy > p:not(.eyebrow) { max-width:720px;color:var(--muted);font-size:18px;line-height:1.85;margin:27px 0 0; }
.beginner-promise { display:flex;flex-wrap:wrap;gap:8px;margin-top:24px; }
.beginner-promise span { border:1px solid var(--line);border-radius:999px;background:rgba(255,250,244,.62);padding:9px 13px;font-size:14px;font-weight:750; }
.beginner-hero-panel { border-radius:30px;background:var(--ink);color:var(--paper);padding:29px;box-shadow:0 28px 70px rgba(11,50,151,.22); }
.beginner-hero-panel > p { color:#c7d2f7;font-size:14px;line-height:1.6;margin:0 0 17px; }
.beginner-hero-panel > div { display:grid;grid-template-columns:80px 1fr;align-items:center;gap:14px;padding:20px 0;border-top:1px solid rgba(255,255,255,.14); }
.beginner-hero-panel strong { color:var(--lime);font:600 50px/1 Georgia,serif;text-align:center; }
.beginner-hero-panel span { color:#edf1ff;font-size:16px;line-height:1.5; }
.beginner-verified { display:block;color:#92a7e7;font-size:12px;line-height:1.5;margin-top:14px; }

.guide-page .guide-jump-nav a { font-size:14px;padding:9px 14px; }
.guide-page .guide-section-title > div > p:last-child { color:var(--muted);font-size:16px;line-height:1.7;margin:12px 0 0; }
.starter-flow { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px; }
.starter-flow article { min-height:190px;border:1px solid var(--line);border-radius:20px;background:var(--card);padding:20px; }
.starter-flow article > span { width:38px;height:38px;border-radius:12px;background:var(--ink);color:var(--lime);display:grid;place-items:center;font-weight:850; }
.starter-flow b { display:block;font-size:18px;margin:22px 0 10px; }
.starter-flow p { color:var(--muted);font-size:15px;line-height:1.65;margin:0; }
.beginner-copy-panel { margin-top:16px;border-radius:24px;background:var(--ink);color:white;padding:26px 28px;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center; }
.beginner-copy-panel span { display:block;color:var(--lime);font-size:14px;font-weight:850;margin-bottom:9px; }
.beginner-copy-panel p { font-size:17px;line-height:1.75;margin:0;white-space:pre-wrap; }
.beginner-copy-panel button,.beginner-formula-card button,.knowledge-layout aside button { border:0;border-radius:13px;background:var(--lime);color:var(--ink);padding:13px 17px;font-weight:850;cursor:pointer;white-space:nowrap; }
.beginner-formula-card { margin-top:10px;border:1px solid var(--line);border-radius:19px;background:rgba(255,250,244,.65);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px; }
.beginner-formula-card b { font-size:16px; }
.beginner-formula-card p { color:var(--muted);font-size:16px;line-height:1.65;margin:7px 0 0; }
.human-boundary { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:16px; }
.human-boundary article { border-radius:18px;padding:20px 22px;background:var(--teal-soft); }
.human-boundary article:last-child { background:#f7e5d4; }
.human-boundary span { font-size:15px;font-weight:850; }
.human-boundary p { color:#4e5b84;font-size:16px;line-height:1.7;margin:8px 0 0; }

.seven-day-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px; }
.seven-day-grid article { min-height:190px;border:1px solid var(--line);border-radius:21px;background:var(--card);padding:21px;position:relative;overflow:hidden; }
.seven-day-grid article:first-child { background:var(--lime);border-color:var(--lime); }
.seven-day-grid article > span { display:block;font-size:14px;font-weight:850;margin-bottom:28px; }
.seven-day-grid article b { display:block;font-size:18px;line-height:1.45;padding-right:28px; }
.seven-day-grid article p { color:var(--muted);font-size:15px;line-height:1.6;margin:10px 0 0; }
.seven-day-grid article i { position:absolute;right:15px;top:13px;color:rgba(11,50,151,.16);font:600 34px Georgia,serif; }
.guide-page .guide-callout { font-size:15px;margin-top:14px;padding:18px 21px; }

.beginner-quick-wrap > span { display:block;font-size:14px;font-weight:850;margin-bottom:11px; }
.beginner-quick-tasks { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px; }
.beginner-quick-tasks button { min-height:92px;border:1px solid var(--line);border-radius:17px;background:rgba(255,250,244,.72);padding:15px 17px;text-align:left;cursor:pointer; }
.beginner-quick-tasks button:hover { border-color:var(--ink);transform:translateY(-2px); }
.beginner-quick-tasks span { display:block;color:var(--muted);font-size:13px;margin-bottom:6px; }
.beginner-quick-tasks b { font-size:16px;line-height:1.4; }
.beginner-filter-bar { display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:24px; }
.beginner-search { min-height:54px;border:1px solid var(--line);border-radius:16px;background:white;display:flex;align-items:center;gap:11px;padding:0 17px;box-shadow:0 12px 35px rgba(11,50,151,.07); }
.beginner-search > span { font-size:22px; }
.beginner-search input { flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:16px; }
.beginner-filter-bar > button { border:1px solid var(--line);border-radius:15px;background:transparent;padding:0 17px;cursor:pointer;font-weight:750; }
.beginner-category-chips { display:flex;flex-wrap:wrap;gap:8px;margin-top:14px; }
.beginner-category-chips button { border:1px solid var(--line);border-radius:999px;background:transparent;padding:9px 13px;cursor:pointer;font-size:14px;font-weight:750; }
.beginner-category-chips button:hover,.beginner-category-chips button.active { background:var(--ink);border-color:var(--ink);color:white; }
.beginner-results-summary { display:flex;align-items:baseline;gap:6px;margin:28px 0 14px; }
.beginner-results-summary strong { font:600 32px Georgia,serif; }
.beginner-results-summary span { font-size:16px;font-weight:750; }
.beginner-results-summary small { color:var(--muted);font-size:14px;margin-left:auto; }
.beginner-task-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.beginner-task-card { min-height:270px;border:1px solid var(--line);border-radius:22px;background:var(--card);padding:22px;display:flex;flex-direction:column;transition:.18s; }
.beginner-task-card:hover { transform:translateY(-3px);box-shadow:var(--shadow); }
.beginner-task-meta { display:flex;justify-content:space-between;gap:10px;align-items:center; }
.beginner-task-meta span { color:var(--teal);font-size:13px;font-weight:850; }
.beginner-task-meta small { color:var(--muted);font-size:13px; }
.beginner-task-card h3 { font:600 22px/1.35 Georgia,"Noto Serif SC",serif;margin:34px 0 11px; }
.beginner-task-card > p { color:var(--muted);font-size:16px;line-height:1.7;margin:0; }
.beginner-task-footer { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:22px; }
.beginner-task-footer > span { color:var(--lime-dark);font-size:13px;font-weight:800; }
.beginner-task-footer button { border:0;background:var(--ink);color:white;border-radius:12px;padding:10px 13px;font-size:14px;font-weight:800;cursor:pointer; }
.beginner-task-footer button b { color:var(--lime);margin-left:5px; }

.tool-choice-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.tool-choice-grid article { min-height:260px;border:1px solid var(--line);border-radius:22px;background:var(--card);padding:22px; }
.tool-choice-grid article > span { color:var(--muted);font-size:13px;font-weight:750; }
.tool-choice-grid h3 { font:600 22px/1.35 Georgia,"Noto Serif SC",serif;margin:18px 0 22px; }
.tool-choice-grid dl,.tool-choice-grid dl div { margin:0; }
.tool-choice-grid dl div { border-top:1px solid var(--line);padding:13px 0; }
.tool-choice-grid dt { color:var(--teal);font-size:13px;font-weight:850;margin-bottom:6px; }
.tool-choice-grid dd { color:var(--muted);font-size:15px;line-height:1.65;margin:0; }
.three-question-row { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px; }
.three-question-row article { border-radius:16px;background:var(--ink);color:white;padding:18px;display:flex;align-items:center;gap:13px; }
.three-question-row b { flex:0 0 auto;width:32px;height:32px;border-radius:10px;background:var(--lime);color:var(--ink);display:grid;place-items:center; }
.three-question-row span { font-size:15px;line-height:1.55; }
.beginner-more-button { display:block;margin:18px 0 0 auto;font-size:15px; }

.rescue-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
.rescue-grid article { border:1px solid var(--line);border-radius:19px;background:var(--card);padding:20px;display:grid;grid-template-columns:42px 1fr auto;column-gap:14px;align-items:start; }
.rescue-grid article > span { grid-row:1/4;width:40px;height:40px;border-radius:12px;background:var(--teal-soft);display:grid;place-items:center;font:700 13px Georgia,serif; }
.rescue-grid h3 { font-size:17px;margin:2px 0 8px; }
.rescue-grid p { color:var(--muted);font-size:15px;line-height:1.65;margin:0; }
.rescue-grid button { grid-column:3;grid-row:1/3;border:0;background:transparent;color:var(--teal);font-size:14px;font-weight:850;cursor:pointer;white-space:nowrap; }

.knowledge-layout { display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);gap:14px;align-items:start; }
.knowledge-layout > div,.knowledge-layout aside { border-radius:24px;padding:25px; }
.knowledge-layout > div { border:1px solid var(--line);background:var(--card); }
.knowledge-layout h3,.handoff-card h3 { font:600 23px Georgia,"Noto Serif SC",serif;margin:0 0 20px; }
.knowledge-layout ol { margin:0;padding-left:26px; }
.knowledge-layout li { color:#4f5b82;font-size:16px;line-height:1.65;padding:8px 0 8px 5px;border-bottom:1px solid var(--line); }
.knowledge-layout li:last-child { border-bottom:0; }
.knowledge-layout aside { background:var(--ink);color:white;position:sticky;top:150px; }
.knowledge-layout aside > span { color:var(--lime);font-size:14px;font-weight:850; }
.knowledge-layout aside p { font-size:16px;line-height:1.8;white-space:pre-wrap;margin:15px 0 20px; }
.handoff-card { margin-top:14px;border-radius:21px;background:var(--teal-soft);padding:23px; }
.handoff-card h3 { font-size:20px;margin-bottom:13px; }
.handoff-card > div { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
.handoff-card span { border-radius:13px;background:white;padding:13px 15px;font-size:15px;line-height:1.55; }

.safety-level-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.safety-level-grid article { min-height:220px;border-radius:22px;padding:22px;border:1px solid var(--line);background:var(--card); }
.safety-level-grid article > span { display:inline-block;border-radius:999px;padding:7px 11px;font-size:14px;font-weight:900;background:#dff5e5;color:#186437; }
.safety-level-grid article.yellow > span { background:#fff4bd;color:#705b00; }
.safety-level-grid article.red > span { background:#ffe0db;color:#992c20; }
.safety-level-grid p { font-size:16px;line-height:1.65;margin:25px 0 14px; }
.safety-level-grid b { display:block;color:var(--muted);font-size:15px;line-height:1.6; }
.safety-detail-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px; }
.safety-detail-grid article { border:1px solid var(--line);border-radius:22px;background:var(--card);padding:23px; }
.safety-detail-grid h3 { font:600 22px Georgia,"Noto Serif SC",serif;margin:0 0 16px; }
.safety-detail-grid ul,.safety-detail-grid ol { margin:0;padding-left:24px; }
.safety-detail-grid li { color:#4f5b82;font-size:15px;line-height:1.6;padding:7px 0; }
.guide-page .security-note { font-size:15px;line-height:1.7;margin-top:14px; }
.official-source-details { margin-top:15px;border:1px solid var(--line);border-radius:18px;background:rgba(255,250,244,.7);padding:0 20px; }
.official-source-details summary { cursor:pointer;padding:18px 0;font-size:15px;font-weight:850; }
.official-source-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 0 20px; }
.official-source-grid a { border-radius:13px;background:white;padding:13px 15px;text-decoration:none; }
.official-source-grid a:hover { outline:2px solid var(--lime); }
.official-source-grid b { display:block;font-size:14px;line-height:1.45; }
.official-source-grid span { display:block;color:var(--muted);font-size:13px;line-height:1.5;margin-top:5px; }

.beginner-next { margin:90px 0 0;border-radius:32px;background:#f7e5d4;padding:54px; }
.beginner-next > h2 { max-width:720px;font:600 clamp(34px,4vw,55px)/1.12 Georgia,"Noto Serif SC",serif;letter-spacing:-.035em;margin:0 0 32px; }
.beginner-next > div { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px; }
.beginner-next article { border-radius:19px;background:rgba(255,255,255,.62);padding:21px; }
.beginner-next article > span { color:var(--muted);font-size:13px;font-weight:750; }
.beginner-next h3 { font:600 22px Georgia,"Noto Serif SC",serif;margin:25px 0 9px; }
.beginner-next p { color:var(--muted);font-size:15px;line-height:1.6;min-height:48px; }
.beginner-next button { border:0;background:transparent;color:var(--ink);padding:12px 0 0;font-size:14px;font-weight:850;cursor:pointer; }

.beginner-detail-steps h4,.beginner-reading-body .modal-section h4 { color:var(--teal);font-size:14px;letter-spacing:.06em; }
.beginner-detail-steps ol { margin:0;padding-left:25px; }
.beginner-detail-steps li { color:#4f5b82;font-size:16px;line-height:1.7;padding:7px 0; }
.beginner-modal-prompt { border-radius:19px;background:var(--ink);color:white;padding:22px;margin-bottom:25px; }
.beginner-modal-prompt > span { color:var(--lime);font-size:14px;font-weight:850; }
.beginner-modal-prompt p { font-size:16px;line-height:1.8;white-space:pre-wrap;margin:13px 0 18px; }
.beginner-modal-prompt button { border:0;border-radius:12px;background:var(--lime);color:var(--ink);padding:11px 15px;font-size:14px;font-weight:850;cursor:pointer; }
.beginner-check-list { list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px; }
.beginner-check-list li { border:1px solid var(--line);border-radius:13px;background:white;padding:13px;font-size:15px;line-height:1.55; }
.beginner-check-list li::before { content:"□";color:var(--teal);font-weight:900;margin-right:7px; }
.beginner-warning { border-radius:15px;background:#fff4bd;padding:17px 19px;display:grid;grid-template-columns:auto 1fr;gap:13px; }
.beginner-warning b { color:#705b00; }
.beginner-warning p { color:#594e23;font-size:15px;line-height:1.65;margin:0; }

@media (max-width: 1100px) {
  .beginner-hero { grid-template-columns:1fr;min-height:0; }
  .beginner-hero-panel { display:grid;grid-template-columns:repeat(3,1fr);gap:1px; }
  .beginner-hero-panel > p { grid-column:1/-1; }
  .beginner-verified { grid-column:1/-1;margin-top:5px; }
  .beginner-hero-panel > div { grid-template-columns:60px 1fr;border-top:1px solid rgba(255,255,255,.14);padding:18px 13px; }
  .beginner-hero-panel strong { font-size:40px; }
  .starter-flow { grid-template-columns:repeat(3,1fr); }
  .beginner-task-grid,.tool-choice-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 820px) {
  .beginner-hero { padding-top:58px; }
  .beginner-hero-panel { grid-template-columns:1fr; }
  .beginner-hero-panel > div { grid-template-columns:70px 1fr; }
  .starter-flow,.seven-day-grid { grid-template-columns:repeat(2,1fr); }
  .beginner-quick-tasks,.three-question-row { grid-template-columns:1fr; }
  .knowledge-layout { grid-template-columns:1fr; }
  .knowledge-layout aside { position:static; }
  .beginner-next > div { grid-template-columns:1fr; }
}

@media (max-width: 620px) {
  .beginner-hero-copy h1 { font-size:45px; }
  .beginner-hero-copy > p:not(.eyebrow) { font-size:16px; }
  .beginner-promise span { font-size:13px; }
  .starter-flow,.seven-day-grid,.beginner-task-grid,.tool-choice-grid,.safety-level-grid,.safety-detail-grid,.official-source-grid { grid-template-columns:1fr; }
  .starter-flow article,.seven-day-grid article,.beginner-task-card,.tool-choice-grid article,.safety-level-grid article { min-height:0; }
  .beginner-copy-panel { grid-template-columns:1fr; }
  .beginner-copy-panel button,.beginner-formula-card button { width:100%; }
  .beginner-formula-card { align-items:stretch;flex-direction:column; }
  .human-boundary { grid-template-columns:1fr; }
  .beginner-filter-bar { grid-template-columns:1fr; }
  .beginner-filter-bar > button { min-height:46px; }
  .beginner-category-chips { flex-wrap:nowrap;overflow:auto;padding-bottom:5px; }
  .beginner-category-chips button { flex:0 0 auto; }
  .beginner-results-summary { flex-wrap:wrap; }
  .beginner-results-summary small { width:100%;margin-left:0; }
  .rescue-grid { grid-template-columns:1fr; }
  .rescue-grid article { grid-template-columns:40px 1fr; }
  .rescue-grid button { grid-column:2;grid-row:auto;text-align:left;padding:9px 0 0; }
  .handoff-card > div,.beginner-check-list { grid-template-columns:1fr; }
  .beginner-next { padding:38px 20px; }
}

@media (max-width: 540px) {
  .guide-jump-nav,.academy-jump-nav { margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px; }
}

/* Personal center */
.profile-page { padding-top:52px;padding-bottom:120px; }
.profile-heading { max-width:820px;margin-bottom:28px; }
.profile-heading h1 { font:600 clamp(42px,5vw,66px)/1.04 Georgia,"Noto Serif SC",serif;letter-spacing:-.045em;margin:0; }
.profile-heading > div > p:last-child { max-width:700px;color:var(--muted);font-size:16px;line-height:1.75;margin:15px 0 0; }
.profile-loading { margin-top:20px;border:1px solid var(--line);border-radius:18px;background:var(--card);padding:22px;color:var(--muted); }
.profile-shell { display:grid;grid-template-columns:236px minmax(0,1fr);gap:24px;align-items:start; }
.profile-sidebar { position:sticky;top:102px;border:1px solid var(--line);border-radius:24px;background:var(--card);padding:14px;box-shadow:0 16px 42px rgba(11,50,151,.07);overflow:hidden; }
.profile-account-summary { display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;padding:10px 8px 18px;border-bottom:1px solid var(--line); }
.profile-account-summary .profile-avatar { width:54px;height:54px;border-radius:17px;background:var(--lime);color:#0b3297;display:grid;place-items:center;font:800 25px Georgia,serif; }
.profile-account-summary > div { min-width:0; }
.profile-account-summary > div > span { color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.08em; }
.profile-account-summary h2 { overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:1.3;margin:4px 0 2px; }
.profile-account-summary p { overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px;margin:0; }
.profile-section-nav { display:grid;gap:3px;padding:12px 0; }
.profile-section-nav button { min-height:46px;border:0;border-radius:12px;background:transparent;color:var(--muted);display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:6px;padding:8px 10px;text-align:left;font-size:13px;font-weight:800;cursor:pointer; }
.profile-section-nav button > span { color:var(--ink);font-size:16px;text-align:center; }
.profile-section-nav button:hover { background:var(--teal-soft);color:var(--ink); }
.profile-section-nav button.active { background:var(--ink);color:var(--paper); }
.profile-section-nav button.active > span { color:var(--lime); }
.profile-nav-count { min-width:22px;height:22px;border-radius:999px;background:var(--lime);color:#0b3297;display:grid;place-items:center;padding:0 6px;font-size:10px; }
.profile-logout { width:100%;min-height:45px;border:1px solid color-mix(in srgb,var(--danger-text) 20%,transparent);border-radius:12px;background:var(--danger-bg);color:var(--danger-text);display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 12px;font-size:13px;font-weight:850;cursor:pointer; }
.profile-main { min-width:0; }
.profile-panel { min-height:640px;border:1px solid var(--line);border-radius:28px;background:var(--card);padding:clamp(24px,3.2vw,42px);box-shadow:0 18px 52px rgba(11,50,151,.08); }
.profile-panel-heading { display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:26px;border-bottom:1px solid var(--line); }
.profile-panel-kicker { display:block;color:var(--teal);font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase; }
.profile-panel-heading h2 { font:600 clamp(29px,3vw,42px)/1.15 Georgia,"Noto Serif SC",serif;letter-spacing:-.03em;margin:8px 0 0; }
.profile-panel-heading p { max-width:640px;color:var(--muted);font-size:14px;line-height:1.7;margin:10px 0 0; }
.profile-account-state { flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);display:flex;align-items:center;gap:8px;padding:9px 12px;font-size:11px;font-weight:800; }
.profile-account-state i { width:8px;height:8px;border-radius:50%;background:#38a169;box-shadow:0 0 0 4px rgba(56,161,105,.13); }
.profile-announcement-spotlight { width:100%;min-height:82px;border:1px solid rgba(248,223,8,.7);border-radius:18px;background:color-mix(in srgb,var(--lime) 18%,var(--surface-solid));display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 18px;margin-top:20px;text-align:left;cursor:pointer; }
.profile-announcement-label { border-radius:999px;background:var(--lime);color:#0b3297;padding:7px 9px;font-size:10px;font-weight:900; }
.profile-announcement-spotlight > span:nth-child(2) { min-width:0; }
.profile-announcement-spotlight b,.profile-announcement-spotlight small { display:block; }
.profile-announcement-spotlight b { font-size:14px;line-height:1.45; }
.profile-announcement-spotlight small { color:var(--muted);font-size:11px;margin-top:5px; }
.profile-announcement-spotlight strong { font-size:22px; }
.profile-overview-grid { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:12px;margin-top:12px; }
.profile-next-step-card,.profile-status-card { min-height:280px;border:1px solid var(--line);border-radius:22px;padding:24px; }
.profile-next-step-card { background:var(--ink);color:var(--paper); }
.profile-next-step-card .profile-panel-kicker { color:var(--lime); }
.profile-next-step-card h3 { max-width:470px;font:600 clamp(28px,3vw,40px)/1.15 Georgia,"Noto Serif SC",serif;letter-spacing:-.025em;margin:44px 0 13px; }
.profile-next-step-card p { max-width:590px;color:color-mix(in srgb,var(--paper) 73%,transparent);font-size:13px;line-height:1.75;margin:0; }
.profile-next-step-card button { border:0;border-radius:12px;background:var(--lime);color:#0b3297;padding:12px 14px;margin-top:22px;font-size:12px;font-weight:900;cursor:pointer; }
.profile-next-step-card button span { margin-left:16px; }
.profile-status-card { background:var(--surface-soft); }
.profile-status-card dl { margin:21px 0 0; }
.profile-status-card dl div { display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:13px 0; }
.profile-status-card dt { color:var(--muted);font-size:11px; }
.profile-status-card dd { margin:0;text-align:right;font-size:12px;font-weight:850; }
.profile-status-card button,.profile-text-action { border:0;background:transparent;color:var(--teal);padding:9px 0;font-size:11px;font-weight:850;cursor:pointer; }
.profile-quick-section { margin-top:33px; }
.profile-quick-section > div:first-child { display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:13px; }
.profile-quick-section h3 { font:600 23px Georgia,"Noto Serif SC",serif;margin:7px 0 0; }
.profile-quick-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px; }
.profile-quick-grid button { min-height:130px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft);padding:17px;text-align:left;cursor:pointer; }
.profile-quick-grid button:hover { border-color:var(--ink);transform:translateY(-2px); }
.profile-quick-grid span,.profile-quick-grid b,.profile-quick-grid small { display:block; }
.profile-quick-grid span { color:var(--teal);font:700 11px Georgia,serif; }
.profile-quick-grid b { font-size:14px;line-height:1.45;margin:25px 0 6px; }
.profile-quick-grid small { color:var(--muted);font-size:11px;line-height:1.5; }

.profile-announcement-list { display:grid;gap:9px;margin-top:22px; }
.profile-announcement-item { border:1px solid var(--line);border-radius:17px;background:var(--surface-soft);overflow:hidden; }
.profile-announcement-item.important { border-color:rgba(248,223,8,.7); }
.profile-announcement-item summary { min-height:78px;display:grid;grid-template-columns:9px minmax(0,1fr) 30px;align-items:center;gap:13px;padding:16px 18px;list-style:none;cursor:pointer; }
.profile-announcement-item summary::-webkit-details-marker { display:none; }
.announcement-unread-dot { width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(248,223,8,.14); }
.profile-announcement-item.read .announcement-unread-dot { background:transparent;box-shadow:inset 0 0 0 1px var(--line); }
.profile-announcement-item summary b,.profile-announcement-item summary small { display:block; }
.profile-announcement-item summary b { font-size:14px;line-height:1.5; }
.profile-announcement-item summary small { color:var(--muted);font-size:11px;margin-top:5px; }
.profile-announcement-item summary i { font-style:normal;font-size:22px;text-align:center;transition:transform .2s; }
.profile-announcement-item[open] summary i { transform:rotate(45deg); }
.profile-announcement-item > div { border-top:1px solid var(--line);padding:17px 40px; }
.profile-announcement-item > div p { max-width:780px;color:var(--muted);font-size:13px;line-height:1.8;margin:0; }
.profile-local-note { border-radius:13px;background:var(--teal-soft);color:var(--muted);padding:13px 15px;font-size:11px;line-height:1.6;margin:20px 0 0; }

.profile-settings-form { max-width:860px;margin-top:22px; }
.profile-form-row { display:grid;grid-template-columns:155px minmax(0,1fr);gap:24px;border-bottom:1px solid var(--line);padding:18px 0; }
.profile-form-row > label { padding-top:13px;font-size:13px;font-weight:850; }
.profile-form-row > div { display:grid;gap:7px; }
.profile-form-row input { width:100%;min-height:50px;border:1px solid var(--line);border-radius:13px;background:var(--surface-solid);color:var(--ink);padding:0 14px;font-size:16px; }
.profile-form-row input[readonly] { background:var(--teal-soft);color:var(--muted);cursor:not-allowed; }
.profile-form-row input[aria-invalid="true"] { border-color:#b23a2c;box-shadow:0 0 0 3px rgba(178,58,44,.1); }
.profile-form-row small { color:var(--muted);font-size:11px;line-height:1.55; }
.profile-form-actions { display:flex;align-items:center;justify-content:flex-end;gap:9px;padding-top:19px; }
.profile-primary-action,.profile-secondary-action { min-height:46px;border-radius:13px;padding:10px 18px;font-size:13px;font-weight:900;cursor:pointer; }
.profile-primary-action { border:0;background:var(--lime);color:#0b3297; }
.profile-secondary-action { border:1px solid var(--line);background:transparent;color:var(--ink); }
.profile-form-intro { padding:24px 0 3px; }
.profile-form-intro h3 { font:600 23px Georgia,"Noto Serif SC",serif;margin:0; }
.profile-form-intro p { color:var(--muted);font-size:12px;line-height:1.65;margin:9px 0 0; }
.profile-checkbox { width:fit-content;display:flex;align-items:center;gap:9px;color:var(--muted);padding-top:14px;font-size:12px;font-weight:750;cursor:pointer; }
.profile-checkbox input { width:18px;height:18px;accent-color:var(--ink); }
.profile-form-feedback { min-height:20px;color:var(--muted);font-size:12px;line-height:1.55;margin:12px 0 0; }
.profile-form-feedback.error { color:#9a2d21; }
.profile-form-feedback.success { color:var(--success); }
.profile-security-summary { display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft);padding:17px 18px;margin-top:22px; }
.profile-security-icon { width:46px;height:46px;border-radius:14px;background:var(--teal-soft);display:grid;place-items:center;font-size:18px;font-weight:900; }
.profile-security-summary b,.profile-security-summary p,.profile-security-summary small { display:block; }
.profile-security-summary b { font-size:13px; }
.profile-security-summary p { color:var(--muted);font-size:12px;margin:4px 0;overflow-wrap:anywhere; }
.profile-security-summary small { color:var(--muted);font-size:10px; }
.profile-security-summary button { min-height:42px;border:1px solid var(--line);border-radius:12px;background:var(--surface-solid);padding:8px 12px;font-size:11px;font-weight:850;cursor:pointer; }
.profile-security-summary button:disabled { cursor:default;opacity:.65; }

.profile-appearance-form { display:grid;gap:28px;margin-top:25px; }
.profile-appearance-form fieldset { min-width:0;border:0;border-bottom:1px solid var(--line);padding:0 0 26px;margin:0; }
.profile-appearance-form legend { font-size:13px;font-weight:900;margin-bottom:13px; }
.profile-choice-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.profile-choice-grid label { position:relative;border:1px solid var(--line);border-radius:17px;background:var(--surface-soft);padding:12px;cursor:pointer; }
.profile-choice-grid label:has(input:checked) { border-color:var(--ink);box-shadow:0 0 0 2px color-mix(in srgb,var(--ink) 18%,transparent); }
.profile-choice-grid input { position:absolute;right:12px;top:12px;width:17px;height:17px;accent-color:var(--ink); }
.theme-preview { height:74px;border-radius:11px;display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:8px;margin-bottom:12px;overflow:hidden; }
.theme-preview i { border-radius:6px; }
.system-preview { background:linear-gradient(90deg,#fbecdd 50%,#071b4d 50%); }
.system-preview i:first-child,.warm-preview { background:#fbecdd; }.system-preview i:last-child,.deep-preview{background:#071b4d}
.warm-preview i:first-child,.deep-preview i:first-child { background:#0b3297; }
.warm-preview i:last-child,.deep-preview i:last-child { background:#f8df08; }
.profile-choice-grid b,.profile-choice-grid small { display:block; }
.profile-choice-grid b { font-size:13px; }
.profile-choice-grid small { color:var(--muted);font-size:10px;line-height:1.45;margin-top:5px; }
.profile-segmented-options { width:min(420px,100%);display:grid;grid-template-columns:repeat(2,1fr);gap:5px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);padding:5px; }
.profile-segmented-options label { position:relative;cursor:pointer; }
.profile-segmented-options input { position:absolute;opacity:0;pointer-events:none; }
.profile-segmented-options span { min-height:40px;border-radius:10px;display:grid;place-items:center;color:var(--muted);font-size:12px;font-weight:850; }
.profile-segmented-options input:focus-visible + span { outline:3px solid var(--lime);outline-offset:2px; }
.profile-segmented-options input:checked + span { background:var(--ink);color:var(--paper); }

.profile-privacy-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px; }
.profile-privacy-grid article { min-height:180px;border:1px solid var(--line);border-radius:19px;background:var(--surface-soft);display:grid;grid-template-columns:36px 1fr;gap:14px;padding:20px; }
.profile-privacy-grid article > span { width:34px;height:34px;border-radius:10px;background:var(--teal-soft);display:grid;place-items:center;font:700 10px Georgia,serif; }
.profile-privacy-grid b { display:block;font-size:15px;line-height:1.45;margin:6px 0 10px; }
.profile-privacy-grid p { color:var(--muted);font-size:12px;line-height:1.7;margin:0; }
.profile-account-actions { display:grid;gap:8px;margin-top:26px; }
.profile-account-actions article { display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft);padding:16px 18px; }
.profile-account-actions b { display:block;font-size:13px; }
.profile-account-actions p { color:var(--muted);font-size:11px;line-height:1.5;margin:5px 0 0; }
.profile-danger-label { display:block;color:var(--danger-text);font-size:9px;font-weight:900;letter-spacing:.12em;margin-bottom:6px; }
.profile-account-actions button { flex:0 0 auto;min-height:40px;border:1px solid var(--line);border-radius:11px;background:transparent;color:var(--muted);padding:8px 11px;font-size:10px;font-weight:800; }
.profile-account-actions button:disabled { cursor:not-allowed;opacity:.65; }
.profile-account-actions .danger { border-color:color-mix(in srgb,var(--danger-text) 26%,transparent);background:color-mix(in srgb,var(--danger-bg) 55%,var(--surface-soft)); }
.profile-account-actions .danger .danger-action { border-color:#9a2d21;background:#9a2d21;color:#fffaf4;cursor:pointer; }
.profile-account-actions .danger .danger-action:hover { transform:translateY(-1px);box-shadow:0 10px 24px color-mix(in srgb,var(--danger-text) 18%,transparent); }

html[data-density="compact"] .profile-shell { gap:14px; }
html[data-density="compact"] .profile-panel { min-height:560px;padding:24px; }
html[data-density="compact"] .profile-panel-heading { padding-bottom:18px; }
html[data-density="compact"] .profile-form-row { padding:12px 0; }
html[data-density="compact"] .profile-next-step-card,html[data-density="compact"] .profile-status-card { min-height:230px;padding:19px; }
html[data-density="compact"] .profile-next-step-card h3 { margin-top:28px; }
html[data-density="compact"] .profile-quick-grid button { min-height:105px; }

html[data-font-size="large"] body :where(p,li,dd,input,select,textarea,button) { font-size:max(16px,1em)!important; }
html[data-font-size="large"] body small { font-size:max(14px,.875em)!important; }

html[data-theme="deep"] {
  --ink:#f8f1e8;
  --muted:#bbc7e7;
  --paper:#071b4d;
  --card:rgba(13,39,99,.88);
  --line:rgba(248,223,8,.22);
  --teal:#f8df08;
  --teal-soft:#132f70;
  --blue:#f8df08;
  --lime-dark:#f8df08;
  --shadow:0 22px 65px rgba(0,0,0,.28);
  --surface-solid:#102d70;
  --surface-soft:rgba(18,47,112,.76);
  --danger-bg:#491e2a;
  --danger-text:#ffb8ad;
  --success:#8de7aa;
}
html[data-theme="deep"] .topbar { background:rgba(7,27,77,.9); }
html[data-theme="deep"] .primary-nav { background:rgba(7,27,77,.94);border-color:rgba(248,223,8,.3); }
html[data-theme="deep"] .nav-item { color:#f8f1e8; }
html[data-theme="deep"] .nav-item.active { background:#f8f1e8;color:#071b4d; }
html[data-theme="deep"] :where(.account-trigger,.profile-trigger,.menu-button,.home-secondary-action,.solution-card,.filter-panel input[type="search"],.filter-panel select,.load-more,.compact-search,.agent-mode-filter button,.prompt-bubble,.academy-filter-bar select,.academy-search,.academy-reading-content p,.modal-close,.modal-stat,.auth-close,.auth-mode-switch,.auth-field input,.delete-account-close,.delete-account-field input,.beginner-search,.handoff-card span,.official-source-grid a,.beginner-check-list li) { background:var(--surface-solid);color:var(--ink); }
html[data-theme="deep"] :where(.tag,.academy-topic-list span,.academy-resource-tags span,.academy-reading-tags span,.compare-table th:first-child,.compare-table td:first-child) { background:var(--teal-soft);color:var(--ink); }
html[data-theme="deep"] :where(.filter-tip p,.model-card .intro,.agent-card .core,.concept-card p,.prompt-bubble p,.usage-paths ol,.agent-checklist li,.academy-prompt-example>p,.camera-card>b,.academy-resource-footer>span,.academy-reading-content p,.modal-section p,.beginner-hero-copy>p:not(.eyebrow),.human-boundary p,.knowledge-layout li,.safety-detail-grid li,.beginner-detail-steps li) { color:var(--muted); }
html[data-theme="deep"] :where(.detail-modal,.auth-dialog,.delete-account-dialog) { background:var(--paper);color:var(--ink); }
html[data-theme="deep"] .delete-account-close { color:var(--danger-text); }
html[data-theme="deep"] .human-boundary article:last-child,html[data-theme="deep"] .beginner-next { background:#10275e; }
html[data-theme="deep"] .profile-next-step-card { background:#0b3297;color:#fbecdd; }
html[data-theme="deep"] .profile-next-step-card p { color:#ccd6f7; }
html[data-theme="deep"] .profile-section-nav button.active,html[data-theme="deep"] .profile-segmented-options input:checked + span { background:#f8f1e8;color:#071b4d; }
html[data-theme="deep"] .profile-section-nav button.active > span { color:#0b3297; }

@media (max-width: 980px) {
  .profile-shell { grid-template-columns:210px minmax(0,1fr);gap:14px; }
  .profile-overview-grid { grid-template-columns:1fr; }
  .profile-status-card { min-height:0; }
  .profile-quick-grid { grid-template-columns:1fr; }
  .profile-quick-grid button { min-height:105px; }
}

@media (max-width: 820px) {
  .profile-page { padding-top:38px;padding-bottom:145px; }
  .profile-heading { margin-bottom:20px; }
  .profile-heading > div > p:last-child { font-size:14px; }
  .profile-shell { display:block; }
  .profile-sidebar { position:static;border-radius:20px;padding:12px;margin-bottom:12px; }
  .profile-account-summary { grid-template-columns:46px minmax(0,1fr);padding:5px 6px 13px; }
  .profile-account-summary .profile-avatar { width:46px;height:46px;border-radius:14px;font-size:22px; }
  .profile-section-nav { display:flex;gap:6px;overflow-x:auto;padding:10px 0 7px;scrollbar-width:thin;scroll-snap-type:x proximity; }
  .profile-section-nav button { flex:0 0 auto;display:flex;min-height:42px;padding:8px 12px;scroll-snap-align:start; }
  .profile-section-nav button > span { display:none; }
  .profile-logout { margin-top:6px; }
  .profile-panel { min-height:0;border-radius:22px;padding:24px 20px; }
  .profile-panel-heading { align-items:stretch;flex-direction:column;gap:10px; }
  .profile-overview-heading { flex-direction:column; }
  .profile-account-state { width:fit-content; }
}

@media (max-width: 620px) {
  .profile-heading h1 { font-size:42px; }
  .profile-announcement-spotlight { grid-template-columns:minmax(0,1fr) auto; }
  .profile-announcement-label { width:max-content;grid-column:1/-1; }
  .profile-overview-grid,.profile-choice-grid,.profile-privacy-grid { grid-template-columns:1fr; }
  .profile-next-step-card,.profile-status-card,.profile-privacy-grid article { min-height:0; }
  .profile-form-row { grid-template-columns:1fr;gap:8px; }
  .profile-form-row > label { padding-top:0; }
  .profile-form-actions { justify-content:stretch; }
  .profile-form-actions button { width:100%; }
  .profile-security-summary { grid-template-columns:44px minmax(0,1fr); }
  .profile-security-summary button { grid-column:1/-1;width:100%; }
  .profile-announcement-item summary { padding:15px 13px; }
  .profile-announcement-item > div { padding:15px 20px; }
  .profile-account-actions article { align-items:stretch;flex-direction:column; }
  .profile-account-actions button { width:100%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important; }
}
