:root{--bg:#f3fbff;--bg-deep:#dff2f8;--panel:#ffffffd6;--panel-strong:#fffffff5;--border:#38899933;--line:#38899924;--text:#496570;--text-strong:#1f3239;--muted:#78929c;--accent:#1f909b;--accent-strong:#167681;--accent-soft:#1f909b1f;--success:#1f7d8a;--warning:#a86d17;--danger:#a43a4b;--shadow:0 20px 60px #29667724;--font-body:Inter, "PingFang SC", "Noto Sans SC", system-ui, sans-serif;--font-display:Inter, "PingFang SC", "Noto Sans SC", system-ui, sans-serif;color:var(--text);font:17px/1.7 var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at top left, #ffffffe6, transparent 30%), radial-gradient(circle at 85% 15%, #50b1c52e, transparent 25%), linear-gradient(135deg, var(--bg), var(--bg-deep))}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3,h4,p{margin:0}a{color:inherit}.page{max-width:1320px;margin:0 auto;padding:32px}.page-login{flex-direction:column;justify-content:center;align-items:center;gap:24px;max-width:520px;min-height:100svh;display:flex;position:relative}.page-analysis{min-height:100svh}.site-footer{color:var(--muted);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 16px;padding:24px 16px 16px;font-size:12px;display:flex}.site-footer a{color:var(--muted);text-decoration:none;transition:color .15s}.site-footer a:hover{color:var(--accent-strong);text-decoration:underline}.site-footer-login{position:absolute;bottom:8px;left:0;right:0}.boot-screen{place-items:center;min-height:100svh;padding:24px;display:grid}.boot-card,.panel,.auth-card,.hero-panel{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:relative;overflow:hidden}.boot-card,.auth-card,.panel{border-radius:28px}.hero-panel{background:radial-gradient(circle at top right, #bf7c292e, transparent 35%), radial-gradient(circle at bottom left, #7732171f, transparent 35%), var(--panel);border-radius:36px;padding:40px}.hero-panel:after{content:"";pointer-events:none;border:1px solid #a447211a;border-radius:28px;position:absolute;inset:24px}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:48px;display:grid}.feature-card{background:#ffffff7a;border:1px solid #7a52241f;border-radius:22px;padding:20px;animation:.55s both lift-in;transform:translateY(0)}.feature-card:nth-child(2){animation-delay:80ms}.feature-card:nth-child(3){animation-delay:.16s}.feature-index{background:var(--accent-soft);width:42px;height:42px;color:var(--accent-strong);border-radius:50%;justify-content:center;align-items:center;margin-bottom:18px;font-weight:700;display:inline-flex}.feature-card h2{margin-bottom:8px;font-size:24px}.feature-card p{color:var(--muted)}.hero-copy{max-width:58ch;color:var(--muted);font-size:19px}.auth-card{background:var(--panel-strong);flex-direction:column;justify-content:center;gap:18px;width:100%;padding:32px;display:flex}.auth-card .panel-head h1{margin:10px 0 6px;font-size:48px}.auth-card .panel-head h2{margin:0 0 8px;font-size:28px}.panel{padding:28px}.eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;font-size:14px;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:32px;height:1px;display:inline-block}.page h1,.page h2,.page h3,.page h4,.boot-card h1{color:var(--text-strong);font-family:var(--font-display);line-height:1.1}.page h1,.boot-card h1{margin-top:18px;margin-bottom:16px;font-size:clamp(2.7rem,6vw,5.8rem)}.page h2{margin-top:12px;margin-bottom:12px;font-size:clamp(1.6rem,3vw,2.2rem)}.panel-head p:last-child,.boot-card p:last-child{color:var(--muted)}.field{flex-direction:column;gap:8px;display:flex}.field span{color:var(--text-strong);font-size:15px}.field input,.field select,.followup-input textarea{border:1px solid var(--border);min-height:52px;color:var(--text-strong);background:#ffffffbd;border-radius:16px;outline:none;padding:12px 14px;transition:border-color .2s,box-shadow .2s}.field input:focus,.field select:focus,.followup-input textarea:focus{border-color:#a4472199;box-shadow:0 0 0 4px #a447211f}.followup-input textarea:disabled{color:var(--text);opacity:1;background:#e6f7fbb8}.inline-field{grid-template-columns:minmax(0,1fr) auto;gap:12px;display:grid}.policy-check{color:var(--muted);align-items:flex-start;gap:10px;font-size:14px;line-height:1.6;display:flex}.policy-check input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin-top:2px}.policy-check a{color:var(--accent-strong);margin:0 4px;font-weight:700;text-decoration:none}.policy-check a:hover{text-decoration:underline}.primary-button,.ghost-button,.toggle-button,.tab-button,.segment-button{border:1px solid #0000;border-radius:16px;min-height:50px;padding:0 18px;transition:transform .2s,border-color .2s,background .2s}.primary-button{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff9f3;font-weight:700}.primary-button:hover,.ghost-button:hover,.toggle-button:hover,.tab-button:hover,.segment-button:hover{transform:translateY(-1px)}.ghost-button,.toggle-button,.tab-button,.segment-button{color:var(--text-strong);background:#ffffff94;border-color:#7a52241f}.segmented-control{border:1px solid var(--border);background:#ffffff70;border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:6px;display:grid}.segmented-control.compact{border-radius:16px;gap:4px;padding:4px}.segmented-control.compact .segment-button{border-radius:12px;min-height:40px;padding:0 10px;font-size:14px}.login-method-tabs{width:fit-content;min-width:min(100%,260px)}.field-tab-label{align-items:center;gap:6px;display:inline-flex}.field-tab-label em{color:var(--muted);font-style:normal}.text-hotspot{color:var(--muted);font:inherit;background:0 0;border:0;padding:0}.text-hotspot.active{color:var(--accent-strong);font-weight:800}.policy-page{width:min(960px,100% - 32px);margin:0 auto;padding:28px 0 56px}.policy-hero,.policy-section{border:1px solid var(--border);background:var(--panel-strong);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.policy-hero{background:radial-gradient(circle at 100% 0,#65b9cd3d,#0000 34%),linear-gradient(135deg,#fffffff5,#e7f8fce6);border-radius:30px;padding:34px;position:relative;overflow:hidden}.policy-hero h1{color:var(--text-strong);font-family:var(--font-display);margin:18px 0 12px;font-size:clamp(2.4rem,7vw,4.4rem);line-height:1}.policy-hero p:not(.eyebrow){max-width:70ch;color:var(--text);line-height:1.8}.policy-hero>span{color:var(--muted);margin-top:18px;font-size:14px;display:inline-flex}.policy-back{color:var(--accent-strong);font-weight:700;text-decoration:none;position:absolute;top:22px;right:24px}.policy-content{gap:14px;margin-top:18px;display:grid}.policy-section{border-radius:22px;grid-template-columns:auto minmax(0,1fr);gap:18px;padding:22px;display:grid}.policy-section>span{background:var(--accent-soft);width:42px;height:42px;color:var(--accent-strong);border-radius:50%;place-items:center;font-weight:800;display:grid}.policy-section h2{color:var(--text-strong);font-family:var(--font-display);margin:0 0 8px;font-size:24px}.policy-section p{color:var(--text);line-height:1.82}.segment-button{border-radius:12px;min-height:42px}.segment-button.active{background:var(--accent-soft);color:var(--accent-strong);border-color:#a4472152;font-weight:700}.full-width{width:100%}.compact-button{border-radius:12px;min-height:40px;padding:0 12px;font-size:14px}.info-banner,.dev-banner,.error-banner{border-radius:14px;padding:12px 14px;font-size:15px}.info-banner{color:var(--success);background:#4263461a}.dev-banner{color:var(--warning);background:#8f5d131a}.error-banner{color:var(--danger);background:#8a2f2f1a}.site-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.header-actions{align-items:center;gap:12px;display:flex}.user-chip{border:1px solid var(--border);background:#ffffff8c;border-radius:999px;flex-direction:column;justify-content:center;align-items:flex-start;min-height:46px;padding:0 16px;line-height:1.25;display:inline-flex}.user-chip strong{color:var(--text-strong);font-size:14px}.user-chip span{color:var(--muted);font-size:12px}.dialog-backdrop{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1f130947;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.profile-dialog{border:1px solid var(--border);background:var(--panel-strong);width:min(100%,520px);box-shadow:var(--shadow);border-radius:24px;flex-direction:column;gap:16px;padding:28px;display:flex}.dialog-actions{justify-content:flex-end;gap:12px;display:flex}.analysis-layout{grid-template-columns:minmax(340px,420px) minmax(0,1fr);gap:24px;display:grid}.side-panel{flex-direction:column;gap:20px;display:flex}.calendar-toggle{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.profile-switcher{border:1px solid var(--border);background:#ffffff70;border-radius:20px;flex-direction:column;gap:12px;padding:16px;display:flex}.profile-switcher-head,.followup-question{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.profile-switcher-head strong{color:var(--text-strong);margin-top:4px;font-size:20px;display:block}.profile-actions{gap:8px;display:flex}.profile-list{flex-direction:column;gap:8px;display:flex}.profile-item{width:100%;color:var(--text);text-align:left;background:#ffffff80;border:1px solid #0000;border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;display:flex}.profile-item.active{background:var(--accent-soft);border-color:#a447214d}.profile-item strong{color:var(--text-strong)}.profile-item span,.muted-text{color:var(--muted);font-size:14px}.toggle-button.active,.tab-button.active{background:var(--accent-soft);color:var(--accent-strong);border-color:#a4472152;font-weight:700}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.field-span-2{grid-column:span 2}.progress-block{border-top:1px solid var(--line);margin-top:4px;padding-top:18px}.progress-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.progress-head span{color:var(--muted);font-size:14px}.progress-list{flex-direction:column;gap:12px;display:flex}.progress-step{background:#ffffff80;border:1px solid #0000;border-radius:18px;gap:12px;padding:14px;display:flex}.progress-step h4{margin-bottom:6px;font-size:18px}.progress-step p{color:var(--muted);font-size:14px}.progress-step.done{border-color:#42634638}.progress-step.active{border-color:#a4472142}.progress-step.error{border-color:#8a2f2f38}.step-dot{background:#7a522429;border-radius:50%;flex:0 0 12px;height:12px;margin-top:7px}.progress-step.done .step-dot{background:var(--success)}.progress-step.active .step-dot{background:var(--accent);box-shadow:0 0 0 8px #a447211f}.progress-step.error .step-dot{background:var(--danger)}.result-panel{flex-direction:column;gap:18px;display:flex}.result-topbar{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.mode-tag{min-height:38px;color:var(--success);background:#4263461f;border-radius:999px;align-items:center;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex}.mode-tag.warning{color:var(--warning);background:#8f5d131f}.bazi-card{border:1px solid var(--border);background:linear-gradient(120deg,#a447210f,#0000 45%),#ffffff8f;border-radius:22px;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:18px;padding:20px;display:grid}.label{color:var(--muted);margin-bottom:10px;font-size:14px;display:block}.bazi-card strong{color:var(--text-strong);font-size:28px;display:block}.bazi-card span{color:var(--muted);margin-top:8px;display:block}.pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pillar-chip{border:1px solid var(--border);background:#ffffffa3;border-radius:18px;padding:14px}.pillar-chip span{color:var(--muted);margin:0;font-size:13px}.pillar-chip strong{margin-top:6px;font-size:24px}.tab-row{flex-wrap:wrap;gap:10px;display:flex}.tab-button{border-radius:999px;min-height:44px;padding:0 14px}.result-card{border:1px solid var(--border);background:#ffffff9e;border-radius:24px;padding:24px}.followup-panel{border:1px solid var(--border);background:#ffffff94;border-radius:24px;flex-direction:column;gap:16px;padding:24px;display:flex}.followup-input{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:12px;display:grid}.followup-input textarea{resize:vertical;min-height:96px;font:inherit}.followup-list{flex-direction:column;gap:12px;display:flex}.followup-item{border:1px solid var(--border);background:#ffffff8a;border-radius:18px;flex-direction:column;gap:12px;padding:16px;display:flex}.followup-item.highlighted{border-color:var(--accent);background:linear-gradient(135deg,#e6f7fbfa,#fff);box-shadow:0 0 0 4px #1f909b1f}.followup-spinner{border:2px solid #1f909b2e;border-top-color:var(--accent);border-radius:50%;align-self:flex-end;width:20px;height:20px;animation:.8s linear infinite spin}.followup-question span{color:var(--muted);flex:none;font-size:14px}.followup-question strong{flex:auto}.result-card-head{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:18px}.content-stack{flex-direction:column;gap:16px;display:flex}.content-stack p{color:var(--text);white-space:pre-wrap}.content-point{background:#f7fcffc7;border:1px solid #82becd42;border-radius:16px;padding:12px 14px}.content-point.priority{background:linear-gradient(135deg,#e6f7fbeb,#fff);border-color:#1f909b5c}.content-point-title{color:var(--accent-strong);align-items:center;margin-bottom:8px;font-size:16px;font-weight:800;display:inline-flex}.content-point-title:before{background:var(--accent);content:"";border-radius:999px;width:6px;height:18px;margin-right:8px}.content-point p{margin:0;line-height:1.78}.empty-state{text-align:center;background:#ffffff5c;border:1px dashed #7a52243d;border-radius:24px;place-items:center;gap:10px;min-height:320px;padding:24px;display:grid}.orbit-loader{border:2px solid #a4472129;border-top-color:var(--accent);border-radius:50%;width:58px;height:58px;animation:1.1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes lift-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (width<=1080px){.page{padding:20px}.analysis-layout,.bazi-card,.feature-grid{grid-template-columns:1fr}}@media (width<=720px){.page h1,.boot-card h1{font-size:2.5rem}.hero-panel,.auth-card,.panel{border-radius:24px;padding:22px}.site-header,.result-topbar,.header-actions,.progress-head{flex-direction:column;align-items:stretch}.inline-field,.field-grid,.pillar-grid{grid-template-columns:1fr}.field-span-2{grid-column:auto}.policy-page{width:min(100% - 20px,960px);padding-top:10px}.policy-hero,.policy-section{border-radius:22px;padding:20px}.policy-back{margin-bottom:16px;display:inline-flex;position:static}.policy-section{grid-template-columns:1fr}}.mobile-app-shell{width:min(100%,560px);height:100svh;min-height:0;color:var(--text);flex-direction:column;margin:0 auto;display:flex;overflow:hidden}.mobile-topbar{z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);background:#f3fbffe6;flex:none;align-items:center;gap:12px;padding:14px 16px;display:flex;position:relative}.mobile-topbar div{flex-direction:column;min-width:0;line-height:1.25;display:flex}.mobile-topbar strong{color:var(--text-strong);font-size:18px}.mobile-topbar span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.icon-button{border:1px solid var(--border);background:var(--panel-strong);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:42px;height:42px;padding:0;display:inline-flex}.icon-button span{background:var(--accent);border-radius:999px;width:18px;height:2px}.mobile-main{flex-direction:column;flex:auto;min-height:0;padding:16px;display:flex;overflow-y:auto}.mobile-card,.result-mobile{border:1px solid var(--border);background:var(--panel-strong);box-shadow:var(--shadow);border-radius:28px}.mobile-card{padding:22px}.home-card{flex-direction:column;justify-content:center;min-height:360px;display:flex}.mini-label{color:var(--muted);letter-spacing:.18em;font-size:14px}.mobile-card h1,.result-mobile h1{color:var(--text-strong);letter-spacing:0;margin:10px 0 18px;font-size:30px;line-height:1.16}.mobile-card h2,.result-mobile h2{color:var(--text-strong);font-size:22px;line-height:1.24}.home-actions,.mobile-form,.history-list{flex-direction:column;gap:14px;display:flex}.drawer-layer{z-index:30;background:#1f323947;position:fixed;inset:0}.side-drawer{background:#f7fcff;flex-direction:column;gap:10px;width:min(82vw,320px);height:100%;padding:24px 16px;animation:.22s both drawer-in;display:flex;box-shadow:20px 0 60px #2966772e}.drawer-brand{border-bottom:1px solid var(--line);flex-direction:column;margin-bottom:8px;padding:8px 6px 18px;display:flex}.drawer-brand strong{color:var(--text-strong);font-size:24px}.drawer-brand span{color:var(--muted)}.side-drawer button,.history-item button:first-child{border:1px solid var(--border);min-height:54px;color:var(--text-strong);text-align:left;background:#ffffffc7;border-radius:18px;padding:0 16px}.date-grid,.combo-select-row{gap:10px;display:grid}.date-grid,.combo-select-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}.combo-select-row.two{grid-template-columns:repeat(2,minmax(0,1fr))}.combo-field{border:1px solid var(--border);background:#ffffff94;border-radius:20px;flex-direction:column;gap:8px;padding:12px;display:flex}.combo-field>span{color:var(--text-strong);font-size:15px}.combo-field .field{gap:4px}.combo-field .field span{color:var(--muted);font-size:12px}.combo-field .field select{border-radius:14px;min-height:46px}.combo-picker{position:relative}.combo-picker-trigger{border:1px solid var(--border);width:100%;min-height:70px;color:var(--text-strong);text-align:left;background:#ffffffb8;border-radius:20px;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;padding:12px 14px;display:flex}.combo-picker-trigger span{color:var(--muted);font-size:13px}.combo-picker-trigger strong{font-size:18px}.combo-picker-panel{border:1px solid var(--border);box-shadow:var(--shadow);background:#f7fcfffa;border-radius:20px;gap:10px;margin-top:8px;padding:12px;display:grid}.combo-picker-panel .field{gap:4px}.combo-picker-panel .field span{color:var(--muted);font-size:12px}.combo-picker-panel .field select{border-radius:14px;min-height:46px}.location-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.date-grid .field:nth-child(4),.date-grid .field:nth-child(5){grid-column:span 1}.progress-button{width:100%;position:relative;overflow:hidden}.progress-button span,.progress-meter span{border-radius:inherit;background:#ffffff38;transition:width .35s;position:absolute;inset:0 auto 0 0}.progress-button strong{z-index:1;position:relative}.progress-meter{background:#1f909b1f;border-radius:999px;height:12px;position:relative;overflow:hidden}.progress-meter span{background:linear-gradient(90deg, var(--accent), #77cbd5)}.progress-card{flex-direction:column;gap:14px;display:flex}.soft-empty{border:1px dashed var(--border);color:var(--muted);text-align:center;background:#e1f6fa75;border-radius:22px;padding:24px}.history-item{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;display:grid}.history-edit-input,.result-title-input{border:1px solid var(--accent);width:100%;min-height:54px;color:var(--text-strong);background:#fff;border-radius:18px;outline:none;padding:0 14px}.history-item button:first-child{flex-direction:column;justify-content:center;display:flex}.history-item strong,.history-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-item span{color:var(--muted);font-size:13px}.rename-button{border:1px solid var(--border);background:var(--accent-soft);min-height:54px;color:var(--accent-strong);border-radius:18px;padding:0 12px}.result-mobile{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.result-mobile-top{flex:none;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 12px;display:flex}.result-mobile-top>button{background:var(--accent);color:#fff;border:0;border-radius:999px;flex:none;min-height:42px;padding:0 16px;font-weight:700}.editable-result-title{color:var(--text-strong);text-align:left;background:0 0;border:0;padding:0;font-size:28px;font-weight:800;line-height:1.15}.measuring-summary{border:1px solid var(--border);background:#ffffffbd;border-radius:18px;flex-direction:column;gap:8px;padding:14px;display:flex}.measuring-summary span:first-child{color:var(--text-strong);font-weight:800}.measuring-summary span:last-child{color:var(--muted);font-size:14px}.sticky-tabs{z-index:5;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;touch-action:pan-x;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffffeb;flex:none;gap:8px;padding:10px 14px 10px 22px;scroll-padding-left:22px;display:flex;position:static;overflow:auto hidden}.sticky-tabs::-webkit-scrollbar{display:none}.sticky-tabs button{scroll-snap-align:start;border:1px solid var(--border);min-height:38px;color:var(--text);background:#fff;border-radius:999px;flex:none;padding:0 14px;font-size:14px}.sticky-tabs button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.result-scroll{scroll-behavior:smooth;flex:auto;min-height:0;padding:14px 14px 12px;overflow-y:auto}.bazi-summary{border:1px solid var(--border);width:100%;color:var(--text-strong);text-align:left;background:linear-gradient(135deg,#e6f7fb,#fff);border-radius:22px;flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:12px;padding:18px;display:flex}.bazi-summary span{color:var(--muted);font-size:13px}.destiny-summary-text{color:var(--text-strong);font-size:26px;line-height:1.15}.eight-char-summary-text{color:var(--muted);font-size:15px;font-style:normal;font-weight:600}.section-card{border:1px solid var(--border);background:#fff;border-radius:22px;margin-bottom:12px;padding:18px;scroll-margin-top:96px}.section-card h2{margin-bottom:12px}.followup-modal-layer{z-index:12;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:radial-gradient(circle,#ffffff94,#0000 52%),#1f32392e;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.followup-sheet{border:1px solid var(--border);background:#f7fcfff0;border-radius:26px;flex-direction:column;gap:12px;width:min(100%,500px);max-height:min(78svh,620px);margin-top:12px;padding:18px;display:flex;overflow-y:auto;box-shadow:0 28px 80px #27536033}.followup-sheet-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.followup-sheet-head button{border:1px solid var(--border);min-height:36px;color:var(--text);background:#fff;border-radius:999px;padding:0 14px}.followup-sheet .followup-input{grid-template-columns:1fr}.followup-sheet textarea{min-height:82px}.result-followup-bar{z-index:6;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7fcfff0;flex-direction:column;flex:none;gap:7px;padding:9px 14px 12px;display:flex;position:static}.followup-compose-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.followup-compose-row input{border:1px solid var(--border);min-width:0;min-height:46px;color:var(--text-strong);font:inherit;background:#fff;border-radius:16px;outline:none;padding:0 13px}.followup-compose-row input:disabled,.followup-history-input textarea:disabled{color:var(--text);opacity:1;background:#e6f7fbb8}.followup-compose-row button{white-space:nowrap;min-height:46px;padding:0 16px}.followup-hint{color:var(--muted);font-size:13px;line-height:1.45}.followup-history-input textarea{border:1px solid var(--border);width:100%;min-height:54px;max-height:86px;color:var(--text-strong);font:inherit;resize:vertical;background:#fff;border-radius:16px;outline:none;padding:10px 12px}.result-followup-bar .muted-text,.followup-history-input .muted-text{text-align:right;margin:-4px 0 0}.inline-result-card{scroll-margin-top:16px}.followup-history-sheet{padding-bottom:0}.followup-history-sheet .followup-list{min-height:0;padding-bottom:8px;overflow-y:auto}.followup-history-input{border-top:1px solid var(--line);background:#f7fcfff5;flex-direction:column;gap:6px;padding:9px 0 12px;display:flex;position:sticky;bottom:0}.followup-progress-sheet{text-align:center;max-width:360px}.followup-progress-sheet h2{margin:0}.destiny-reveal{z-index:40;perspective:1000px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:radial-gradient(circle,#ffe67f7a,#0000 38%),#14232a42;place-items:center;padding:24px;transition:opacity .62s,-webkit-backdrop-filter .62s,backdrop-filter .62s;display:grid;position:fixed;inset:0}.destiny-reveal.dismissing{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}.destiny-card{width:min(86vw,340px);height:430px;transform-style:preserve-3d;transition:transform .62s,opacity .62s;position:relative}.destiny-reveal.dismissing .destiny-card{opacity:0;transform:scale(.92)}.destiny-face{text-align:center;background:radial-gradient(circle at 50% 20%,#ffffffe6,#0000 28%),linear-gradient(145deg,#fff6c7,#d99b2f 52%,#fff0a6);border:1px solid #ffdd6bbf;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:28px;padding:28px;display:flex;position:absolute;inset:0;box-shadow:0 0 52px #ffda5bb8}.destiny-vertical-name{flex-direction:row;justify-content:center;align-items:center;gap:26px;display:flex}.destiny-vertical-name strong{writing-mode:vertical-rl;text-orientation:upright;letter-spacing:.18em}.destiny-face strong{color:#422b05;font-size:32px;line-height:1.25}.destiny-face p{color:#6d5013}.result-blurred{filter:blur(8px);transition:filter .62s}.destiny-face button{color:#fff;background:#1f909b;border:0;border-radius:999px;min-height:46px;padding:0 22px;font-weight:700}@keyframes drawer-in{0%{transform:translate(-100%)}to{transform:translate(0)}}@media print{.mobile-topbar,.sticky-tabs,.result-mobile-top,.drawer-layer,.destiny-reveal{display:none}.result-scroll{max-height:none;overflow:visible}}@media (width<=380px){.location-grid{grid-template-columns:1fr}}
