:root{--background:#ffffff;--foreground:#171717;--color-bg:#ffffff;--color-bg-subtle:#f6f7f9;--color-surface:#ffffff;--color-surface-sunken:#f1f2f5;--color-border:#e3e5ea;--color-border-strong:#c7cbd3;--color-text-primary:#1b1f27;--color-text-secondary:#5c6270;--color-text-tertiary:#6b7080;--color-text-inverse:#ffffff;--color-primary:#1e2a44;--color-primary-hover:#16203a;--color-primary-active:#101827;--color-accent:#2e5fe8;--color-accent-hover:#244ecc;--color-accent-subtle-bg:#edf2fe;--color-success:#1c7a4d;--color-success-bg:#e8f5ee;--color-success-border:#b8e0c9;--color-error:#dc2626;--color-error-bg:#fdecec;--color-error-border:#f5b8b5;--color-warning:#b45309;--color-warning-bg:#fef6e7;--color-warning-border:#f6d9a0;--color-focus-ring:#2e5fe8;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-pill:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed;--color-bg:#14161b;--color-bg-subtle:#1b1e25;--color-surface:#1e2129;--color-surface-sunken:#262a33;--color-border:#33373f;--color-border-strong:#454a54;--color-text-primary:#edeef1;--color-text-secondary:#a6abb6;--color-text-tertiary:#8a8f9c;--color-text-inverse:#14161b;--color-primary:#3a4b6e;--color-primary-hover:#445683;--color-primary-active:#526598;--color-accent:#6c93f5;--color-accent-hover:#85a6f7;--color-accent-subtle-bg:#1b2a47;--color-success:#3fbe82;--color-success-bg:#16261d;--color-success-border:#2c5b41;--color-error:#f0655f;--color-error-bg:#2b1716;--color-error-border:#6b2c29;--color-warning:#e3a63e;--color-warning-bg:#2a2013;--color-warning-border:#6b5426;--color-focus-ring:#6c93f5}}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden}body{color:var(--color-text-primary);background:var(--color-bg);font-family:system-ui,-apple-system,Segoe UI,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;line-height:1.6;font-size:var(--text-base)}a{color:var(--color-accent);text-decoration:none}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:var(--text-base);font-weight:600;padding:.625rem 1.25rem;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;line-height:1.4;font-family:inherit;white-space:nowrap;transition:background-color .12s ease,border-color .12s ease}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-primary:active{background:var(--color-primary-active)}.btn-primary:disabled{background:var(--color-border-strong);color:var(--color-text-tertiary);cursor:not-allowed}.btn-secondary{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-border-strong)}.btn-secondary:hover{background:var(--color-surface-sunken)}.btn-ghost{background:transparent;color:var(--color-accent);padding:.375rem .5rem}.btn-ghost:hover{text-decoration:underline}.btn-sm{font-size:var(--text-sm);padding:.375rem .875rem}.btn-block{width:100%}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:600;padding:2px 10px;border-radius:var(--radius-pill);white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.badge-waiting{background:var(--color-accent-subtle-bg);color:var(--color-accent-hover)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:var(--radius-md)}table.ds-table{border-collapse:collapse;width:100%;min-width:560px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.ds-table thead th{text-align:left;font-weight:500;color:var(--color-text-secondary);background:var(--color-surface-sunken);border-bottom:1px solid var(--color-border-strong)}table.ds-table tbody td,table.ds-table thead th{font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}table.ds-table tbody td{border-bottom:1px solid var(--color-border);vertical-align:middle}table.ds-table tbody tr:hover{background:var(--color-surface-sunken)}table.ds-table tbody tr:last-child td{border-bottom:none}.empty-state{text-align:center;padding:var(--space-8);background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-secondary)}.score-row{display:grid;grid-template-columns:160px 1fr 48px;align-items:center;grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-2)}.score-row .score-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.score-track{height:8px;background:var(--color-surface-sunken);overflow:hidden}.score-fill,.score-track{border-radius:var(--radius-sm)}.score-fill{height:100%;background:var(--color-accent)}.score-value{font-size:var(--text-sm);font-weight:600;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hero-number{font-size:var(--text-2xl);font-weight:700;color:var(--color-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.slot-fieldset{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-3)}.slot-fieldset legend{font-size:var(--text-sm);font-weight:600;padding:0 var(--space-1)}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));grid-gap:var(--space-2);gap:var(--space-2);margin-top:var(--space-2)}.slot-chip{display:flex;align-items:center;justify-content:center;gap:var(--space-1);min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.slot-chip:has(input:checked){border:1.5px solid var(--color-accent);background:var(--color-accent-subtle-bg);color:var(--color-accent-hover);font-weight:600}.slot-chip:focus-within{outline:2px solid var(--color-focus-ring);outline-offset:2px}.slot-chip input{accent-color:var(--color-accent);width:16px;height:16px}.alert{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-sm)}.alert-error{background:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error)}.alert-success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success)}.status-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.status-card .accent-bar{height:4px}.status-card .status-body{padding:var(--space-8) var(--space-6);text-align:center}.status-card.waiting .accent-bar{background:var(--color-accent)}.status-card.success .accent-bar{background:var(--color-success)}.status-card.error .accent-bar{background:var(--color-error)}.status-card.neutral .accent-bar{background:var(--color-border-strong)}.status-icon{width:40px;height:40px;margin:0 auto var(--space-4)}.status-card h1,.status-card h2{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-2);text-wrap:balance}.status-card .status-text{font-size:var(--text-base);color:var(--color-text-secondary)}.fact-panel{margin-top:var(--space-6);background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-md);padding:var(--space-4);text-align:left;font-size:var(--text-sm)}.fact-panel dt{font-weight:600;color:var(--color-text-primary);margin-bottom:2px}.fact-panel dd{color:var(--color-text-secondary);margin-bottom:var(--space-3);word-break:break-all;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fact-panel dd:last-child{margin-bottom:0}@keyframes ds-pulse{0%,to{opacity:1}50%{opacity:.35}}.pulse-dot{animation:ds-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.pulse-dot{animation:none}}.admin-shell{min-height:100vh;display:grid;grid-template-columns:232px minmax(0,1fr);background:radial-gradient(120% 80% at 0 0,color-mix(in srgb,var(--color-accent) 6%,transparent) 0,transparent 58%),var(--color-bg-subtle)}.admin-side{position:-webkit-sticky;position:sticky;top:0;align-self:start;height:100vh;display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6) var(--space-4);background:color-mix(in srgb,var(--color-surface) 82%,transparent);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);border-right:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);z-index:20}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.admin-side,.admin-tabs{background:var(--color-surface)}}.admin-side-brand{display:block;font-weight:700;font-size:var(--text-base);line-height:1.35;color:var(--color-primary)}.admin-side-brand small{display:block;font-size:var(--text-xs);font-weight:500;color:var(--color-text-tertiary)}.admin-side-nav{display:flex;flex-direction:column;gap:2px;flex-grow:1}.admin-side-link{position:relative;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary);transition:background-color .22s cubic-bezier(.2,.9,.25,1),color .22s cubic-bezier(.2,.9,.25,1),box-shadow .22s cubic-bezier(.2,.9,.25,1)}.admin-side-link svg{flex-shrink:0}.admin-side-link:hover{background:color-mix(in srgb,var(--color-text-primary) 6%,transparent);color:var(--color-text-primary)}.admin-side-link.is-current{background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent) 22%,transparent),0 8px 20px -14px color-mix(in srgb,var(--color-accent) 90%,transparent)}.admin-side-link.is-current:before{content:"";position:absolute;left:-7px;top:50%;width:3px;height:18px;transform:translateY(-50%);border-radius:var(--radius-pill);background:var(--color-accent)}.admin-side-foot{border-top:1px solid var(--color-border);padding-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.admin-side-user{font-size:var(--text-xs);color:var(--color-text-secondary);overflow-wrap:anywhere}.admin-side-role{display:block;color:var(--color-text-tertiary)}.admin-body{display:flex;flex-direction:column;min-width:0}.admin-tabs{display:flex;align-items:stretch;gap:var(--space-6);padding:0 var(--space-8);background:color-mix(in srgb,var(--color-surface) 78%,transparent);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);border-bottom:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);overflow-x:auto;position:-webkit-sticky;position:sticky;top:0;z-index:10}.admin-tab{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);white-space:nowrap;padding:var(--space-3) 2px;font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary);transition:color .22s cubic-bezier(.2,.9,.25,1)}.admin-tab:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:var(--radius-pill);background:transparent;transition:background-color .22s cubic-bezier(.2,.9,.25,1)}.admin-tab:hover{color:var(--color-text-primary)}.admin-tab:hover:after{background:color-mix(in srgb,var(--color-text-primary) 18%,transparent)}.admin-tab.is-current{color:var(--color-accent)}.admin-tab.is-current:after{background:var(--color-accent)}.admin-main{max-width:1120px;width:100%;padding:var(--space-8)}.page-head{margin-bottom:var(--space-6)}.page-title{font-size:var(--text-xl);font-weight:700;line-height:1.35}.page-lead{margin-top:var(--space-1);max-width:76ch}.page-lead,.page-stats{font-size:var(--text-sm);color:var(--color-text-secondary)}.page-stats{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);margin-top:var(--space-3)}.page-stats b{color:var(--color-text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.section-head{margin-bottom:var(--space-4)}.section-title{font-size:var(--text-base);font-weight:700}.section-lead{margin-top:var(--space-1);max-width:76ch;font-size:var(--text-sm);color:var(--color-text-secondary)}.stack-4>*+*{margin-top:var(--space-4)}.stack-6>*+*{margin-top:var(--space-6)}.home-grid{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.home-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);background:color-mix(in srgb,var(--color-surface) 88%,transparent);border:1px solid color-mix(in srgb,var(--color-border) 80%,transparent);border-radius:var(--radius-lg);color:inherit;transition:transform .26s cubic-bezier(.2,.9,.25,1),border-color .26s cubic-bezier(.2,.9,.25,1),box-shadow .26s cubic-bezier(.2,.9,.25,1)}.home-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--color-accent) 45%,transparent);box-shadow:0 18px 40px -26px rgba(16,24,39,.55)}@media (prefers-reduced-motion:reduce){.home-card{transition:border-color .26s ease}.home-card:hover{transform:none}}.home-card-title{font-size:var(--text-sm);font-weight:700;color:var(--color-text-primary)}.home-card-desc{font-size:var(--text-xs);color:var(--color-text-secondary)}.input,.select{width:100%;min-height:40px;padding:.5rem .75rem;font-family:inherit;font-size:var(--text-sm);line-height:1.5;color:var(--color-text-primary);background:color-mix(in srgb,var(--color-surface-sunken) 55%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-border-strong) 70%,transparent);border-radius:var(--radius-md);transition:border-color .2s cubic-bezier(.2,.9,.25,1),background-color .2s cubic-bezier(.2,.9,.25,1),box-shadow .2s cubic-bezier(.2,.9,.25,1)}.input::placeholder{color:var(--color-text-tertiary)}.input:hover:not(:disabled),.select:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-text-tertiary) 80%,transparent)}.input:focus-visible,.select:focus-visible{outline:none;background:var(--color-surface);border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}.input:disabled,.select:disabled{background:var(--color-surface-sunken);color:var(--color-text-tertiary);cursor:not-allowed}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:2rem;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%235c6270' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M2.5 4.5 6 8l3.5-3.5'/></svg>");background-repeat:no-repeat;background-position:right .7rem center;background-size:12px 12px;cursor:pointer}@media (prefers-color-scheme:dark){.select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%23a6abb6' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M2.5 4.5 6 8l3.5-3.5'/></svg>")}}.select:disabled{cursor:not-allowed}.field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.field-label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary)}.field-label .req{margin-left:var(--space-1);font-size:var(--text-xs);font-weight:600;color:var(--color-accent)}.field-hint{font-size:var(--text-xs);color:var(--color-text-secondary)}.field-sm .input,.field-sm .select{min-height:32px;padding-top:.25rem;padding-bottom:.25rem;font-size:var(--text-xs)}.form-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.form-row>.field{flex:1 1 220px}.field-narrow{max-width:220px}.form-row>.field-narrow{flex:0 1 180px}.form-row>.form-submit{flex:0 0 auto;white-space:nowrap}.form-actions{flex-wrap:wrap;gap:var(--space-3)}.form-actions,.form-inline{display:flex;align-items:center}.form-inline{gap:var(--space-2)}.form-inline>.input{min-width:0}.form-inline>.select{min-width:104px}.form-inline>.btn{flex:0 0 auto}.checkbox{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}.checkbox:disabled{cursor:not-allowed}@media (max-width:1080px){.admin-shell{grid-template-columns:84px minmax(0,1fr)}.admin-side{align-items:center;padding:var(--space-4) var(--space-2)}.admin-side-foot .btn{font-size:var(--text-xs);padding:.375rem .25rem}.admin-side-brand,.admin-side-label,.admin-side-user{display:none}.admin-side-link{justify-content:center;padding:var(--space-3)}.admin-side-link.is-current:before{display:none}.admin-main{padding:var(--space-6) var(--space-4)}.admin-tabs{padding:0 var(--space-4)}}@media (max-width:720px){.admin-shell{display:block}.admin-side{position:static;height:auto;flex-direction:row;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-right:none;border-bottom:1px solid var(--color-border);overflow-x:auto}.admin-side-nav{flex-direction:row;gap:var(--space-1)}.admin-side-foot{border-top:none;padding-top:0;margin-left:auto}.admin-main{padding:var(--space-6) var(--space-4)}}.dl-grid{display:grid;grid-template-columns:auto 1fr;grid-column-gap:var(--space-4);column-gap:var(--space-4);grid-row-gap:var(--space-2);row-gap:var(--space-2);font-size:var(--text-sm)}.dl-grid dt{color:var(--color-text-secondary)}.dl-grid dd{color:var(--color-text-primary)}.flow-stepper{display:flex;align-items:flex-start;margin-bottom:var(--space-8)}.flow-step{flex-direction:column;flex:1 1;min-width:0}.flow-step,.flow-step-circle{display:flex;align-items:center}.flow-step-circle{justify-content:center;width:28px;height:28px;border-radius:50%;font-weight:700;flex-shrink:0;background:var(--color-surface-sunken);border:2px solid var(--color-border-strong)}.flow-step-circle,.flow-step-label{font-size:var(--text-xs);color:var(--color-text-tertiary)}.flow-step-label{margin-top:var(--space-2);text-align:center;white-space:nowrap}.flow-step-connector{flex:1 1;height:2px;background:var(--color-border-strong);margin-top:13px}.flow-step.done .flow-step-circle{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inverse)}.flow-step.done .flow-step-label{color:var(--color-text-secondary)}.flow-step.done+.flow-step-connector{background:var(--color-accent)}.flow-step.current .flow-step-circle{background:var(--color-surface);border-color:var(--color-accent);color:var(--color-accent)}.flow-step.current .flow-step-label{color:var(--color-text-primary);font-weight:600}.flow-step.error .flow-step-circle{background:var(--color-error);border-color:var(--color-error);color:var(--color-text-inverse)}.flow-step.error .flow-step-label{color:var(--color-error);font-weight:600}.member-shell{min-height:100vh;padding:var(--space-8) var(--space-4);background:var(--color-bg-subtle)}.member-column{max-width:560px;margin:0 auto}.member-app-shell{min-height:100vh;background:var(--color-bg-subtle)}.member-sidebar{display:none}.member-app-main{min-height:100vh;padding-bottom:72px}.member-header{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--color-border);position:-webkit-sticky;position:sticky;top:0;z-index:15}.member-header-title{font-weight:700;color:var(--color-primary)}.member-header-meeting{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--color-text-secondary)}.member-header-meeting a{color:var(--color-accent);font-weight:700}.member-header-logout{border:0;background:transparent;color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer}.member-section-label{font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;color:var(--color-accent);margin-bottom:var(--space-1)}.member-bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--space-1) 0;z-index:20}.member-bottom-nav-link{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-1) var(--space-2);font-size:10px;color:var(--color-text-tertiary);min-width:56px}.member-bottom-nav-link.active{color:var(--color-accent);font-weight:600}@media (min-width:768px){.member-app-shell{display:flex}.member-sidebar{display:flex;flex-direction:column;width:220px;flex-shrink:0;background:var(--color-surface);border-right:1px solid var(--color-border);min-height:100vh;padding:var(--space-6) var(--space-4)}.member-sidebar-brand{font-weight:700;color:var(--color-primary);font-size:var(--text-base);margin-bottom:var(--space-8);padding:0 var(--space-2)}.member-sidebar-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-1)}.member-sidebar-logout{margin-top:auto}.member-sidebar-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:500}.member-sidebar-link:hover{background:var(--color-surface-sunken)}.member-sidebar-link.active{background:var(--color-accent-subtle-bg);color:var(--color-accent-hover);font-weight:600}.member-app-main{flex:1 1;min-width:0;padding-bottom:0}.member-header-title{display:none}.member-header{justify-content:flex-end;gap:var(--space-6)}.member-bottom-nav{display:none}}.celebrate-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-6);overflow:hidden;backdrop-filter:blur(26px) saturate(1.1);-webkit-backdrop-filter:blur(26px) saturate(1.1);background:radial-gradient(78% 60% at 50% 42%,color-mix(in srgb,var(--color-surface) 78%,transparent) 0,transparent 72%),radial-gradient(130% 105% at 50% 26%,color-mix(in srgb,var(--color-accent-subtle-bg) 85%,transparent) 0,color-mix(in srgb,var(--color-bg-subtle) 92%,transparent) 62%);animation:ds-celebrate-veil var(--celebrate-duration,3.8s) ease forwards}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.celebrate-overlay{background:radial-gradient(78% 60% at 50% 42%,var(--color-surface) 0,transparent 72%),radial-gradient(130% 105% at 50% 26%,var(--color-accent-subtle-bg) 0,var(--color-bg-subtle) 62%)}}@keyframes ds-celebrate-veil{0%{opacity:0}6%{opacity:1}86%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}.celebrate-stage{position:relative;z-index:1;width:100%;max-width:420px;padding:var(--space-12) var(--space-8) var(--space-8);text-align:center;border-radius:24px;border:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);background:color-mix(in srgb,var(--color-surface) 58%,transparent);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);box-shadow:0 24px 70px -24px rgba(16,24,39,.32),inset 0 1px 0 color-mix(in srgb,#ffffff 45%,transparent);animation:ds-celebrate-panel .9s cubic-bezier(.2,.9,.3,1) backwards}.celebrate-stage:before{content:"";position:absolute;top:-1px;left:18%;right:18%;height:1px;background:linear-gradient(90deg,transparent,var(--color-accent),transparent);opacity:.5}@keyframes ds-celebrate-panel{0%{opacity:0;transform:translateY(16px) scale(.97);filter:blur(10px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@media (prefers-color-scheme:dark){.celebrate-stage{box-shadow:0 24px 70px -24px rgba(0,0,0,.7),inset 0 1px 0 color-mix(in srgb,#ffffff 12%,transparent)}}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.celebrate-stage{background:var(--color-surface)}}.celebrate-emblem{position:relative;width:92px;height:92px;margin:0 auto var(--space-8)}.celebrate-emblem svg{width:100%;height:100%;fill:none;stroke-linecap:round;stroke-linejoin:round}.celebrate-emblem-ring{stroke:var(--color-accent);stroke-width:1.5;opacity:.55;stroke-dasharray:100;stroke-dashoffset:100;animation:ds-celebrate-draw .9s cubic-bezier(.3,.9,.3,1) .12s forwards}.celebrate-emblem-check{stroke:var(--color-accent);stroke-width:3;stroke-dasharray:100;stroke-dashoffset:100;animation:ds-celebrate-draw .62s cubic-bezier(.3,.9,.3,1) .62s forwards}@keyframes ds-celebrate-draw{to{stroke-dashoffset:0}}.celebrate-halo{position:absolute;inset:0;border-radius:50%;border:1px solid var(--color-accent);opacity:0;animation:ds-celebrate-halo 1.4s cubic-bezier(.2,.7,.3,1) .9s backwards}@keyframes ds-celebrate-halo{0%{transform:scale(1);opacity:.3}to{transform:scale(1.9);opacity:0}}.celebrate-rise{animation:ds-celebrate-rise .78s cubic-bezier(.2,.8,.3,1) backwards}@keyframes ds-celebrate-rise{0%{opacity:0;transform:translateY(10px);filter:blur(6px)}60%{filter:blur(0)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.celebrate-title{font-size:var(--text-2xl);font-weight:700;letter-spacing:-.01em;line-height:1.4;text-wrap:balance;margin-bottom:var(--space-4)}.celebrate-lead{font-size:var(--text-sm);line-height:1.9;color:var(--color-text-secondary);text-wrap:balance}.celebrate-rule{width:132px;height:1px;margin:var(--space-8) auto var(--space-4);background:var(--color-border);overflow:hidden}.celebrate-rule>span{display:block;height:100%;width:var(--to,100%);background:var(--color-accent);transform-origin:left center;animation:ds-celebrate-rule 1.2s cubic-bezier(.3,.85,.3,1) var(--rule-delay,1.5s) backwards}@keyframes ds-celebrate-rule{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.celebrate-next{letter-spacing:.02em}.celebrate-next,.celebrate-skip{font-size:var(--text-xs);color:var(--color-text-tertiary)}.celebrate-skip{position:absolute;left:50%;bottom:var(--space-8);transform:translateX(-50%);border:0;background:transparent;font-family:inherit;cursor:pointer;padding:var(--space-2) var(--space-3);animation:ds-celebrate-rise .6s ease backwards}.celebrate-skip:hover{color:var(--color-text-secondary)}@media (max-width:480px){.celebrate-stage{padding:var(--space-8) var(--space-6);border-radius:20px}.celebrate-emblem{width:76px;height:76px;margin-bottom:var(--space-6)}.celebrate-title{font-size:var(--text-xl)}}.celebrate-stage--match{animation:ds-match-panel .64s cubic-bezier(.16,1,.3,1) 1.2s backwards}@keyframes ds-match-panel{0%{opacity:0;transform:translateY(24px) scale(.92);filter:blur(16px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.celebrate-emblem--link{width:120px;height:88px}.celebrate-emblem--link .celebrate-halo{inset:0 16px}.celebrate-link-ring{fill:none;stroke:var(--color-accent);stroke-width:1.5;opacity:0;animation:ds-match-ring-in .56s cubic-bezier(.3,.9,.25,1) 1.28s forwards}.celebrate-link-ring--a{--from-x:-40px}.celebrate-link-ring--b{--from-x:40px}@keyframes ds-match-ring-in{0%{opacity:0;transform:translateX(var(--from-x,0))}70%{opacity:.7}to{opacity:.6;transform:translateX(0)}}.celebrate-link-core{fill:var(--color-accent);stroke:none;opacity:0;transform-box:fill-box;transform-origin:center;animation:ds-match-core .9s cubic-bezier(.2,1.4,.35,1) 1.8s forwards}@keyframes ds-match-core{0%{opacity:0;transform:scale(.2)}40%{opacity:1;transform:scale(1.8)}to{opacity:1;transform:scale(1)}}.celebrate-link-orbit{fill:none;stroke:var(--color-accent);stroke-width:1;stroke-dasharray:16 84;stroke-linecap:round;opacity:0;transform-box:fill-box;transform-origin:center;animation:ds-match-orbit-in .8s ease 1.8s forwards,ds-match-orbit-spin 9s linear 1.8s infinite}@keyframes ds-match-orbit-in{to{opacity:.45}}@keyframes ds-match-orbit-spin{to{transform:rotate(1turn)}}.celebrate-emblem--link .celebrate-halo{animation-delay:1.8s}.celebrate-emblem--link .celebrate-halo--late{animation-delay:2.04s}.celebrate-when{font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;color:var(--color-accent);margin-bottom:var(--space-2)}.celebrate-scan{position:absolute;left:0;right:0;top:0;height:1px;pointer-events:none;opacity:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--color-accent) 70%,transparent),transparent);animation:ds-match-scan .9s cubic-bezier(.3,.8,.3,1) 1.12s backwards}@keyframes ds-match-scan{0%{opacity:0;transform:translateY(0)}20%{opacity:.9}to{opacity:0;transform:translateY(100vh)}}@media (prefers-reduced-motion:reduce){.celebrate-scan{display:none}.celebrate-link-core,.celebrate-link-orbit,.celebrate-link-ring,.celebrate-stage--match{animation:none;opacity:.6;transform:none}.celebrate-link-core{opacity:1}}@media (max-width:480px){.celebrate-emblem--link{width:96px;height:72px}.celebrate-emblem--link .celebrate-halo{inset:0 12px}}.matching-field{position:relative;width:100%;height:168px;margin-bottom:var(--space-4)}.matching-searching{background:linear-gradient(90deg,var(--color-text-secondary) 0,var(--color-accent) 42%,var(--color-text-secondary) 84%);background-size:240% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:ds-shimmer 3.4s linear infinite}@keyframes ds-shimmer{to{background-position:-240% 0}}@supports not (((-webkit-background-clip:text) or (background-clip:text)) or (-webkit-background-clip:text)){.matching-searching{color:var(--color-text-secondary);background:none}}.reveal-stagger>*{--stagger:400ms;animation:ds-reveal-up .78s cubic-bezier(.2,.8,.3,1) calc(var(--reveal-base, 0s) + var(--stagger)) backwards}.reveal-stagger>:first-child{--stagger:40ms}.reveal-stagger>:nth-child(2){--stagger:120ms}.reveal-stagger>:nth-child(3){--stagger:200ms}.reveal-stagger>:nth-child(4){--stagger:280ms}.reveal-stagger>:nth-child(5){--stagger:360ms}@keyframes ds-reveal-up{0%{opacity:0;transform:translateY(14px) scale(.985);filter:blur(7px)}55%{filter:blur(0)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.reveal-stagger .card,.reveal-stagger .status-card{position:relative}.reveal-stagger .card:after,.reveal-stagger .status-card:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;background:linear-gradient(105deg,transparent 34%,var(--shimmer-edge) 44%,var(--shimmer-tint) 50%,var(--shimmer-edge) 56%,transparent 66%);background-size:260% 100%;animation:ds-surface-shimmer 1.5s cubic-bezier(.25,.7,.3,1) calc(var(--reveal-base, 0s) + var(--stagger) + .22s) forwards}@keyframes ds-surface-shimmer{0%{opacity:0;background-position:190% 0}16%{opacity:1}to{opacity:0;background-position:-70% 0;visibility:hidden}}@media (prefers-color-scheme:dark){.celebrate-disc{box-shadow:0 14px 34px rgba(0,0,0,.5)}}@media (prefers-reduced-motion:reduce){.celebrate-halo{display:none}.celebrate-emblem-check,.celebrate-emblem-ring,.celebrate-rise,.celebrate-rule>span,.celebrate-stage,.matching-searching,.reveal-stagger>*{animation:none}.celebrate-emblem-check,.celebrate-emblem-ring{stroke-dashoffset:0}.matching-searching{color:var(--color-text-secondary);background:none}}:root{--shimmer-tint:rgba(46,95,232,0.15);--shimmer-edge:rgba(46,95,232,0.05)}@media (prefers-color-scheme:dark){:root{--shimmer-tint:rgba(168,196,255,0.17);--shimmer-edge:rgba(168,196,255,0.06)}}.app-shimmer{position:fixed;inset:-10vh -30vw;z-index:60;pointer-events:none;opacity:0;background:linear-gradient(105deg,transparent 34%,var(--shimmer-edge) 43%,var(--shimmer-tint) 50%,var(--shimmer-edge) 57%,transparent 66%);background-size:220% 100%;animation:ds-app-shimmer 1.7s cubic-bezier(.25,.7,.3,1) .12s forwards}@keyframes ds-app-shimmer{0%{opacity:0;background-position:165% 0}14%{opacity:1}to{opacity:0;background-position:-75% 0;visibility:hidden}}.celebrate-sweep{inset:-20vh -30vw;opacity:0;background:linear-gradient(105deg,transparent 36%,var(--shimmer-edge) 44%,var(--shimmer-tint) 50%,var(--shimmer-edge) 56%,transparent 64%);background-size:220% 100%;animation:ds-app-shimmer 1.9s cubic-bezier(.25,.7,.3,1) var(--delay,0s) 2 backwards}.celebrate-sweep,.scene-canvas{position:absolute;pointer-events:none}.scene-canvas{inset:0;width:100%;height:100%;display:block}.celebrate-overlay .scene-canvas{z-index:0}.login-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);background:radial-gradient(120% 110% at 50% 20%,var(--color-accent-subtle-bg) 0,var(--color-bg-subtle) 55%,var(--color-bg-subtle) 100%);overflow:hidden}.login-hero>.member-column{position:relative;z-index:2;width:100%}.login-member-field{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;mask-image:radial-gradient(circle at center,transparent 0 23%,#000 48% 100%);-webkit-mask-image:radial-gradient(circle at center,transparent 0 23%,#000 48% 100%)}.login-member-ghost{position:absolute;left:var(--member-left);top:var(--member-top);width:clamp(170px,15vw,230px);display:grid;grid-template-columns:10px 1fr auto;align-items:center;grid-gap:3px 9px;gap:3px 9px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--color-accent) 24%,transparent);border-radius:14px;color:color-mix(in srgb,var(--color-accent) 58%,var(--color-text-secondary));background:linear-gradient(105deg,transparent 38%,color-mix(in srgb,#fff 34%,transparent) 50%,transparent 62%),color-mix(in srgb,var(--color-surface) 32%,transparent);background-size:240% 100%,auto;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 32%,transparent),0 12px 40px color-mix(in srgb,var(--color-accent) 8%,transparent);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);opacity:.26;transform:translateZ(0);animation:login-member-float var(--member-duration) ease-in-out var(--member-delay) infinite alternate,login-member-scan 9s linear var(--member-delay) infinite}.login-member-ghost strong{grid-column:2/-1;font-size:12px;font-weight:650;letter-spacing:.045em}.login-member-ghost>span:not(.login-member-signal){grid-column:2;font-size:10px;letter-spacing:.03em}.login-member-ghost small{font-size:9px;opacity:.72}.login-member-signal{grid-row:1/3;width:7px;height:7px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-accent) 11%,transparent),0 0 13px var(--color-accent);animation:login-member-pulse 2.8s ease-in-out infinite}@keyframes login-member-float{0%{transform:translate3d(0,-7px,0) rotate(-.6deg)}50%{transform:translate3d(var(--member-drift),5px,0) rotate(.5deg)}to{transform:translate3d(0,12px,0) rotate(-.2deg)}}@keyframes login-member-scan{0%,58%{background-position:180% 0,0 0}to{background-position:-80% 0,0 0}}@keyframes login-member-pulse{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:.9;transform:scale(1)}}.login-brand{font-size:var(--text-xs);font-weight:700;letter-spacing:.18em;color:var(--color-accent);text-align:center;margin-bottom:var(--space-3)}.login-card{position:relative;border-radius:20px;border-color:color-mix(in srgb,var(--color-border) 70%,transparent);background:color-mix(in srgb,var(--color-surface) 72%,transparent);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);box-shadow:0 24px 60px -26px rgba(16,24,39,.28),inset 0 1px 0 color-mix(in srgb,#ffffff 45%,transparent);animation:ds-celebrate-panel .9s cubic-bezier(.2,.9,.3,1) .12s backwards}.login-card:before{content:"";position:absolute;top:-1px;left:18%;right:18%;height:1px;background:linear-gradient(90deg,transparent,var(--color-accent),transparent);opacity:.5}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.login-card{background:var(--color-surface)}}@media (prefers-color-scheme:dark){.login-card{box-shadow:0 24px 60px -26px rgba(0,0,0,.7),inset 0 1px 0 color-mix(in srgb,#ffffff 12%,transparent)}}@media (prefers-reduced-motion:reduce){.app-shimmer,.celebrate-sweep,.reveal-stagger .card:after,.reveal-stagger .status-card:after{display:none}.login-card,.login-member-ghost,.login-member-signal{animation:none}}@media (max-width:767px){.login-member-field{mask-image:radial-gradient(circle at center,transparent 0 30%,#000 62% 100%);-webkit-mask-image:radial-gradient(circle at center,transparent 0 30%,#000 62% 100%)}.login-member-ghost{width:165px;opacity:.18}.login-member-ghost:nth-child(n+7){display:none}}@media (min-width:768px){.member-app-shell.is-edge{display:block}.is-edge .member-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:40;width:236px;min-height:0;display:flex;padding:var(--space-6) var(--space-4);border-right:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);background:color-mix(in srgb,var(--color-surface) 82%,transparent);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);box-shadow:0 0 0 rgba(16,24,39,0);transform:translateX(calc(-100% + 20px));transition:transform .42s cubic-bezier(.2,.9,.25,1),box-shadow .42s ease}.is-edge .member-sidebar:focus-within,.is-edge .member-sidebar:hover{transform:translateX(0);box-shadow:24px 0 60px -30px rgba(16,24,39,.45)}.is-edge .member-sidebar:after{content:"";position:absolute;top:0;right:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent 0,var(--color-accent) 22%,var(--color-accent) 78%,transparent 100%);opacity:.55;transition:opacity .32s ease}.is-edge .member-sidebar:focus-within:after,.is-edge .member-sidebar:hover:after{opacity:0}.edge-hint{position:absolute;top:50%;right:4px;transform:translateY(-50%);display:flex;flex-direction:column;gap:7px;transition:opacity .26s ease}.edge-hint span{width:5px;height:5px;border-radius:50%;background:var(--color-accent);opacity:.5}.edge-hint span.is-current{opacity:1;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,transparent)}.is-edge .member-sidebar:focus-within .edge-hint,.is-edge .member-sidebar:hover .edge-hint{opacity:0}.is-edge .member-header{position:fixed;top:0;left:0;right:0;z-index:30;height:58px;padding:0 var(--space-8);justify-content:flex-end;gap:var(--space-6);border-bottom:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);background:color-mix(in srgb,var(--color-surface) 82%,transparent);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);transform:translateY(calc(-100% + 14px));transition:transform .42s cubic-bezier(.2,.9,.25,1)}.is-edge .member-header:focus-within,.is-edge .member-header:hover{transform:translateY(0)}.is-edge .member-header:after{content:"";position:absolute;left:50%;bottom:3px;width:46px;height:3px;border-radius:var(--radius-pill);transform:translateX(-50%);background:var(--color-accent);opacity:.45;transition:opacity .32s ease}.is-edge .member-header:focus-within:after,.is-edge .member-header:hover:after{opacity:0}.is-edge .member-app-main{padding:16px 0 0 24px;min-height:100dvh}.edge-grip{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;gap:3px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-surface) 94%,transparent);border:1px solid color-mix(in srgb,var(--color-border-strong) 60%,transparent);box-shadow:0 6px 18px -8px rgba(16,24,39,.4);transition:opacity .26s ease,box-shadow .26s ease}.edge-grip i{display:block;border-radius:var(--radius-pill);background:var(--color-text-tertiary);opacity:.75}.edge-grip-v{top:50%;right:-10px;width:20px;height:58px;flex-direction:row;transform:translateY(-50%)}.edge-grip-v i{width:2px;height:18px}.edge-grip-h{left:50%;bottom:-10px;width:58px;height:20px;flex-direction:column;transform:translateX(-50%)}.edge-grip-h i{width:18px;height:2px}.is-edge .member-header:focus-within .edge-grip,.is-edge .member-header:hover .edge-grip,.is-edge .member-sidebar:focus-within .edge-grip,.is-edge .member-sidebar:hover .edge-grip{opacity:0}.is-hinting .member-sidebar{animation:ds-edge-nudge-x 1.4s cubic-bezier(.3,.9,.3,1) .6s 3}.is-hinting .member-header{animation:ds-edge-nudge-y 1.4s cubic-bezier(.3,.9,.3,1) .9s 3}.is-edge .member-header:focus-within,.is-edge .member-header:hover,.is-edge .member-sidebar:focus-within,.is-edge .member-sidebar:hover{animation:none}@keyframes ds-edge-nudge-x{0%,to{transform:translateX(calc(-100% + 20px))}45%{transform:translateX(calc(-100% + 42px))}}@keyframes ds-edge-nudge-y{0%,to{transform:translateY(calc(-100% + 14px))}45%{transform:translateY(calc(-100% + 34px))}}.is-hinting .edge-grip{animation:ds-edge-glow 1.4s ease-in-out .6s 3}@keyframes ds-edge-glow{0%,to{box-shadow:0 6px 18px -8px rgba(16,24,39,.4);border-color:color-mix(in srgb,var(--color-border-strong) 60%,transparent)}45%{box-shadow:0 0 0 6px color-mix(in srgb,var(--color-accent) 16%,transparent),0 6px 22px -6px color-mix(in srgb,var(--color-accent) 60%,transparent);border-color:var(--color-accent)}}.is-hinting .edge-grip i{background:var(--color-accent);opacity:1}@media (hover:none){.edge-grip{display:none}.is-edge .member-header,.is-edge .member-sidebar{transform:none}.edge-hint,.is-edge .member-header:after,.is-edge .member-sidebar:after{display:none}.is-edge .member-app-main{padding:58px 0 0 236px}}}@media (prefers-reduced-motion:reduce){.is-edge .member-header,.is-edge .member-sidebar{transition:none}.is-hinting .edge-grip,.is-hinting .member-header,.is-hinting .member-sidebar{animation:none}}.ob-shell{position:relative;min-height:100dvh;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-8) var(--space-4);overflow-x:hidden;overflow-y:auto;background:radial-gradient(120% 110% at 50% 12%,var(--color-accent-subtle-bg) 0,var(--color-bg-subtle) 58%,var(--color-bg-subtle) 100%)}.ob-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none}.ob-frame{position:relative;z-index:1;margin:auto 0;width:100%;max-width:560px;display:flex;flex-direction:column;gap:var(--space-6)}.ob-progress{display:flex;gap:6px}.ob-progress-seg{flex:1 1;height:2px;border-radius:var(--radius-pill);background:var(--color-border);transition:background-color .45s ease}.ob-progress-seg.is-done{background:var(--color-accent)}.ob-panel{position:relative;border-radius:24px;border:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);background:color-mix(in srgb,var(--color-surface) 72%,transparent);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);box-shadow:0 24px 70px -28px rgba(16,24,39,.3),inset 0 1px 0 color-mix(in srgb,#ffffff 45%,transparent);padding:var(--space-12) var(--space-8)}.ob-panel:before{content:"";position:absolute;top:-1px;left:18%;right:18%;height:1px;background:linear-gradient(90deg,transparent,var(--color-accent),transparent);opacity:.5}@media (prefers-color-scheme:dark){.ob-panel{box-shadow:0 24px 70px -28px rgba(0,0,0,.7),inset 0 1px 0 color-mix(in srgb,#ffffff 12%,transparent)}}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.ob-panel{background:var(--color-surface)}}.ob-step{animation:ds-ob-in .52s cubic-bezier(.2,.8,.3,1) backwards}.ob-step[data-direction=back]{animation-name:ds-ob-in-back}@keyframes ds-ob-in{0%{opacity:0;transform:translateY(16px);filter:blur(8px)}60%{filter:blur(0)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes ds-ob-in-back{0%{opacity:0;transform:translateY(-14px);filter:blur(8px)}60%{filter:blur(0)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.ob-eyebrow{font-size:var(--text-xs);letter-spacing:.18em;color:var(--color-accent)}.ob-eyebrow,.ob-title{font-weight:700;margin-bottom:var(--space-3)}.ob-title{font-size:var(--text-2xl);letter-spacing:-.01em;line-height:1.45;text-wrap:balance}.ob-lead{font-size:var(--text-sm);line-height:1.9;color:var(--color-text-secondary);margin-bottom:var(--space-8);text-wrap:pretty}.ob-meta{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-top:var(--space-6)}.ob-fields{display:flex;flex-direction:column;gap:var(--space-6)}.ob-field{display:block;position:relative}.ob-label{font-weight:700;letter-spacing:.06em;margin-bottom:var(--space-2)}.ob-hint,.ob-label{display:block;font-size:var(--text-xs);color:var(--color-text-tertiary)}.ob-hint{margin-top:var(--space-2)}.ob-field input[type=text],.ob-field textarea{width:100%;font-family:inherit;font-size:var(--text-lg);line-height:1.7;color:var(--color-text-primary);background:transparent;border:0;border-bottom:1.5px solid var(--color-border-strong);border-radius:0;padding:var(--space-2) 0;resize:none;transition:border-color .16s ease}.ob-field textarea{font-size:var(--text-base)}.ob-field input[type=text]:focus,.ob-field textarea:focus{outline:none;border-bottom-color:var(--color-accent)}.ob-field input::placeholder,.ob-field textarea::placeholder{color:var(--color-text-tertiary);opacity:.6}.ob-counter{display:block;text-align:right;font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text-tertiary);margin-top:var(--space-2)}.ob-choice-group{border:0;padding:0;margin:0 0 var(--space-6)}.ob-choice-grid{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ob-choice{display:inline-flex;align-items:center;cursor:pointer}.ob-choice input{position:absolute;opacity:0;pointer-events:none}.ob-choice span{display:inline-flex;align-items:center;min-height:38px;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:999px;background:color-mix(in srgb,var(--color-surface) 82%,transparent);color:var(--color-text-secondary);font-size:var(--text-sm);transition:border-color .16s ease,background .16s ease,color .16s ease}.ob-choice input:focus-visible+span,.ob-choice:hover span{border-color:var(--color-accent)}.ob-choice input:focus-visible+span{outline:2px solid var(--color-accent);outline-offset:2px}.ob-choice.is-selected span{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,var(--color-surface));color:var(--color-accent);font-weight:650}.ob-field input[type=file]{width:100%;padding:var(--space-3);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-secondary);background:color-mix(in srgb,var(--color-surface) 72%,transparent)}.ob-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}.ob-list li{position:relative;padding-left:var(--space-6);font-size:var(--text-sm);color:var(--color-text-secondary)}.ob-list li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--color-accent);opacity:.55}.ob-linked{font-weight:600;color:var(--color-success)}.ob-linked,.ob-notice{font-size:var(--text-sm)}.ob-notice{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4)}.ob-notice.is-ok{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success)}.ob-notice.is-error{background:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error)}.ob-days{display:flex;flex-direction:column}.ob-day,.ob-days{gap:var(--space-2)}.ob-day{display:grid;grid-template-columns:68px 1fr 18px 1fr;align-items:center;grid-gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid transparent;opacity:.5;transition:opacity .16s ease,background-color .16s ease,border-color .16s ease}.ob-day.is-on{opacity:1;background:var(--color-surface-sunken);border-color:var(--color-border)}.ob-day-toggle{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;cursor:pointer}.ob-day-toggle input{accent-color:var(--color-accent);width:16px;height:16px}.ob-day input[type=time]{font-family:inherit;font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:6px var(--space-2);width:100%}.ob-day-sep{text-align:center;color:var(--color-text-tertiary);font-size:var(--text-xs)}.ob-summary{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-6)}.ob-summary-row{display:grid;grid-template-columns:1fr auto;grid-gap:var(--space-1) var(--space-4);gap:var(--space-1) var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.ob-summary-row dt{grid-column:1;font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;color:var(--color-text-tertiary)}.ob-summary-row dd{grid-column:1;font-size:var(--text-sm);line-height:1.8;color:var(--color-text-primary);white-space:pre-wrap}.ob-edit{grid-column:2;grid-row:1/span 2;align-self:start;border:0;background:transparent;font-family:inherit;font-size:var(--text-xs);font-weight:600;color:var(--color-accent);cursor:pointer;padding:2px var(--space-2)}.ob-edit:hover{text-decoration:underline}.ob-check{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--text-sm);line-height:1.7;margin-bottom:var(--space-6);cursor:pointer}.ob-check input{margin-top:.28em;accent-color:var(--color-accent);width:16px;height:16px;flex-shrink:0}.ob-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.ob-count{font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--color-text-tertiary)}.ob-button{display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-size:var(--text-sm);font-weight:600;padding:.7rem 1.5rem;border-radius:var(--radius-pill);border:1px solid transparent;cursor:pointer;transition:background-color .14s ease,color .14s ease,opacity .14s ease}.ob-button-primary{background:var(--color-accent);color:#ffffff}.ob-button-primary:hover:not(:disabled){background:var(--color-accent-hover)}.ob-button-quiet{background:transparent;color:var(--color-text-tertiary)}.ob-button-quiet:hover:not(:disabled){color:var(--color-text-primary)}.ob-button:disabled{opacity:.38;cursor:not-allowed}.ob-button-placeholder{display:inline-block;width:92px}.ob-panel form .ob-button-primary{width:100%;padding:.85rem 1.5rem;font-size:var(--text-base)}@media (max-width:560px){.ob-panel{padding:var(--space-8) var(--space-6);border-radius:20px}.ob-title{font-size:var(--text-xl)}.ob-day{grid-template-columns:60px 1fr 14px 1fr;padding:var(--space-2)}}@media (prefers-reduced-motion:reduce){.ob-step{animation:none}.ob-button,.ob-day,.ob-progress-seg{transition:none}}.search-stage{text-align:center;padding:var(--space-8) 0 var(--space-12)}.search-field{position:relative;width:100%;height:300px;margin-bottom:var(--space-6)}.search-status{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:700;letter-spacing:.16em;color:var(--color-accent);margin-bottom:var(--space-3)}.search-pulse{width:7px;height:7px;border-radius:50%;background:var(--color-accent);animation:ds-search-pulse 2.2s ease-in-out infinite}@keyframes ds-search-pulse{0%,to{opacity:1;box-shadow:0 0 0 0 color-mix(in srgb,var(--color-accent) 55%,transparent)}50%{opacity:.55;box-shadow:0 0 0 7px color-mix(in srgb,var(--color-accent) 0%,transparent)}}.search-title{font-size:var(--text-2xl);font-weight:700;letter-spacing:-.01em;line-height:1.4;text-wrap:balance;margin-bottom:var(--space-4)}.search-body{font-size:var(--text-sm);line-height:1.9;color:var(--color-text-secondary);text-wrap:pretty;max-width:30em;margin:0 auto}@media (max-width:560px){.search-field{height:220px}.search-title{font-size:var(--text-xl)}}@media (prefers-reduced-motion:reduce){.search-pulse{animation:none}}