:root {
  --violet: #7a68ed;
  --violet-deep: #6454d8;
  --violet-soft: #f1efff;
  --violet-line: #e4e0fb;
  --ink: #252938;
  --ink-soft: #606477;
  --quiet: #9699a9;
  --canvas: #fbfbfe;
  --paper: #ffffff;
  --line: #edecf3;
  --mint: #11b889;
  --mint-soft: #e4f8f0;
  --warm: #fff8ec;
  --shadow: 0 18px 46px rgba(61, 52, 122, .08);
  --font: Inter, "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
}

* { box-sizing: border-box; }
body { min-width: 320px; margin: 0; color: var(--ink); background: var(--canvas); font-family: var(--font); font-size: 14px; letter-spacing: -.08px; }
button, input, textarea, select { font: inherit; } button { cursor: pointer; }.ambient { display: none; }

.app-frame { display: flex; width: 100%; min-height: 100vh; overflow: hidden; background: var(--paper); }.app-rail { display: flex; width: 76px; flex: 0 0 76px; flex-direction: column; align-items: center; min-height: 100vh; padding: 18px 0; color: rgba(255,255,255,.78); background: linear-gradient(180deg, #9179f2 0%, #765fe8 52%, #5b81ef 100%); box-shadow: inset -1px 0 rgba(255,255,255,.22); }.rail-logo { display: grid; width: 38px; height: 38px; place-items: center; color: #fff; border: 1px solid rgba(255,255,255,.46); border-radius: 14px; background: rgba(255,255,255,.18); font-size: 22px; font-weight: 800; box-shadow: 0 7px 20px rgba(59,41,153,.18); }.rail-nav { display: grid; gap: 10px; width: 100%; margin-top: 47px; }.rail-item { display: grid; place-items: center; gap: 4px; width: 52px; height: 57px; margin: 0 auto; color: rgba(255,255,255,.75); border: 1px solid transparent; border-radius: 15px; text-decoration: none; transition: .2s ease; }.rail-item span { font-size: 19px; line-height: 1; }.rail-item b { font-size: 10px; font-weight: 650; }.rail-item:hover, .rail-item.active { color: #fff; border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.16); box-shadow: 0 7px 16px rgba(57,43,153,.13); }.rail-bottom { display: grid; gap: 16px; margin-top: auto; place-items: center; color: rgba(255,255,255,.75); font-size: 17px; }.avatar, .topbar-avatar { display: grid; place-items: center; border-radius: 50%; font-size: 10px; font-weight: 750; }.avatar { width: 29px; height: 29px; color: #6d5be0; background: rgba(255,255,255,.94); }

.app-shell { min-width: 0; flex: 1; background: var(--canvas); }.topbar { display: flex; height: 70px; align-items: center; justify-content: space-between; padding: 0 34px; background: rgba(255,255,255,.92); border-bottom: 1px solid var(--line); }.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--ink); font-size: 16px; font-weight: 760; text-decoration: none; letter-spacing: -.45px; }.brand-mark { display: grid; width: 27px; height: 27px; place-items: center; color: #fff; border-radius: 9px; background: linear-gradient(135deg, #9f8bf5, var(--violet)); font-size: 16px; font-weight: 800; }.brand em { padding-left: 10px; color: var(--quiet); border-left: 1px solid var(--line); font-size: 12px; font-style: normal; font-weight: 540; letter-spacing: 0; }.topbar-right { display: flex; align-items: center; gap: 8px; color: var(--ink-soft); font-size: 12px; }.status-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 4px var(--mint-soft); }.topbar-divider { width: 1px; height: 18px; margin: 0 4px; background: var(--line); }.topbar-avatar { width: 27px; height: 27px; color: #6353d4; background: var(--violet-soft); }

.workspace { display: grid; grid-template-columns: 370px minmax(0, 1fr); min-height: calc(100vh - 70px); }.composer { position: relative; padding: 42px 31px 34px; overflow: hidden; background: linear-gradient(146deg, #fdfdff 0%, #f7f5ff 100%); border-right: 1px solid var(--line); }.composer::after { position: absolute; top: -85px; right: -115px; width: 250px; height: 250px; border: 1px solid rgba(133,109,241,.12); border-radius: 50%; box-shadow: 0 0 0 34px rgba(133,109,241,.04), 0 0 0 69px rgba(133,109,241,.024); content: ""; pointer-events: none; }.eyebrow { position: relative; z-index: 1; color: #7766dc; font-size: 10px; font-weight: 780; letter-spacing: 1.5px; } h1 { position: relative; z-index: 1; margin: 13px 0 12px; color: var(--ink); font-size: 32px; font-weight: 760; line-height: 1.16; letter-spacing: -1.45px; }.lead { position: relative; z-index: 1; margin: 0 0 30px; color: var(--ink-soft); font-size: 13px; line-height: 1.78; }
form { position: relative; z-index: 1; display: grid; gap: 9px; padding: 20px; border: 1px solid rgba(255,255,255,.85); border-radius: 17px; background: rgba(255,255,255,.86); box-shadow: 0 15px 36px rgba(105,84,194,.075); } label { margin-top: 4px; color: #45495b; font-size: 12px; font-weight: 720; } label span { color: #ec6d74; } label small { color: var(--quiet); font-weight: 500; } input, textarea, select { width: 100%; padding: 11px 12px; color: var(--ink); border: 1px solid #e7e5f2; border-radius: 10px; outline: none; background: #fff; font-size: 13px; transition: border-color .18s ease, box-shadow .18s ease; } input::placeholder, textarea::placeholder { color: #a5a7b3; } input:focus, textarea:focus, select:focus { border-color: #9d8cf0; box-shadow: 0 0 0 4px rgba(130,105,237,.12); } textarea { min-height: 118px; resize: vertical; line-height: 1.68; }.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }.form-grid div { display: grid; gap: 5px; }.primary-button { display: flex; min-height: 46px; align-items: center; justify-content: space-between; margin-top: 10px; padding: 0 15px; color: #fff; border: 0; border-radius: 11px; background: linear-gradient(100deg, #7966e6, #8c73ee); box-shadow: 0 10px 20px rgba(106,83,220,.25); font-size: 13px; font-weight: 720; transition: transform .16s ease, box-shadow .16s ease, filter .16s ease; }.primary-button:not(:disabled):hover { box-shadow: 0 14px 27px rgba(106,83,220,.32); filter: saturate(1.12); transform: translateY(-2px); }.primary-button:active { transform: scale(.98); }.primary-button:disabled { cursor: wait; opacity: .67; }.sample-button, .text-button { padding: 0; border: 0; background: transparent; color: #7766dc; font-size: 12px; font-weight: 680; }.sample-button { position: relative; z-index: 1; margin-top: 17px; }.sample-button::after { display: inline-block; margin-left: 5px; content: "→"; transition: transform .18s ease; }.sample-button:hover::after { transform: translateX(3px); }.privacy-note { position: relative; z-index: 1; padding-top: 20px; margin-top: 19px; color: var(--quiet); border-top: 1px solid rgba(142,129,215,.15); font-size: 11px; line-height: 1.7; }

.result-area { padding: 36px clamp(25px, 4vw, 58px) 54px; }.result-toolbar { display: flex; min-height: 60px; align-items: flex-start; justify-content: space-between; gap: 18px; }.result-toolbar h2 { margin: 8px 0 0; color: var(--ink); font-size: 24px; font-weight: 740; line-height: 1.25; letter-spacing: -1px; }.actions { display: flex; align-items: center; gap: 10px; }.text-button { margin: 10px 0 0; }.text-button:disabled, .export-button:disabled { cursor: not-allowed; opacity: .42; }.export-button { min-height: 38px; padding: 0 14px; color: #6655d2; border: 1px solid #ddd8f6; border-radius: 10px; background: #fff; box-shadow: 0 5px 13px rgba(71,55,151,.04); font-size: 12px; font-weight: 700; transition: .18s ease; }.export-button:not(:disabled):hover { border-color: #aa9df1; background: #f9f8ff; transform: translateY(-1px); }
.empty-state { width: min(650px, 100%); margin: 12vh auto 0; text-align: center; animation: fade-up .45s ease-out; }.empty-orbit { position: relative; display: grid; width: 100px; height: 100px; place-items: center; margin: auto; border-radius: 34% 66% 52% 48% / 45% 42% 58% 55%; background: radial-gradient(circle at 32% 30%, #fff, #e8e2ff 70%); box-shadow: 0 17px 32px rgba(110,87,227,.13); }.empty-orbit::before, .empty-orbit::after { position: absolute; border: 1px solid rgba(128,101,237,.26); border-radius: inherit; content: ""; }.empty-orbit::before { inset: -11px 17px 12px -16px; transform: rotate(18deg); }.empty-orbit::after { inset: 15px -16px -8px 15px; transform: rotate(-26deg); }.empty-orbit span { position: relative; z-index: 1; color: #755fe0; font-size: 42px; font-weight: 800; }.empty-state h3 { margin: 30px 0 9px; color: var(--ink); font-size: 24px; letter-spacing: -1px; }.empty-state p { max-width: 460px; margin: auto; color: var(--ink-soft); font-size: 13px; line-height: 1.75; }.flow-tags { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 23px; }.flow-tags span { padding: 8px 12px; color: #6d5bd2; border: 1px solid #e5e0fb; border-radius: 999px; background: #f3f0ff; font-size: 11px; font-weight: 690; }.flow-tags i { color: var(--quiet); font-size: 11px; font-style: normal; }

.generated-layout { display: grid; grid-template-columns: minmax(0, 1fr) 255px; gap: 20px; align-items: start; margin-top: 28px; }.preview-shell { min-width: 0; }.preview-topline { display: flex; justify-content: space-between; margin: 0 0 10px; color: var(--quiet); font-size: 11px; }.document { display: grid; gap: 17px; }.paper { position: relative; min-height: 410px; padding: 38px 42px 42px; overflow: hidden; border: 1px solid #ecebf3; border-radius: 16px; background: var(--paper); box-shadow: 0 14px 30px rgba(32,31,60,.06); animation: fade-up .4s ease-out both; }.paper::before { position: absolute; top: -150px; right: -104px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(139,116,241,.15), rgba(139,116,241,0) 68%); content: ""; }.paper:nth-child(2n)::before { top: auto; right: auto; bottom: -170px; left: -130px; }.paper:nth-child(1) { min-height: 480px; color: #fff; border: 0; background: linear-gradient(135deg, #3d376c 0%, #6652bd 48%, #8470ed 100%); box-shadow: 0 18px 38px rgba(71,53,168,.22); }.paper:nth-child(1)::after { position: absolute; right: -70px; bottom: -130px; width: 430px; height: 430px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; box-shadow: 0 0 0 34px rgba(255,255,255,.055), 0 0 0 81px rgba(255,255,255,.038); content: ""; }.paper:nth-child(1)::before { top: -225px; right: -260px; width: 560px; height: 560px; background: radial-gradient(circle, rgba(212,255,244,.27), rgba(212,255,244,0) 67%); }.page-number { color: #8371e6; font-size: 11px; font-weight: 760; letter-spacing: 1.15px; }.paper:first-child .page-number { color: #d9d2ff; }.page-content { position: relative; z-index: 1; }.cover-kicker { margin-top: 65px; color: #ded7ff; font-size: 11px; font-weight: 680; letter-spacing: 1.6px; }.cover-title { max-width: 630px; margin: 16px 0; font-size: clamp(36px, 5vw, 58px); font-weight: 760; line-height: 1.09; letter-spacing: -3px; }.cover-title strong { color: #b7ffdf; }.cover-subtitle { max-width: 500px; color: rgba(255,255,255,.8); font-size: 14px; line-height: 1.8; }.paper h3 { margin: 14px 0 14px; color: var(--ink); font-size: 28px; font-weight: 735; line-height: 1.22; letter-spacing: -1.35px; }.paper p { color: var(--ink-soft); font-size: 13px; line-height: 1.78; }.section-label { color: #7865df; font-size: 10px; font-weight: 780; letter-spacing: 1.25px; }.observation { margin-top: 21px; padding: 17px 19px; color: #695f45; border: 1px solid #f3e4c7; border-left: 3px solid #e8ba70; border-radius: 0 12px 12px 0; background: var(--warm); font-size: 13px; line-height: 1.75; }.three-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 11px; margin-top: 22px; }.solution-card { min-height: 176px; padding: 16px; border: 1px solid #e8e6f2; border-radius: 13px; background: linear-gradient(145deg, #fff, #fafaff); transition: transform .2s ease, box-shadow .2s ease; }.solution-card:hover { box-shadow: 0 10px 20px rgba(77,61,157,.08); transform: translateY(-2px); }.solution-card b { display: block; color: #9b8bf0; font-size: 11px; }.solution-card h4 { margin: 9px 0; color: #37364b; font-size: 16px; line-height: 1.38; }.solution-card p { margin: 0; font-size: 12px; line-height: 1.64; }.key-value { display: grid; grid-template-columns: 138px 1fr; gap: 12px; padding: 13px 0; margin: 13px 0; border-bottom: 1px solid var(--line); }.key-value:last-child { border-bottom: 0; }.key-value strong { color: #43435a; font-size: 12px; }.key-value p { margin: 0; }.pathway { display: grid; grid-template-columns: 32px 1fr; gap: 13px; margin-top: 16px; }.pathway .step { display: grid; width: 29px; height: 29px; place-items: center; color: #fff; border-radius: 50%; background: linear-gradient(135deg, #9b8af0, #6f5bdd); font-size: 11px; font-weight: 800; box-shadow: 0 6px 11px rgba(101,80,208,.2); }.pathway h4 { margin: 1px 0 4px; color: #414157; font-size: 14px; }.pathway p { margin: 0; font-size: 12px; }.capability-cloud { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0; }.capability-cloud span { padding: 7px 10px; color: #5f579b; border: 1px solid #e2def5; border-radius: 999px; background: #f8f7ff; font-size: 11px; }.paper-footer { position: absolute; right: 42px; bottom: 17px; left: 42px; display: flex; justify-content: space-between; padding-top: 12px; color: var(--quiet); border-top: 1px solid var(--line); font-size: 10px; }.paper:nth-child(1) .paper-footer { color: rgba(255,255,255,.64); border-color: rgba(255,255,255,.22); }.editable { border-radius: 4px; outline: none; transition: background .15s ease, box-shadow .15s ease; }.editable:hover, .editable:focus { background: rgba(131,108,234,.10); box-shadow: 0 0 0 3px rgba(131,108,234,.10); }

.insight-panel { position: sticky; top: 24px; padding: 19px; overflow: hidden; border: 1px solid #e7e4fa; border-radius: 16px; background: linear-gradient(160deg, #fdfdff 0%, #f3f0ff 100%); box-shadow: 0 14px 32px rgba(60,47,139,.075); }.insight-panel::before { position: absolute; top: -40px; right: -35px; width: 125px; height: 125px; border-radius: 50%; background: rgba(151,129,244,.13); content: ""; }.insight-heading { position: relative; display: flex; align-items: center; gap: 9px; padding-bottom: 15px; border-bottom: 1px solid rgba(123,105,220,.14); }.insight-heading h3 { margin: 2px 0 0; color: #3a3754; font-size: 16px; }.insight-spark { color: #806be5; font-size: 23px; }.brief-section { position: relative; margin-top: 17px; }.brief-section h4 { margin: 0 0 7px; color: #89839f; font-size: 10px; letter-spacing: .4px; }.brief-section p, .brief-section li { color: #57546e; font-size: 11px; line-height: 1.68; }.brief-section p { margin: 0; }.brief-section ul { padding-left: 15px; margin: 0; }.source-strip { position: relative; padding-top: 15px; margin-top: 18px; border-top: 1px solid rgba(123,105,220,.14); }.source-strip strong { color: #7765d6; font-size: 11px; }.source-strip p { margin: 6px 0 0; color: #807c93; font-size: 10px; line-height: 1.65; }

/* 视觉放大：优先保证客户沟通场景下的可读性与品牌识别。 */
body { font-size: 15px; }
.app-rail { width: 112px; flex-basis: 112px; padding: 22px 0; }
.rail-logo { width: 76px; height: 58px; border-radius: 16px; font-size: 15px; font-weight: 820; line-height: 1.25; letter-spacing: -.45px; text-align: center; }
.rail-nav { gap: 13px; margin-top: 48px; }
.rail-item { gap: 6px; width: 82px; height: 71px; border-radius: 17px; }
.rail-item span { font-size: 24px; }
.rail-item b { font-size: 13px; font-weight: 780; letter-spacing: .25px; }
.rail-bottom { gap: 18px; font-size: 20px; }
.avatar { width: 34px; height: 34px; font-size: 11px; }
.topbar { height: 76px; padding: 0 40px; }
.brand { gap: 13px; font-size: 18px; font-weight: 800; }
.brand-mark { display: inline-flex; width: auto; height: 32px; min-height: 32px; padding: 0 11px; align-items: center; border-radius: 10px; font-size: 13px; font-weight: 820; letter-spacing: -.4px; }
.brand em { padding-left: 13px; font-size: 13px; font-weight: 630; }
.topbar-right { gap: 9px; font-size: 13px; font-weight: 600; }
.topbar-avatar { width: 31px; height: 31px; font-size: 11px; }
.workspace { grid-template-columns: 405px minmax(0, 1fr); min-height: calc(100vh - 76px); }
.composer { padding: 47px 35px 38px; }
.eyebrow { font-size: 11px; font-weight: 820; letter-spacing: 1.65px; }
h1 { margin: 14px 0; font-size: 35px; font-weight: 800; letter-spacing: -1.65px; }
.lead { margin-bottom: 32px; font-size: 14px; font-weight: 540; }
form { gap: 10px; padding: 22px; border-radius: 18px; }
label { font-size: 13px; font-weight: 780; }
input, textarea, select { padding: 12px 13px; font-size: 14px; }
.primary-button { min-height: 50px; padding: 0 17px; font-size: 15px; font-weight: 780; }
.sample-button, .text-button { font-size: 13px; font-weight: 730; }
.privacy-note { font-size: 12px; font-weight: 540; }
.result-area { padding: 42px clamp(28px, 4vw, 62px) 58px; }
.result-toolbar h2 { font-size: 28px; font-weight: 780; }
.export-button { min-height: 42px; padding: 0 16px; font-size: 13px; }

/* 欢迎区：宣传展示 + 一张可感知的方案样张。 */
.empty-state { width: min(900px, 100%); margin: clamp(34px, 8vh, 92px) auto 0; text-align: left; }
.welcome-hero { position: relative; display: grid; grid-template-columns: minmax(300px, 1.05fr) minmax(270px, .78fr); gap: clamp(30px, 5vw, 76px); align-items: center; min-height: 330px; padding: clamp(28px, 4vw, 48px); overflow: hidden; border: 1px solid #ebe8fb; border-radius: 24px; background: linear-gradient(120deg, #fff 0%, #fbfaff 51%, #f1efff 100%); box-shadow: 0 18px 42px rgba(67, 50, 142, .07); }
.welcome-hero::after { position: absolute; top: -130px; right: -118px; width: 320px; height: 320px; border: 1px solid rgba(133, 109, 241, .13); border-radius: 50%; box-shadow: 0 0 0 38px rgba(133, 109, 241, .045), 0 0 0 86px rgba(133, 109, 241, .025); content: ""; pointer-events: none; }
.welcome-copy { position: relative; z-index: 2; }
.welcome-kicker { display: flex; align-items: center; gap: 8px; color: #7766dc; font-size: 12px; font-weight: 760; letter-spacing: .25px; }
.welcome-kicker span { display: grid; width: 23px; height: 23px; place-items: center; color: #fff; border-radius: 8px; background: linear-gradient(135deg, #a492f7, #755fe0); font-size: 13px; }
.empty-state .welcome-copy h3 { max-width: 470px; margin: 17px 0 13px; color: #292b41; font-size: clamp(29px, 3.3vw, 42px); font-weight: 800; line-height: 1.16; letter-spacing: -2px; }
.empty-state .welcome-copy p { max-width: 480px; margin: 0; color: #64677b; font-size: 15px; font-weight: 520; line-height: 1.85; }
.welcome-cta { display: inline-flex; min-height: 46px; align-items: center; gap: 18px; margin-top: 25px; padding: 0 18px; color: #fff; border: 0; border-radius: 12px; background: linear-gradient(100deg, #7966e6, #8c73ee); box-shadow: 0 11px 21px rgba(106, 83, 220, .25); font-size: 14px; font-weight: 760; transition: transform .16s ease, box-shadow .16s ease; }
.welcome-cta:hover { box-shadow: 0 15px 27px rgba(106, 83, 220, .32); transform: translateY(-2px); }.welcome-cta:active { transform: scale(.98); }
.proposal-teaser { position: relative; z-index: 1; width: 248px; height: 256px; justify-self: center; }
.teaser-glow { position: absolute; top: 18px; right: -20px; width: 180px; height: 180px; border-radius: 50%; background: radial-gradient(circle, rgba(162, 236, 221, .74), rgba(162, 236, 221, 0) 69%); filter: blur(4px); }
.teaser-paper { position: absolute; width: 190px; height: 235px; border-radius: 16px; }
.teaser-paper-back { top: 10px; right: 6px; border: 1px solid rgba(132, 111, 233, .18); background: linear-gradient(145deg, #e3ddff, #faf9ff); transform: rotate(9deg); box-shadow: 0 12px 28px rgba(67, 50, 142, .11); }
.teaser-paper-front { top: 12px; left: 18px; padding: 19px 17px; color: #fff; background: linear-gradient(145deg, #5d4baf, #816de7); box-shadow: 0 20px 34px rgba(72, 55, 164, .24); transform: rotate(-4deg); }
.teaser-brand { color: #eeeaff; font-size: 11px; font-weight: 780; }.teaser-brand span { display: inline-block; padding: 4px 7px; border: 1px solid rgba(255,255,255,.34); border-radius: 6px; }
.teaser-rule { width: 32px; height: 2px; margin: 31px 0 13px; background: #bdf9df; }.teaser-paper-front strong { display: block; font-size: 19px; font-weight: 780; line-height: 1.36; letter-spacing: -.8px; }.teaser-paper-front p { margin: 14px 0 0; color: rgba(255,255,255,.76); font-size: 10px; }.teaser-chips { display: flex; gap: 5px; margin-top: 26px; }.teaser-chips i { width: 29px; height: 5px; border-radius: 10px; background: rgba(255,255,255,.28); }.teaser-chips i:first-child { width: 49px; background: #bdf9df; }
.promo-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 17px; }
.promo-card { display: flex; min-height: 124px; gap: 13px; padding: 20px 18px; border: 1px solid #ecebf4; border-radius: 16px; background: #fff; box-shadow: 0 9px 20px rgba(34, 32, 75, .035); transition: transform .18s ease, box-shadow .18s ease; }.promo-card:hover { box-shadow: 0 14px 25px rgba(61, 49, 131, .09); transform: translateY(-2px); }.promo-icon { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 11px; font-size: 18px; font-weight: 800; }.promo-icon.lavender { color: #745fdd; background: #f0edff; }.promo-icon.mint { color: #16946e; background: #e4f8f0; }.promo-icon.peach { color: #bd7951; background: #fff0e8; }.promo-card b { display: block; margin-top: 2px; color: #3a3b4d; font-size: 15px; font-weight: 780; }.promo-card p { margin: 7px 0 0; color: #747788; font-size: 12px; font-weight: 520; line-height: 1.65; }
.promo-steps { display: flex; align-items: center; gap: 7px; padding-top: 10px; margin-top: 10px; border-top: 1px solid #f0eef5; color: #806bdc; font-size: 10px; font-weight: 740; }.promo-steps i { width: 14px; height: 1px; background: #d7cff7; }
.generated-layout:not([hidden]) { display: block; margin-top: 28px; }

.insight-heading h3 { font-size: 18px; font-weight: 780; }.brief-section h4 { font-size: 11px; font-weight: 760; }.brief-section p, .brief-section li { font-size: 12px; font-weight: 540; line-height: 1.75; }.brief-quote { padding: 12px; border-radius: 10px; background: rgba(255,255,255,.67); }.brief-quote p { color: #6658a5; }
.paper h3 { font-size: 30px; font-weight: 780; }.paper p { font-size: 14px; font-weight: 520; }.section-label { font-size: 11px; font-weight: 820; }.key-value strong { font-size: 13px; }.solution-card h4 { font-size: 17px; font-weight: 780; }.solution-card p, .pathway p { font-size: 13px; }.pathway h4 { font-size: 15px; font-weight: 780; }.capability-cloud span { font-size: 12px; font-weight: 590; }
.solution-card { min-height: 208px; }.card-kicker { display: block; margin: 8px 0 0; color: #8478c8; font-size: 10px; font-weight: 710; letter-spacing: .25px; }.solution-card .card-kicker + h4 { margin-top: 9px; }

@keyframes fade-up { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1180px) { .generated-layout { grid-template-columns: 1fr; }.insight-panel { position: static; }.workspace { grid-template-columns: 340px minmax(0,1fr); }.three-grid { grid-template-columns: 1fr; }.paper { min-height: auto; } }
@media (max-width: 780px) { .app-frame { display: block; }.app-rail { position: fixed; z-index: 10; bottom: 0; left: 0; display: flex; width: 100%; height: 62px; min-height: 62px; flex-direction: row; justify-content: space-around; padding: 5px 10px; background: linear-gradient(90deg, #725ee2, #6477ea); }.rail-logo, .rail-bottom { display: none; }.rail-nav { display: flex; width: 100%; justify-content: space-around; gap: 3px; margin: 0; }.rail-item { width: 53px; height: 51px; }.app-shell { padding-bottom: 62px; }.topbar { height: 61px; padding: 0 18px; }.brand em, .topbar-right { display: none; }.workspace { display: block; min-height: 0; }.composer { padding: 31px 20px; border-right: 0; border-bottom: 1px solid var(--line); }.result-area { padding: 29px 18px 40px; }.result-toolbar h2 { font-size: 20px; }.paper { padding: 30px 24px 42px; border-radius: 12px; }.paper-footer { right: 24px; left: 24px; }.cover-title { font-size: 38px; }.key-value { grid-template-columns: 1fr; gap: 5px; }.actions { gap: 8px; }.export-button { padding: 0 10px; }.form-grid { grid-template-columns: 1fr; } }
@media (max-width: 1180px) { .workspace { grid-template-columns: 370px minmax(0, 1fr); }.welcome-hero { gap: 26px; padding: 30px; }.proposal-teaser { transform: scale(.9); transform-origin: center; } }
@media (max-width: 1020px) { .workspace { grid-template-columns: 350px minmax(0, 1fr); }.welcome-hero { grid-template-columns: 1fr; }.proposal-teaser { display: none; }.promo-grid { grid-template-columns: 1fr; }.empty-state { margin-top: 38px; } }
@media (max-width: 780px) { .brand-mark { min-height: 29px; height: 29px; padding: 0 9px; font-size: 12px; }.rail-item { width: 62px; height: 51px; gap: 3px; }.rail-item span { font-size: 19px; }.rail-item b { font-size: 11px; }.welcome-hero { min-height: 0; padding: 27px 24px; border-radius: 18px; }.empty-state .welcome-copy h3 { font-size: 31px; }.empty-state .welcome-copy p { font-size: 14px; }.promo-grid { gap: 10px; }.promo-card { min-height: 0; padding: 16px; }.result-toolbar { align-items: center; }.result-toolbar h2 { font-size: 22px; }.paper h3 { font-size: 26px; }.paper p { font-size: 13px; } }
@media print { body { background: #fff; }.app-rail, .topbar, .composer, .result-toolbar, .preview-topline, .insight-panel { display: none !important; }.app-frame, .app-shell, .workspace, .result-area, .generated-layout { display: block; width: auto; min-height: 0; padding: 0; margin: 0; overflow: visible; border: 0; box-shadow: none; }.paper { min-height: 100vh; border: 0; border-radius: 0; box-shadow: none; break-after: page; }.paper:last-child { break-after: auto; } }

/* 客户阅读版：沿用知识库行业方案的横版阅读节奏，统一为系统紫蓝色系。 */
.document { gap: 26px; }
.client-pdf-page { display: block; width: min(100%, 1120px); min-height: 0; aspect-ratio: 16 / 9; padding: clamp(34px, 4.8vw, 58px) clamp(42px, 6vw, 72px); overflow: hidden; color: #313047; border: 0; border-radius: 18px; background: #fff; box-shadow: 0 20px 44px rgba(53, 44, 108, .12); }
.client-pdf-page::before { display: none; }.client-pdf-page::after { display: none; }
.client-pdf-page .page-number { position: absolute; top: 32px; right: 42px; color: #9286dc; font-size: 11px; font-weight: 800; letter-spacing: 1px; }.client-pdf-page .page-content { display: flex; height: 100%; min-height: 0; flex-direction: column; }.client-pdf-page .paper-footer { right: 58px; bottom: 22px; left: 58px; padding-top: 10px; color: #918ca5; border-color: #eceaf6; font-size: 10px; }
.client-pdf-page .section-label { color: #7765dd; font-size: 11px; letter-spacing: 1.3px; }.client-pdf-page h3 { max-width: 720px; margin: 14px 0 12px; color: #312f4a; font-size: clamp(28px, 3.35vw, 42px); font-weight: 800; line-height: 1.16; letter-spacing: -1.7px; }.client-pdf-page p { color: #6b6980; font-size: clamp(12px, 1.28vw, 15px); line-height: 1.65; }.page-intro { max-width: 820px; margin: 0; }
.client-pdf-page.pdf-cover { color: #fff; background: radial-gradient(circle at 86% 16%, rgba(177, 239, 225, .4), transparent 24%), linear-gradient(135deg, #3f3975 0%, #6957c6 50%, #8b73ed 100%); }.client-pdf-page.pdf-cover::before { display: block; position: absolute; top: -170px; right: -100px; width: 490px; height: 490px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; box-shadow: 0 0 0 42px rgba(255,255,255,.055), 0 0 0 96px rgba(255,255,255,.036); content: ""; }.client-pdf-page.pdf-cover .page-content { position: relative; z-index: 1; }.pdf-cover .cover-kicker { margin-top: 18px; color: #e2dcff; font-size: 12px; font-weight: 700; letter-spacing: 1.45px; }.pdf-cover .cover-title { max-width: 680px; margin: auto 0 16px; color: #fff; font-size: clamp(40px, 5.3vw, 67px); font-weight: 800; line-height: 1.08; letter-spacing: -3.5px; }.pdf-cover .cover-title strong { color: #b9ffe1; }.pdf-cover .cover-subtitle { max-width: 560px; margin: 0; color: rgba(255,255,255,.83); font-size: 16px; }.cover-meta { display: flex; gap: 18px; margin-top: 24px; color: #e4defe; font-size: 12px; font-weight: 650; }.cover-meta span + span { padding-left: 18px; border-left: 1px solid rgba(255,255,255,.36); }.pdf-cover .paper-footer { color: rgba(255,255,255,.68); border-color: rgba(255,255,255,.23); }
.pdf-concerns { background: linear-gradient(145deg, #fff 0%, #faf9ff 58%, #f2efff 100%); }.concern-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: auto; padding-top: 24px; }.concern-card { position: relative; min-height: 165px; padding: 22px 20px; border: 1px solid #e8e4fa; border-radius: 12px; background: rgba(255,255,255,.88); }.concern-card b, .overview-card b, .why-grid b, .journey-grid b { color: #9789e6; font-size: 12px; letter-spacing: 1px; }.concern-card h4 { margin: 14px 0 9px; color: #45405f; font-size: 19px; font-weight: 780; }.concern-card p { margin: 0; font-size: 13px; }
.pdf-overview { background: #fff; }.overview-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: auto; padding-top: 22px; }.overview-card { min-height: 190px; padding: 22px 20px; border-top: 3px solid #8b76e8; background: linear-gradient(160deg, #fbfaff, #f4f1ff); }.overview-card h4 { margin: 16px 0 10px; color: #3e385d; font-size: 20px; font-weight: 800; }.overview-card p { margin: 0; font-size: 13px; }.value-line { display: flex; gap: 16px; align-items: center; margin-top: 20px; padding: 14px 18px; color: #5a5670; border-left: 4px solid #8c76eb; background: #f7f5ff; font-size: 13px; }.value-line strong { flex: 0 0 auto; color: #6955cc; font-size: 12px; }.value-line span { line-height: 1.45; }
.pdf-feature { background: linear-gradient(135deg, #f9f8ff 0%, #fff 54%, #f2f7ff 100%); }.feature-layout { display: grid; grid-template-columns: 1.12fr .88fr; gap: 26px; flex: 1; align-items: center; }.feature-lead { padding: 28px; border-radius: 18px; background: linear-gradient(135deg, #6754c7, #856fe5); box-shadow: 0 16px 28px rgba(89, 69, 188, .2); }.feature-lead span { color: #dcd6ff; font-size: 12px; font-weight: 700; }.feature-lead p { margin: 16px 0 0; color: #fff; font-size: 18px; line-height: 1.65; }.keyword-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }.keyword-tags span { padding: 6px 10px; color: #6554b5; border: 1px solid #ded8fa; border-radius: 999px; background: #f8f7ff; font-size: 11px; font-weight: 650; }.feature-lead .keyword-tags span { color: #fff; border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.13); }.feature-side { padding: 8px 2px; }.feature-side h4 { margin: 0 0 12px; color: #46415e; font-size: 21px; line-height: 1.35; }.feature-side p { margin: 0; }.feature-quote { margin-top: 25px; padding-top: 14px; color: #725fd5; border-top: 1px solid #e1ddef; font-size: 14px; font-weight: 760; }
.pdf-key-solutions { background: #fff; }.focused-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; flex: 1; margin-top: 8px; align-items: center; }.focused-capability { min-height: 210px; padding: 26px; border: 1px solid #ebe7fb; border-radius: 14px; background: linear-gradient(145deg, #fff, #f8f6ff); }.focused-capability > span { color: #998ce5; font-size: 12px; font-weight: 800; }.focused-capability h4 { margin: 14px 0 9px; color: #403a5a; font-size: 22px; font-weight: 800; }.focused-capability p { margin: 0; font-size: 14px; }
.pdf-why { background: linear-gradient(145deg, #f9f8ff, #fff 62%); }.why-grid, .journey-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; flex: 1; margin-top: 8px; align-items: center; }.why-grid article, .journey-grid article { min-height: 180px; padding: 23px 20px; border: 1px solid #e5e1f7; border-radius: 12px; background: rgba(255,255,255,.8); }.why-grid h4, .journey-grid h4 { margin: 14px 0 9px; color: #3d3858; font-size: 19px; }.why-grid p, .journey-grid p { margin: 0; font-size: 13px; }.pdf-why .capability-cloud { gap: 7px; margin: 0; }.pdf-why .capability-cloud span { padding: 6px 9px; font-size: 10px; }
.pdf-journey { background: linear-gradient(135deg, #fff, #f8f6ff); }.pdf-journey .journey-grid { margin-top: auto; padding-top: 20px; }.journey-grid article { position: relative; border-top: 3px solid #8a74e6; }.journey-grid article::after { position: absolute; top: 43%; right: -18px; width: 17px; height: 1px; background: #cabff5; content: ""; }.journey-grid article:last-child::after { display: none; }
.pdf-closing { color: #fff; background: radial-gradient(circle at 80% 25%, rgba(176,245,225,.3), transparent 25%), linear-gradient(135deg, #3d376d, #6653bd 58%, #806de8); }.pdf-closing::before { display: block; position: absolute; right: -90px; bottom: -150px; width: 470px; height: 470px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; box-shadow: 0 0 0 38px rgba(255,255,255,.06), 0 0 0 86px rgba(255,255,255,.038); content: ""; }.closing-inner { position: relative; z-index: 1; display: flex; height: 100%; flex-direction: column; justify-content: center; }.pdf-closing .section-label { color: #ddd7ff; }.pdf-closing h3 { max-width: 760px; color: #fff; font-size: clamp(32px, 4vw, 52px); }.pdf-closing h3 strong { color: #b7ffde; }.pdf-closing p { max-width: 600px; margin: 0; color: rgba(255,255,255,.8); font-size: 16px; }.closing-rule { width: 52px; height: 3px; margin: 30px 0 16px; background: #b7ffde; }.closing-inner > span { color: #e5e0ff; font-size: 14px; font-weight: 700; }.pdf-closing .paper-footer { color: rgba(255,255,255,.67); border-color: rgba(255,255,255,.23); }

@media (max-width: 820px) { .client-pdf-page { border-radius: 12px; }.client-pdf-page h3 { font-size: 25px; }.concern-grid, .overview-grid, .why-grid, .journey-grid { gap: 9px; }.concern-card, .overview-card, .why-grid article, .journey-grid article { min-height: 0; padding: 13px; }.concern-card h4, .overview-card h4, .why-grid h4, .journey-grid h4 { margin: 8px 0 6px; font-size: 14px; }.client-pdf-page p { font-size: 10px; }.feature-layout { gap: 14px; }.feature-lead { padding: 16px; }.feature-lead p { font-size: 12px; }.feature-side h4 { font-size: 15px; }.focused-capability { min-height: 0; padding: 15px; }.focused-capability h4 { margin: 8px 0 6px; font-size: 16px; }.client-pdf-page .paper-footer { right: 30px; bottom: 12px; left: 30px; font-size: 8px; }.client-pdf-page .page-number { top: 18px; right: 22px; }.keyword-tags { margin-top: 9px; }.keyword-tags span { padding: 3px 6px; font-size: 8px; }.value-line { margin-top: 10px; padding: 8px; font-size: 9px; }.pdf-why .capability-cloud { display: none; } }
@media print { @page { size: 16in 9in; margin: 0; } html, body { width: 16in; height: 9in; } .document { display: block; }.client-pdf-page { width: 16in !important; height: 9in !important; min-height: 9in !important; max-height: 9in !important; margin: 0 !important; padding: .75in .92in !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; break-after: auto !important; page-break-after: auto !important; break-before: auto !important; page-break-before: auto !important; overflow: hidden !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }.client-pdf-page + .client-pdf-page { break-before: page !important; page-break-before: always !important; }.client-pdf-page .paper-footer { right: .92in; bottom: .28in; left: .92in; }.client-pdf-page .page-number { top: .4in; right: .55in; }.client-pdf-page h3 { font-size: 33px; }.client-pdf-page p { font-size: 14px; }.pdf-cover .cover-title { font-size: 57px; }.pdf-closing h3 { font-size: 43px; } }

/* 提高横版方案阅读密度：信息块向上集中，正文按客户阅读距离放大。 */
.client-pdf-page h3 { max-width: 840px; font-size: clamp(31px, 3.65vw, 46px); }.client-pdf-page p { font-size: clamp(14px, 1.42vw, 17px); line-height: 1.72; }.page-intro { max-width: 980px; }
.concern-grid { grid-template-columns: repeat(5, 1fr); gap: 12px; margin-top: 30px; padding-top: 0; }.concern-card { min-height: 200px; padding: 21px 16px; }.concern-card h4 { margin: 14px 0 10px; font-size: 18px; line-height: 1.25; }.concern-card p { font-size: 13px; line-height: 1.62; }
.overview-grid { margin-top: 28px; padding-top: 0; }.overview-card { min-height: 230px; padding: 26px 23px; }.overview-card h4 { font-size: 23px; }.overview-card p { font-size: 15px; line-height: 1.68; }.value-line { margin-top: 18px; padding: 16px 20px; font-size: 15px; }
.feature-layout { flex: none; min-height: 310px; margin-top: 16px; align-items: stretch; }.feature-lead { padding: 32px; }.feature-lead p { font-size: 20px; line-height: 1.72; }.feature-side { display: flex; flex-direction: column; justify-content: center; padding: 18px 6px; }.feature-side h4 { font-size: 24px; }.feature-side p { font-size: 16px; }.feature-quote { font-size: 16px; }
.focused-grid { flex: none; min-height: 275px; margin-top: 24px; align-items: stretch; }.focused-capability { min-height: 275px; padding: 30px; }.focused-capability h4 { font-size: 25px; }.focused-capability p { font-size: 16px; }.pdf-key-solutions .value-line { margin-top: 18px; }
.why-grid, .journey-grid { flex: none; min-height: 245px; margin-top: 26px; align-items: stretch; }.why-grid article, .journey-grid article { min-height: 245px; padding: 28px 24px; }.why-grid h4, .journey-grid h4 { font-size: 22px; }.why-grid p, .journey-grid p { font-size: 15px; line-height: 1.68; }.pdf-why .capability-cloud { margin-top: 18px; }.pdf-why .capability-cloud span { padding: 7px 10px; font-size: 11px; }
@media (max-width: 820px) { .concern-grid { grid-template-columns: repeat(3, 1fr); margin-top: 14px; }.concern-card { min-height: 0; }.client-pdf-page h3 { font-size: 25px; }.client-pdf-page p { font-size: 10px; }.overview-card { min-height: 0; padding: 13px; }.overview-card h4 { font-size: 14px; }.overview-card p, .concern-card p { font-size: 10px; }.feature-layout { min-height: 0; }.focused-grid, .why-grid, .journey-grid { min-height: 0; margin-top: 10px; }.focused-capability, .why-grid article, .journey-grid article { min-height: 0; padding: 14px; }.focused-capability h4, .why-grid h4, .journey-grid h4 { font-size: 15px; }.focused-capability p, .why-grid p, .journey-grid p { font-size: 10px; } }
@media print { .client-pdf-page h3 { font-size: 38px; }.client-pdf-page p { font-size: 16px; }.concern-grid { margin-top: .3in; }.concern-card { min-height: 2.15in; padding: .24in .18in; }.concern-card h4 { font-size: 17px; }.concern-card p { font-size: 12px; }.overview-grid { margin-top: .26in; }.overview-card { min-height: 2.5in; }.overview-card h4 { font-size: 23px; }.overview-card p { font-size: 15px; }.feature-layout { min-height: 3.25in; }.feature-lead p { font-size: 19px; }.feature-side h4 { font-size: 24px; }.feature-side p { font-size: 16px; }.focused-grid { min-height: 2.85in; }.focused-capability { min-height: 2.85in; }.focused-capability h4 { font-size: 24px; }.focused-capability p { font-size: 15px; }.why-grid, .journey-grid { min-height: 2.55in; }.why-grid article, .journey-grid article { min-height: 2.55in; }.why-grid h4, .journey-grid h4 { font-size: 21px; }.why-grid p, .journey-grid p { font-size: 14px; } }

/* 网页方案：连续阅读，不再受浏览器分页约束。 */
.proposal-switcher { display: flex; align-items: center; gap: 8px; margin-bottom: 18px; padding: 5px; border: 1px solid #e8e4f6; border-radius: 13px; background: #f7f6fc; }.proposal-tab { min-height: 40px; padding: 0 16px; color: #767188; border: 0; border-radius: 9px; background: transparent; font-size: 13px; font-weight: 730; transition: .18s ease; }.proposal-tab small { margin-left: 5px; color: #a39cae; font-size: 10px; font-weight: 650; }.proposal-tab.active { color: #5442bd; background: #fff; box-shadow: 0 4px 11px rgba(73, 56, 157, .09); }.proposal-tab.active small { color: #7965d9; }
.client-web-document { display: block; width: 100%; max-width: 860px; margin: 0 auto; border: 1px solid #e7e4f2; border-radius: 22px; background: #fff; box-shadow: 0 20px 45px rgba(45, 39, 91, .09); }.client-web-proposal { overflow: hidden; border-radius: 21px; background: #fff; }.client-web-proposal h3, .client-web-proposal h4, .client-web-proposal p { margin-top: 0; }.client-hero { position: relative; min-height: 530px; padding: 76px 68px 58px; overflow: hidden; color: #fff; background: radial-gradient(circle at 84% 18%, rgba(184, 250, 226, .34), transparent 23%), linear-gradient(138deg, #393368 0%, #6251ba 51%, #8b73ec 100%); }.client-hero::after { position: absolute; right: -120px; bottom: -170px; width: 500px; height: 500px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; box-shadow: 0 0 0 43px rgba(255,255,255,.055), 0 0 0 94px rgba(255,255,255,.037); content: ""; }.client-hero-inner { position: relative; z-index: 1; }.client-hero-inner > span { color: #ddd7ff; font-size: 13px; font-weight: 750; letter-spacing: .5px; }.client-hero h2 { max-width: 680px; margin: 42px 0 22px; color: #fff; font-size: clamp(44px, 5vw, 67px); font-weight: 820; line-height: 1.06; letter-spacing: -3.5px; }.client-hero h2 strong { color: #bbffe1; }.client-hero p { max-width: 570px; margin: 0; color: rgba(255,255,255,.82); font-size: 17px; line-height: 1.75; }.client-hero small { display: inline-block; margin-top: 34px; color: #ded8ff; font-size: 12px; font-weight: 700; }
.client-section { padding: 72px 68px; }.client-index { display: block; margin-bottom: 15px; color: #7461d8; font-size: 12px; font-weight: 800; letter-spacing: 1.15px; }.client-section h3 { margin-bottom: 16px; color: #313047; font-size: clamp(32px, 4vw, 47px); font-weight: 820; line-height: 1.17; letter-spacing: -2px; }.client-intro { max-width: 720px; color: #6a687d; font-size: 16px; line-height: 1.78; }.client-context { background: linear-gradient(150deg, #fff 0%, #fbfaff 62%, #f1efff 100%); }.client-concern-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-top: 34px; }.client-concern-grid article { min-height: 192px; padding: 19px 14px; border: 1px solid #e7e2fb; border-radius: 13px; background: rgba(255,255,255,.88); }.client-concern-grid b, .client-solution-grid b, .client-path-grid b { color: #988ae5; font-size: 12px; letter-spacing: .7px; }.client-concern-grid h4 { margin: 16px 0 8px; color: #47415f; font-size: 17px; line-height: 1.25; }.client-concern-grid p { margin: 0; color: #777487; font-size: 12px; line-height: 1.66; }
.client-overview { background: #fff; }.client-solution-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 34px; }.client-solution-grid article { min-height: 310px; padding: 26px 22px; border-top: 4px solid #8972e8; background: linear-gradient(145deg, #fbfaff, #f1efff); }.client-solution-grid h4 { margin: 18px 0 12px; color: #3d375a; font-size: 23px; line-height: 1.3; }.client-solution-grid p { min-height: 133px; margin: 0; color: #676478; font-size: 14px; line-height: 1.72; }.client-solution-grid > article > div { display: flex; flex-wrap: wrap; gap: 6px; }.client-solution-grid span, .feature-tags span { padding: 5px 9px; color: #6654b9; border: 1px solid #ded7fa; border-radius: 999px; background: rgba(255,255,255,.72); font-size: 10px; font-weight: 680; }
.client-feature { display: grid; grid-template-columns: 1.05fr .95fr; gap: 34px; padding: 72px 68px; color: #fff; background: linear-gradient(135deg, #5e4db2, #816be1); }.feature-copy > span, .feature-message > span { color: #ddd7ff; font-size: 12px; font-weight: 760; letter-spacing: 1px; }.feature-copy h3 { margin: 16px 0; font-size: clamp(32px, 3.7vw, 45px); font-weight: 820; line-height: 1.18; letter-spacing: -2px; }.feature-copy p { color: rgba(255,255,255,.9); font-size: 17px; line-height: 1.8; }.feature-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }.feature-tags span { color: #fff; border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.12); }.feature-message { align-self: center; padding: 31px 28px; color: #4a416c; border-radius: 18px; background: rgba(255,255,255,.95); }.feature-message > span { color: #836edb; }.feature-message h4 { margin: 16px 0 12px; color: #443b64; font-size: 23px; line-height: 1.35; }.feature-message p { color: #6d687e; font-size: 15px; line-height: 1.75; }.feature-message b { display: block; padding-top: 17px; margin-top: 20px; color: #715bd1; border-top: 1px solid #e6e2f1; font-size: 14px; }
.client-more { background: #f9f8fe; }.client-more-grid { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }.client-more-grid span { min-width: calc(33.33% - 8px); padding: 16px 18px; color: #46405e; border: 1px solid #e8e4f5; border-radius: 12px; background: #fff; font-size: 15px; font-weight: 720; }.client-path { background: #fff; }.client-path-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; margin-top: 34px; }.client-path-grid article { min-height: 214px; padding: 25px 22px; border-top: 4px solid #8c75e8; background: #faf9ff; }.client-path-grid h4 { margin: 17px 0 10px; color: #413a5b; font-size: 21px; }.client-path-grid p { margin: 0; color: #6e6a7e; font-size: 14px; line-height: 1.7; }.client-closing { padding: 75px 68px; color: #fff; background: radial-gradient(circle at 82% 20%, rgba(180,247,224,.28), transparent 24%), linear-gradient(135deg, #393369, #6250b9 58%, #806ce6); }.client-closing > span { color: #ded8ff; font-size: 13px; font-weight: 760; }.client-closing h3 { max-width: 680px; margin: 19px 0 0; color: #fff; font-size: clamp(35px, 4.3vw, 52px); font-weight: 820; line-height: 1.14; letter-spacing: -2.4px; }
.sales-battlecard { max-width: 860px; padding: 28px; margin: 0 auto; border: 1px solid #e5e0f4; border-radius: 20px; background: linear-gradient(155deg, #fff, #f7f5ff); box-shadow: 0 15px 34px rgba(57, 42, 124, .08); }.battlecard-head { display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: 24px; border-bottom: 1px solid #e6e1f2; }.battlecard-head span, .battlecard-grid b { color: #7b67dc; font-size: 11px; font-weight: 800; letter-spacing: .85px; }.battlecard-head h3 { margin: 10px 0 4px; color: #36314d; font-size: 28px; letter-spacing: -1.2px; }.battlecard-head p { margin: 0; color: #777286; font-size: 14px; }.battlecard-mark { display: grid; width: 72px; height: 58px; place-items: center; color: #fff; border-radius: 15px; background: linear-gradient(135deg, #9a85f4, #6c57d8); font-size: 13px; font-weight: 800; line-height: 1.25; text-align: center; }.battlecard-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; margin-top: 22px; }.battlecard-grid article { min-height: 156px; padding: 20px; border: 1px solid #e9e5f5; border-radius: 14px; background: rgba(255,255,255,.82); }.battlecard-grid h4 { margin: 12px 0 8px; color: #443c61; font-size: 17px; }.battlecard-grid p, .battlecard-grid li { color: #696579; font-size: 13px; line-height: 1.7; }.battlecard-grid p { margin: 0; }.battlecard-grid ul { padding-left: 18px; margin: 9px 0 0; }
@media (max-width: 780px) { .proposal-tab { padding: 0 11px; font-size: 12px; }.client-web-document { border-radius: 14px; }.client-web-proposal { border-radius: 13px; }.client-hero, .client-section, .client-feature, .client-closing { padding: 44px 25px; }.client-hero { min-height: 420px; }.client-hero h2 { margin: 32px 0 17px; font-size: 42px; letter-spacing: -2px; }.client-section h3 { font-size: 31px; }.client-concern-grid { grid-template-columns: repeat(2, 1fr); }.client-solution-grid, .client-path-grid, .client-feature { grid-template-columns: 1fr; }.client-solution-grid article { min-height: 0; }.client-solution-grid p { min-height: 0; }.client-more-grid span { min-width: calc(50% - 6px); font-size: 13px; }.client-path-grid article { min-height: 0; }.sales-battlecard { padding: 19px; }.battlecard-grid { grid-template-columns: 1fr; }.battlecard-head h3 { font-size: 22px; } }

/* 本轮工作台：固定操作区、可回看的客户库，以及更适合长图阅读的客户方案。 */
.app-frame { display: block; overflow: visible; }
.app-rail { position: fixed; z-index: 40; inset: 0 auto 0 0; }
.app-shell { min-height: 100vh; margin-left: 112px; }
.topbar { position: sticky; z-index: 30; top: 0; backdrop-filter: blur(14px); }
.workspace { align-items: start; }
.composer { position: sticky; top: 76px; height: calc(100vh - 76px); overflow-y: auto; scrollbar-width: thin; }
.result-area { min-width: 0; }
.generated-layout { display: block; margin-top: 28px; }
.proposal-switcher { width: max-content; max-width: 100%; }
.workspace-library { grid-template-columns: 1fr; }
.workspace-library .result-area { width: min(1050px, 100%); margin: 0 auto; }
.workspace-library .result-toolbar, .workspace-library .empty-state, .workspace-library .generated-layout { display: none; }

.client-hero { min-height: 480px; padding: 68px 64px 54px; }
.client-hero h2 { max-width: 710px; margin: 34px 0 21px; font-size: clamp(36px, 4.45vw, 58px); line-height: 1.08; letter-spacing: -2.8px; }
.client-hero h2 strong, .client-hero h2 > span { display: block; }
.client-company-name { max-width: 100%; overflow-wrap: anywhere; text-wrap: balance; }
.client-company-name.is-long { font-size: .79em; letter-spacing: -2px; }
.client-company-name.is-very-long { font-size: .64em; letter-spacing: -1.3px; line-height: 1.13; }
.client-heading-company { overflow-wrap: anywhere; text-wrap: balance; }
.client-heading-company.is-long { font-size: .84em; }
.client-heading-company.is-very-long { font-size: .7em; letter-spacing: -1.3px; }

.client-panorama { padding: 62px 40px 48px; background: linear-gradient(155deg, #fbfdff, #f5fbfa); border-top: 1px solid #e0f0ea; }
.panorama-heading { display: flex; align-items: center; gap: 12px; padding-bottom: 17px; border-bottom: 1px solid #c9e9df; }
.panorama-heading h3 { margin: 0; color: #172f35; font-size: 30px; font-weight: 830; letter-spacing: -1.5px; }
.panorama-mark { width: 32px; height: 32px; background: linear-gradient(135deg, #23c78f, #4b90ed); }
.panorama-workplace { margin: 22px 0 14px; padding: 18px 20px 17px; border: 1px solid #8bdcc8; border-radius: 12px; background: rgba(255,255,255,.82); text-align: center; }
.panorama-workplace > b { display: block; color: #1d3437; font-size: 20px; font-weight: 780; }
.panorama-workplace > div { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px 15px; margin-top: 15px; color: #253a3d; font-size: 13px; font-weight: 650; }
.panorama-workplace i { width: 1px; height: 20px; margin: 0 2px; background: #cfdfdc; }
.panorama-layout { display: grid; grid-template-columns: 112px minmax(0, 1fr) 112px; gap: 12px; align-items: stretch; }
.panorama-side { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 16px 9px; border-radius: 11px; background: linear-gradient(160deg, #20bfa2, #1cae98); color: #fff; text-align: center; }
.panorama-side h4 { margin: 0 0 4px; color: #fff; font-size: 19px; font-weight: 760; writing-mode: vertical-rl; letter-spacing: 2px; }
.panorama-side span { font-size: 12px; font-weight: 600; line-height: 1.25; }
.panorama-core { min-width: 0; }
.panorama-group-head, .panorama-groups { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.panorama-group-head { margin-bottom: 12px; }
.panorama-group-head span { display: grid; min-height: 54px; place-items: center; color: #fff; border-radius: 11px; background: linear-gradient(135deg, #24c5a5, #1ab69e); font-size: 18px; font-weight: 760; }
.panorama-modules { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.panorama-module { min-width: 0; padding: 13px 8px; border-radius: 11px; background: rgba(255,255,255,.9); box-shadow: 0 7px 18px rgba(20,89,80,.07); }
.panorama-module h5 { margin: 0 0 10px; color: #11ae84; font-size: 14px; font-weight: 820; text-align: center; }
.panorama-module ul { display: grid; gap: 4px; padding: 0; margin: 0; list-style: none; }
.panorama-module li { color: #29363a; font-size: 10px; line-height: 1.35; text-align: center; overflow-wrap: anywhere; }
.panorama-module li i { color: #7b69e8; font-style: normal; font-weight: 800; }
.panorama-lanes { display: grid; gap: 8px; margin-top: 10px; }
.panorama-lanes > div { display: flex; flex-wrap: wrap; align-items: center; gap: 9px 15px; min-height: 44px; padding: 9px 14px; border-radius: 10px; background: rgba(255,255,255,.92); }
.panorama-lanes b { color: #0da97f; font-size: 13px; }.panorama-lanes span { color: #26393a; font-size: 12px; font-weight: 620; }

.battlecard-summary { display: grid; grid-template-columns: 1fr 1.25fr; gap: 15px; margin: 22px 0 0; }
.battlecard-summary article, .feature-match-card, .discovery-script, .script-box { padding: 19px; border: 1px solid #e9e5f5; border-radius: 14px; background: rgba(255,255,255,.84); }
.battlecard-summary b, .feature-match-card > span, .discovery-script > b, .script-box > b { color: #7b67dc; font-size: 11px; font-weight: 810; letter-spacing: .7px; }
.battlecard-summary h4 { margin: 10px 0 7px; color: #443c61; font-size: 17px; }.battlecard-summary p, .battlecard-summary li { margin: 0; color: #696579; font-size: 13px; line-height: 1.7; }.battlecard-summary ul { padding-left: 17px; margin: 8px 0 0; }
.battlecard-section { margin-top: 27px; padding-top: 25px; border-top: 1px solid #e6e1f2; }
.battlecard-section-title { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 15px; }
.battlecard-section-title > span { display: grid; width: 31px; height: 31px; place-items: center; color: #fff; border-radius: 10px; background: linear-gradient(135deg, #9a85f4, #6c57d8); font-size: 11px; font-weight: 820; }
.battlecard-section-title b { color: #7b67dc; font-size: 11px; font-weight: 810; letter-spacing: .8px; }.battlecard-section-title h4 { margin: 5px 0 0; color: #443c61; font-size: 18px; line-height: 1.35; }
.feature-match-grid, .discovery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 11px; }
.feature-match-card { min-height: 215px; }.feature-match-card h4 { margin: 12px 0 8px; color: #443c61; font-size: 17px; }.feature-match-card p, .discovery-script p, .script-box p { margin: 0; color: #696579; font-size: 13px; line-height: 1.72; }.feature-match-card > div { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 13px; }.feature-match-card > div span { padding: 4px 7px; color: #6554b5; border: 1px solid #ded7fa; border-radius: 999px; background: #f9f8ff; font-size: 10px; }
.script-box { margin-bottom: 11px; border-left: 3px solid #8d76e9; background: #f8f6ff; }.script-box p { margin-top: 8px; }.discovery-script { min-height: 170px; }.discovery-script p { margin-top: 10px; }.battlecard-order { padding-bottom: 3px; }

.library-panel { padding: 24px 0 40px; }.library-panel-head { display: flex; justify-content: space-between; margin-bottom: 25px; }.library-panel-head h2 { margin: 8px 0 9px; color: #2d2c42; font-size: 30px; letter-spacing: -1.4px; }.library-panel-head p { max-width: 520px; margin: 0; color: #747084; font-size: 14px; line-height: 1.7; }
.customer-list, .knowledge-list { display: grid; gap: 12px; }.customer-record, .knowledge-record { display: flex; align-items: center; gap: 16px; padding: 19px 20px; border: 1px solid #e7e3f1; border-radius: 16px; background: #fff; box-shadow: 0 8px 20px rgba(56,43,122,.04); }.customer-record-icon { display: grid; width: 46px; height: 46px; flex: 0 0 auto; place-items: center; color: #fff; border-radius: 14px; background: linear-gradient(135deg, #9984f3, #6c57d8); font-size: 13px; font-weight: 820; }.customer-record h3, .knowledge-record h3 { margin: 0; color: #3d3953; font-size: 17px; }.customer-record p, .knowledge-record p { margin: 5px 0 0; color: #777286; font-size: 13px; }.customer-record small { display: inline-block; margin-top: 8px; color: #aaa4b6; font-size: 11px; }.customer-record-actions { display: flex; gap: 8px; margin-left: auto; }.customer-record-actions button, .knowledge-record a, .library-empty button { min-height: 36px; padding: 0 12px; color: #fff; border: 0; border-radius: 9px; background: #7662d8; font-size: 12px; font-weight: 750; text-decoration: none; }.customer-record-actions .ghost { color: #6958c8; border: 1px solid #ded8f5; background: #fff; }.knowledge-record > span { width: 36px; color: #9a8be4; font-size: 13px; font-weight: 800; }.knowledge-record a { display: inline-flex; align-items: center; gap: 8px; margin-left: auto; color: #6958c8; border: 1px solid #ded8f5; background: #fbfaff; }.knowledge-record a i { font-style: normal; }.library-empty { padding: 68px 20px; border: 1px dashed #ddd7ef; border-radius: 18px; background: #fbfaff; text-align: center; }.library-empty > span { color: #7b67dc; font-size: 24px; }.library-empty h3 { margin: 10px 0 7px; color: #443d60; font-size: 18px; }.library-empty p { margin: 0; color: #777286; }.library-empty button { margin-top: 17px; }

@media (max-width: 1060px) { .panorama-layout { grid-template-columns: 94px minmax(0, 1fr) 94px; }.panorama-modules { grid-template-columns: repeat(2, minmax(0, 1fr)); }.feature-match-grid { grid-template-columns: 1fr; }.feature-match-card { min-height: 0; } }
@media (max-width: 780px) { .app-rail { position: static; width: 100%; min-height: 84px; flex-direction: row; justify-content: space-between; padding: 10px 13px; }.app-shell { margin-left: 0; }.rail-logo { width: 58px; height: 48px; font-size: 12px; }.rail-nav { display: flex; width: auto; gap: 5px; margin: 0; }.rail-item { width: 57px; height: 55px; }.rail-item span { font-size: 18px; }.rail-item b { font-size: 11px; }.rail-bottom { display: none; }.topbar { padding: 0 20px; }.topbar-right { display: none; }.workspace { display: block; }.composer { position: static; height: auto; }.client-hero { min-height: 420px; padding: 48px 27px; }.client-hero h2 { font-size: clamp(33px, 9vw, 45px); letter-spacing: -2px; }.client-company-name.is-long { font-size: .8em; }.client-company-name.is-very-long { font-size: .66em; }.client-panorama { padding: 38px 18px; }.panorama-heading h3 { font-size: 22px; }.panorama-workplace > b { font-size: 16px; }.panorama-layout { grid-template-columns: 1fr; }.panorama-side { display: grid; grid-template-columns: auto repeat(3, 1fr); align-items: center; text-align: left; }.panorama-side h4 { writing-mode: horizontal-tb; }.panorama-group-head, .panorama-groups { grid-template-columns: 1fr; }.panorama-modules { grid-template-columns: repeat(2, minmax(0, 1fr)); }.panorama-lanes > div { gap: 8px 12px; }.battlecard-summary, .discovery-grid { grid-template-columns: 1fr; }.customer-record, .knowledge-record { flex-wrap: wrap; }.customer-record-actions, .knowledge-record a { margin-left: 0; }.library-panel { padding-top: 10px; } }

/* 阅读密度：动态标题最多两行，内容以“意义”补充标题，而不是复述标题。 */
.client-hero { min-height: 422px; padding: 57px 64px 50px; }
.client-hero h2 { display: grid; gap: 5px; max-width: 760px; margin: 27px 0 17px; font-size: clamp(33px, 4vw, 51px); line-height: 1.08; letter-spacing: -2.4px; }
.client-company-name { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; text-wrap: balance; }
.client-company-name.is-long { font-size: .83em; }.client-company-name.is-very-long { font-size: .69em; line-height: 1.14; }
.solution-name { color: #fff; font-size: .73em; font-weight: 760; letter-spacing: -1.8px; white-space: nowrap; }
.client-hero p { max-width: 600px; font-size: 15px; line-height: 1.7; }.client-hero small { margin-top: 24px; }
.client-section { padding: 61px 64px; }.client-section h3 { max-width: 720px; margin-bottom: 14px; font-size: clamp(29px, 3.35vw, 39px); line-height: 1.2; letter-spacing: -1.6px; }
.client-intro { font-size: 15px; line-height: 1.75; }
.client-concern-grid article { min-height: 170px; padding: 17px 13px; }.client-concern-grid h4 { display: -webkit-box; overflow: hidden; margin: 13px 0 7px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; font-size: 16px; }.client-concern-grid p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; font-size: 12px; line-height: 1.6; }
.client-solution-grid article { min-height: 276px; padding: 23px 19px; }.client-solution-grid h4 { margin: 14px 0 10px; font-size: 20px; }.client-solution-grid p { min-height: 118px; font-size: 13px; line-height: 1.67; }
.client-feature { gap: 29px; padding: 61px 64px; }.feature-copy h3 { display: -webkit-box; overflow: hidden; margin: 13px 0; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; font-size: clamp(29px, 3.1vw, 38px); line-height: 1.18; letter-spacing: -1.6px; }.feature-copy p { font-size: 15px; line-height: 1.72; }.feature-message h4 { font-size: 20px; }.feature-message p { font-size: 14px; }
.client-more-grid span { display: flex; min-height: 55px; align-items: center; padding: 12px 16px; font-size: 14px; }.client-path-grid { margin-top: 26px; }.client-path-grid article { min-height: 185px; padding: 21px 19px; }.client-path-grid h4 { margin: 13px 0 8px; font-size: 18px; }.client-path-grid p { font-size: 13px; line-height: 1.65; }

/* 能力全景图延续应用的蓝紫渐变，避免与方案主体割裂。 */
.client-panorama { background: linear-gradient(150deg, #fbfbff 0%, #f5f3ff 53%, #eef3ff 100%); border-color: #e0ddfb; }
.panorama-heading { border-color: #d8d3fb; }.panorama-heading h3 { color: #252440; }.panorama-mark { background: linear-gradient(135deg, #8f7cf0, #5d8df2); }
.panorama-workplace { border-color: #c9c0fb; background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(246,244,255,.86)); }.panorama-workplace > b { color: #373357; }.panorama-workplace > div { color: #4e4a68; }.panorama-workplace i { background: #d9d3f6; }
.panorama-side { background: linear-gradient(155deg, #816de7, #5b79ea); box-shadow: 0 8px 22px rgba(89,87,193,.16); }.panorama-group-head span { background: linear-gradient(135deg, #8d76ec, #607dec); box-shadow: 0 8px 18px rgba(92,83,202,.12); }.panorama-module { border: 1px solid rgba(214,209,247,.78); background: rgba(255,255,255,.92); box-shadow: 0 7px 18px rgba(78,67,151,.07); }.panorama-module h5 { color: #6c58d3; }.panorama-module li { color: #3f3c55; }.panorama-module li i { color: #765fe2; }.panorama-lanes > div { border: 1px solid rgba(221,217,247,.86); background: rgba(255,255,255,.9); }.panorama-lanes b { color: #6855d1; }.panorama-lanes span { color: #47425f; }

@media (max-width: 780px) { .client-hero { min-height: 350px; padding: 43px 27px; }.client-hero h2 { gap: 4px; margin-top: 24px; font-size: clamp(31px, 8.6vw, 42px); }.solution-name { font-size: .72em; }.client-section { padding: 45px 25px; }.client-section h3 { font-size: 29px; }.client-feature { padding: 46px 25px; }.client-solution-grid article { min-height: 0; }.client-solution-grid p { min-height: 0; } }

/* 三项重点能力：按行业场景展开到具体管理动作，而不是通用功能清单。 */
.client-deep-solutions, .client-fit-advantages { padding: 64px; }
.client-deep-solutions { color: #fff; background: radial-gradient(circle at 91% 12%, rgba(179,235,255,.22), transparent 22%), linear-gradient(135deg, #3b3473, #604fba 54%, #7667dc); }
.client-deep-solutions .client-index { color: #dcd6ff; }.client-deep-solutions h3 { max-width: 650px; margin: 0 0 14px; color: #fff; font-size: clamp(30px, 3.5vw, 42px); line-height: 1.18; letter-spacing: -1.8px; }.client-deep-solutions .client-intro { max-width: 700px; color: rgba(255,255,255,.82); font-size: 15px; }
.deep-solution-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 32px; }
.deep-solution-module { min-width: 0; padding: 23px 19px 20px; border: 1px solid rgba(255,255,255,.22); border-radius: 16px; background: rgba(255,255,255,.12); box-shadow: 0 13px 26px rgba(40,31,104,.13); backdrop-filter: blur(8px); }
.deep-solution-head { display: flex; align-items: center; gap: 8px; }.deep-solution-head b { color: #baffdf; font-size: 12px; letter-spacing: .8px; }.deep-solution-head span { padding-left: 8px; color: #e9e5ff; border-left: 1px solid rgba(255,255,255,.28); font-size: 11px; font-weight: 720; }
.deep-solution-module h4 { display: -webkit-box; overflow: hidden; min-height: 48px; margin: 15px 0 9px; color: #fff; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; font-size: 20px; line-height: 1.25; letter-spacing: -.8px; }.deep-solution-module > p { min-height: 66px; margin: 0; color: rgba(255,255,255,.82); font-size: 13px; line-height: 1.68; }
.deep-solution-module ol { display: grid; gap: 9px; padding: 15px 0 0; margin: 17px 0 0; list-style: none; border-top: 1px solid rgba(255,255,255,.2); counter-reset: solution-step; }.deep-solution-module li { position: relative; min-height: 31px; padding-left: 24px; color: #fff; font-size: 12px; line-height: 1.5; counter-increment: solution-step; }.deep-solution-module li::before { position: absolute; left: 0; top: 1px; display: grid; width: 16px; height: 16px; place-items: center; color: #6150bd; border-radius: 50%; background: #c9ffdf; content: counter(solution-step); font-size: 9px; font-weight: 800; }
.client-fit-advantages { background: linear-gradient(150deg, #fbfaff, #f3f1ff 61%, #eef4ff); }.client-fit-advantages h3 { max-width: 700px; margin: 0 0 14px; color: #34314e; font-size: clamp(29px, 3.35vw, 39px); line-height: 1.2; letter-spacing: -1.5px; }.fit-advantage-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; margin-top: 28px; }.fit-advantage-grid article { min-height: 202px; padding: 22px 18px; border: 1px solid #e0dcf6; border-radius: 14px; background: rgba(255,255,255,.86); box-shadow: 0 9px 21px rgba(68,51,147,.05); }.fit-advantage-grid b { color: #8d79e8; font-size: 12px; letter-spacing: .8px; }.fit-advantage-grid h4 { margin: 13px 0 9px; color: #403a5d; font-size: 18px; line-height: 1.35; }.fit-advantage-grid p { margin: 0; color: #6d687e; font-size: 13px; line-height: 1.7; }
@media (max-width: 780px) { .client-deep-solutions, .client-fit-advantages { padding: 46px 25px; }.deep-solution-grid, .fit-advantage-grid { grid-template-columns: 1fr; }.deep-solution-module h4, .deep-solution-module > p { min-height: 0; }.fit-advantage-grid article { min-height: 0; } }

/* 登录层：首次创建管理员，后续以成员账号进入各自的方案记录。 */
.auth-gate { position:fixed; z-index:100; inset:0; display:grid; place-items:center; overflow:auto; padding:30px 20px; background:radial-gradient(circle at 14% 13%,rgba(183,239,255,.45),transparent 24%),radial-gradient(circle at 84% 84%,rgba(182,166,255,.45),transparent 24%),linear-gradient(145deg,#f8f8ff,#f3f2ff 58%,#edf4ff); }.auth-gate[hidden] { display:none; }.auth-orbit { position:fixed; border:1px solid rgba(111,93,221,.16); border-radius:50%; pointer-events:none; }.auth-orbit-a { width:500px; height:500px; top:-210px; right:-130px; box-shadow:0 0 0 40px rgba(119,100,228,.045),0 0 0 92px rgba(119,100,228,.025); }.auth-orbit-b { width:370px; height:370px; bottom:-170px; left:-130px; }.auth-card { position:relative; width:min(450px,100%); padding:42px 39px 36px; border:1px solid rgba(255,255,255,.95); border-radius:25px; background:rgba(255,255,255,.88); box-shadow:0 28px 70px rgba(66,48,145,.16); backdrop-filter:blur(16px); }.auth-brand { display:flex; align-items:center; gap:11px; color:#565069; font-size:13px; font-weight:700; }.auth-brand span { display:grid; min-height:30px; padding:0 10px; place-items:center; color:#fff; border-radius:9px; background:linear-gradient(135deg,#9683ef,#617dec); font-size:12px; font-weight:800; }.auth-copy { margin:34px 0 25px; }.auth-copy h1 { margin:12px 0 10px; color:#2e2c44; font-size:31px; line-height:1.16; letter-spacing:-1.6px; }.auth-copy p { margin:0; color:#706c80; font-size:14px; line-height:1.75; }.auth-form { display:grid; gap:8px; }.auth-form label { margin-top:4px; color:#514d63; font-size:12px; font-weight:760; }.auth-form input { width:100%; padding:12px 13px; color:#302e43; border:1px solid #e3e0ed; border-radius:10px; outline:0; background:#fff; font-size:14px; transition:.17s ease; }.auth-form input:focus { border-color:#9685eb; box-shadow:0 0 0 4px rgba(122,101,222,.12); }.auth-message { min-height:18px; margin:3px 0 0; color:#bd596b; font-size:12px; line-height:1.45; }.auth-submit { display:flex; min-height:48px; align-items:center; justify-content:space-between; margin-top:5px; padding:0 16px; color:#fff; border:0; border-radius:11px; background:linear-gradient(105deg,#7965df,#657eea); box-shadow:0 12px 23px rgba(104,83,216,.26); font-size:14px; font-weight:780; }.auth-submit:disabled { opacity:.65; }.auth-footnote { margin:18px 0 0; color:#918ca0; font-size:12px; line-height:1.6; text-align:center; }
.admin-link,.logout-button { color:#6857c8; font-size:12px; font-weight:720; text-decoration:none; }.logout-button { padding:0; border:0; background:transparent; cursor:pointer; }.topbar-right { gap:11px; }
@media (max-width:780px) { .auth-card { padding:33px 25px 28px; }.auth-copy h1 { font-size:28px; }.admin-link,.logout-button { display:none; } }
