/* WarmDesk web refresh — shared foundation for public, visitor and account pages. */
:root {
  color-scheme: light;
  --rd-ink: #182c24;
  --rd-muted: #718078;
  --rd-soft: #9aa69f;
  --rd-line: #e3e9e4;
  --rd-paper: #f3f6f3;
  --rd-card: #fff;
  --rd-green: #246b4e;
  --rd-green-deep: #174d39;
  --rd-green-soft: #e5f1e9;
  --rd-orange: #cf6849;
  --rd-orange-soft: #fff0e9;
  --rd-shadow: 0 16px 44px rgba(24, 49, 37, .08);
  --rd-radius: 18px;
}

*, *::before, *::after { box-sizing: border-box; }
html { min-height: 100%; background: var(--rd-paper); }
body { min-height: 100vh; margin: 0; color: var(--rd-ink); background: var(--rd-paper); font-family: "Inter", "Noto Sans SC", "Microsoft YaHei", sans-serif; -webkit-font-smoothing: antialiased; }
a { color: var(--rd-green); text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
input, textarea, select { accent-color: var(--rd-green); }
::selection { color: #143b2a; background: #cce7d5; }

/* Remove the old full-page purple/blue wash and give each area a clean canvas. */
body:not(.chat-body) { background: var(--rd-paper) !important; }
.dashboard-body, .user-body, .admin-body { background: var(--rd-paper) !important; color: var(--rd-ink); }
.app-shell { min-height: 100vh; background: var(--rd-paper); }
.sidebar { width: 252px !important; padding: 25px 17px 18px !important; border-right: 1px solid var(--rd-line); background: #fbfcfa !important; color: var(--rd-ink) !important; box-shadow: none !important; }
.sidebar .brand { min-height: 49px; padding: 0 11px 22px !important; color: var(--rd-ink) !important; }
.sidebar .brand-mark, .brand-mark { border-radius: 12px !important; background-color: var(--rd-green) !important; color: #fff !important; box-shadow: 0 6px 14px #246b4e27; }
.brand-copy b { color: var(--rd-ink) !important; font-size: 15px; letter-spacing: -.25px; }
.brand-copy small { color: var(--rd-muted) !important; }
.workspace-label { padding: 10px 11px 9px !important; color: #98a39c !important; font-size: 10px !important; font-weight: 700; letter-spacing: 1.1px !important; }
.nav { margin-top: 8px !important; }
.nav-item { min-height: 43px; margin: 4px 0 !important; padding: 10px 12px !important; gap: 12px !important; border-radius: 11px !important; color: #68776e !important; font-size: 13px !important; font-weight: 550; transition: background .18s ease, color .18s ease, transform .18s ease; }
.nav-item > span { color: #8b9a91 !important; }
.nav-item:hover { transform: translateX(2px); background: #eef4ef !important; color: var(--rd-green-deep) !important; }
.nav-item.active { background: var(--rd-green-soft) !important; color: var(--rd-green-deep) !important; font-weight: 700; box-shadow: inset 3px 0 var(--rd-green); }
.nav-item.active > span { color: var(--rd-green) !important; }
.sidebar-bottom { margin-top: auto; padding-top: 18px; border-top: 1px solid var(--rd-line); }
.profile-row { min-width: 0; gap: 10px !important; }
.profile-avatar, .top-avatar { background: #d8e9dc !important; color: var(--rd-green-deep) !important; border-radius: 12px !important; font-weight: 750; }
.profile-info b { color: var(--rd-ink) !important; font-size: 12px !important; }
.profile-info small { color: var(--rd-muted) !important; }
.logout { display: grid; place-items: center; border: 1px solid var(--rd-line) !important; border-radius: 10px !important; background: white !important; color: #748178 !important; }
.logout:hover { border-color: #bdcfc2 !important; background: #f4f8f4 !important; color: var(--rd-green) !important; }
.main-area { min-width: 0; margin-left: 252px !important; background: var(--rd-paper) !important; }
.content { width: min(1460px, 100%); margin: 0 auto; padding: 36px clamp(22px, 4vw, 58px) 56px !important; }
.page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 22px; margin: 0 0 26px !important; }
.page-heading .eyebrow, .eyebrow { color: var(--rd-green) !important; font-size: 10px; font-weight: 750; letter-spacing: 1.3px; }
.page-heading h1 { margin: 8px 0 7px !important; color: var(--rd-ink) !important; font-size: clamp(26px, 3vw, 36px) !important; line-height: 1.17; letter-spacing: -1.1px; }
.page-heading p { margin: 0 !important; color: var(--rd-muted) !important; font-size: 13px !important; line-height: 1.7; }
.panel, .stat-card, .users-overview > article, .overview-card, .settings-card, .quota-card { overflow: hidden; border: 1px solid var(--rd-line) !important; border-radius: var(--rd-radius) !important; background: var(--rd-card) !important; box-shadow: 0 3px 13px rgba(29, 55, 39, .025) !important; }
.panel-heading { padding: 21px 23px !important; }
.panel-heading h2, .panel-heading h3 { color: var(--rd-ink) !important; font-size: 16px !important; font-weight: 700 !important; letter-spacing: -.2px; }
.panel-heading p { color: var(--rd-muted) !important; font-size: 12px !important; }
.btn, button.btn, a.btn { min-height: 42px; border-radius: 11px !important; font-size: 13px; font-weight: 700; transition: transform .18s ease, background .18s ease, box-shadow .18s ease; }
.btn-primary, .btn.btn-primary { background: var(--rd-green) !important; color: #fff !important; box-shadow: 0 7px 16px #246b4e22 !important; }
.btn-primary:hover, .btn.btn-primary:hover { transform: translateY(-1px); background: var(--rd-green-deep) !important; box-shadow: 0 10px 20px #246b4e2c !important; }
.text-action, .link-copy, .copy-btn { color: var(--rd-green) !important; }
.copy-btn { border-radius: 8px !important; background: var(--rd-green-soft) !important; }
.alert { border-radius: 12px !important; padding: 13px 16px !important; font-size: 13px !important; }
.alert-error { border-color: #f0d0c7 !important; background: #fff3ef !important; color: #a3432e !important; }
.alert-success { border-color: #d5e9da !important; background: #edf7ef !important; color: #286341 !important; }

/* Common data, forms and controls. */
table { color: var(--rd-ink); }
th { padding: 13px 17px !important; background: #f6f8f5 !important; color: #78867d !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .15px; }
td { padding: 14px 17px !important; border-color: #edf0ed !important; color: #59685f !important; font-size: 12px !important; }
td b { color: var(--rd-ink) !important; font-size: 12px !important; }
tr:hover td { background: #fbfcfa; }
.table-wrap { scrollbar-color: #c9d6cc transparent; }
.pill, .status-chip, .overview-status { border-radius: 999px !important; font-weight: 700 !important; }
.pill-active, .status-chip { background: #e8f4ea !important; color: #2b7049 !important; }
.pill-revoked, .pill-closed { background: #f0f2ef !important; color: #77827b !important; }
.pill-waiting { background: #fff2e8 !important; color: #b65d3e !important; }
input, textarea, select { border-color: #dfe7e1 !important; border-radius: 11px !important; background-color: #fff !important; color: var(--rd-ink) !important; box-shadow: none; }
input:focus, textarea:focus, select:focus { border-color: #80ad8e !important; outline: 3px solid #dcefe1 !important; box-shadow: none !important; }
input::placeholder, textarea::placeholder { color: #a5b0a8 !important; }
.form-stack label { color: #526359 !important; font-size: 12px !important; font-weight: 700 !important; }
.form-stack label small { color: var(--rd-muted) !important; line-height: 1.7; }
.stats-grid, .users-overview { gap: 15px !important; }
.stat-card { padding: 19px 20px !important; }
.stat-value { color: var(--rd-ink) !important; font-size: 31px !important; font-weight: 750 !important; }
.stat-top, .stat-foot { color: var(--rd-muted) !important; }
.stat-icon { border-radius: 11px !important; background: var(--rd-green-soft) !important; color: var(--rd-green) !important; }
.stat-icon.peach { background: var(--rd-orange-soft) !important; color: var(--rd-orange) !important; }
.callout, .license-banner { border: 1px solid #dfece2 !important; border-radius: 14px !important; background: #edf6ef !important; }
.callout b, .license-banner b { color: var(--rd-green-deep) !important; }

/* User/admin data pages and analytics. */
.overview-grid, .admin-overview-grid, .license-layout, .download-feature-grid, .overview-panels { gap: 17px !important; }
.overview-trend, .overview-quota, .overview-sources, .overview-recent { border-radius: var(--rd-radius) !important; }
.overview-chart, .trend-chart { border-radius: 14px; background: #f7faf7 !important; }
.quick-action, .admin-entry-list > a { border: 1px solid var(--rd-line) !important; border-radius: 12px !important; background: #fff !important; color: var(--rd-ink) !important; }
.quick-action:hover, .admin-entry-list > a:hover { border-color: #b9d4c0 !important; background: #f5faf5 !important; }
.quota-cta { border-radius: 11px !important; background: var(--rd-green) !important; color: #fff !important; }
.source-bar, .progress-track { border-radius: 999px !important; background: #edf1ed !important; }
.source-bar i, .progress-track i { border-radius: inherit; background: var(--rd-green) !important; }
.license-summary { background: linear-gradient(145deg, #fff, #f3f8f3) !important; }
.settings-panel, .settings-card { max-width: 880px; }
.settings-panel .form-stack, .settings-card .form-stack { gap: 20px; }
.users-overview > article { padding: 19px 20px; }
.users-overview > article > span, .users-overview small { color: var(--rd-muted); }
.users-overview > article > b { display: block; margin: 10px 0 5px; color: var(--rd-ink); font-size: 27px; }

/* Public landing page: product is the desktop client plus web account tools. */
.landing-page { position: relative; overflow: hidden; min-height: 100vh; background: #f4f7f3 !important; color: var(--rd-ink) !important; }
.landing-page::before { position: absolute; inset: 0 0 auto; height: 650px; content: ""; background: radial-gradient(ellipse at 76% 21%, #dcecdf 0, transparent 42%), radial-gradient(ellipse at 4% 8%, #e8eee4 0, transparent 39%); pointer-events: none; }
.landing-nav, .landing-hero, .landing-strip, .landing-features, .landing-workflow, .landing-footer { position: relative; z-index: 1; width: min(1240px, calc(100% - 64px)); margin-right: auto; margin-left: auto; }
.landing-nav { min-height: 88px; border-bottom: 1px solid #dfe7de; }
.landing-brand { color: var(--rd-ink) !important; font-weight: 800; }
.landing-brand .brand-mark { background: var(--rd-green) !important; }
.landing-brand em { border-radius: 999px; background: #e4efe6; color: var(--rd-green); }
.landing-links a, .landing-login { color: #66776c !important; font-size: 13px; font-weight: 600; }
.landing-links a:hover, .landing-login:hover { color: var(--rd-green) !important; }
.landing-cta { min-height: 46px; border-radius: 12px !important; background: var(--rd-green) !important; color: #fff !important; box-shadow: 0 9px 22px #246b4e25; }
.landing-cta:hover { background: var(--rd-green-deep) !important; }
.landing-hero { min-height: 580px; padding-top: 78px !important; padding-bottom: 65px !important; }
.hero-copy { max-width: 620px; }
.hero-kicker { color: var(--rd-green) !important; font-size: 10px; font-weight: 800; letter-spacing: 1.5px; }
.hero-kicker i { background: var(--rd-orange) !important; }
.hero-copy h1 { color: var(--rd-ink) !important; font-size: clamp(46px, 6vw, 76px) !important; line-height: 1.05 !important; letter-spacing: -3px !important; }
.hero-copy h1 span, .section-intro h2 span, .workflow-card h2 span { color: var(--rd-green) !important; }
.hero-copy > p, .section-intro > p { max-width: 520px; color: #718078 !important; font-size: 16px !important; line-height: 1.85 !important; }
.hero-trust { color: #77867c !important; }
.trust-avatars b { border: 2px solid #f4f7f3 !important; background: #cfe1d2 !important; color: var(--rd-green-deep) !important; }
.hero-secondary { color: #586b5e !important; }
.play-icon { border-color: #cbd9ce !important; color: var(--rd-green) !important; }
.hero-stage { position: relative; min-height: 385px; }
.hero-stage > * { display: none !important; }
.hero-stage::before { position: absolute; inset: 20px 0 4px 4px; display: block; content: ""; border: 1px solid #d7e5d9; border-radius: 34px; background: linear-gradient(145deg, #e6f0e5, #d7e8da 62%, #f4e9dc); box-shadow: 0 26px 65px #36553d18; transform: rotate(2deg); }
.hero-stage::after { position: absolute; inset: 75px 32px auto auto; display: grid; width: min(350px, 83%); min-height: 220px; place-content: center; padding: 28px; border: 1px solid #e5ebe4; border-radius: 24px; background: #fff; box-shadow: 0 24px 60px #1a382524; color: var(--rd-ink); content: "桌面端接待  ·  网页端管理\A\A访客通过专属链接进入\A客服使用 EXE 接收并回复消息"; white-space: pre-wrap; font-size: 16px; font-weight: 750; line-height: 2.1; }
.landing-strip { display: flex; justify-content: center; gap: clamp(25px, 6vw, 80px); padding: 23px 10px !important; border-top: 1px solid #dfe7de; border-bottom: 1px solid #dfe7de; color: #7c8a80; }
.landing-strip span { color: #9aa79e !important; font-size: 10px; font-weight: 800; letter-spacing: 1px; }
.landing-strip b { color: #53675a !important; }
.landing-features { padding: 100px 0 75px !important; }
.section-intro h2, .workflow-card h2 { color: var(--rd-ink) !important; font-size: clamp(34px, 4vw, 50px) !important; letter-spacing: -1.5px; }
.section-intro > p { margin-top: 17px; }
.feature-grid { gap: 16px !important; }
.glass-feature { min-height: 235px; border: 1px solid #e0e8e1 !important; border-radius: 19px !important; background: #fff !important; box-shadow: 0 8px 25px #27472f08 !important; }
.glass-feature.featured { border-color: #b9d4be !important; background: #edf5ed !important; }
.feature-symbol { color: var(--rd-green) !important; }
.glass-feature h3 { color: var(--rd-ink) !important; }
.glass-feature p { color: #718078 !important; }
.glass-feature a { color: var(--rd-green) !important; }
.workflow-card { border: 1px solid #dce7dd !important; border-radius: 24px !important; background: #edf4ed !important; }
.workflow-steps > div { border-color: #d7e4d9 !important; }
.workflow-steps b { color: var(--rd-green) !important; }
.workflow-steps strong { color: var(--rd-ink) !important; }
.workflow-steps small { color: #758279 !important; }
.landing-footer { border-color: #dfe7de !important; color: #87948b !important; }
.landing-footer a { color: #5e7164 !important; }

/* Account sign-in and registration. */
.auth-body { background: var(--rd-paper) !important; }
.auth-shell { min-height: 100vh; background: #fff !important; }
.auth-visual { min-height: 100vh; padding: 42px clamp(32px, 6vw, 86px) !important; background: linear-gradient(152deg, #1d5e43, #174a37 72%, #123e30) !important; }
.auth-visual::before { position: absolute; inset: auto -80px -165px auto; width: 440px; height: 440px; content: ""; border: 1px solid #ffffff25; border-radius: 50%; box-shadow: 0 0 0 44px #ffffff09, 0 0 0 88px #ffffff06; }
.auth-visual .brand, .auth-visual .visual-copy, .auth-visual .visual-bottom, .auth-mascot { z-index: 1; }
.auth-visual .brand-mark { background: #ffffff24 !important; }
.visual-copy h1 { max-width: 560px; font-size: clamp(39px, 4.5vw, 63px) !important; letter-spacing: -2px; }
.visual-copy p { max-width: 430px; color: #c9ded0 !important; font-size: 15px !important; line-height: 1.8; }
.visual-copy .eyebrow, .visual-bottom { color: #b5d1bd !important; }
.auth-mascot { transform: scale(.9); transform-origin: center; }
.auth-panel { padding: 48px clamp(30px, 6vw, 92px) !important; background: #fbfcfa !important; }
.auth-form-wrap { max-width: 420px !important; }
.auth-form-wrap h2 { color: var(--rd-ink); font-size: 31px !important; letter-spacing: -1px; }
.auth-form-wrap > .muted { color: var(--rd-muted) !important; line-height: 1.7; }
.auth-form-wrap label { color: #536359; }
.auth-form-wrap input { min-height: 48px; }
.auth-foot, .auth-copyright { color: #849188 !important; }
.auth-foot a, .admin-link { color: var(--rd-green) !important; }
.admin-link { border-color: var(--rd-line) !important; background: white !important; }
.auth-separator { background: var(--rd-line) !important; }

/* Visitor chat — bright, quiet and mobile-first, with no inherited landing wash. */
.chat-body { display: block !important; min-height: 100vh; padding: 0 !important; overflow: hidden; background: #edf3ed !important; }
.chat-window { position: relative; width: 100% !important; max-width: none !important; height: 100vh !important; height: 100dvh !important; min-height: 0 !important; margin: 0 !important; overflow: hidden; border: 0 !important; border-radius: 0 !important; background: #fff !important; box-shadow: none !important; }
.chat-header { z-index: 2; height: 76px !important; flex: none; padding: 0 clamp(18px, 4vw, 55px) !important; border-bottom: 1px solid #e8eee8 !important; background: #fff !important; }
.chat-brand { gap: 12px !important; }
.chat-logo, .chat-window .chat-logo.small { border-radius: 13px !important; background-color: var(--rd-green) !important; color: white !important; box-shadow: none !important; }
.chat-brand strong { color: var(--rd-ink) !important; font-size: 14px !important; }
.chat-brand small { color: #7f8d83 !important; }
.chat-brand small i { background: #45a66a !important; }
.chat-header-meta { color: #87948b !important; }
.chat-window .messages { width: min(900px, 100%); flex: 1; align-self: center; padding: 30px clamp(20px, 5vw, 65px) !important; background: #f7f9f6 !important; }
.chat-window .message-row { margin: 16px 0 !important; }
.chat-window .message-author { color: #75857a !important; font-size: 10px !important; }
.chat-window .bubble { max-width: min(76%, 600px) !important; border: 1px solid #e1e9e1 !important; border-radius: 5px 17px 17px 17px !important; background: #fff !important; color: #30473a !important; box-shadow: 0 3px 10px #1d3b2708 !important; font-size: 14px !important; line-height: 1.8 !important; }
.chat-window .message-row.visitor .bubble { border-color: #d1e7d6 !important; border-radius: 17px 5px 17px 17px !important; background: #e6f2e8 !important; color: #204934 !important; }
.chat-window .message-row.system .bubble { border: 0 !important; border-radius: 999px !important; background: #e9eeea !important; color: #7b8980 !important; }
.chat-window .bubble small { opacity: .62; }
.chat-window .chat-compose { z-index: 2; flex: none; padding: 16px clamp(14px, 4vw, 55px) max(17px, env(safe-area-inset-bottom)) !important; border-top: 1px solid #e6ece6 !important; background: #fff !important; }
.chat-window .compose-toolbar { width: min(900px, 100%); min-height: 54px !important; padding: 5px 7px !important; gap: 8px !important; border: 1px solid #dce6dd !important; border-radius: 15px !important; background: #f8faf8 !important; box-shadow: 0 3px 10px #203e2909 !important; }
.chat-window .compose-toolbar textarea { background: transparent !important; color: var(--rd-ink) !important; font-size: 14px !important; }
.chat-window .compose-tool { border-radius: 11px !important; color: #71877a !important; }
.chat-window .compose-tool:hover { background: #e9f2ea !important; color: var(--rd-green) !important; }
.chat-window .compose-send { border-radius: 11px !important; background: var(--rd-green) !important; box-shadow: none !important; }
.chat-window .compose-send:hover { background: var(--rd-green-deep) !important; }
.chat-window .closed-note { border-color: #e6ece6 !important; background: white !important; color: #7f8e83 !important; }
.chat-unavailable { display: grid; min-height: 100vh; place-items: center; padding: 24px; background: #edf3ed; }
.chat-unavailable-card { width: min(480px, 100%); padding: 38px !important; border: 1px solid #e1e9e1 !important; border-radius: 22px !important; background: white !important; box-shadow: var(--rd-shadow) !important; text-align: center; }
.chat-unavailable-card h1 { color: var(--rd-ink) !important; }
.chat-unavailable-card p { color: var(--rd-muted) !important; line-height: 1.8; }

/* Desktop download, plans, replies, profile and link-management pages. */
.download-page, .link-page, .plans-page, .replies-page { color: var(--rd-ink); }
.download-hero, .download-features, .download-steps, .link-card, .plans-grid > *, .reply-card { border-radius: 21px !important; }
.download-hero { border: 1px solid #deeadf !important; background: linear-gradient(130deg, #edf5ed, #f9fbf8 66%, #f8eee6) !important; box-shadow: none !important; }
.download-eyebrow, .download-section-heading > span { color: var(--rd-green) !important; }
.download-hero h1, .download-section-heading h2 { color: var(--rd-ink) !important; }
.download-hero h1 em { color: var(--rd-green) !important; }
.download-hero-copy > p, .download-feature-grid p, .step-list small { color: var(--rd-muted) !important; }
.desktop-window, .download-feature-grid article, .step-list > div { border: 1px solid #e1e9e1 !important; border-radius: 15px !important; background: #fff !important; box-shadow: 0 8px 22px #23412b0b !important; }
.desktop-window-bar { background: #f5f8f5 !important; }
.desktop-content-head strong, .desktop-message b { color: var(--rd-ink) !important; }
.download-meta { color: #75847a !important; }
.download-meta i { background: #4ca46c !important; }
.download-feature-grid h3 { color: var(--rd-ink) !important; }
.download-primary { border-radius: 12px !important; background: var(--rd-green) !important; color: white !important; }
.download-primary:hover { background: var(--rd-green-deep) !important; }
.link-card, .personal-link, .link-panel { border-color: var(--rd-line) !important; border-radius: 15px !important; background: #fff !important; }
.personal-link { background: #f5f9f5 !important; }
.plans-grid > *, .plan-card { border: 1px solid var(--rd-line) !important; border-radius: 17px !important; background: #fff !important; box-shadow: 0 7px 25px #1a382408 !important; }
.plan-card.featured, .plan-card.recommended { border-color: #a9c9af !important; background: #f0f7f0 !important; }
.reply-card, .reply-item { border-color: var(--rd-line) !important; border-radius: 13px !important; background: #fff !important; }

@media (max-width: 900px) {
  .sidebar { width: 218px !important; }
  .main-area { margin-left: 218px !important; }
  .content { padding: 27px 23px 42px !important; }
  .landing-nav, .landing-hero, .landing-strip, .landing-features, .landing-workflow, .landing-footer { width: min(100% - 44px, 760px); }
  .landing-hero { grid-template-columns: 1fr !important; min-height: auto; padding-top: 64px !important; }
  .hero-copy { max-width: 690px; }
  .hero-stage { min-height: 310px; margin-top: 6px; }
  .feature-grid { grid-template-columns: 1fr 1fr !important; }
  .glass-feature:last-child { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
  .sidebar { position: static !important; width: 100% !important; height: auto; padding: 12px 15px !important; border-right: 0; border-bottom: 1px solid var(--rd-line); }
  .sidebar .brand { padding: 0 4px 10px !important; }
  .sidebar .brand-copy small, .workspace-label, .sidebar-bottom { display: none !important; }
  .nav { display: flex; gap: 5px; margin: 0 !important; overflow-x: auto; padding-bottom: 1px; }
  .nav-item { flex: none; min-height: 38px; margin: 0 !important; padding: 8px 10px !important; white-space: nowrap; font-size: 12px !important; }
  .nav-item.active { box-shadow: inset 0 -2px var(--rd-green) !important; }
  .main-area { margin-left: 0 !important; }
  .content { padding: 23px 15px 34px !important; }
  .page-heading { align-items: flex-start; flex-direction: column; gap: 15px; }
  .page-heading h1 { font-size: 27px !important; }
  .stats-grid, .users-overview { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
  .stat-card { padding: 14px !important; }
  .stat-value { font-size: 25px !important; }
  .panel { border-radius: 15px !important; }
  .panel-heading { padding: 17px !important; }
  .admin-overview-grid, .license-layout { grid-template-columns: 1fr !important; }
  .landing-nav, .landing-hero, .landing-strip, .landing-features, .landing-workflow, .landing-footer { width: calc(100% - 34px); }
  .landing-nav { min-height: 72px; }
  .landing-links { display: none !important; }
  .landing-actions { gap: 12px !important; }
  .landing-cta.small { min-height: 38px; padding: 0 13px; }
  .landing-hero { padding-top: 50px !important; padding-bottom: 42px !important; }
  .hero-copy h1 { font-size: clamp(43px, 13vw, 62px) !important; letter-spacing: -2px !important; }
  .hero-copy > p { font-size: 14px !important; }
  .hero-stage { min-height: 230px; }
  .hero-stage::after { inset: 38px 10px auto auto; min-height: 170px; width: 90%; padding: 18px; font-size: 13px; }
  .landing-strip { flex-wrap: wrap; gap: 14px 24px; padding: 18px 4px !important; }
  .landing-strip span { width: 100%; text-align: center; }
  .landing-features { padding: 63px 0 42px !important; }
  .feature-grid { grid-template-columns: 1fr !important; }
  .glass-feature:last-child { grid-column: auto; }
  .glass-feature { min-height: 190px; }
  .workflow-card { padding: 24px !important; }
  .workflow-steps { margin-top: 25px; }
  .landing-footer { flex-wrap: wrap; gap: 12px; padding: 19px 0 !important; }
  .auth-shell { grid-template-columns: 1fr !important; }
  .auth-visual { display: none !important; }
  .auth-panel { min-height: 100vh; padding: 32px 23px !important; }
  .auth-form-wrap { margin: auto; }
  .auth-form-wrap h2 { font-size: 28px !important; }
  .chat-header { height: 66px !important; padding: 0 16px !important; }
  .chat-window .messages { padding: 21px 14px !important; }
  .chat-window .bubble { max-width: 88% !important; font-size: 14px !important; }
  .chat-window .chat-compose { padding: 9px 10px max(10px, env(safe-area-inset-bottom)) !important; }
  .chat-window .compose-toolbar { min-height: 48px !important; gap: 4px !important; padding: 4px !important; }
  .chat-window .compose-tool, .chat-window .compose-send { width: 37px !important; height: 38px !important; }
  .download-hero { padding: 25px !important; }
  .download-feature-grid { grid-template-columns: 1fr !important; }
  .download-page, .link-page, .plans-page, .replies-page { width: 100%; }
}
