:root{--bg:#f2f1ed;--surface:#faf9f5;--card:#fff;--ink:#22282a;--ink-2:#566062;--ink-3:#8a9596;--border:#dfe2dd;--divider:#eaede8;--primary:#3f726c;--primary-hover:#335e59;--primary-press:#294b47;--primary-soft:#e0eae7;--primary-on:#faf9f5;--accent:#c9a98c;--accent-soft:#f1e7da;--accent-ink:#98774f;--focus:63, 114, 108;--t-good:#4f7a55;--t-good-soft:#e5ebdf;--t-good-ink:#38593d;--t-neutral:#a2884f;--t-neutral-soft:#f0e8d5;--t-neutral-ink:#745f31;--t-risky:#be7e3a;--t-risky-soft:#f7e8d2;--t-risky-ink:#8a571f;--t-avoid:#a8543f;--t-avoid-soft:#f3e0d9;--t-avoid-ink:#7e3b2a;--t-low:#877f70;--t-low-soft:#ece8de;--t-low-ink:#5e5747;--error:#b0503f;--error-soft:#f4ded8;--success:#4f7a55;--disabled-bg:#ece7dc;--disabled-ink:#bbb2a1;--disabled-bd:#e2dbcc;--font-ui:"Plus Jakarta Sans", system-ui, sans-serif;--font-display:"Plus Jakarta Sans", system-ui, sans-serif;--display-weight:800;--fs-display:40px;--lh-display:1.06;--tr-display:-.02em;--fs-h1:30px;--lh-h1:1.16;--tr-h1:-.02em;--fs-h2:23px;--lh-h2:1.22;--tr-h2:-.01em;--fs-h3:18px;--lh-h3:1.34;--tr-h3:-.005em;--fs-body:16px;--lh-body:1.55;--fs-small:14px;--lh-small:1.5;--fs-label:12px;--lh-label:1.25;--tr-label:.06em;--fs-tiny:11px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-7:32px;--s-8:40px;--s-9:48px;--s-10:64px;--rs:1;--r-xs:calc(6px * var(--rs));--r-sm:calc(10px * var(--rs));--r-md:calc(14px * var(--rs));--r-lg:calc(20px * var(--rs));--r-xl:calc(28px * var(--rs));--r-pill:999px;--e-1:0 1px 2px #22282a0a, 0 1px 3px #22282a0d;--e-2:0 4px 14px #22282a12, 0 1px 3px #22282a0a;--e-3:0 16px 40px #22282a1f, 0 4px 10px #22282a0f;--dur-fast:.12s;--dur:.2s;--dur-slow:.32s;--ease:cubic-bezier(.2,.8,.2,1);--tap:44px;--content-max:430px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-ui);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid rgb(var(--focus));outline-offset:2px}.t-display{font-family:var(--font-display);font-weight:var(--display-weight);font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:var(--tr-display)}.t-h1{font-weight:700;font-size:var(--fs-h1);line-height:var(--lh-h1);letter-spacing:var(--tr-h1)}.t-h2{font-weight:700;font-size:var(--fs-h2);line-height:var(--lh-h2);letter-spacing:var(--tr-h2)}.t-h3{font-weight:600;font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:var(--tr-h3)}.t-body{font-weight:400;font-size:var(--fs-body);line-height:var(--lh-body)}.t-body-strong{font-weight:600;font-size:var(--fs-body);line-height:var(--lh-body)}.t-small{font-weight:400;font-size:var(--fs-small);line-height:var(--lh-small)}.t-label{font-weight:600;font-size:var(--fs-label);line-height:var(--lh-label);letter-spacing:var(--tr-label);text-transform:uppercase}.t-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;white-space:nowrap}.t-date{font-family:var(--font-display);letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.ink-2{color:var(--ink-2)}.ink-3{color:var(--ink-3)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}#app{max-width:var(--content-max);background:var(--bg);min-height:100vh;margin:0 auto}:is(#app:has(.landing),#app:has(.dt-app)){max-width:none}.dt-app{z-index:60;background:var(--bg);color:var(--ink);font-family:var(--font-ui);grid-template-columns:auto 1fr;display:grid;position:fixed;inset:0}.dt-main{scrollbar-width:thin;scrollbar-color:var(--border) transparent;height:100vh;overflow-y:auto}.dt-main::-webkit-scrollbar{width:10px}.dt-main::-webkit-scrollbar-thumb{background:var(--border);background-clip:content-box;border:3px solid #0000;border-radius:8px}.dt-main::-webkit-scrollbar-thumb:hover{background:var(--ink-3);background-clip:content-box}.dt-main-inner{padding:28px 32px 56px}.dt-page-head{justify-content:space-between;align-items:flex-end;gap:var(--s-5);flex-wrap:wrap;margin-bottom:28px;display:flex}.dt-page-head-l{flex-direction:column;gap:6px;display:flex}.dt-page-h{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(26px,2.4vw,38px);font-weight:800;line-height:1.08}.dt-page-sub{color:var(--ink-2);margin:0;font-size:15px}.al-page{padding:var(--s-6) var(--s-4);gap:var(--s-5);flex-direction:column;display:flex}.chip{align-items:center;gap:var(--s-2);padding:9px var(--s-4);border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--border);color:var(--ink-2);min-height:40px;transition:all var(--dur) var(--ease);font-size:14px;font-weight:600;display:inline-flex}.chip:hover{border-color:var(--ink-3);color:var(--ink)}.chip.is-selected{background:var(--primary);border-color:var(--primary);color:var(--primary-on)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg)}.card-pad{padding:var(--s-5)}.card-elev{box-shadow:var(--e-1);border-color:color-mix(in srgb, var(--border) 70%, transparent)}.tbadge{border-radius:var(--r-pill);white-space:nowrap;align-items:center;gap:6px;font-weight:600;line-height:1;display:inline-flex}.tbadge-md{padding:6px 11px 6px 9px;font-size:13px}.tbadge-sm{padding:4px 9px 4px 7px;font-size:12px}.tac-next{gap:var(--s-3);margin-top:var(--s-4);padding:var(--s-3) var(--s-4);background:var(--primary-soft);border-radius:var(--r-md);align-items:flex-start;display:flex}.tac-next-ico{background:var(--card);width:26px;height:26px;color:var(--primary);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.cstrip{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.cstrip-day{border-radius:var(--r-md);background:var(--card);border:1.5px solid var(--border);min-height:72px;transition:all var(--dur) var(--ease);flex-direction:column;align-items:center;gap:5px;padding:10px 2px 9px;display:flex}.cstrip-day:hover{border-color:var(--ink-3)}.cstrip-day.is-today{border-color:var(--accent)}.cstrip-day.is-sel{border-color:var(--primary);background:var(--primary-soft)}.cstrip-dow{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:600}.cstrip-num{font-family:var(--font-display);letter-spacing:-.01em;font-size:17px;font-weight:700}.cstrip-dot{align-items:center;height:12px;display:inline-flex}.nrow{align-items:center;gap:var(--s-3);text-align:left;background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;padding:var(--s-3) var(--s-4);transition:border-color var(--dur) var(--ease), transform var(--dur-fast) var(--ease);display:flex}.nrow:hover{border-color:var(--ink-3)}.nrow:active{transform:scale(.994)}.nrow-ico{border-radius:var(--r-md);background:var(--surface);width:40px;height:40px;color:var(--ink-2);flex:none;justify-content:center;align-items:center;display:inline-flex}.nrow-ico.is-accent{background:var(--accent-soft);color:var(--accent-ink)}.nrow-ico.is-primary{background:var(--primary-soft);color:var(--primary)}.nrow-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.nrow-ttl{font-size:15px;font-weight:600;line-height:1.3}.nrow-sub{color:var(--ink-2);font-size:14px}.nrow-chev{color:var(--ink-3);flex:none}.nrow.is-feature{box-shadow:var(--e-1);border-color:color-mix(in srgb, var(--accent) 32%, var(--border))}.muted-link{color:var(--primary);white-space:nowrap;background:0 0;border:none;align-items:center;gap:4px;padding:6px 0;font-size:14px;font-weight:600;display:inline-flex}.al-bottomnav[data-v-68b6f5db]{width:100%;max-width:var(--content-max);background:var(--card);border-top:1px solid var(--border);padding:var(--s-2) var(--s-1) calc(var(--s-2) + env(safe-area-inset-bottom,0px));z-index:50;justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.al-tab[data-v-68b6f5db]{min-height:var(--tap);padding:var(--s-1) 0;color:var(--ink-3);border-radius:var(--r-sm);transition:color var(--dur-fast) var(--ease);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;text-decoration:none;display:flex}.al-tab-icon[data-v-68b6f5db]{flex-shrink:0;width:24px;height:24px}.al-tab-label[data-v-68b6f5db]{font-size:11px;font-weight:600;line-height:1}.al-tab.router-link-active[data-v-68b6f5db]{color:var(--primary)}.al-shell.has-nav[data-v-e36b90d5]{padding-bottom:calc(var(--tap) + var(--s-5) + env(safe-area-inset-bottom,0px))}
