:root{color-scheme:dark;--bg: #0a0e1a;--bg-elevated: #10182a;--card: #121d30;--card-strong: #17263d;--panel: #101a2c;--line: #24435a;--line-soft: rgba(80, 128, 154, .22);--primary: #00d4ff;--primary-soft: #8deeff;--secondary: #ff9f4d;--victory: #f4c95d;--low: #7756a8;--daily: #20c7b7;--hope: #ff5a5f;--text: #f4fbff;--text-muted: #86a8b8;--text-dim: #577585;--on-primary: #041219;--on-secondary: #1b0e03;--danger: #ff7378;--success: #55e2b6;--glass: rgba(10, 14, 26, .72);--glass-strong: rgba(12, 19, 34, .88);--surface: rgba(16, 24, 42, .88);--surface-veil: rgba(18, 29, 48, .94);--overlay: rgba(4, 8, 17, .78);--inset-highlight: rgba(255, 255, 255, .07);--hairline: rgba(255, 255, 255, .05);--glow-primary: rgba(0, 212, 255, .1);--glow-secondary: rgba(255, 159, 77, .09);--grid-line: rgba(0, 212, 255, .16);--ring: rgba(0, 212, 255, .3);--radius-sm: 10px;--radius-md: 18px;--radius-lg: 28px;--shadow-signal: 0 22px 60px rgba(0, 0, 0, .38);--shadow-card: 0 18px 45px rgba(0, 0, 0, .42);--shadow-float: 0 24px 80px rgba(0, 0, 0, .45);--glow-btn: 0 10px 28px rgba(0, 212, 255, .28);--glow-btn-secondary: 0 10px 28px rgba(255, 159, 77, .26);--font-display: "ZCOOL QingKe HuangYou", fantasy;--font-body: "Noto Sans SC", sans-serif}[data-theme=light]{color-scheme:light;--bg: #eef4f9;--bg-elevated: #ffffff;--card: #ffffff;--card-strong: #e6eef6;--panel: #ffffff;--line: #cbdcea;--line-soft: rgba(38, 92, 122, .16);--primary: #007fa6;--primary-soft: #17b6dd;--secondary: #d9761f;--victory: #d9a520;--low: #6b4aa0;--daily: #12a594;--hope: #e0464b;--text: #0b2130;--text-muted: #45657a;--text-dim: #6f8ba0;--on-primary: #ffffff;--on-secondary: #2a1503;--danger: #d94448;--success: #12986f;--glass: rgba(255, 255, 255, .78);--glass-strong: rgba(255, 255, 255, .92);--surface: rgba(255, 255, 255, .9);--surface-veil: #ffffff;--overlay: rgba(208, 223, 237, .72);--inset-highlight: rgba(255, 255, 255, .9);--hairline: rgba(11, 33, 48, .06);--glow-primary: rgba(0, 127, 166, .12);--glow-secondary: rgba(217, 118, 31, .1);--grid-line: rgba(0, 127, 166, .1);--ring: rgba(0, 127, 166, .28);--shadow-signal: 0 18px 44px rgba(23, 60, 90, .14);--shadow-card: 0 16px 40px rgba(23, 60, 90, .18);--shadow-float: 0 26px 70px rgba(23, 60, 90, .22);--glow-btn: 0 10px 26px rgba(0, 127, 166, .24);--glow-btn-secondary: 0 10px 26px rgba(217, 118, 31, .22)}.theme-transition,.theme-transition *,.theme-transition *:before,.theme-transition *:after{transition:background-color .32s ease,border-color .32s ease,color .32s ease,box-shadow .32s ease!important}*{box-sizing:border-box}html{background:var(--bg);font-family:var(--font-body);scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;min-height:100vh;color:var(--text);background:radial-gradient(circle at 78% 18%,var(--glow-primary),transparent 28rem),radial-gradient(circle at 8% 62%,var(--glow-secondary),transparent 25rem),var(--bg);background-attachment:fixed}::selection{color:var(--on-primary);background:color-mix(in srgb,var(--primary) 55%,transparent)}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background-clip:content-box;background-color:var(--line)}*::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb,var(--primary) 55%,var(--line))}button,textarea,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible,[role=switch]:focus-visible,[role=radio]:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.app-frame{position:relative;min-height:100vh;overflow:hidden}.ambient-grid{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(to bottom,black,transparent 72%);transform:perspective(600px) rotateX(55deg) scale(1.5) translateY(18%);transform-origin:top center}.site-header{position:relative;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:min(1320px,calc(100% - 48px));margin:0 auto;padding:22px 0 18px;border-bottom:1px solid var(--line-soft)}.brand-lockup{display:inline-flex;align-items:center;gap:12px;width:fit-content}.brand-mark{display:grid;width:42px;height:42px;place-items:center;color:var(--on-primary);background:linear-gradient(150deg,var(--primary-soft),var(--primary));box-shadow:0 1px 0 var(--inset-highlight) inset,0 10px 26px color-mix(in srgb,var(--primary) 32%,transparent);clip-path:polygon(0 0,78% 0,100% 25%,100% 100%,22% 100%,0 78%)}.brand-lockup strong,.brand-lockup small{display:block}.brand-lockup strong{font-family:var(--font-display);font-size:21px;font-weight:400;letter-spacing:.06em}.brand-lockup small{margin-top:2px;color:var(--text-dim);font-size:10px;letter-spacing:.19em}.site-header nav{display:flex;gap:6px;padding:4px;border:1px solid var(--line-soft);border-radius:999px;background:var(--glass);backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 12px 34px #00000029}.site-header nav a{padding:9px 17px;border-radius:999px;color:var(--text-muted);font-size:13px;transition:.16s ease}.site-header nav a:hover{color:var(--text);background:color-mix(in srgb,var(--primary) 12%,transparent)}.site-header nav a.active{color:var(--on-primary);background:var(--primary);box-shadow:0 6px 18px color-mix(in srgb,var(--primary) 34%,transparent)}.header-actions{display:inline-flex;align-items:center;justify-self:end;gap:10px}.theme-toggle{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;color:var(--text-muted);border:1px solid var(--line-soft);border-radius:999px;background:var(--glass);backdrop-filter:blur(14px);font-size:12px;cursor:pointer;transition:.16s ease}.theme-toggle:hover{color:var(--primary);border-color:var(--primary);transform:translateY(-1px)}.theme-toggle svg{color:var(--primary)}.security-chip{display:inline-flex;align-items:center;gap:6px;color:var(--success);font-size:12px}.auth-trigger{padding:6px 10px;border:1px solid transparent;background:transparent;cursor:pointer}.auth-trigger:hover{border-color:var(--line);color:var(--primary)}.auth-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:start center;padding:92px 20px 24px;background:var(--overlay);backdrop-filter:blur(14px) saturate(1.2)}.auth-panel{position:relative;width:min(460px,100%);padding:34px;border:1px solid var(--line);border-top:3px solid var(--primary);background:var(--panel);box-shadow:0 1px 0 var(--inset-highlight) inset,var(--shadow-float)}.auth-panel h2{margin:14px 0 10px;font-family:var(--font-display);font-size:32px;font-weight:400}.auth-intro{color:var(--text-muted);line-height:1.7}.auth-form{display:grid;gap:16px;margin-top:24px}.auth-form label{display:grid;gap:7px;color:var(--text-muted);font-size:12px}.auth-form input{width:100%;min-height:44px;padding:0 13px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);background:var(--bg);outline:none}.auth-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent)}.auth-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;background:transparent}.auth-status,.auth-error,.auth-note{display:block;margin-top:16px}.auth-status{color:var(--success)}.auth-error{color:var(--secondary)}.auth-note{color:var(--text-dim);line-height:1.6}.auth-expired-notice{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--secondary) 14%,transparent);border:1px solid color-mix(in srgb,var(--secondary) 40%,transparent);color:var(--secondary);font-size:.9rem;font-weight:500}main{min-height:calc(100vh - 150px)}.page-section{width:min(1240px,calc(100% - 48px));margin:0 auto}.site-footer{display:flex;justify-content:space-between;gap:24px;width:min(1240px,calc(100% - 48px));margin:64px auto 0;padding:22px 0 32px;border-top:1px solid var(--line-soft);color:var(--text-dim);font-size:12px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.15em}.home-hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(360px,5fr);gap:80px;align-items:center;min-height:680px;padding:88px 0 52px}.hero-copy{position:relative;padding-left:56px}.hero-copy:before{position:absolute;inset:4px auto 0 0;width:12px;height:82%;background:linear-gradient(var(--secondary) 0 31%,transparent 31% 38%,var(--primary) 38% 100%);content:""}.hero-copy h1,.tool-intro h1,.checkin-hero h1{margin:28px 0 22px;font-family:var(--font-display);font-size:clamp(54px,6vw,92px);font-weight:400;line-height:.98;letter-spacing:-.02em}.hero-copy h1 em{color:var(--primary);font-style:normal}.hero-copy>p,.tool-intro>p,.checkin-hero>p{max-width:660px;color:var(--text-muted);font-size:17px;line-height:1.9}.hero-meta{display:flex;flex-wrap:wrap;gap:22px;margin-top:40px}.hero-meta span{color:var(--text-dim);font-size:12px}.hero-meta b{display:block;margin-bottom:5px;color:var(--text);font-family:var(--font-display);font-size:24px;font-weight:400}.route-stack{display:flex;flex-direction:column;gap:18px;min-height:auto}.route-card{position:relative;display:grid;grid-template-columns:auto auto 1fr auto;gap:18px;align-items:center;width:min(100%,520px);padding:30px 28px;border:1px solid var(--line);background:var(--surface-veil);box-shadow:var(--shadow-signal);clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px));transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.route-card:after{position:absolute;inset:0;clip-path:inherit;background:linear-gradient(120deg,transparent 58%,color-mix(in srgb,var(--primary) 12%,transparent));opacity:0;transition:opacity .22s ease;content:"";pointer-events:none}.route-card:hover{z-index:2;border-color:var(--primary);box-shadow:var(--shadow-signal),0 0 0 1px color-mix(in srgb,var(--primary) 22%,transparent);transform:translateY(-4px)}.route-card:hover:after{opacity:1}.route-card>svg{color:var(--primary)}.route-card-checkin>svg{color:var(--secondary)}.route-index{color:var(--text-dim);font-family:var(--font-display);font-size:28px}.route-card strong,.route-card small{display:block}.route-card strong{margin-bottom:7px;font-size:20px}.route-card small{color:var(--text-muted);font-size:12px}.signal-manifesto{display:grid;grid-template-columns:220px 1fr;gap:52px;padding:42px 0;border-top:1px solid var(--line-soft)}.signal-manifesto span{color:var(--secondary);font-family:var(--font-display);font-size:25px;letter-spacing:.08em}.signal-manifesto p{margin:0;font-size:clamp(22px,3vw,38px);line-height:1.4}.tool-layout,.checkin-layout{display:grid;grid-template-columns:minmax(280px,4fr) minmax(0,8fr);gap:70px;align-items:start;padding-top:74px}.tool-intro,.checkin-hero{position:sticky;top:28px;padding-top:18px}.tool-intro h1,.checkin-hero h1{font-size:clamp(44px,5vw,72px)}.step-rail{display:grid;gap:0;margin:44px 0 0;padding:0;list-style:none}.step-rail li{position:relative;display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:center;min-height:66px;color:var(--text-dim)}.step-rail li:before{position:absolute;top:0;bottom:0;left:23px;width:1px;background:var(--line);content:""}.step-rail li b{position:relative;z-index:1;display:grid;width:48px;height:48px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--bg);font-family:var(--font-display);font-size:19px;font-weight:400}.step-rail li.active{color:var(--text)}.step-rail li.active b{color:var(--bg);border-color:var(--primary);background:var(--primary)}.tool-stage,.checkin-stage{min-width:0}.input-panel,.status-panel,.result-workbench{border:1px solid var(--line-soft);background:var(--surface);box-shadow:var(--shadow-signal);backdrop-filter:blur(20px) saturate(1.35)}.input-panel{padding:clamp(22px,4vw,42px);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,0 100%)}.field-label{display:flex;justify-content:space-between;margin:0 0 15px;color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.1em}.field-label:not(:first-child){margin-top:32px}.field-label span{color:var(--text-dim);font-weight:400}.mood-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mood-option{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;min-height:92px;padding:18px;text-align:left;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card);cursor:pointer;transition:.16s ease}.mood-option:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line));box-shadow:0 10px 26px #00000024;transform:translateY(-2px)}.mood-option strong,.mood-option small{display:block}.mood-option strong{margin-bottom:5px;font-size:16px}.mood-option small{color:var(--text-muted);font-size:11px}.mood-option.selected{color:#071016;border-color:transparent;box-shadow:0 12px 28px #0000002e}.mood-option.selected small{color:#071016b3}.mood-victory.selected{background:var(--victory)}.mood-low.selected{color:#fff;background:var(--low)}.mood-low.selected small{color:#ffffffb8}.mood-daily.selected{background:var(--daily)}.mood-hope.selected{color:#fff;background:var(--hope)}.mood-hope.selected small{color:#ffffffbd}.textarea-wrap{position:relative}.textarea-wrap textarea{width:100%;min-height:126px;resize:vertical;padding:17px 20px 34px;color:var(--text);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--bg);line-height:1.7}.textarea-wrap textarea::placeholder{color:var(--text-dim)}.textarea-wrap>span{position:absolute;right:15px;bottom:10px;color:var(--text-dim);font-size:11px}.textarea-wrap>span.warning{color:var(--secondary)}.primary-button,.secondary-button,.ghost-button,.text-button,.icon-button,.checkin-trigger,.card-placeholder{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;cursor:pointer;transition:.16s ease}.primary-button,.secondary-button,.ghost-button{min-height:46px;padding:0 20px;border-radius:var(--radius-sm);font-weight:700}.primary-button{color:var(--on-primary);background:var(--primary)}.primary-button:hover{filter:brightness(1.06);box-shadow:var(--glow-btn);transform:translateY(-2px)}.secondary-button{color:var(--on-secondary);background:var(--secondary)}.secondary-button:hover{filter:brightness(1.06);box-shadow:var(--glow-btn-secondary);transform:translateY(-2px)}.ghost-button{color:var(--text);border:1px solid var(--line);background:transparent}.ghost-button:hover{border-color:var(--primary)}.compact{min-height:38px;padding:0 14px;font-size:12px}.wide,.submit-button{width:100%}.submit-button{min-height:54px;margin-top:25px}button:disabled{cursor:wait;opacity:.58;transform:none}.status-panel{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-top:20px;padding:24px;border-left:4px solid var(--primary)}.status-panel strong{display:block;margin-bottom:5px}.status-panel p{margin:0;color:var(--text-muted);font-size:13px;line-height:1.6}.status-rate-limited,.status-network-error,.status-service-error{border-left-color:var(--danger)}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.result-workbench{display:grid;grid-template-columns:minmax(0,7fr) minmax(260px,5fr);gap:32px;margin-top:20px;padding:clamp(22px,4vw,42px)}.line-tabs{display:grid;gap:8px;margin-top:22px}.line-tabs button{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;padding:12px 14px;color:var(--text-dim);text-align:left;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;cursor:pointer}.line-tabs button.active{color:var(--text);border-color:var(--line);background:var(--card)}.line-tabs button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-copy-column blockquote{margin:28px 0 12px;font-family:var(--font-display);font-size:clamp(34px,4vw,55px);line-height:1.22}.emoji-caption{color:var(--secondary);font-size:16px}.edit-field-label{display:block;margin:22px 0 8px;color:var(--text-dim);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.edit-field-label:first-of-type{margin-top:28px}.edit-char-count{display:block;margin-top:4px;color:var(--text-dim);font-size:11px;text-align:right}.line-editor{width:100%;padding:14px 16px;font-family:var(--font-display);font-size:clamp(22px,3vw,34px);line-height:1.4;color:var(--text);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--bg);resize:vertical;transition:border-color .18s ease}.line-editor:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 24%,transparent)}.line-editor::placeholder{color:var(--text-dim);opacity:.5}.caption-editor{width:100%;padding:10px 14px;font-size:15px;line-height:1.5;color:var(--secondary);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);transition:border-color .18s ease}.caption-editor:focus{outline:none;border-color:var(--secondary);box-shadow:0 0 0 2px color-mix(in srgb,var(--secondary) 24%,transparent)}.auto-refresh-hint{color:var(--text-muted);font-size:12px;text-align:center;margin-top:8px;animation:auto-refresh-pulse 1.2s ease-in-out infinite}@keyframes auto-refresh-pulse{0%,to{opacity:.5}50%{opacity:1}}.source-list{display:flex;flex-wrap:wrap;gap:26px;margin:28px 0;padding:20px 0;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.source-list dt{color:var(--text-dim);font-size:11px}.source-list dd{margin:5px 0 0;color:var(--primary);font-size:20px;font-weight:700}.action-row{margin-top:28px;display:flex;flex-wrap:wrap;gap:10px}.card-preview-column{display:flex;flex-direction:column;justify-content:center;min-width:0}.card-placeholder{flex-direction:column;width:100%;aspect-ratio:3 / 4;padding:24px;color:var(--primary);border:2px dashed color-mix(in srgb,var(--primary) 70%,transparent);border-radius:var(--radius-md);background:linear-gradient(135deg,transparent 0 66%,color-mix(in srgb,var(--primary) 10%,transparent) 66% 67%,transparent 67%),color-mix(in srgb,var(--primary) 6%,transparent);animation:card-placeholder-pulse 2s ease-in-out infinite}.card-placeholder:hover{border-color:var(--primary-soft);background:color-mix(in srgb,var(--primary) 10%,transparent);transform:scale(1.01)}.card-placeholder strong{margin-top:16px;color:var(--text);font-size:17px}.card-placeholder small{margin-top:8px;color:var(--text-dim);text-align:center;font-size:13px}@keyframes card-placeholder-pulse{0%,to{border-color:var(--primary);box-shadow:0 0 color-mix(in srgb,var(--primary) 30%,transparent)}50%{border-color:var(--primary-soft);box-shadow:0 0 0 4px transparent}}.card-image-wrap img{display:block;width:100%;aspect-ratio:3 / 4;object-fit:cover;border:1px solid var(--line);box-shadow:var(--shadow-card);-webkit-touch-callout:default;user-select:auto}.save-hint,.inline-error{color:var(--secondary);font-size:12px;text-align:center}.card-toggles{display:flex;justify-content:center;gap:24px;flex-wrap:wrap}.qr-toggle{display:flex;align-items:center;justify-content:center;gap:12px;margin:18px 0 14px;cursor:pointer;user-select:none}.card-toggles .qr-toggle{margin:10px 0}.qr-toggle.disabled{opacity:.5;pointer-events:none}.toggle-track{position:relative;display:inline-flex;width:44px;height:24px;border-radius:999px;background:var(--line);transition:background .2s ease;cursor:pointer;flex-shrink:0}.toggle-input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.toggle-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s ease;pointer-events:none}.toggle-track:has(.toggle-input:checked){background:var(--primary)}.toggle-input:checked+.toggle-thumb{transform:translate(20px)}.toggle-label{color:var(--text-muted);font-size:13px;white-space:nowrap}.text-button{margin-top:10px;padding:8px;color:var(--text-muted);background:transparent;font-size:12px}.checkin-layout{grid-template-columns:minmax(320px,5fr) minmax(0,7fr)}.stat-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:36px 0 26px;overflow:hidden;border:1px solid var(--line);background:var(--line)}.stat-strip div{padding:20px 14px;background:var(--card)}.stat-strip span,.stat-strip small{display:block;color:var(--text-dim);font-size:10px}.stat-strip b{display:inline-block;margin:7px 5px 3px 0;color:var(--primary);font-family:var(--font-display);font-size:35px;font-weight:400}.stat-strip small{display:inline}.checkin-trigger{width:100%;justify-content:flex-start;gap:18px;padding:22px;text-align:left;border:1px solid var(--secondary);background:color-mix(in srgb,var(--secondary) 12%,transparent);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}.checkin-trigger:hover{background:color-mix(in srgb,var(--secondary) 20%,transparent);box-shadow:var(--glow-btn-secondary)}.checkin-trigger>svg{color:var(--secondary)}.checkin-trigger strong,.checkin-trigger small{display:block}.checkin-trigger strong{margin-bottom:5px;font-size:17px}.checkin-trigger small{color:var(--text-muted);font-size:11px}.privacy-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:var(--overlay);backdrop-filter:blur(12px)}.privacy-panel{position:relative;width:min(560px,100%);padding:38px;border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-signal);clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,0 100%)}.privacy-panel h2{margin:18px 0;font-family:var(--font-display);font-size:38px;font-weight:400}.privacy-panel p,.privacy-panel li{color:var(--text-muted);font-size:14px;line-height:1.8}.privacy-panel ul{margin:18px 0 28px;padding-left:20px}.privacy-close{position:absolute;top:16px;right:16px;width:38px;height:38px;border-radius:50%;background:var(--bg)}@media(max-width:980px){.site-header{grid-template-columns:1fr auto}.site-header nav{position:fixed;right:16px;bottom:calc(14px + env(safe-area-inset-bottom));left:16px;z-index:50;justify-content:center;box-shadow:0 14px 40px #0000003d}.header-actions{grid-column:2}.home-hero,.tool-layout,.checkin-layout{grid-template-columns:1fr}.home-hero{gap:24px;padding-top:64px}.route-stack{min-height:auto}.tool-intro,.checkin-hero{position:static}.step-rail{grid-template-columns:repeat(3,1fr)}.step-rail li{grid-template-columns:40px 1fr;min-height:54px}.step-rail li:before{display:none}.step-rail li b{width:40px;height:40px}}@media(max-width:700px){.site-header,.page-section,.site-footer{width:min(100% - 28px,1240px)}.header-actions{gap:8px}.theme-toggle{padding:0 9px}.theme-toggle span{display:none}.security-chip{display:inline-flex;max-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.auth-backdrop{padding:76px 14px 24px}.auth-panel{padding:30px 22px 24px}.hero-copy{padding-left:28px}.hero-copy:before{width:7px}.hero-copy h1,.tool-intro h1,.checkin-hero h1{font-size:46px}.hero-copy>p,.tool-intro>p,.checkin-hero>p{font-size:14px}.route-card{grid-template-columns:auto 1fr auto;padding:24px 20px}.route-card .route-index{display:none}.signal-manifesto{grid-template-columns:1fr;gap:16px}.tool-layout,.checkin-layout{gap:28px;padding-top:44px}.step-rail{display:none}.mood-grid,.result-workbench{grid-template-columns:1fr}.mood-option{min-height:78px}.result-workbench{gap:26px}.card-preview-column{max-width:360px;margin:0 auto}.status-panel{grid-template-columns:auto 1fr}.status-panel .ghost-button{grid-column:1 / -1}.site-footer{flex-direction:column;padding-bottom:110px}.privacy-panel{padding:32px 24px 24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.secretary-layout{max-width:720px;margin:0 auto;padding-top:44px;display:flex;flex-direction:column;min-height:calc(100vh - 150px)}.chat-container{flex:1;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-signal);backdrop-filter:blur(18px) saturate(1.3)}.chat-header{display:flex;align-items:center;padding:20px 24px;background:var(--card);border-bottom:1px solid var(--line-soft)}.avatar-wrap{margin-right:14px;color:var(--primary)}.ai-avatar{width:40px;height:40px;border-radius:50%;background:var(--bg);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:12px;color:var(--primary)}.header-info h2{font-size:20px;font-weight:600;color:var(--text);margin:0 0 4px}.header-info p{font-size:12px;color:var(--text-muted);margin:0}.chat-messages{flex:1;overflow-y:auto}.message-list{padding:24px 24px 20px}.message-item{margin-bottom:22px}.ai-content{display:flex;align-items:flex-start}.ai-bubble{max-width:75%;background:var(--card-strong);border-radius:18px;padding:16px 20px;border:1px solid var(--line-soft)}.user-content{display:flex;justify-content:flex-end}.user-bubble{max-width:75%;background:var(--primary);border-radius:18px;padding:16px 20px}.user-bubble .bubble-text{color:var(--on-primary)}.bubble-text{font-size:15px;color:var(--text-muted);line-height:1.7;word-break:break-word;margin:0}.loading-item{display:flex;align-items:flex-start}.loading-bubble{background:var(--card-strong);border-radius:18px;padding:16px 28px;border:1px solid var(--line-soft)}.loading-dots{display:flex;gap:6px}.loading-dots .dot{width:8px;height:8px;background:var(--primary);border-radius:50%;animation:dotPulse 1.4s infinite ease-in-out}.loading-dots .dot:nth-child(1){animation-delay:0s}.loading-dots .dot:nth-child(2){animation-delay:.2s}.loading-dots .dot:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.quick-chips{display:flex;flex-wrap:wrap;padding:14px 24px;gap:10px;background:var(--card);border-bottom:1px solid var(--line-soft)}.chip{background:var(--card-strong);border:1px solid var(--primary);border-radius:999px;padding:8px 22px;font-size:13px;color:var(--text-muted);cursor:pointer;transition:.16s ease}.chip:hover{background:var(--primary);color:var(--on-primary)}.func-bar{display:flex;padding:14px 24px;gap:14px;background:var(--card);border-bottom:1px solid var(--line-soft)}.func-item{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--card-strong);border-radius:var(--radius-sm);padding:14px 0;color:var(--text-muted);font-size:14px;transition:.16s ease}.func-item:hover{color:var(--primary)}.input-area{display:flex;align-items:center;padding:14px 24px;background:var(--card-strong);border-top:1px solid var(--line-soft);gap:12px}.input-field{flex:1;height:44px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:0 20px;font-size:15px;color:var(--text);outline:none}.input-field::placeholder{color:var(--text-dim)}.input-field:focus{border-color:var(--primary)}.send-btn{flex-shrink:0;width:44px;height:44px;background:var(--primary);border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .2s;color:var(--on-primary)}.send-btn:disabled{background:var(--text-dim);cursor:not-allowed;opacity:.5}.send-btn:not(:disabled):hover{filter:brightness(1.1)}.usage-hint{text-align:center;padding:8px 24px 12px;background:var(--card-strong);font-size:12px;color:var(--text-dim)}.usage-hint .limit-reached,.usage-hint-limit{color:var(--danger)}@media(max-width:700px){.secretary-layout{padding-top:24px}}
