@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-primary:#faf6ed;--bg-secondary:#fdf7e6;--bg-surface:#f8f3e9;--bg-selected:#f4ede0;--border-primary:#e8deca;--border-soft:#efe7d8;--text-primary:#302a25;--text-secondary:#6e6257;--text-muted:#9a8f82;--accent:#9c6f2c;--accent-soft:#d8b97a;--accent-pale:#f3e7c8;--element-wood:#789a87;--element-fire:#c97868;--element-earth:#b18a52;--element-metal:#8797a0;--element-water:#617f8e;--success:#7d9484;--warning:#b28a52;--error:#b66b63;--info:#6d8794;--el-wood:#3f6b54;--el-fire:#a4483a;--el-earth:#8a5f22;--el-metal:#4e5c66;--el-water:#3d6070;--success-text:#4c6a57;--warning-text:#8a6526;--error-text:#9e4b43;--info-text:#46626f;--circle-neutral:#8c8173;--relation-harmony:#82988d;--relation-combine:#9c7c48;--relation-control:#c27a6e;--relation-clash:#b65e59;--relation-neutral:#a59a8b;--glass-bg:#fdf7e69e;--glass-border:#e8decad9;--font-sans:"Inter Variable", Inter, "SF Pro Text", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, "Times New Roman", serif;--font-glyph:"PingFang SC", "Hiragino Sans GB", "Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", "Segoe UI", var(--font-sans);--text-caption:.6875rem;--text-label:.75rem;--text-small:.8125rem;--text-body:.9375rem;--text-lead:1rem;--text-section:1.25rem;--text-title:1.75rem;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--space-6:48px;--space-8:64px;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--shadow-1:0 1px 2px #302a250a;--shadow-2:0 8px 24px -12px #302a252e;--ease:cubic-bezier(.22, .61, .36, 1);--dur-fast:.12s;--dur:.18s;--dur-slow:.26s}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-tg-color-scheme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-primary:#211e1a;--bg-secondary:#29251f;--bg-surface:#312c25;--bg-selected:#393227;--border-primary:#4a4236;--border-soft:#3b352c;--text-primary:#f4efe6;--text-secondary:#c8bfb2;--text-muted:#948a7d;--accent:#c49a5a;--accent-soft:#9c7a45;--accent-pale:#4a3d29;--element-wood:#86a693;--element-fire:#d08072;--element-earth:#c09a61;--element-metal:#a5b1b7;--element-water:#7895a3;--success:#8ba392;--warning:#c19a61;--error:#c4776d;--info:#829da9;--el-wood:#86a693;--el-fire:#d08072;--el-earth:#c09a61;--el-metal:#a5b1b7;--el-water:#7895a3;--success-text:#8ba392;--warning-text:#c19a61;--error-text:#c4776d;--info-text:#829da9;--circle-neutral:#97907f;--relation-harmony:#8fa89b;--relation-combine:#b8935a;--relation-clash:#c4776d;--relation-control:#cc8b7f;--relation-neutral:#a59a8b;--glass-bg:#faf6ed0d;--glass-border:#e8deca24;--shadow-1:0 1px 2px #0000003d;--shadow-2:0 10px 28px -14px #0009}}:root[data-theme=dark],:root[data-tg-color-scheme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-primary:#211e1a;--bg-secondary:#29251f;--bg-surface:#312c25;--bg-selected:#393227;--border-primary:#4a4236;--border-soft:#3b352c;--text-primary:#f4efe6;--text-secondary:#c8bfb2;--text-muted:#948a7d;--accent:#c49a5a;--accent-soft:#9c7a45;--accent-pale:#4a3d29;--element-wood:#86a693;--element-fire:#d08072;--element-earth:#c09a61;--element-metal:#a5b1b7;--element-water:#7895a3;--success:#8ba392;--warning:#c19a61;--error:#c4776d;--info:#829da9;--el-wood:#86a693;--el-fire:#d08072;--el-earth:#c09a61;--el-metal:#a5b1b7;--el-water:#7895a3;--success-text:#8ba392;--warning-text:#c19a61;--error-text:#c4776d;--info-text:#829da9;--circle-neutral:#97907f;--relation-harmony:#8fa89b;--relation-combine:#b8935a;--relation-clash:#c4776d;--relation-control:#cc8b7f;--relation-neutral:#a59a8b;--glass-bg:#faf6ed0d;--glass-border:#e8deca24;--shadow-1:0 1px 2px #0000003d;--shadow-2:0 10px 28px -14px #0009}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-body);color:var(--text-primary);background-color:var(--bg-primary);background-image:radial-gradient(120% 60% at 50% -10%, var(--bg-secondary) 0%, transparent 62%), radial-gradient(80% 40% at 100% 100%, var(--bg-surface) 0%, transparent 70%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv05" 1, "ss01" 1;background-attachment:fixed;margin:0;line-height:1.55;overflow-x:hidden}.page{max-width:560px;padding:var(--space-4) var(--space-3) var(--space-8);margin:0 auto}h1,h2,h3,h4{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--text-primary);text-wrap:balance;font-weight:400}h1{font-size:var(--text-title);margin:0;line-height:1.12}h2{font-size:var(--text-section);margin:0;line-height:1.2}h3{margin:0;font-size:1.0625rem;line-height:1.25}h4{font-size:var(--text-lead);margin:0;line-height:1.3}p{text-wrap:pretty}.app-header{margin-bottom:var(--space-4)}.app-eyebrow{margin:0 0 var(--space-1);font-family:var(--font-glyph);font-size:var(--text-label);letter-spacing:.34em;text-transform:uppercase;color:var(--accent)}.app-header:after{content:"";height:1px;margin-top:var(--space-3);background:linear-gradient(to right, var(--border-primary), transparent 70%);display:block}.about-page{gap:var(--space-4);flex-direction:column;display:flex}.about-back{align-self:flex-start}.about-hero{padding-top:var(--space-1)}.about-hero .app-eyebrow{margin-bottom:var(--space-2)}.about-hero h1{margin-bottom:var(--space-3)}.about-lead{font-size:var(--text-lead);color:var(--text-secondary);max-width:48ch;line-height:1.55}.about-pillars{margin:var(--space-1) 0 var(--space-3);gap:10px;display:flex}.about-pillar{flex-direction:column;align-items:center;gap:6px;display:flex}.about-pillar-label{font-family:var(--font-glyph);font-size:var(--text-label);color:var(--text-muted)}.about-pillar-day .about-pillar-label{color:var(--accent)}.about-pillar-tile{background:var(--bg-surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);width:56px;box-shadow:var(--shadow-1);flex-direction:column;align-items:center;gap:6px;padding:10px 0;display:flex}.about-pillar-day .about-pillar-tile{border-color:var(--accent-soft);box-shadow:var(--shadow-2)}.about-pillar-glyph{font-family:var(--font-glyph);font-size:1.75rem;font-weight:300;line-height:1.1}.about-pillar-rule{background:var(--border-soft);width:60%;height:1px}.about-highlights{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.about-highlights li{align-items:center;gap:var(--space-2);padding:10px var(--space-2) 10px 12px;background:var(--bg-surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);line-height:1.4;display:flex}.about-highlights li>span{flex-direction:column;display:flex}.about-highlights strong{font-family:var(--font-serif);color:var(--text-primary);font-size:1.0625rem;font-weight:400}.about-highlight-text{font-size:var(--text-small);color:var(--text-secondary)}.glyph-seal{flex:none;display:block}.glyph-seal-dots circle{fill:var(--accent-soft)}.glyph-seal-text{font-family:var(--font-glyph);fill:currentColor;font-size:19px;font-weight:400}.about-more>summary h2{font-size:var(--text-lead);margin:0}.about-more .collapsible-body{gap:var(--space-3);flex-direction:column;display:flex}.about-section h2{margin-bottom:var(--space-2)}.about-section p{color:var(--text-primary);line-height:1.6}.about-features{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.about-features li{padding:var(--space-2);background:var(--bg-surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);line-height:1.55}.about-features strong{color:var(--accent)}.about-cta{align-self:flex-start}a.btn{text-decoration:none}.author{background:var(--bg-surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);position:relative;overflow:hidden}.author>summary{padding:var(--space-2)}.author>summary:after{margin-right:4px}.author .collapsible-body{gap:var(--space-3);padding:0 var(--space-2) var(--space-3);flex-direction:column;margin-top:0;display:flex}.author[open] .collapsible-body{animation:author-reveal var(--dur-slow) var(--ease) both}@keyframes author-reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.author h2{font-family:var(--font-serif);color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:400;line-height:1.15}.author-eyebrow{font-size:var(--text-caption);letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin-bottom:4px;display:block}.author-facts-title{font-family:var(--font-serif);color:var(--text-primary);margin:0;font-size:1.375rem;line-height:1.2}.author-facts-lead{color:var(--text-secondary);margin:6px 0 0;line-height:1.5}.author-path{gap:var(--space-3);margin:var(--space-3) 0 0;flex-direction:column;padding:0 0 0 26px;list-style:none;display:flex;position:relative}.author-path li:not(:last-child):after{content:"";top:12px;left:-21px;bottom:calc(-1 * var(--space-3) - 4px);background:linear-gradient(to bottom, var(--accent-soft), var(--border-primary));width:1px;position:absolute}.author-path li{flex-direction:column;gap:2px;display:flex;position:relative}.author-path li:before{content:"";background:var(--accent);border:3px solid var(--bg-surface);width:9px;height:9px;box-shadow:0 0 0 1px var(--accent-soft);position:absolute;top:4px;left:-25px;transform:rotate(45deg)}.author-path-years{font-size:var(--text-label);letter-spacing:.14em;font-variant-numeric:tabular-nums;color:var(--accent);flex-wrap:wrap;gap:4px 10px;margin-bottom:2px;font-weight:500;display:flex}.author-path-years span+span:before{content:"·";color:var(--accent-soft);margin-right:10px}.author-path strong{font-family:var(--font-serif);color:var(--text-primary);font-size:1.125rem;font-weight:400;line-height:1.3}.author-path-place{font-size:var(--text-small);color:var(--text-secondary)}.author-stat{margin:var(--space-3) 0 0;padding:var(--space-2);text-align:center;background:linear-gradient(135deg, var(--accent-pale), transparent 120%);border:1px solid var(--accent-soft);border-radius:var(--radius-md);color:var(--text-secondary);flex-direction:column;gap:2px;line-height:1.4;display:flex}.author-stat-number{font-family:var(--font-serif);color:var(--accent);font-size:2rem;line-height:1.1}.author-story{padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);background:var(--bg-primary);border-left:2px solid var(--accent-soft);border-radius:0 var(--radius-md) var(--radius-md) 0;margin:0}.author-story p{font-family:var(--font-serif);color:var(--text-primary);margin:0;font-size:1.0625rem;line-height:1.6}.author-signature{margin-top:var(--space-2);text-align:right;font-family:var(--font-serif);color:var(--text-secondary);font-size:1.0625rem;font-style:italic}.author-signature span{font-family:var(--font-glyph);color:var(--bg-primary);background:var(--el-fire);border-radius:3px;margin-left:6px;padding:2px 6px;font-size:1rem;font-style:normal}.author-head{align-items:center;gap:var(--space-2);min-width:0;display:flex}.author-head h2{font-size:1.375rem}.author-avatar{border:1px solid var(--accent-soft);background:var(--bg-primary);cursor:zoom-in;width:64px;height:64px;transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);border-radius:50%;flex:none;padding:3px;position:relative}.author-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.author-avatar:hover,.author-avatar:focus-visible{box-shadow:var(--shadow-2);transform:scale(1.04)}.author-avatar-zoom{border:2px solid var(--bg-surface);background:var(--accent);border-radius:50%;place-items:center;width:20px;height:20px;display:grid;position:absolute;bottom:-3px;right:-3px}.author-avatar-zoom svg{fill:none;stroke:var(--bg-primary);stroke-width:2px;stroke-linecap:round}.author-photo{width:min(440px, calc(100vw - 2 * var(--space-3)));max-height:calc(100dvh - 2 * var(--space-3));border:1px solid var(--accent-soft);border-radius:var(--radius-lg);background:var(--bg-surface);color:var(--text-primary);padding:0;overflow:hidden;box-shadow:0 24px 64px -24px #211e1a8c}.author-photo[open]{animation:author-photo-in var(--dur-slow) var(--ease) both}.author-photo::backdrop{background:color-mix(in srgb, var(--bg-primary) 72%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@keyframes author-photo-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}.author-photo figure{margin:0}.author-photo img{width:100%;height:auto;max-height:calc(100dvh - 2 * var(--space-3) - 84px);object-fit:cover;object-position:50% 15%;display:block}.author-photo figcaption .author-eyebrow{font-family:var(--font-sans)}.author-photo figcaption{padding:var(--space-2) var(--space-3) var(--space-3);font-family:var(--font-serif);font-size:1.5rem;line-height:1.15}.author-photo-close{top:var(--space-1);right:var(--space-1);background:color-mix(in srgb, var(--bg-primary) 80%, transparent);width:36px;height:36px;color:var(--text-primary);cursor:pointer;border:none;border-radius:50%;padding:0;font-size:1.375rem;line-height:1;position:absolute}.author-photo-close:hover{color:var(--accent)}.about-section ul,.about-section ol{color:var(--text-primary);margin:0;padding-left:1.2em;line-height:1.6}.about-section li+li{margin-top:var(--space-1)}.about-section h3{margin-top:var(--space-2)}.legal-meta{font-size:var(--text-small);color:var(--text-muted)}.consent-action{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.consent-checkbox{align-items:flex-start;gap:var(--space-1);font-size:var(--text-body);line-height:1.5;display:flex}.consent-checkbox input{margin-top:3px}.legal-footer{align-items:center;gap:var(--space-1);margin-top:var(--space-5);padding-top:var(--space-2);border-top:1px solid var(--border-soft);text-align:center;flex-direction:column;display:flex}.legal-links{justify-content:center;column-gap:var(--space-2);flex-wrap:wrap;row-gap:2px;display:flex}.legal-links .btn-link{font-size:.75rem;text-decoration:none}.legal-links .btn-link:hover{text-decoration:underline}.seller-requisites{color:var(--text-muted);flex-direction:column;gap:2px;margin:0;font-size:.75rem;line-height:1.4;display:flex}.seller-requisites a{color:inherit}.btn-link{font:inherit;font-size:var(--text-small);color:var(--text-muted);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.btn-link:hover{color:var(--accent)}.section-hint{margin:0 0 var(--space-2);font-size:var(--text-small);color:var(--text-secondary);max-width:62ch;line-height:1.55}.pillar-glyph,.hidden-stem-glyph,.ring-glyphs,.app-eyebrow,.mansion-glyph,.star-glyph,.family-glyph,.star-detail-glyph{font-family:var(--font-glyph)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.btn,button[type=submit],.interpret-button{font:inherit;letter-spacing:.01em;justify-content:center;align-items:center;gap:var(--space-1);border-radius:var(--radius-md);cursor:pointer;text-align:center;min-height:44px;transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur-fast) var(--ease);border:1px solid #0000;padding:11px 18px;font-weight:500;display:inline-flex}.btn:active,button[type=submit]:active,.interpret-button:active{transform:scale(.985)}.btn-primary,button[type=submit],.interpret-button{color:var(--bg-secondary);background-color:var(--accent);background-image:linear-gradient(160deg, var(--accent-soft) -40%, var(--accent) 55%);box-shadow:var(--shadow-1)}.btn-primary:hover:not(:disabled),button[type=submit]:hover:not(:disabled),.interpret-button:hover:not(:disabled){background-image:linear-gradient(160deg, var(--accent-soft) -20%, var(--accent) 70%)}:root[data-theme=dark] .btn-primary:not(:disabled),:root[data-theme=dark] button[type=submit]:not(:disabled),:root[data-theme=dark] .interpret-button:not(:disabled),:root[data-tg-color-scheme=dark] .btn-primary:not(:disabled),:root[data-tg-color-scheme=dark] button[type=submit]:not(:disabled),:root[data-tg-color-scheme=dark] .interpret-button:not(:disabled){color:#231f19}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-tg-color-scheme=light]) .btn-primary:not(:disabled),:root:not([data-theme=light]):not([data-tg-color-scheme=light]) button[type=submit]:not(:disabled),:root:not([data-theme=light]):not([data-tg-color-scheme=light]) .interpret-button:not(:disabled){color:#231f19}}.btn-secondary{color:var(--text-primary);border-color:var(--border-primary);background-color:#0000}.btn-secondary:hover:not(:disabled){background-color:var(--bg-selected);border-color:var(--accent-soft)}.btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000;padding:11px 10px;font-weight:400}.btn-ghost:hover:not(:disabled){color:var(--text-primary)}.btn-danger{color:var(--error-text);border-color:color-mix(in srgb, var(--error) 45%, var(--border-primary));background-color:#0000}.btn-danger:hover:not(:disabled){color:var(--error-text);border-color:var(--error);background-color:color-mix(in srgb, var(--error) 8%, transparent)}.danger-zone{margin-top:var(--space-6);padding-top:var(--space-3);border-top:1px solid var(--border-soft);align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.danger-note{font-size:var(--text-small);color:var(--text-muted);max-width:52ch;margin:0}.consultation-card{margin-top:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-3);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);position:relative;overflow:hidden}.consultation-mark{top:calc(var(--space-2) + 3.5rem);right:var(--space-2);font-family:var(--font-glyph);color:var(--accent-pale);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:7rem;line-height:1;position:absolute}.consultation-card>summary{z-index:1;position:relative}@media (width<=600px){.consultation-mark{font-size:5rem}}.consultation-lead{margin:0 0 var(--space-2);max-width:46ch;font-size:var(--text-body);color:var(--text-secondary);line-height:1.6;position:relative}.consultation-topics{justify-content:center;gap:var(--space-1) var(--space-4);font-size:var(--text-small);color:var(--text-muted);text-align:center;grid-template-columns:repeat(2,max-content);margin:0;padding:0;list-style:none;display:grid;position:relative}.consultation-button{margin-top:var(--space-3);position:relative}.consultation-price{margin:var(--space-2) 0 0;font-size:var(--text-small);color:var(--text-muted);text-align:center;line-height:1.5;position:relative}.btn-block,button[type=submit],.interpret-button{width:100%}.btn:disabled,button[type=submit]:disabled,.interpret-button:disabled{cursor:not-allowed;transform:none}.btn-primary:disabled,button[type=submit]:disabled,.interpret-button:disabled{background-image:none;background-color:var(--bg-selected);border-color:var(--border-primary);color:var(--text-muted);box-shadow:none}.btn-secondary:disabled,.btn-ghost:disabled{opacity:.45}.interpret-button,.invite-row{margin-top:var(--space-3)}.invite-button{width:100%}.invite-row .method-note,.invite-row .error-banner{margin-top:var(--space-1);display:block}.button-row{gap:var(--space-1);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.dialogue-example{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--text-muted)}.birth-summary{justify-content:space-between;align-items:center;gap:var(--space-2);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);box-shadow:var(--shadow-1);flex-wrap:wrap;display:flex}.birth-summary-text{flex-direction:column;gap:4px;min-width:0;display:flex}.birth-summary-label{font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0;font-weight:500}.birth-summary-value{color:var(--text-primary);margin:0;line-height:1.45}.birth-summary-loading,.form-hint{font-size:var(--text-small);color:var(--text-muted);margin:0;line-height:1.45}.form-hint.form-error{color:var(--error-text)}.form .button-row{margin-top:0}.form{gap:var(--space-2);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-3);box-shadow:var(--shadow-1);flex-direction:column;display:flex}.form h2{margin-bottom:var(--space-1)}.form label{font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);flex-direction:column;gap:6px;font-weight:500;display:flex;position:relative}.form input[type=date],.form input[type=time],.form input[type=text],.dialogue-input textarea,.circle-pickers select,.forecast-year-picker select{font:inherit;font-size:var(--text-body);letter-spacing:normal;text-transform:none;color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-primary);min-height:44px;transition:border-color var(--dur) var(--ease), background-color var(--dur) var(--ease);padding:11px 13px;font-weight:400}.form input:hover,.dialogue-input textarea:hover{border-color:var(--accent-soft)}.dialogue-input textarea::placeholder{color:var(--text-muted);opacity:.65}.form input:focus,.dialogue-input textarea:focus,.circle-pickers select:focus,.forecast-year-picker select:focus{border-color:var(--accent);background:var(--bg-secondary);outline:none}.gender{gap:var(--space-1);border:none;flex-wrap:wrap;margin:0;padding:0;display:flex}.gender legend{font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-1);padding:0;font-weight:500}.gender label{min-height:44px;font-size:var(--text-body);letter-spacing:normal;text-transform:none;color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-primary);cursor:pointer;transition:border-color var(--dur) var(--ease), background-color var(--dur) var(--ease);flex-direction:row;flex:1 1 0;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-weight:400}.gender label:has(input:checked){border-color:var(--accent);background:var(--accent-pale)}.gender input[type=radio]{accent-color:var(--accent);margin:0}.telegram-auth-badge{margin-bottom:var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--border-primary);background:var(--bg-surface);font-size:var(--text-label);letter-spacing:.02em;color:var(--text-secondary);align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.telegram-auth-badge:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.telegram-auth-badge.checking{color:var(--info-text)}.telegram-auth-badge.verified{color:var(--success-text)}.telegram-auth-badge.error{color:var(--error-text);border-color:var(--error);border-color:color-mix(in srgb, var(--error) 45%, var(--border-primary))}.autocomplete{position:relative}.autocomplete input[type=text]{width:100%}.autocomplete-list{z-index:10;background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--shadow-2);max-height:280px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.autocomplete-list{background:var(--bg-secondary)}}.autocomplete-list button{justify-content:space-between;align-items:baseline;gap:var(--space-1);border-radius:var(--radius-sm);cursor:pointer;width:100%;min-height:44px;font:inherit;font-size:var(--text-body);letter-spacing:normal;text-transform:none;color:var(--text-primary);text-align:left;transition:background-color var(--dur-fast) var(--ease);background:0 0;border:none;padding:10px 12px;font-weight:400;display:flex}.autocomplete-list button:hover{background:var(--bg-selected)}.place-name{color:var(--text-primary)}.place-alias{color:var(--text-muted);font-size:var(--text-small)}.place-meta{color:var(--text-muted);font-size:var(--text-small);white-space:nowrap}.autocomplete-hint{font-size:var(--text-small);color:var(--text-muted);letter-spacing:normal;text-transform:none;font-weight:400;position:absolute;top:calc(100% + 6px);left:0}.autocomplete-error{color:var(--error-text)}.error-banner{margin-top:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--border-primary);border:1px solid color-mix(in srgb, var(--error) 40%, var(--border-primary));background:var(--bg-surface);background:color-mix(in srgb, var(--error) 8%, var(--bg-secondary));color:var(--error-text);font-size:var(--text-small);padding:12px 16px;line-height:1.5}.method-note{margin:var(--space-2) 0 0;border-radius:var(--radius-sm);border-left:2px solid var(--border-primary);background:var(--bg-surface);color:var(--text-secondary);font-size:var(--text-small);padding:12px 16px;line-height:1.6}.method-note-collapsible>.warnings{margin-top:0}.warnings{margin:var(--space-3) 0 0;border-radius:var(--radius-md);border:1px solid var(--border-primary);border:1px solid color-mix(in srgb, var(--warning) 40%, var(--border-primary));background:var(--bg-surface);background:color-mix(in srgb, var(--warning) 8%, var(--bg-secondary));color:var(--warning-text);font-size:var(--text-small);padding:12px 16px 12px 34px;line-height:1.55;list-style:outside}.boundary-notice{color:var(--warning-text);background:var(--bg-surface);background:color-mix(in srgb, var(--warning) 10%, var(--bg-secondary));border-radius:var(--radius-xs);padding:6px 10px;font-size:.94em}.collapsible>summary{cursor:pointer;align-items:center;gap:var(--space-1);min-height:40px;color:var(--text-primary);transition:color var(--dur) var(--ease);list-style:none;display:flex}.collapsible>summary:hover{color:var(--accent)}.collapsible>summary:focus-visible{color:var(--accent);outline:none}.collapsible>summary::-webkit-details-marker{display:none}.collapsible>summary::marker{content:""}.collapsible>summary:after{content:"";border-right:1.5px solid var(--text-muted);border-bottom:1.5px solid var(--text-muted);width:7px;height:7px;transition:transform var(--dur) var(--ease);flex:none;margin-left:auto;transform:translateY(-2px)rotate(45deg)}.collapsible[open]>summary:after{transform:translateY(1px)rotate(225deg)}.collapsible-locked>summary{cursor:default}.collapsible-locked>summary:hover{color:var(--text-primary)}.collapsible-locked>summary:after{display:none}.collapsible-body{margin-top:var(--space-2)}.chart-section,.enrichment-section{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-soft)}.chart-section>summary h3,.enrichment-section>summary h2{font-size:1.125rem}.chart-section.pro-section>summary h3{font-size:var(--text-small);color:var(--text-secondary);font-weight:500}.pro-section-title{flex-direction:column;gap:4px;min-width:0;display:flex}.pro-section-hint{font:inherit;font-family:var(--font-sans);color:var(--accent);cursor:pointer;background:0 0;border:none;min-height:0;margin:-8px 0;padding:8px 10px 8px 3px}.pro-section-note{font-family:var(--font-sans);font-size:var(--text-small);color:var(--text-muted);font-weight:400;line-height:1.45}.collapsible-footer{margin:var(--space-2) 0 0 auto;padding:8px 0;display:block}.details .collapsible>summary{min-height:0}.details .collapsible-body{margin-top:6px}.method-note-collapsible{margin-top:var(--space-2)}.method-note-summary{font-family:var(--font-sans);color:var(--text-secondary);font-weight:500;font-size:var(--text-small)}.method-note-collapsible .method-note{margin-top:0}.chart-result{margin-top:var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-3) var(--space-4);box-shadow:var(--shadow-1)}.pillars-table{table-layout:fixed;border-collapse:collapse;text-align:center;width:100%}.pillars-table th{font-size:var(--text-caption);font-family:var(--font-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);padding-bottom:var(--space-2);font-weight:500}.pillars-table th[scope=row]{text-align:left;width:96px;font-weight:400;font-size:var(--text-caption);letter-spacing:.04em;text-transform:none;vertical-align:middle;color:var(--text-muted);padding:10px 12px 10px 0;line-height:1.3}.pillars-table td{border-left:1px solid var(--border-soft);font-size:var(--text-small);vertical-align:middle;padding:10px 2px}.pillars-table tbody tr+tr{border-top:1px solid var(--border-soft)}.pillar-cell{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.glyph-group{flex-direction:column;align-items:center;gap:3px;display:flex}.pillar-glyph{color:var(--text-primary);font-size:1.9rem;font-weight:500;line-height:1.1;display:block}.pillars-table .pillar-glyph{letter-spacing:.03em;font-size:2.5rem;font-weight:300}.pillars-table .glyph-label{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;max-width:100%}.glyph-label{font-size:var(--text-caption);color:var(--text-muted);text-align:center;max-width:74px;line-height:1.25}.hidden-stems{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.hidden-stems li{justify-content:center;align-items:baseline;gap:4px;line-height:1.3;display:flex}.hidden-stem-glyph{font-size:1.05rem}.hidden-stems li.main{font-weight:400}.hidden-stems li.middle .hidden-stem-glyph{opacity:.78}.hidden-stems li.residual .hidden-stem-glyph{opacity:.58}.hidden-stem-glyph.commanding{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.hidden-stems li .hidden-stem-glyph.commanding{opacity:1!important}.stage-mark{font-size:var(--text-caption);font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--accent);font-weight:500;line-height:1.2}.details{margin:var(--space-3) 0 0;gap:10px var(--space-2);font-size:var(--text-small);padding-top:var(--space-3);border-top:1px solid var(--border-soft);grid-template-columns:auto 1fr;display:grid}.details dt{color:var(--text-muted);font-size:var(--text-label);letter-spacing:.04em;padding-top:1px}.details dd{color:var(--text-secondary);margin:0}.details dd.ok{color:var(--success-text)}.details dd.mismatch{color:var(--error-text);font-weight:500}.details.pro-details{margin:0 0 var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--bg-surface);background:color-mix(in srgb, var(--text-primary) 3%, transparent);border-top:none}.chart-boundary-notice{margin:var(--space-2) 0 0}.mansion{font-weight:500}.mansion-favorable{color:var(--success-text)}.mansion-unfavorable{color:var(--error-text)}.mansion-mixed{color:var(--warning-text)}.mansion-glyph{color:var(--text-muted);font-size:.95rem}.mansion-meaning{font-size:var(--text-small);color:var(--text-secondary);margin-top:4px;line-height:1.55}.blend-note{color:var(--text-muted);margin-top:4px;font-size:.9em}.luck-pillars-meta{margin:0 0 var(--space-2);font-size:var(--text-small);color:var(--text-secondary)}.luck-pillars{gap:var(--space-1);padding:2px 2px var(--space-1);scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.luck-pillar{scroll-snap-align:start;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-primary);min-width:72px;transition:border-color var(--dur) var(--ease), background-color var(--dur) var(--ease);flex-direction:column;flex:none;align-items:center;gap:4px;padding:12px 12px 10px;display:flex}.luck-pillar.current{border-color:var(--accent);background:var(--accent-pale);box-shadow:var(--shadow-1)}.luck-pillar .pillar-glyph{font-size:1.6rem}.luck-pillar-age{font-size:var(--text-caption);font-variant-numeric:tabular-nums;color:var(--text-secondary)}.luck-pillar-year{font-size:var(--text-caption);font-variant-numeric:tabular-nums;color:var(--text-muted)}.luck-pillar-god{font-size:var(--text-caption);color:var(--text-secondary)}.luck-pillar-stars{font-size:var(--text-caption);text-align:center;flex-direction:column;align-self:stretch;gap:1px;margin:6px 0 0;padding:0;line-height:1.25;list-style:none;display:flex}.star-tap{font:inherit;font-size:var(--text-caption);color:inherit;border-radius:var(--radius-xs);cursor:pointer;text-align:center;width:100%;transition:background-color var(--dur-fast) var(--ease);background:0 0;border:none;border-bottom:1px dotted;padding:4px 2px;line-height:1.25;display:block}.star-tap.favorable{color:var(--success-text)}.star-tap.unfavorable{color:var(--error-text)}.star-tap.mixed{color:var(--warning-text)}.star-tap.open{background:var(--bg-selected);border-bottom-style:solid}.star-detail{margin-top:var(--space-2);border-radius:var(--radius-sm);background:var(--bg-surface);border-left:2px solid var(--relation-neutral);padding:12px 16px}.star-detail.favorable{border-left-color:var(--success)}.star-detail.unfavorable{border-left-color:var(--error)}.star-detail.mixed{border-left-color:var(--warning)}.star-detail-head{align-items:baseline;gap:var(--space-1);display:flex}.star-detail-name{font-weight:500;font-size:var(--text-body);color:var(--text-primary)}.star-detail-glyph{font-size:var(--text-small);color:var(--text-muted)}.star-detail-kind{color:var(--text-muted);font-weight:600}.star-detail.favorable .star-detail-kind{color:var(--success-text)}.star-detail.unfavorable .star-detail-kind{color:var(--error-text)}.star-detail.mixed .star-detail-kind{color:var(--warning-text)}.star-detail-close{font:inherit;color:var(--text-muted);cursor:pointer;min-width:44px;min-height:44px;transition:color var(--dur) var(--ease);background:0 0;border:none;margin:-12px -16px -12px 0;font-size:1.25rem;line-height:1}.star-detail-close:hover{color:var(--text-primary)}.star-detail-where{font-size:var(--text-caption);color:var(--text-muted);margin-top:4px}.star-detail-meaning{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--text-secondary);line-height:1.6}.element-balance{flex-direction:column;gap:10px;display:flex}.element-bar-row{align-items:center;gap:var(--space-1);font-size:var(--text-small);grid-template-columns:108px 1fr 46px;display:grid}.element-bar-label{color:var(--text-secondary);align-items:center;gap:5px;display:flex}.day-master-mark{color:var(--accent);font-size:.7rem}.element-bar-track{border-radius:var(--radius-pill);background:var(--bg-selected);height:6px;overflow:hidden}.element-bar-fill{border-radius:var(--radius-pill);height:100%;transition:width var(--dur-slow) var(--ease)}.element-bar-value{text-align:right;color:var(--text-muted);font-size:var(--text-label);font-variant-numeric:tabular-nums}.element-木 .element-bar-fill{background:var(--element-wood)}.element-火 .element-bar-fill{background:var(--element-fire)}.element-土 .element-bar-fill{background:var(--element-earth)}.element-金 .element-bar-fill{background:var(--element-metal)}.element-水 .element-bar-fill{background:var(--element-water)}.no-stars{font-size:var(--text-small);color:var(--text-muted);margin:0}.stars-list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.star-card{border-radius:var(--radius-sm);background:var(--bg-surface);border-left:2px solid var(--relation-neutral);padding:12px 16px}.star-card.favorable{border-left-color:var(--success)}.star-card.unfavorable{border-left-color:var(--error)}.star-card.mixed{border-left-color:var(--warning)}.star-head{align-items:baseline;gap:var(--space-1);display:flex}.star-name{font-weight:500;font-size:var(--text-body);color:var(--text-primary)}.star-glyph{font-size:var(--text-small);color:var(--text-muted)}.star-kind{color:var(--text-muted);margin-left:auto;font-weight:600}.star-card.favorable .star-kind{color:var(--success-text)}.star-card.unfavorable .star-kind{color:var(--error-text)}.star-card.mixed .star-kind{color:var(--warning-text)}.star-pillars{font-size:var(--text-caption);color:var(--text-muted);margin-top:3px}.star-meaning{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--text-secondary);line-height:1.6}.family-relations{gap:var(--space-3);flex-direction:column;display:flex}.family-pillar h4{margin:0 0 var(--space-1);font-size:var(--text-lead);color:var(--text-primary)}.family-list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.family-card{border-radius:var(--radius-sm);background:var(--bg-surface);border-left:2px solid var(--relation-neutral);padding:12px 16px}.family-card.group-peer{border-left-color:var(--element-metal)}.family-card.group-output{border-left-color:var(--element-wood)}.family-card.group-wealth{border-left-color:var(--element-earth)}.family-card.group-authority{border-left-color:var(--element-water)}.family-card.group-resource{border-left-color:var(--element-fire)}.family-head{align-items:baseline;gap:var(--space-1);display:flex}.family-name{font-weight:500;font-size:var(--text-body);color:var(--text-primary)}.family-glyph{font-size:var(--text-small);color:var(--text-muted)}.family-ten-god{font-size:var(--text-caption);letter-spacing:.04em;color:var(--text-muted);margin-left:auto}.family-meaning{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--text-secondary);line-height:1.6}.family-note{margin:var(--space-1) 0 0;font-size:var(--text-small);border-radius:var(--radius-xs);padding:6px 10px;line-height:1.5}.family-note-combination{background:var(--bg-selected);background:color-mix(in srgb, var(--relation-harmony) 16%, var(--bg-secondary));color:var(--success-text)}.family-note-clash{background:var(--bg-selected);background:color-mix(in srgb, var(--relation-clash) 14%, var(--bg-secondary));color:var(--error-text)}.family-note-partner{background:var(--bg-selected);background:color-mix(in srgb, var(--relation-combine) 14%, var(--bg-secondary));color:var(--warning-text)}.family-note-deep{background:var(--bg-selected);border-left:2px solid var(--accent);color:var(--text-secondary)}.follow-leader-note{border-left-color:var(--accent);color:var(--text-primary)}.family-note-empty{background:var(--bg-selected);color:var(--text-secondary)}.family-lumin{margin-top:var(--space-1);border-left:2px solid var(--border-primary);padding-left:10px}.family-stars-lead{margin:var(--space-2) 0 0;font-size:var(--text-small);color:var(--text-muted);line-height:1.5}.family-stars{margin:var(--space-1) 0 0;flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.family-star{font-size:var(--text-small);color:var(--text-secondary);border-left:2px solid var(--relation-neutral);padding-left:10px;line-height:1.5}.family-star.favorable{border-left-color:var(--success)}.family-star.unfavorable{border-left-color:var(--error)}.family-star.mixed{border-left-color:var(--warning)}.family-star-name{color:var(--text-primary);font-weight:500}.family-star-name:after{content:" — ";color:var(--text-muted);font-weight:400}.family-scope{border-left:2px solid var(--accent-soft)}.palace-link{font:inherit;font-style:inherit;color:var(--accent);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.palace-link:hover,.palace-link:focus-visible{text-decoration-style:solid}.palace-meaning{border-radius:var(--radius-xs);background:var(--bg-selected);background:color-mix(in srgb, var(--accent) 7%, var(--bg-secondary));font-size:var(--text-small);color:var(--text-secondary);margin:6px 0 0;padding:8px 12px;line-height:1.55}.palace-meaning-name{color:var(--text-primary);font-weight:600}.family-palace{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--text-secondary);font-style:italic;line-height:1.6}.palaces-scroller{margin-top:var(--space-2);-webkit-overflow-scrolling:touch;border:1px solid var(--border-soft);border-radius:var(--radius-md);overflow-x:auto}.palaces-table{border-collapse:collapse;font-size:var(--text-small);width:100%;min-width:760px}.palaces-table th,.palaces-table td{border-bottom:1px solid var(--border-soft);text-align:center;vertical-align:top;min-width:62px;padding:8px}.palaces-table tbody tr:last-child td{border-bottom:none}.palaces-table th{background:var(--bg-surface);font-family:var(--font-sans);font-weight:500;font-size:var(--text-label);color:var(--text-primary);border-bottom-color:var(--border-primary);line-height:1.3}.palace-order{font-size:var(--text-caption);font-variant-numeric:tabular-nums;color:var(--text-muted);display:block}.palace-name{display:block}.palaces-glyphs .pillar-glyph{font-size:1.4rem;font-weight:400;line-height:1.2}.palaces-god,.palaces-nayin{color:var(--text-secondary)}.palaces-stage .palace-self{color:var(--text-muted);margin-top:3px}.palaces-hidden{color:var(--text-secondary);font-size:var(--text-caption)}.palace-star{font-size:var(--text-caption);color:var(--text-secondary);margin-bottom:2px;line-height:1.35}.palace-star.favorable{color:var(--success-text)}.palace-star.unfavorable{color:var(--error-text)}.palace-star.mixed{color:var(--warning-text)}.palace-ring{max-width:460px;margin:var(--space-2) auto 0;grid-template-rows:repeat(4,minmax(66px,auto));grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.ring-cell{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg-primary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;padding:6px 4px;display:flex}.ring-cell.is-life{border-color:var(--accent);background:var(--accent-pale)}.ring-cell.is-current{box-shadow:inset 0 0 0 2px var(--element-water)}.ring-palace{font-size:var(--text-caption);color:var(--text-secondary);line-height:1.2}.ring-order{font-variant-numeric:tabular-nums;color:var(--text-muted);margin-right:3px;display:inline-block}.ring-glyphs{letter-spacing:.04em;font-size:1.2rem;line-height:1.2}.ring-decade{font-size:var(--text-caption);color:var(--text-secondary);line-height:1.2}.ring-year{font-variant-numeric:tabular-nums;color:var(--text-muted)}.ring-center{border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:var(--space-1) 2px;background:var(--bg-secondary);grid-area:2/2/span 2/span 2;grid-template-columns:repeat(4,1fr);align-items:center;gap:2px;display:grid}.ring-center-pillar{text-align:center;min-width:0}.ring-center-label{letter-spacing:normal;color:var(--text-muted);margin-bottom:3px;font-size:.6rem;line-height:1.2}.el-wood{color:var(--el-wood)}.el-fire{color:var(--el-fire)}.el-earth{color:var(--el-earth)}.el-metal{color:var(--el-metal)}.el-water{color:var(--el-water)}.branch-circle,.star-circle,.element-circles{align-items:center;gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.circle-layers{justify-content:center;gap:var(--space-1) var(--space-2);font-size:var(--text-small);flex-wrap:wrap;display:flex}.circle-toggle{min-height:32px;color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;padding:0 4px;display:inline-flex}.circle-toggle input{accent-color:var(--accent)}.circle-toggle input:disabled+*{opacity:.42;cursor:default}.circle-toggle:has(input:disabled){opacity:.42;cursor:default}.circle-svg{width:100%;max-width:380px;height:auto}.circle-rim{fill:none;stroke:var(--border-primary);stroke-width:1px}.circle-tick{stroke:var(--border-soft);stroke-width:1px}.circle-glyph{font-family:var(--font-glyph);fill:currentColor;opacity:.32;font-size:19px;font-weight:500}.circle-glyph.occupied{opacity:1}.circle-occupant{fill:var(--text-muted);font-size:8.5px}.circle-legend{flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.circle-legend-item{border:1px solid var(--border-primary);background:var(--bg-primary);border-radius:var(--radius-pill);font:inherit;font-size:var(--text-label);color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), opacity var(--dur) var(--ease);align-items:center;gap:6px;padding:5px 12px 5px 7px;display:inline-flex}.circle-legend-item:hover{border-color:var(--accent-soft)}.circle-legend-item.off{opacity:.38;text-decoration:line-through}.legend-sample{flex:none;width:26px;height:10px}.circle-empty,.circle-note{font-size:var(--text-small);color:var(--text-muted);text-align:center;max-width:380px;margin:0;line-height:1.55}.circle-pickers,.forecast-year-picker{justify-content:center;align-items:center;gap:6px var(--space-2);font-size:var(--text-small);flex-wrap:wrap;display:flex}.forecast-year-picker{justify-content:flex-start;gap:var(--space-1);color:var(--text-secondary)}.circle-pickers label{color:var(--text-secondary);align-items:center;gap:6px;display:inline-flex}.circle-pickers select,.forecast-year-picker select{font-size:var(--text-small);border-radius:var(--radius-xs);max-width:15rem;min-height:36px;padding:6px 10px}.circle-pickers select:disabled,.forecast-year-picker select:disabled{opacity:.45}.star-short{cursor:pointer;fill:var(--text-secondary);font-size:8.5px}.star-short.kind-favorable{fill:var(--success-text)}.star-short.kind-mixed{fill:var(--warning-text)}.star-short.kind-unfavorable{fill:var(--error-text)}.star-labels{outline:none}.star-labels:hover .star-short,.star-labels:focus-visible .star-short{font-weight:700}.star-labels.chosen .star-short{font-weight:700;text-decoration:underline}.star-chosen{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-surface);padding:var(--space-2);width:100%;max-width:380px}.star-chosen h4{margin:0 0 var(--space-1);font-size:var(--text-lead)}.star-chosen ul{font-size:var(--text-small);color:var(--text-secondary);margin:0;padding-left:18px;line-height:1.6}.star-chosen li.favorable{color:var(--success-text)}.star-chosen li.mixed{color:var(--warning-text)}.star-chosen li.unfavorable{color:var(--error-text)}.element-disc{fill:var(--bg-secondary);stroke:currentColor;stroke-width:1.4px}.element-disc.empty{fill:none;stroke-dasharray:3 3;opacity:.4}.element-wave{fill:none;stroke:currentColor;stroke-width:1px;opacity:.5}.element-glyph{font-family:var(--font-glyph);fill:currentColor;font-size:16px;font-weight:500}.element-glyph-outside{font-size:16px}.element-count{font-size:10px;font-weight:400}.element-state{fill:var(--text-muted);font-size:10px}.element-legend{font-size:var(--text-small);color:var(--text-secondary);width:100%;max-width:380px;margin:0;padding:0;line-height:1.6;list-style:none}.element-legend li{margin-bottom:3px}.element-legend .element-sources{color:var(--text-muted)}.interpretation-cards{margin-top:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.interpretation-card,.section-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);box-shadow:var(--shadow-1)}.section-card{margin-top:var(--space-2)}.interpretation-card>summary h3,.section-card>summary h2,.consultation-card>summary h2{font-size:1.125rem}.interpretation-card p{font-size:var(--text-body);color:var(--text-primary);max-width:68ch;margin:0;line-height:1.7}.interpretation-card p+p{margin-top:var(--space-2)}.interpretation-card p.interpretation-loading,.interpretation-loading{font-size:var(--text-small);color:var(--text-muted);margin:0}.interpretation-loading:after{content:"";background:var(--accent-soft);width:5px;height:5px;animation:pulse-soft 1.6s var(--ease) infinite;vertical-align:middle;border-radius:50%;margin-left:6px;display:inline-block}.interpretation-card p.interpretation-streaming,.interpretation-streaming{color:var(--text-muted)}.rich-text-cursor:after{content:"";background:var(--accent-soft);width:2px;height:1em;animation:pulse-soft 1.2s var(--ease) infinite;vertical-align:text-bottom;margin-left:2px;display:inline-block}.interpretation-card p.interpretation-error,.interpretation-error{margin:0 0 var(--space-1);font-size:var(--text-small);color:var(--error-text)}.partner-list{margin:0 0 var(--space-2);gap:var(--space-1);flex-direction:column;padding:0;list-style:none;display:flex}.partner-row{align-items:center;gap:var(--space-1);border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-surface);flex-wrap:wrap;padding:8px 8px 8px 16px;display:flex}.partner-name{min-width:8rem;font-size:var(--text-body);color:var(--text-primary);flex:auto}.partner-row .btn{min-height:38px;font-size:var(--text-small);padding:8px 14px}.admin-entry{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.admin-digest-day-picker{align-items:center}.admin-digest-day-picker input[type=date]{min-height:44px}.admin-digest-day-picker .btn.is-active{border-color:var(--accent);background:var(--accent-pale);color:var(--text-primary)}.admin-digest{margin-top:var(--space-2)}.admin-digest h2{margin:var(--space-3) 0 0}.admin-digest h3{margin:var(--space-3) 0 0;font-size:1.0625rem}.admin-digest-stats{gap:var(--space-1);margin-top:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.admin-stat{padding:var(--space-1);border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-soft);text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.admin-stat-value{font-family:var(--font-serif);font-size:var(--text-section);font-variant-numeric:tabular-nums;color:var(--text-primary)}.admin-stat-label{font-size:var(--text-caption);color:var(--text-muted)}.admin-funnel{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--text-secondary);flex-direction:column;gap:4px;padding-left:1.2em;display:flex}.admin-digest-note{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--text-muted)}.admin-user-list{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--text-secondary);flex-direction:column;gap:4px;padding:0;list-style:none;display:flex}.admin-user-list a{color:var(--accent)}.admin-stats{margin-top:var(--space-1)}.admin-stats-tabs .btn.is-active{border-color:var(--accent);background:var(--accent-pale);color:var(--text-primary)}.admin-people,.admin-product{margin-top:var(--space-2)}.admin-people h3,.admin-product h3{margin:var(--space-3) 0 0;font-size:1.0625rem}.admin-digest-stats-6{grid-template-columns:repeat(3,1fr);gap:4px}.admin-digest-stats-6 .admin-stat{padding:4px}.admin-digest-stats-6 .admin-stat-value{font-size:1.0625rem}.admin-digest-stats-6 .admin-stat-label{font-size:.625rem}.admin-export-list{margin:var(--space-1) 0 0;gap:var(--space-1);flex-direction:column;padding:0;list-style:none;display:flex}.admin-export-row{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.admin-person-list{margin:var(--space-1) 0 0;gap:var(--space-1);flex-direction:column;padding:0;list-style:none;display:flex}.admin-person-card{text-align:left;width:100%;padding:var(--space-1);border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-soft);font:inherit;cursor:pointer;display:block}.admin-person-card:hover,.admin-person-card:active{border-color:var(--accent)}.admin-person-head{justify-content:space-between;align-items:baseline;gap:var(--space-1);display:flex}.admin-person-name{color:var(--accent);font-weight:600}.admin-badge{font-size:var(--text-caption);color:var(--text-secondary);background:var(--border-soft);vertical-align:middle;border-radius:999px;margin-left:4px;padding:1px 5px;font-weight:400;display:inline-block}.admin-badge-premium{color:var(--accent);background:var(--accent-pale)}.admin-person-seen{font-size:var(--text-caption);color:var(--text-muted);white-space:nowrap}.admin-person-meta{font-size:var(--text-caption);color:var(--text-muted);margin-top:2px}.admin-person-figures{margin-top:var(--space-1);grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.admin-person-figure{font-size:var(--text-caption);color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;display:flex}.admin-person-figure b{font-family:var(--font-serif);color:var(--text-primary);font-size:1rem;font-weight:400}.pair-charts{gap:var(--space-2);margin:var(--space-2) 0;flex-direction:column;display:flex}.pair-types{align-items:start;gap:var(--space-1);padding:var(--space-3) var(--space-2) var(--space-2);background:radial-gradient(90% 120% at 0% 0%, var(--accent-pale) 0%, transparent 60%), radial-gradient(90% 120% at 100% 100%, var(--accent-pale) 0%, transparent 60%), var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-1), var(--shadow-2);animation:fade-in-up var(--dur-slow) var(--ease) both;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid;position:relative}.pair-type-side{text-align:center;flex-direction:column;align-items:center;min-width:0;display:flex}.pair-type-who{max-width:100%;margin:var(--space-1) 0 0;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-weight:500;overflow:hidden}.pair-type-name{font-family:var(--font-serif);color:var(--text-primary);margin:2px 0 0;font-size:1.5rem;line-height:1.1}.pair-type-element{font-size:var(--text-caption);color:var(--text-muted);margin:4px 0 0}.pair-type-stem{font-family:var(--font-glyph);color:var(--accent)}.pair-types-link{height:64px;font-family:var(--font-serif);color:var(--accent);align-items:center;gap:6px;font-size:1.75rem;font-style:italic;display:flex}.pair-types-link:before,.pair-types-link:after{content:"";background:var(--accent-soft);width:14px;height:1px}.mini-chart-type{border:1px solid var(--border-primary);border-radius:var(--radius-pill);background:var(--bg-primary);font-size:var(--text-small);vertical-align:middle;align-items:center;gap:6px;margin-left:8px;padding:2px 10px 2px 3px;font-weight:500;display:inline-flex}.mini-chart{padding:var(--space-2);border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-surface)}.mini-chart-head h4{font-size:var(--text-body);color:var(--text-primary);margin:0}.mini-chart-meta{margin:2px 0 var(--space-2);font-size:var(--text-caption);color:var(--text-muted);line-height:1.4}.mini-chart-table{table-layout:fixed;border-collapse:collapse;text-align:center;width:100%}.mini-chart-table th{font-size:var(--text-caption);font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding-bottom:6px;font-weight:500}.mini-chart-table td{border-left:1px solid var(--border-soft);vertical-align:top;padding:5px 2px}.mini-chart-table tbody tr+tr td{border-top:1px solid var(--border-soft)}.mini-chart-table td:first-child,.mini-chart-table th:first-child{border-left:0}.mini-glyph-group{flex-direction:column;align-items:center;gap:1px;display:flex}.mini-glyph{color:var(--text-primary);font-size:1.7rem;font-weight:300;line-height:1.1;display:block}.mini-label{font-size:var(--text-caption);color:var(--text-muted);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;line-height:1.2}.mini-hidden{flex-direction:column;justify-content:flex-end;align-items:center;gap:1px;margin:0;padding:0;list-style:none;display:flex}.mini-chart-table .mini-hidden-row td{vertical-align:bottom}.mini-hidden li.main{font-weight:600}.mini-hidden li.middle .mini-hidden-glyph{opacity:.78}.mini-hidden li.residual .mini-hidden-glyph{opacity:.58}.mini-hidden-glyph{font-size:1rem;line-height:1.25}.mini-palace{font-size:var(--text-caption);color:var(--text-muted);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;line-height:1.2}.mini-palace-mark{font-variant-numeric:tabular-nums;color:var(--accent);font-weight:500}.dialogue-thread{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-soft)}.dialogue-loading{margin:0 0 var(--space-1);font-size:var(--text-small);color:var(--text-muted)}.dialogue-messages{margin:0 0 var(--space-2);gap:var(--space-1);flex-direction:column;padding:0;list-style:none;display:flex}.dialogue-message{border-radius:var(--radius-md);font-size:var(--text-small);max-width:90%;animation:fade-in-up var(--dur-slow) var(--ease) both;padding:10px 14px;line-height:1.6}.dialogue-message p{font-size:inherit;color:inherit;max-width:none;margin:0}.dialogue-message p+p{margin-top:var(--space-1)}.dialogue-message-user{background:var(--accent-pale);color:var(--text-primary);border-bottom-right-radius:var(--radius-xs);align-self:flex-end}.dialogue-message-assistant{background:var(--bg-surface);border:1px solid var(--border-soft);color:var(--text-secondary);border-bottom-left-radius:var(--radius-xs);align-self:flex-start}.dialogue-input{gap:var(--space-1);align-items:flex-end;display:flex}.dialogue-input textarea{font-size:var(--text-small);resize:vertical;flex:1;min-height:44px}.dialogue-input button{white-space:nowrap}.date-event-picker,.date-range-picker,.date-partner-picker{align-items:center;gap:var(--space-1);margin-bottom:var(--space-1);font-size:var(--text-small);color:var(--text-secondary);flex-wrap:wrap;display:flex}.date-event-picker select,.date-partner-picker select,.date-range-picker input[type=date]{font-size:var(--text-small);border:1px solid var(--border-primary);border-radius:var(--radius-xs);background:var(--bg-secondary);min-height:36px;color:var(--text-primary);max-width:15rem;padding:6px 10px}.date-event-picker select:focus,.date-partner-picker select:focus,.date-range-picker input[type=date]:focus{border-color:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-pale);outline:none}.date-event-picker select:disabled,.date-partner-picker select:disabled,.date-range-picker input[type=date]:disabled{opacity:.45}.date-candidates{margin:var(--space-2) 0 0;gap:var(--space-1);flex-direction:column;padding:0;list-style:none;display:flex}.date-candidate{padding:var(--space-2);border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-surface)}.date-candidate-head{align-items:center;gap:var(--space-1);cursor:pointer;-webkit-tap-highlight-color:transparent;flex-wrap:wrap;list-style:none;display:flex}.date-candidate-head::-webkit-details-marker{display:none}.date-candidate-head::marker{content:""}.date-candidate-head:after{content:"";border-right:1.5px solid var(--text-muted);border-bottom:1.5px solid var(--text-muted);width:7px;height:7px;transition:transform var(--dur) var(--ease);flex:none;margin-left:4px;transform:translateY(-2px)rotate(45deg)}.date-candidate-details[open]>.date-candidate-head:after{transform:translateY(2px)rotate(225deg)}.date-candidate-head:hover .date-candidate-date{color:var(--accent)}.date-candidate-body{border-top:1px solid var(--border-soft);margin-top:4px;padding-top:4px}.date-candidate-date{color:var(--text-primary);font-weight:600}.date-candidate-glyphs{font-family:var(--font-glyph);letter-spacing:.04em;color:var(--text-secondary);font-size:1.05rem}.date-candidate-level{border-radius:var(--radius-pill);font-size:var(--text-caption);text-transform:lowercase;white-space:nowrap;margin-left:auto;padding:2px 10px}.date-candidate-level-excellent{color:var(--success-text);background:color-mix(in srgb, var(--success) 18%, var(--bg-secondary))}.date-candidate-level-neutral{color:var(--warning-text);background:color-mix(in srgb, var(--warning) 16%, var(--bg-secondary))}.date-candidate-level-unfavorable{color:var(--error-text);background:color-mix(in srgb, var(--error) 16%, var(--bg-secondary))}.date-candidate .mansion{font-size:var(--text-small);margin-top:6px}.date-candidate-stars{font-size:var(--text-small);color:var(--text-secondary);flex-direction:column;gap:4px;margin:6px 0 0;padding:0;line-height:1.5;list-style:none;display:flex}.date-star{border-left:2px solid var(--relation-neutral);padding-left:10px}.date-star-helps{border-left-color:var(--success)}.date-star-hinders{border-left-color:var(--error)}.mansion-meaning,.date-star-meaning{color:var(--text-muted);margin:4px 0 0;font-size:13px;line-height:1.45}.date-star-caution{border-left-color:var(--warning)}.date-star-glyph{font-family:var(--font-glyph);color:var(--text-muted)}.date-star-effect{color:var(--text-muted)}@keyframes fade-in-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pulse-soft{0%,to{opacity:.25}50%{opacity:1}}.chart-result,.error-banner,.interpretation-card,.section-card{animation:fade-in-up var(--dur-slow) var(--ease) both}.interpretation-cards>.interpretation-card:nth-child(2){animation-delay:40ms}.interpretation-cards>.interpretation-card:nth-child(3){animation-delay:80ms}.interpretation-cards>.interpretation-card:nth-child(4){animation-delay:.12s}.interpretation-cards>.interpretation-card:nth-child(n+5){animation-delay:.16s}@media (hover:hover) and (pointer:fine){.interpretation-card,.section-card,.consultation-card,.personality-type,.chart-result,.daily-energy{transition:border-color var(--dur) var(--ease)}.interpretation-card:hover,.section-card:hover,.consultation-card:hover,.personality-type:hover,.chart-result:hover,.luck-pillar:hover{border-color:var(--accent-soft)}.daily-energy:hover{border-top-color:var(--accent-soft);border-right-color:var(--accent-soft);border-bottom-color:var(--accent-soft)}.partner-row:hover{border-color:var(--border-primary)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=420px){.page{padding:var(--space-3) var(--space-2) var(--space-8)}.chart-result{padding:var(--space-2) var(--space-2) var(--space-3);border-radius:var(--radius-md)}.interpretation-card,.section-card{padding:var(--space-2);border-radius:var(--radius-md)}h1{font-size:1.5rem}.pillars-table .pillar-glyph{font-size:2.1rem}.pillars-table th[scope=row]{width:74px;padding-right:var(--space-1);font-size:.66rem}.details{grid-template-columns:1fr;gap:3px 0}.details dt{margin-top:var(--space-1)}.palace-ring{gap:3px}.ring-glyphs{font-size:1rem}.ring-palace,.ring-decade{font-size:.62rem}.element-bar-row{grid-template-columns:92px 1fr 42px}.admin-stat-value{font-size:1.375rem}}@media (width>=768px){.page{max-width:720px;padding:var(--space-6) var(--space-5) var(--space-8)}.chart-result{padding:var(--space-4)}.form{padding:var(--space-4);align-items:flex-start;gap:var(--space-2) var(--space-3);flex-flow:wrap}.form>label{flex:200px;min-width:0}.form>.gender{flex:240px;min-width:0}.gender label{max-width:200px}.form>h2,.form>button[type=submit]{flex:100%}.form>label:has(.autocomplete){flex:100%}.form>button[type=submit]{width:auto;max-width:300px}.interpretation-card,.section-card{padding:var(--space-3) var(--space-4)}.family-meaning,.family-note,.family-palace,.palace-meaning,.family-star,.family-stars-lead,.star-meaning,.star-detail-meaning,.mansion-meaning,.method-note,.warnings,.date-star-meaning,.luck-pillars-meta{max-width:74ch}}@media (width>=1024px){:root{--text-title:2.5rem}.page{max-width:880px;padding:var(--space-8) var(--space-6) 96px}.app-header{margin-bottom:var(--space-6)}.details{column-gap:var(--space-4);grid-template-columns:190px 1fr}.pillars-table .pillar-glyph{font-size:3rem}.glyph-label{font-size:var(--text-label);max-width:96px}}.form .checkbox-row{align-items:center;gap:var(--space-1);font-size:var(--text-small);color:var(--text-secondary);flex-direction:row;display:flex}.form .checkbox-row input{width:auto;margin:0}.form input[type=time]:disabled{color:var(--text-muted);background:var(--bg-surface);cursor:not-allowed}.pillar-approximate{font-size:var(--text-small);color:var(--text-muted);white-space:nowrap;font-weight:400}.unknown-hour-notice{margin-bottom:var(--space-2)}.web-login-backdrop{z-index:50;padding:var(--space-3);background:color-mix(in srgb, var(--bg-primary) 70%, transparent);overscroll-behavior:contain;justify-content:center;display:flex;position:fixed;inset:0;overflow-y:auto}.web-login-backdrop>.web-login{flex-shrink:0;margin:auto 0}.web-login{align-items:flex-start;gap:var(--space-2);width:min(420px,100%);padding:var(--space-4);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);box-shadow:var(--shadow-1);flex-direction:column;display:flex}.web-login-qr{image-rendering:pixelated;align-self:center}@media (width<=600px){.web-login-qr{display:none}}.web-account{justify-content:flex-end;align-items:center;gap:var(--space-1);font-size:var(--text-small);color:var(--text-secondary);display:flex}.daily-energy{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border:1px solid var(--border-primary);border-left:3px solid var(--accent-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);animation:fade-in-up var(--dur-slow) var(--ease) both}.daily-energy-excellent{border-left-color:var(--success)}.daily-energy-neutral{border-left-color:var(--text-muted)}.daily-energy-unfavorable{border-left-color:var(--warning)}.daily-energy-date{font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0;font-weight:500}.daily-energy-title{margin:6px 0 0;font-size:1.375rem;line-height:1.2}.daily-energy-level{border-radius:var(--radius-pill);background:var(--bg-selected);font-size:var(--text-label);letter-spacing:.02em;color:var(--text-secondary);margin:8px 0 0;padding:2px 10px;font-weight:600;display:inline-block}.daily-energy-excellent .daily-energy-level{color:var(--success-text)}.daily-energy-unfavorable .daily-energy-level{color:var(--warning-text)}.daily-energy-text,.daily-energy-note{margin:var(--space-2) 0 0;font-size:var(--text-lead);color:var(--text-primary);line-height:1.65}.daily-energy-hints{margin:var(--space-2) 0 0;color:var(--text-primary);padding:0;line-height:1.55;list-style:none}.daily-energy-hints li{border-radius:var(--radius-md);background:var(--bg-primary);border:1px solid var(--border-soft);padding:10px 12px}.daily-energy-hints li+li{margin-top:6px}.daily-energy-hint-label{font-size:var(--text-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--success-text);margin-bottom:2px;font-weight:600;display:block}.daily-energy-avoid .daily-energy-hint-label{color:var(--error-text)}.daily-energy-why{margin-top:var(--space-2)}.daily-energy-why summary{cursor:pointer;font-size:var(--text-small);color:var(--accent)}.daily-energy-footer{justify-content:space-between;align-items:center;gap:var(--space-1);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-soft);font-size:var(--text-small);color:var(--text-secondary);flex-wrap:wrap;display:flex}.daily-energy-streak{border:1px solid var(--accent-soft);border-radius:var(--radius-pill);color:var(--accent);padding:2px 10px;font-weight:600}.daily-energy-optin{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.personality-type{margin-top:var(--space-2);padding:var(--space-3);background:radial-gradient(120% 90% at 0% 0%, var(--accent-pale) 0%, transparent 55%), var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-1), var(--shadow-2);animation:fade-in-up var(--dur-slow) var(--ease) both}.personality-type-head{align-items:center;gap:var(--space-2);display:flex}.personality-type-kicker{font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0;font-weight:500}.personality-type-stem{font-family:var(--font-glyph);color:var(--accent);letter-spacing:0}.personality-type-name{margin:4px 0 0;font-size:2rem;line-height:1.05}.personality-type-tagline{margin:var(--space-2) 0;border-left:2px solid var(--accent-soft);font-family:var(--font-serif);color:var(--text-primary);padding-left:12px;font-size:1.125rem;font-style:italic;line-height:1.45}.personality-type-actions{flex-wrap:wrap}.personality-type-details{margin-top:var(--space-2);padding-top:var(--space-1);border-top:1px solid var(--border-soft)}.type-label{margin:var(--space-2) 0 var(--space-1);font-family:var(--font-sans);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:600}.personality-type-details p{margin:0;line-height:1.65}.type-list{margin:0;padding:0;list-style:none}.type-list li{padding-left:20px;line-height:1.55;position:relative}.type-list li+li{margin-top:6px}.type-list li:before{content:"";background:var(--accent-soft);width:6px;height:6px;position:absolute;top:.6em;left:3px;transform:rotate(45deg)}.type-list-flags li:before{background:var(--relation-clash)}.type-chips{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.type-chips li{border:1px solid var(--border-primary);border-radius:var(--radius-pill);background:var(--bg-primary);font-size:var(--text-small);align-items:center;gap:6px;padding:3px 12px 3px 4px;display:inline-flex}.daily-energy-collapsible[open]>.daily-energy-summary{margin-bottom:var(--space-1)}.daily-energy-stars{margin:var(--space-2) 0 0;font-size:var(--text-body);padding:0;line-height:1.55;list-style:none}.daily-energy-stars li{padding-left:20px;position:relative}.daily-energy-stars li:before{content:"";background:var(--accent-soft);width:6px;height:6px;position:absolute;top:.6em;left:3px;transform:rotate(45deg)}.daily-energy-star-unfavorable:before{background:var(--relation-clash)!important}.daily-energy-stars li+li{margin-top:4px}.portrait-options fieldset{margin:0 0 var(--space-2);border:0;padding:0}.portrait-options legend{margin-bottom:var(--space-1);color:var(--text-secondary);font-size:.875rem}.portrait-choices{gap:var(--space-1);flex-wrap:wrap;display:flex}.portrait-choice{border:1px solid var(--border-primary);color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:6px 14px;font-size:.9375rem}.portrait-choice.is-selected{border-color:var(--accent);font-weight:600}.pair-mode-switch{margin:var(--space-2) 0}.pair-mode-hint{position:relative}@media (hover:hover){.pair-mode-hint:after{content:attr(data-hint);z-index:20;border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);width:max-content;max-width:min(280px,80vw);box-shadow:var(--shadow-1);color:var(--text-primary);font-size:var(--text-small);text-align:left;white-space:normal;pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease), visibility var(--dur);padding:8px 12px;font-weight:400;line-height:1.45;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px)}.pair-mode-hint:first-child:after{left:0;transform:translateY(4px)}.pair-mode-hint:last-child:after{left:auto;right:0;transform:translateY(4px)}.pair-mode-hint:hover:after,.pair-mode-hint:focus-visible:after{opacity:1;visibility:visible;transform:translate(-50%)}.pair-mode-hint:first-child:hover:after,.pair-mode-hint:first-child:focus-visible:after,.pair-mode-hint:last-child:hover:after,.pair-mode-hint:last-child:focus-visible:after{transform:none}}.pair-mode-caption{margin:var(--space-1) 0 0}.pair-mode-kinds{margin-top:var(--space-1)}.pair-mode-kinds .portrait-choice{font-size:var(--text-small);padding:4px 12px}.portrait-result{margin-top:var(--space-2)}.portrait-image{width:100%;max-width:420px;margin:0 auto var(--space-2);border-radius:var(--radius-lg);aspect-ratio:2/3;object-fit:cover;background:var(--bg-secondary);display:block}.portrait-sign{color:var(--text-secondary);font-size:.875rem}.portrait-result h3{margin:var(--space-2) 0 var(--space-1);font-size:1rem}.portrait-actions{flex-wrap:wrap}.portrait-actions+*{margin-top:var(--space-2)}.admin-celeb-groups{flex-basis:100%;align-items:center}.celeb-intro{font-size:var(--text-small);color:var(--text-secondary);align-items:center;gap:12px;margin:0;line-height:1.55;display:flex}.celeb-groups{margin:var(--space-2) 0 0;gap:6px}.celeb-groups .portrait-choice{font-size:var(--text-small);color:var(--text-secondary);transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease), background var(--dur) var(--ease);padding:5px 12px}.celeb-groups .portrait-choice.is-selected{background:var(--accent-pale);border-color:var(--accent-soft);color:var(--text-primary)}.celeb-list{margin:var(--space-2) 0 0;grid-template-columns:1fr;gap:8px;padding:0;list-style:none;display:grid}@media (width>=520px){.celeb-list{grid-template-columns:1fr 1fr}}.celeb-card{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-primary);width:100%;min-height:68px;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);align-items:center;gap:12px;padding:8px 12px 8px 8px;display:flex}.celeb-card:hover{border-color:var(--accent-soft);box-shadow:var(--shadow-2)}.celeb-card.is-exact{border-left:3px solid var(--accent-soft);padding-left:6px}.celeb-avatar{object-fit:cover;object-position:center 20%;background:var(--bg-surface);width:52px;height:52px;box-shadow:0 0 0 1px var(--border-primary), 0 0 0 3px var(--bg-primary), 0 0 0 4px var(--accent-pale);border-radius:50%;flex:0 0 52px}.celeb-avatar-icon{box-shadow:none;background:0 0;display:flex}.celeb-card-text{flex-direction:column;gap:2px;min-width:0;display:flex}.celeb-card-name{font-family:var(--font-serif);color:var(--text-primary);font-size:1.0625rem;line-height:1.25}.celeb-card-match{font-size:var(--text-label);color:var(--text-muted);line-height:1.35}.celeb-card-match.is-exact{color:var(--accent);font-weight:600}.celeb-details{margin-top:0}.celeb-back{font-size:var(--text-small);padding:4px 0}.celeb-hero{text-align:center}.celeb-photo{margin:var(--space-1) auto var(--space-2);max-width:240px}.celeb-photo img{aspect-ratio:4/5;object-fit:cover;object-position:center 20%;border-radius:var(--radius-lg);background:var(--bg-surface);width:100%;box-shadow:0 0 0 1px var(--border-primary), 0 0 0 5px var(--bg-secondary), 0 0 0 6px var(--accent-soft), var(--shadow-2);display:block}.celeb-photo figcaption,.celeb-photo figcaption a{font-size:var(--text-caption);color:var(--text-muted);margin-top:10px}.celeb-photo-icon{margin:var(--space-1) 0 var(--space-2);justify-content:center;display:flex}.celeb-name{margin:0;font-size:1.625rem;line-height:1.15}.celeb-meta{font-size:var(--text-small);color:var(--text-secondary);margin:6px 0 0}.celeb-type{margin:var(--space-1) 0 0;border:1px solid var(--border-primary);border-radius:var(--radius-pill);font-size:var(--text-small);color:var(--text-primary);align-items:center;gap:8px;padding:3px 12px 3px 4px;display:inline-flex}.celeb-pillars{margin:var(--space-3) 0 var(--space-2);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--border-soft);grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.celeb-pillars>div{background:var(--bg-primary);flex-direction:column-reverse;align-items:center;gap:4px;padding:10px 4px;display:flex}.celeb-pillars dt{font-size:var(--text-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-weight:600}.celeb-pillars dd{font-family:var(--font-glyph);flex-direction:column;align-items:center;margin:0;font-size:1.5rem;line-height:1.2;display:flex}.celeb-elements{margin:0 0 var(--space-2);flex-wrap:wrap;justify-content:center;gap:6px;padding:0;list-style:none;display:flex}.celeb-elements li{border-radius:var(--radius-pill);background:var(--bg-surface);font-size:var(--text-label);color:var(--text-secondary);padding:2px 10px}.celeb-elements li span{font-weight:600}.celeb-stars{margin:0 0 var(--space-2);font-size:var(--text-small);text-align:center;color:var(--text-secondary)}.celeb-facts{margin:0 0 var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);background:var(--bg-primary);border:1px solid var(--border-soft);line-height:1.65}.admin-celebs-list{margin:var(--space-2) 0 0;padding:0;list-style:none}.admin-celebs-list li{justify-content:space-between;align-items:center;gap:var(--space-1);border-bottom:1px solid var(--border-soft);flex-wrap:wrap;padding:6px 0;display:flex}.type-emblem{flex:none;display:block}.type-emblem-disc{fill:currentColor;fill-opacity:.07}.type-emblem-ring{fill:none;stroke:var(--accent-soft);stroke-width:1.25px}.type-emblem-ring-inner{fill:none;stroke:currentColor;stroke-opacity:.22;stroke-width:.75px}.type-emblem-art{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.type-emblem-art .fill{fill:currentColor;fill-opacity:.16}.type-emblem-art .hair{stroke-width:.9px;stroke-opacity:.7}.type-emblem-art .gold{stroke:var(--accent);stroke-width:1.2px}.type-emblem-art .fill-solid{fill:currentColor;stroke:none}.type-emblem-art .fill-gold{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1px}.type-emblem-dots{fill:var(--accent-soft)}.celeb-facts>:first-child,.celeb-facts>:first-child>:first-child{margin-top:0}.celeb-facts>:last-child,.celeb-facts>:last-child>:last-child{margin-bottom:0}.celeb-details a{color:var(--accent)}.order-form{align-items:flex-start;gap:var(--space-2);flex-direction:column;width:100%;display:flex}.order-field{gap:var(--space-1);flex-direction:column;width:100%;display:flex}.order-field input{box-sizing:border-box;width:100%;font:inherit;padding:var(--space-1) var(--space-2);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary)}.order-field input[aria-invalid=true]{border-color:var(--error)}.order-field-error{color:var(--error-text);font-size:.875rem}.order-dialog,.gifts-dialog{position:relative}.order-close{top:var(--space-1);right:var(--space-1);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;padding:0;font-size:1.5rem;line-height:1;position:absolute}.order-close:hover{color:var(--text-primary);background:var(--bg-selected)}.order-dialog>h2,.gifts-dialog>h2{padding-right:40px}.order-dismiss{align-self:stretch}.order-target{color:var(--accent);margin:0;font-weight:600}.order-options{gap:var(--space-1);border:none;flex-direction:column;margin:0;padding:0;display:flex}.order-option{align-items:flex-start;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:1px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;display:flex}.order-option.is-selected{border-color:var(--accent-soft);background:var(--bg-selected)}.order-option input{margin-top:4px}.order-option>span{flex-direction:column;gap:2px;display:flex}.order-caption{font-size:var(--text-caption);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:0 0 -6px;font-weight:600}.order-pay{grid-template-columns:1fr 1fr;align-self:stretch;gap:10px;display:grid}.order-pay.is-single{grid-template-columns:1fr}.order-pay .pay-tile{text-align:left;letter-spacing:0;border:none;border-radius:14px;flex-direction:column;justify-content:space-between;align-items:stretch;gap:10px;min-height:128px;padding:12px;font-weight:400;display:flex;position:relative;overflow:hidden}.pay-tile-top,.pay-tile-price{justify-content:space-between;align-items:center;display:flex}.pay-tile-icon{background:#fff3;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.pay-tile-tag{border-radius:var(--radius-pill);letter-spacing:.06em;text-transform:uppercase;background:#fff3;padding:3px 7px;font-size:.65625rem;font-weight:600}.pay-tile-body{flex-direction:column;gap:2px;display:flex}.pay-tile-title{font-size:var(--text-body);font-weight:650;line-height:1.2}.pay-tile-sub{font-size:var(--text-label);opacity:.82;line-height:1.3}.pay-tile-price{letter-spacing:-.01em;font-size:1.125rem;font-weight:700}.pay-tile-stars{align-items:center;gap:5px;display:inline-flex}.pay-tile-arrow{background:#fff3;border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.order-pay .pay-tile-ru{color:var(--bg-secondary);background:linear-gradient(155deg, var(--accent-soft) -45%, var(--accent) 60%);box-shadow:0 6px 18px -10px #9c6f2cbf,inset 0 1px #ffffff40}.order-pay .pay-tile-tg{color:#fff;background:linear-gradient(160deg,#37aee2,#1e96c8);box-shadow:0 6px 18px -10px #1e96c8e6,inset 0 1px #ffffff47}.order-pay .pay-tile-tg:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffd65a59,#0000 65%);border-radius:50%;width:96px;height:96px;position:absolute;top:-26px;right:-26px}.order-pay .pay-tile:hover:not(:disabled){filter:brightness(1.05)}.order-pay .pay-tile:disabled{opacity:.5;cursor:default;box-shadow:none}.tg-star{vertical-align:-2px;flex:none}.order-pay-info{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-surface);align-self:stretch;padding:4px 14px}.order-pay-info>p{font-size:var(--text-small);color:var(--text-secondary);gap:10px;margin:0;padding:10px 0;line-height:1.45;display:flex}.order-pay-info>p+p{border-top:1px solid var(--border-soft)}.order-pay-info strong{color:var(--text-primary);margin-bottom:1px;font-weight:600;display:block}.order-pay-info-icon{border-radius:7px;flex:none;place-items:center;width:22px;height:22px;margin-top:1px;display:grid}.order-pay-info-icon.is-ru{color:var(--accent);background:var(--accent-pale)}.order-pay-info-icon.is-tg{background:linear-gradient(160deg,#37aee2,#1e96c8)}.order-safe{font-size:var(--text-label);color:var(--text-muted);justify-content:center;align-self:stretch;align-items:center;gap:6px;margin:-4px 0 0;display:flex}@media (width<=420px){.web-login.order-dialog{padding:var(--space-3) 20px}}.interpretation-card p.interpretation-teaser{margin:0 0 var(--space-1);-webkit-mask-image:linear-gradient(#000 60%,#0000004d);mask-image:linear-gradient(#000 60%,#0000004d)}.interpretation-card p.interpretation-locked,.interpretation-locked{margin:0 0 var(--space-1);font-size:var(--text-small);color:var(--text-secondary)}.dialogue-quota{margin:0 0 var(--space-1);font-size:var(--text-small);color:var(--text-muted)}.dialogue-exhausted{align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.dialogue-exhausted p{font-size:var(--text-small);color:var(--text-secondary);margin:0}.access-until{margin:calc(-1 * var(--space-2)) 0 var(--space-3);font-size:var(--text-small);color:var(--accent)}.gifts-list{align-self:stretch}.gifts-list li{padding:0}.gift-item{align-items:center;gap:var(--space-2);width:100%;padding:10px var(--space-2) 10px 12px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.gift-item>span{flex-direction:column;display:flex}.daily-energy-locked{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.daily-energy-trial{margin:var(--space-2) 0 0;font-size:var(--text-small);color:var(--text-secondary)}.pair-result-anchor{scroll-margin-top:var(--space-2)}.gift-friend h3{margin:var(--space-3) 0 var(--space-1);font-size:var(--text-body)}.gift-friend-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.gift-friend-list li{gap:var(--space-1);display:grid}.gift-friend-url{font-size:var(--text-small);color:var(--text-secondary);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.reviews-section{margin-top:var(--space-2);padding:var(--space-3) 0;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);position:relative;overflow:hidden}.reviews-mark{top:var(--space-1);right:var(--space-2);font-family:var(--font-glyph);color:var(--accent-pale);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:5.5rem;line-height:1;position:absolute}.reviews-head,.reviews-actions{padding:0 var(--space-3);position:relative}.review-eyebrow{font-size:var(--text-caption);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0 0 6px}.reviews-head h2{font-family:var(--font-serif);margin:0;font-size:1.375rem;font-weight:400;line-height:1.2}.reviews-lead{margin:var(--space-2) 0 0;max-width:40ch;font-size:var(--text-body);color:var(--text-secondary);line-height:1.6}.reviews-summary{margin:var(--space-2) 0 4px;align-items:center;gap:14px;display:flex}.reviews-score{font-family:var(--font-serif);font-size:2.75rem;line-height:1}.reviews-summary-meta{flex-direction:column;gap:5px;display:flex}.reviews-count{font-size:var(--text-small);color:var(--text-muted)}.review-stars{color:var(--accent);gap:3px;display:inline-flex}.review-stars svg{fill:currentColor;width:15px;height:15px}.review-stars-sm svg{width:12px;height:12px}.review-stars .is-off{color:var(--border-primary)}.reviews-themes{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.reviews-theme{font-size:var(--text-label);color:var(--text-secondary);background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-pill);padding:5px 10px}.reviews-theme strong{color:var(--accent);margin-left:4px;font-weight:500}.reviews-carousel{padding:18px var(--space-3) 4px;scroll-snap-type:x mandatory;scroll-padding:0 var(--space-3);scrollbar-width:none;overscroll-behavior-x:contain;gap:12px;display:flex;overflow-x:auto}.reviews-carousel::-webkit-scrollbar{display:none}.reviews-carousel>.review-card{scroll-snap-align:start;flex:0 0 min(300px,82%)}.reviews-dots{justify-content:center;gap:6px;margin-top:12px;display:flex}.reviews-dots i{background:var(--border-primary);width:6px;height:6px;transition:width var(--dur) var(--ease), background-color var(--dur) var(--ease);border-radius:3px}.reviews-dots i.is-active{background:var(--accent-soft);width:18px}.reviews-actions{flex-direction:column;gap:10px;margin-top:18px;display:flex}.reviews-write-link{font:inherit;font-size:var(--text-body);color:var(--accent);cursor:pointer;background:0 0;border:none;padding:6px}.review-card{padding:var(--space-2) var(--space-2) 14px;background:var(--bg-primary);border:1px solid var(--border-soft);border-radius:var(--radius-md);flex-direction:column;display:flex}.review-card-top{justify-content:space-between;align-items:center;display:flex}.review-source{font-size:var(--text-caption);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.reviews-count-plain{margin:var(--space-2) 0 0}.review-date{font-size:var(--text-label);color:var(--text-muted)}.review-quote{font-family:var(--font-serif);color:var(--text-primary);overflow-wrap:anywhere;margin:10px 0 0;font-size:1.03rem;line-height:1.55}.review-quote.is-clamped{-webkit-line-clamp:7;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.review-author{align-items:center;gap:10px;margin-top:auto;padding-top:12px;display:flex}.review-quote{margin-bottom:14px}.review-quote+.review-author{border-top:1px solid var(--border-soft)}.review-author-text{flex-direction:column;gap:2px;min-width:0;display:flex}.review-author-name{font-size:.875rem;font-weight:500}.review-author-sub{font-size:var(--text-label);color:var(--text-muted)}.review-feature{font-size:var(--text-caption);color:var(--text-muted);white-space:nowrap;margin-left:auto}.review-seal-empty{width:36px;height:36px;font-family:var(--font-glyph);color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:50%;flex:none;place-items:center;font-size:16px;display:grid}.review-helpful{font:inherit;font-size:var(--text-label);color:var(--text-muted);border:1px solid var(--border-soft);border-radius:var(--radius-pill);cursor:pointer;background:0 0;align-self:flex-start;margin-top:10px;padding:4px 10px}.review-helpful.is-active{color:var(--accent);border-color:var(--accent-soft);background:var(--accent-pale)}.review-reply{font-size:var(--text-small);color:var(--text-secondary);background:var(--bg-primary);border-left:2px solid var(--accent-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin-top:12px;padding:10px 12px;line-height:1.5}.review-reply-label{font-size:var(--text-caption);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:3px;font-weight:500;display:block}.review-sheet-backdrop{z-index:60;background:color-mix(in srgb, var(--text-primary) 28%, transparent);animation:review-fade var(--dur-slow) var(--ease);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.review-sheet{overscroll-behavior:contain;width:min(560px,100%);max-height:calc(100dvh - 40px);padding:10px var(--space-2) calc(var(--space-3) + env(safe-area-inset-bottom,0px));background:var(--bg-primary);box-shadow:var(--shadow-2);animation:review-rise var(--dur-slow) var(--ease);border-radius:20px 20px 0 0;position:relative;overflow-y:auto}.review-sheet .review-card{background:var(--bg-secondary)}.review-sheet .review-quote{font-size:.97rem}@keyframes review-fade{0%{opacity:0}}@keyframes review-rise{0%{opacity:0;transform:translateY(24px)}}@media (prefers-reduced-motion:reduce){.review-sheet-backdrop,.review-sheet{animation:none}}.review-sheet-grab{background:var(--border-primary);border-radius:2px;width:36px;height:4px;margin:0 auto 14px;display:block}.review-sheet-close{top:26px;right:var(--space-2);width:32px;height:32px;color:var(--text-muted);background:var(--bg-surface);cursor:pointer;border:none;border-radius:50%;padding:0;font-size:1.25rem;line-height:1;position:absolute}.review-sheet-title{font-family:var(--font-serif);margin:0;padding-right:40px;font-size:1.375rem;font-weight:400;line-height:1.25}.review-sheet-count{font-family:var(--font-sans);font-size:var(--text-body);color:var(--text-muted)}.review-bars{flex-direction:column;gap:5px;margin:14px 0 4px;display:flex}.review-bar{font-size:var(--text-label);color:var(--text-muted);align-items:center;gap:8px;display:flex}.review-bar-track{background:var(--bg-selected);border-radius:2px;flex:1;height:4px;overflow:hidden}.review-bar-fill{background:var(--accent-soft);height:100%;display:block}.review-bar-pct{text-align:right;width:32px}.review-chips{margin:var(--space-2) calc(-1 * var(--space-2)) 4px;padding:0 var(--space-2);scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.review-chips::-webkit-scrollbar{display:none}.review-chips.is-wrap{flex-wrap:wrap;margin:0;padding:0}.review-chip{font:inherit;font-size:var(--text-small);white-space:nowrap;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-pill);cursor:pointer;flex:none;padding:7px 12px}.review-chip.is-active{color:var(--bg-primary);background:var(--text-primary);border-color:var(--text-primary)}.review-chip.is-pick.is-active{color:var(--accent);background:var(--accent-pale);border-color:var(--accent-soft)}.review-sort{font-size:var(--text-label);color:var(--text-muted);justify-content:space-between;margin:12px 0 8px;display:flex}.review-sort-toggle{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}.review-sort-toggle strong{color:var(--text-secondary);font-weight:500}.review-sort-toggle strong:after{content:" ▾"}.review-list{flex-direction:column;gap:10px;display:flex}.review-more{margin-top:12px}.review-status{margin:var(--space-1) 0 0}.review-rate{justify-content:center;gap:6px;margin:22px 0 6px;display:flex}.review-rate button{color:var(--accent);cursor:pointer;transition:transform var(--dur-fast) var(--ease), color var(--dur) var(--ease);background:0 0;border:none;padding:2px}.review-rate button:active{transform:scale(.9)}.review-rate button.is-off{color:var(--border-primary)}.review-rate svg{fill:currentColor;width:40px;height:40px;display:block}.review-rate-label{text-align:center;font-family:var(--font-serif);color:var(--text-secondary);margin:0;font-size:1.0625rem;font-style:italic}.review-field-label{font-size:var(--text-label);color:var(--text-muted);margin:20px 0 8px;display:block}.review-textarea{position:relative}.review-textarea textarea{width:100%;min-height:108px;font-family:var(--font-serif);color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);resize:vertical;padding:12px 14px 26px;font-size:1rem;line-height:1.5;display:block}.review-textarea textarea::placeholder{color:var(--text-muted)}.review-counter{font-size:var(--text-caption);color:var(--text-muted);position:absolute;bottom:8px;right:12px}.review-sign{flex-direction:column;gap:6px;display:flex}.review-sign-option{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:10px;padding:10px 12px;display:flex}.review-sign-option.is-active{background:var(--accent-pale);border-color:var(--accent-soft)}.review-sign-option input{opacity:0;pointer-events:none;position:absolute}.review-radio{border:1.5px solid var(--border-primary);border-radius:50%;flex:none;width:18px;height:18px}.review-sign-option.is-active .review-radio{border:5px solid var(--accent)}.review-sign-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.review-submit{margin-top:var(--space-2)}.review-note{text-align:center;font-size:var(--text-label);color:var(--text-muted);margin:10px 0 0;line-height:1.5}.review-delete{margin:12px auto 0;display:block}.review-thanks{padding:var(--space-2) var(--space-1) var(--space-3);text-align:center}.review-thanks-seal{width:72px;height:72px;margin:0 auto var(--space-2);font-family:var(--font-glyph);color:var(--accent);background:var(--accent-pale);border:1px solid var(--accent-soft);border-radius:50%;place-items:center;font-size:2.1rem;display:grid}.review-thanks h3{font-family:var(--font-serif);margin:0;font-size:1.375rem;font-weight:400}.review-thanks p{font-size:var(--text-body);color:var(--text-secondary);margin:10px 0 0;line-height:1.6}.review-sheet.is-compact .review-sheet-title{display:none}.admin-reviews-list{margin:var(--space-2) 0 0;padding:0;list-style:none}.admin-reviews-list li{padding:var(--space-2) 0;border-bottom:1px solid var(--border-soft);gap:6px;display:grid}.admin-reviews-list p{margin:0}.admin-review-stars{color:var(--accent)}.admin-review-text{font-family:var(--font-serif);line-height:1.5}.admin-review-reply{width:100%;font:inherit;font-size:var(--text-small);color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:8px 10px}.admin-receipt-period{margin-top:var(--space-1)}.admin-receipt-period label{font-size:var(--text-small);color:var(--text-secondary);align-items:center;gap:4px;display:inline-flex}.admin-receipt-filter{margin-top:var(--space-1);font-size:var(--text-small);color:var(--text-secondary);align-items:center;gap:6px;display:flex}.admin-receipt-card{padding:var(--space-1);border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-soft)}.admin-receipt-card a{color:var(--accent)}.admin-receipt-service{justify-content:space-between;align-items:center;gap:var(--space-1);font-size:var(--text-small);margin-top:4px;display:flex}.admin-copy-btn{min-height:32px;font-size:var(--text-caption);flex-shrink:0;padding:4px 10px}.admin-badge-warn{color:var(--text-primary);background:var(--accent-pale);border:1px solid var(--accent)}.admin-receipt-download{margin-top:var(--space-2)}.admin-receipt-manual{gap:var(--space-1);margin-top:var(--space-1);display:flex}.admin-receipt-manual input{min-width:0;min-height:32px;font-size:var(--text-caption);flex:1}.admin-receipt-paste-toggle{margin-top:var(--space-1)}.admin-receipt-paste{align-items:flex-start;gap:var(--space-1);margin-top:var(--space-1);flex-direction:column;display:flex}.admin-receipt-paste textarea{width:100%;font-size:var(--text-caption)}.admin-receipt-result{margin:var(--space-1) 0 0;font-size:var(--text-small);color:var(--text-primary)}
