:root{font-family:Hiragino Sans,Yu Gothic UI,Meiryo,sans-serif;color:var(--text-primary);background:var(--app-background);--text-primary: #1f2b2b;--app-background: radial-gradient(circle at top left, rgba(53, 154, 142, .14), transparent 32%), linear-gradient(180deg, #f4efe4 0%, #edf4f1 100%);color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--surface: rgba(255, 255, 255, .88);--surface-strong: rgba(255, 255, 255, .96);--surface-soft: rgba(255, 255, 255, .72);--surface-muted: rgba(255, 255, 255, .78);--surface-selected: rgba(220, 238, 234, .9);--border: rgba(31, 43, 43, .1);--border-strong: rgba(23, 109, 102, .18);--text-muted: #5d6c69;--accent: #176d66;--accent-strong: #114c47;--shadow: 0 18px 48px rgba(36, 49, 48, .08);--z-sticky-nav: 20;--z-modal-overlay: 1000;--z-modal-content: 1001;--danger: #a73f3f;--input-border: rgba(23, 109, 102, .14);--button-ghost-bg: rgba(255, 255, 255, .72);--button-ghost-border: rgba(23, 109, 102, .12);--chip-bg: rgba(23, 109, 102, .08);--chip-text: var(--accent-strong);--mailbox-background: linear-gradient( 160deg, rgba(23, 109, 102, .08), rgba(255, 255, 255, .8) );--assistant-settings-background: rgba(255, 255, 255, .72);--assistant-feedback-background: rgba(23, 109, 102, .08);--assistant-feedback-border: rgba(23, 109, 102, .12);--assistant-warning-background: rgba(169, 131, 47, .08);--assistant-warning-border: rgba(169, 131, 47, .16);--notice-info-background: rgba(23, 109, 102, .1);--notice-info-border: rgba(23, 109, 102, .16);--notice-success-background: rgba(23, 109, 102, .14);--notice-success-border: rgba(23, 109, 102, .2);--notice-error-background: rgba(167, 63, 63, .09);--notice-error-border: rgba(167, 63, 63, .12);--month-cell-background: rgba(255, 255, 255, .72);--calendar-saturday: #2f6fc2;--calendar-holiday: #cc4b4b;--today-cell-outline: #9aa1a6;--month-selection-outline: rgba(23, 109, 102, .42);--month-selection-today-outline: rgba(23, 109, 102, .18);--day-column-background: rgba(255, 255, 255, .62);--hero-panel-background: linear-gradient( 180deg, rgba(255, 255, 255, .92), rgba(247, 243, 235, .88) );--score-comment-background: rgba(23, 109, 102, .08);--comparison-track-bg: rgba(23, 109, 102, .12);--comparison-plan-start: rgba(23, 109, 102, .16);--comparison-plan-end: rgba(23, 109, 102, .28);--comparison-actual-start: #2e9e84;--comparison-actual-end: #176d66;--focus-outline: rgba(23, 109, 102, .34);--accent-shadow: rgba(23, 109, 102, .18);--auth-tab-shadow: rgba(23, 109, 102, .08);--timeline-label-bg: rgba(54, 61, 64, .08);--timeline-label-border: rgba(54, 61, 64, .12);--timeline-label-text: #334245;--timeline-label-actual-bg: rgba(23, 109, 102, .08);--timeline-label-actual-border: rgba(23, 109, 102, .12);--timeline-canvas-background: linear-gradient( 180deg, rgba(255, 255, 255, .96), rgba(244, 240, 231, .92) );--timeline-canvas-split-overlay: linear-gradient( 90deg, rgba(54, 61, 64, .04) 0%, rgba(54, 61, 64, .04) 50%, rgba(23, 109, 102, .04) 50%, rgba(23, 109, 102, .04) 100% );--timeline-grid-line: rgba(31, 43, 43, .08);--timeline-divider: rgba(31, 43, 43, .14);--timeline-legend-bg: rgba(255, 255, 255, .72);--timeline-legend-border: rgba(23, 109, 102, .08);--timeline-plan-bg: rgba(54, 61, 64, .08);--timeline-plan-bg-split: rgba(54, 61, 64, .11);--timeline-plan-border: rgba(54, 61, 64, .14);--timeline-plan-text: #223033;--timeline-neutral-chip-bg: rgba(31, 43, 43, .12);--timeline-neutral-chip-text: #3a4648;--detail-card-background: rgba(255, 255, 255, .74);--detail-card-border: rgba(23, 109, 102, .18);--notebook-background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(250, 247, 239, .95)), repeating-linear-gradient( 180deg, transparent 0, transparent 31px, rgba(109, 139, 133, .08) 31px, rgba(109, 139, 133, .08) 32px );--notebook-chip-bg: rgba(255, 255, 255, .82);--progress-card-background: rgba(255, 255, 255, .78);--progress-track-background: rgba(31, 43, 43, .08);--check-card-background: rgba(255, 255, 255, .78);--textarea-background: rgba(255, 255, 255, .82);--overlay-background: rgba(31, 43, 43, .24);--mobile-ad-reserve: 0px;--app-bottom-nav-height: 58px;--app-bottom-nav-clearance: calc( var(--app-bottom-nav-height) + env(safe-area-inset-bottom, 0px) );line-height:1.5}:root[data-theme=dark]{color-scheme:dark;--text-primary: #e8f2ef;--app-background: radial-gradient(circle at top left, rgba(88, 183, 171, .16), transparent 28%), linear-gradient(180deg, #12181b 0%, #0c1113 100%);--surface: rgba(18, 24, 28, .9);--surface-strong: rgba(24, 31, 35, .96);--surface-soft: rgba(24, 31, 35, .82);--surface-muted: rgba(22, 29, 33, .88);--surface-selected: rgba(20, 58, 55, .94);--border: rgba(225, 240, 236, .12);--border-strong: rgba(129, 214, 204, .24);--text-muted: #93a7a4;--accent: #59b7ab;--accent-strong: #2f8f84;--shadow: 0 20px 56px rgba(0, 0, 0, .34);--danger: #f09a9a;--input-border: rgba(129, 214, 204, .22);--button-ghost-bg: rgba(255, 255, 255, .06);--button-ghost-border: rgba(255, 255, 255, .1);--chip-bg: rgba(89, 183, 171, .16);--chip-text: #cff5ef;--mailbox-background: linear-gradient( 160deg, rgba(89, 183, 171, .18), rgba(13, 17, 19, .92) );--assistant-settings-background: rgba(255, 255, 255, .04);--assistant-feedback-background: rgba(89, 183, 171, .12);--assistant-feedback-border: rgba(129, 214, 204, .16);--assistant-warning-background: rgba(169, 131, 47, .18);--assistant-warning-border: rgba(216, 176, 84, .24);--notice-info-background: rgba(89, 183, 171, .14);--notice-info-border: rgba(129, 214, 204, .2);--notice-success-background: rgba(89, 183, 171, .18);--notice-success-border: rgba(129, 214, 204, .24);--notice-error-background: rgba(167, 63, 63, .2);--notice-error-border: rgba(240, 154, 154, .24);--month-cell-background: rgba(24, 31, 35, .82);--calendar-saturday: #6aa7ff;--calendar-holiday: #ff8c8c;--today-cell-outline: #d4d9db;--month-selection-outline: rgba(89, 183, 171, .46);--month-selection-today-outline: rgba(89, 183, 171, .22);--day-column-background: rgba(24, 31, 35, .76);--hero-panel-background: linear-gradient( 180deg, rgba(24, 31, 35, .96), rgba(17, 22, 25, .92) );--score-comment-background: rgba(89, 183, 171, .12);--comparison-track-bg: rgba(89, 183, 171, .18);--comparison-plan-start: rgba(89, 183, 171, .18);--comparison-plan-end: rgba(47, 143, 132, .34);--comparison-actual-start: #7ad7cb;--comparison-actual-end: #2f8f84;--focus-outline: rgba(89, 183, 171, .42);--accent-shadow: rgba(89, 183, 171, .28);--auth-tab-shadow: rgba(89, 183, 171, .16);--timeline-label-bg: rgba(255, 255, 255, .06);--timeline-label-border: rgba(255, 255, 255, .08);--timeline-label-text: #c5d6d3;--timeline-label-actual-bg: rgba(89, 183, 171, .14);--timeline-label-actual-border: rgba(129, 214, 204, .18);--timeline-canvas-background: linear-gradient( 180deg, rgba(24, 31, 35, .96), rgba(16, 22, 25, .94) );--timeline-canvas-split-overlay: linear-gradient( 90deg, rgba(255, 255, 255, .02) 0%, rgba(255, 255, 255, .02) 50%, rgba(89, 183, 171, .05) 50%, rgba(89, 183, 171, .05) 100% );--timeline-grid-line: rgba(225, 240, 236, .08);--timeline-divider: rgba(225, 240, 236, .12);--timeline-legend-bg: rgba(255, 255, 255, .05);--timeline-legend-border: rgba(255, 255, 255, .08);--timeline-plan-bg: rgba(255, 255, 255, .07);--timeline-plan-bg-split: rgba(255, 255, 255, .1);--timeline-plan-border: rgba(255, 255, 255, .12);--timeline-plan-text: #d8e5e2;--timeline-neutral-chip-bg: rgba(255, 255, 255, .09);--timeline-neutral-chip-text: #d1dfdc;--detail-card-background: rgba(24, 31, 35, .84);--detail-card-border: rgba(129, 214, 204, .22);--notebook-background: linear-gradient(180deg, rgba(24, 31, 35, .94), rgba(17, 22, 25, .96)), repeating-linear-gradient( 180deg, transparent 0, transparent 31px, rgba(147, 167, 164, .08) 31px, rgba(147, 167, 164, .08) 32px );--notebook-chip-bg: rgba(255, 255, 255, .06);--progress-card-background: rgba(24, 31, 35, .84);--progress-track-background: rgba(255, 255, 255, .08);--check-card-background: rgba(24, 31, 35, .84);--textarea-background: rgba(255, 255, 255, .04);--overlay-background: rgba(6, 9, 11, .66)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--app-background);color:var(--text-primary);transition:background .2s ease,color .2s ease}html:has(.modal-overlay),html:has(.quick-entry-overlay),html:has(.timetable-term-sheet-overlay),body:has(.modal-overlay),body:has(.quick-entry-overlay),body:has(.timetable-term-sheet-overlay){overflow:hidden;overscroll-behavior:contain}button,input,select,textarea{font:inherit}button{cursor:pointer}#root{min-height:100vh}.print-hide{display:initial}.loading-screen,.auth-shell,.app-shell{padding:24px}.splash-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:#fff}.splash-screen__inner{display:grid;justify-items:center;gap:18px;width:min(960px,100%)}.splash-screen__logo{width:min(920px,92vw);max-width:100%;height:auto;display:block;object-fit:contain;filter:drop-shadow(0 20px 44px rgba(31,43,43,.08));animation:splash-fade-in .55s ease}.splash-screen__message{margin:0;color:var(--text-muted);font-size:.95rem;letter-spacing:.02em}.legal-page-shell{min-height:100vh;padding:24px;display:grid;place-items:start center}.legal-page-card{width:min(820px,100%);display:grid;gap:24px;padding:28px;border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.legal-back-link{width:max-content;color:var(--accent-strong);font-size:.86rem;font-weight:800;text-decoration:none}.legal-back-link:hover{text-decoration:underline}.legal-page-header{display:grid;gap:8px}.legal-page-header h1{margin:0;font-size:clamp(1.7rem,5vw,2.4rem)}.legal-page-header p,.legal-section p,.legal-updated{color:var(--text-muted)}.legal-page-header p,.legal-section p{margin-bottom:0;line-height:1.85}.legal-section-list{display:grid;gap:20px}.legal-section{display:grid;gap:8px;padding-top:18px;border-top:1px solid var(--border)}.legal-section h2{margin:0;font-size:1.05rem}.legal-updated{margin:0;font-size:.82rem}@keyframes splash-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-stack{display:grid;gap:20px}.panel,.hero-card,.auth-card,.drawer,.comparison-card,.plan-detail-card,.score-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow)}.hero-card,.panel,.auth-card{padding:24px}.eyebrow{margin:0 0 8px;color:var(--accent);font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:12px;font-size:clamp(2rem,4vw,3rem);line-height:1.1}h2{margin-bottom:6px;font-size:1.3rem}.hero-copy,.section-header p,.comparison-subtitle,.detail-note,.score-help,.empty-copy,.inline-note,.mailbox-expire,.month-target,.comparison-metrics{color:var(--text-muted)}.auth-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:24px;align-items:start;min-height:100vh}.auth-shell-modern{grid-template-columns:minmax(320px,560px);justify-content:center}.auth-aside-card{display:grid;gap:20px;min-height:100%;background:radial-gradient(circle at top right,rgba(55,122,255,.12),transparent 30%),linear-gradient(180deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 92%,var(--accent) 8%) 100%)}.auth-main-card{display:grid;gap:18px;width:min(100%,560px)}.auth-brand-header{display:flex;justify-content:flex-start}.auth-highlight-list{display:grid;gap:12px}.auth-highlight-card{padding:16px 18px;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--surface) 86%,var(--surface-strong) 14%)}.auth-highlight-card strong{display:block;margin-bottom:6px;font-size:.98rem}.auth-highlight-card p{margin:0;color:var(--text-muted)}.auth-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.auth-mode-tab{border:1px solid var(--button-ghost-border);background:var(--button-ghost-bg);color:inherit;padding:13px 16px;border-radius:16px;font-weight:700;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.auth-mode-tab:hover{transform:translateY(-1px)}.auth-mode-tab.active{background:color-mix(in srgb,var(--accent) 14%,var(--surface) 86%);border-color:color-mix(in srgb,var(--accent) 30%,var(--border) 70%);box-shadow:0 10px 20px var(--auth-tab-shadow)}.auth-stage-card{display:grid;gap:18px;padding:22px;border:1px solid var(--border);border-radius:20px;background:color-mix(in srgb,var(--surface) 88%,var(--surface-strong) 12%)}.auth-stage-card-secondary{background:var(--surface)}.auth-legal-note{margin:-4px 0 0;color:var(--text-muted);font-size:.76rem;line-height:1.6;text-align:center}.auth-legal-note a{color:var(--accent-strong);font-weight:800;text-decoration:none}.auth-legal-note a:hover{text-decoration:underline}.auth-stage-header{display:flex;align-items:start;justify-content:space-between;gap:16px}.auth-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.auth-form,.mailbox-preview,.suggestion-card,.actual-form{display:grid;gap:16px}.field{display:grid;gap:8px}.field span{font-size:.9rem;font-weight:600}.field input,.field select,.field textarea{width:100%;min-width:0;padding:12px 14px;border:1px solid var(--input-border);border-radius:14px;background:var(--surface-strong);color:inherit}.field textarea{resize:vertical}.field-full{grid-column:1 / -1}.field-pair{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(136px,1fr));gap:14px;min-width:0}.field-pair .field,.field-pair input,.field-pair button,.field-pair select,.field-pair textarea{min-width:0;max-width:100%}.time-range-fields{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(136px,1fr));gap:14px;min-width:0}.time-wheel-trigger{width:100%;min-width:0;min-height:44px;padding:12px 14px;border:1px solid var(--input-border);border-radius:14px;background:var(--surface-strong);color:inherit;font:inherit;font-weight:800;line-height:1.2;text-align:left;cursor:pointer}.time-wheel-trigger:disabled{color:var(--text-muted);-webkit-text-fill-color:var(--text-muted);cursor:default;opacity:1}.time-picker-overlay{align-items:end;justify-content:center;justify-items:center;padding:0;overflow:hidden;background:#0a0d0f75;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.time-picker-modal{width:min(100%,508px);display:grid;gap:12px;max-height:min(76dvh,560px);padding:10px 18px calc(16px + env(safe-area-inset-bottom,0px));overflow:hidden;border:1px solid color-mix(in srgb,var(--border-strong) 55%,transparent);border-bottom:0;border-radius:26px 26px 0 0;background:color-mix(in srgb,var(--surface-strong) 97%,transparent);box-shadow:0 -22px 58px #080c0e3d;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}.time-picker-modal:before{content:"";width:44px;height:5px;margin:0 auto 2px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 42%,transparent)}.time-picker-title{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:38px;padding:0 2px 8px;border-bottom:1px solid color-mix(in srgb,var(--border-strong) 42%,transparent)}.time-picker-title strong{font-size:.92rem;font-weight:800}.time-picker-title span{color:var(--accent);font-size:1rem;font-weight:900;white-space:nowrap}.time-wheel-picker{position:relative;display:grid;grid-template-columns:minmax(96px,118px) 26px minmax(96px,118px);gap:4px;align-items:stretch;justify-content:center;padding:0 8px}.time-wheel-picker:before,.time-wheel-picker:after{content:"";position:absolute;left:8px;right:8px;height:92px;pointer-events:none;z-index:4}.time-wheel-picker:before{top:0;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 99%,transparent) 8%,color-mix(in srgb,var(--surface-strong) 78%,transparent) 50%,transparent 100%)}.time-wheel-picker:after{bottom:0;background:linear-gradient(0deg,color-mix(in srgb,var(--surface-strong) 99%,transparent) 8%,color-mix(in srgb,var(--surface-strong) 78%,transparent) 50%,transparent 100%)}.time-wheel-selection{position:absolute;left:4px;right:4px;top:50%;height:56px;transform:translateY(-50%);border:1px solid color-mix(in srgb,var(--border-strong) 55%,transparent);border-radius:14px;background:color-mix(in srgb,var(--surface-selected) 82%,transparent);pointer-events:none;z-index:1}.time-wheel-column{position:relative;display:grid;grid-template-rows:1fr;min-width:0}.time-wheel-unit{display:none}.time-wheel-list{height:264px;overflow-y:auto;padding:104px 0;scroll-snap-type:y mandatory;scrollbar-width:none;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.time-wheel-list::-webkit-scrollbar{display:none}.time-wheel-item{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;padding:0 4px;border:0;background:transparent;color:var(--text-muted);font:inherit;font-size:1.7rem;font-weight:500;line-height:1;opacity:.32;scroll-snap-align:center;transition:color .16s ease,font-size .16s ease,opacity .16s ease;touch-action:manipulation}.time-wheel-item.active{color:var(--accent);font-size:2.05rem;font-weight:600;opacity:1}.time-wheel-separator{position:relative;z-index:2;align-self:center;justify-self:center;color:var(--accent);font-size:2rem;font-weight:700;line-height:1}.time-picker-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:2px}.time-picker-actions .ghost-button,.time-picker-actions .primary-button{min-height:44px;padding:10px 14px;border-radius:13px;font-size:.86rem;font-weight:800;box-shadow:none}.time-wheel-readonly{display:flex;align-items:center;min-height:44px;min-width:0;padding:12px 14px;border:1px solid var(--input-border);border-radius:14px;background:var(--surface-strong);color:var(--text-muted);font-weight:700;box-sizing:border-box}.field input[type=date],.field input[type=time]{width:100%;inline-size:100%;display:block;min-width:0;min-inline-size:0;max-width:100%;max-inline-size:100%;box-sizing:border-box;line-height:1.25;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field input[type=date]::-webkit-date-and-time-value,.field input[type=time]::-webkit-date-and-time-value{text-align:left}.datetime-stack{display:grid;gap:10px;min-width:0}.datetime-row{display:grid;grid-template-columns:max-content minmax(150px,1.15fr) minmax(92px,.72fr);gap:10px;align-items:end;min-width:0}.datetime-row__label{align-self:center;color:var(--text-muted);font-size:.82rem;font-weight:800;white-space:nowrap}.datetime-row__date,.datetime-row__time{min-width:0}.datetime-row input{width:100%;max-width:100%}.datetime-row input:disabled{opacity:1;color:var(--text-muted);-webkit-text-fill-color:var(--text-muted)}.primary-button,.ghost-button,.mini-button,.segment,.week-chip,.month-cell{border:0;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.primary-button,.ghost-button,.mini-button,.segment,.week-chip{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;flex-shrink:0}.primary-button{padding:12px 18px;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#f6fbfb;font-weight:700;box-shadow:0 12px 24px var(--accent-shadow)}.ghost-button,.mini-button,.segment,.week-chip{padding:10px 14px;border-radius:999px;background:var(--button-ghost-bg);color:inherit;border:1px solid var(--button-ghost-border)}.ghost-button:hover,.mini-button:hover,.primary-button:hover,.segment:hover,.week-chip:hover,.month-cell:hover{transform:translateY(-1px)}.danger{color:var(--danger)}.mailbox-preview{padding:18px;border-radius:18px;background:var(--mailbox-background)}.mailbox-label{margin-bottom:4px;font-size:.8rem;color:var(--text-muted)}.mailbox-code{font-size:2rem;font-weight:800;letter-spacing:.16em}.app-shell{max-width:1440px;margin:0 auto;display:grid;gap:16px;padding-bottom:calc(24px + var(--app-bottom-nav-clearance))}.app-header,.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.app-view-switcher{position:fixed;inset-inline:0;bottom:0;top:auto;z-index:90;width:100%;margin:0 auto;justify-content:center;background:color-mix(in srgb,var(--surface-strong) 94%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 32%,transparent) transparent;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.app-view-switcher.panel{padding:8px 16px calc(9px + env(safe-area-inset-bottom,0px));border:0;border-top:1px solid var(--border);border-bottom:0;border-radius:0;box-shadow:0 -10px 28px #161d2114}.app-view-switcher::-webkit-scrollbar{height:6px}.app-view-switcher::-webkit-scrollbar-track{background:transparent}.app-view-switcher::-webkit-scrollbar-thumb{border-radius:999px;background:color-mix(in srgb,var(--accent) 26%,transparent)}.app-view-switcher .segmented-control{flex:0 0 auto;flex-wrap:nowrap;justify-content:flex-start;width:max-content;max-width:none;min-width:max-content;gap:3px;padding:3px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface-soft) 78%,transparent)}.app-view-switcher .segment{flex:0 0 auto;min-height:32px;min-width:max-content;padding:6px 11px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text-muted);box-shadow:none;font-size:.78rem;font-weight:800;white-space:nowrap;word-break:keep-all}.app-view-switcher .segment:hover{transform:none;background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--accent-strong)}.app-view-switcher .segment.active{border-color:color-mix(in srgb,var(--accent) 12%,transparent);background:var(--accent);color:#fff;box-shadow:0 5px 14px var(--accent-shadow)}.app-view-switcher .segment.active:hover{background:var(--accent);color:#fff}.app-action-toolbar{justify-content:flex-end}.daily-add-fab{position:fixed;right:max(18px,calc((100vw - 1440px)/2 + 24px));bottom:calc(var(--app-bottom-nav-clearance) + 16px);z-index:80;width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border) 82%);border-radius:50%;background:color-mix(in srgb,var(--surface-strong) 72%,transparent);color:var(--accent-strong);box-shadow:0 10px 22px #161d211a;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font:inherit;cursor:pointer;opacity:.86;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease}.daily-add-fab span{display:block;transform:translateY(-1px);font-size:2rem;font-weight:400;line-height:1}.daily-add-fab:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 34%,var(--border) 66%);background:color-mix(in srgb,var(--surface-strong) 82%,var(--accent) 18%);box-shadow:0 12px 24px #161d211f;opacity:.96}.daily-add-fab:active{transform:translateY(0) scale(.98);opacity:1}.daily-add-fab:focus-visible{outline:3px solid var(--focus-outline);outline-offset:3px}.nav-icon-button{width:38px;height:38px;min-width:38px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:12px;border:1px solid var(--button-ghost-border);background:var(--button-ghost-bg);color:var(--text-muted);box-shadow:none;line-height:1}.view-title-nav .ghost-button.nav-icon-button,.month-view-title-nav .ghost-button.nav-icon-button{width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border-radius:12px;font-size:1rem}.nav-icon-button span{display:block;transform:translateY(-1px);font-size:1.08rem;font-weight:800;line-height:1}.nav-icon-button:hover{border-color:var(--border-strong);background:var(--surface-soft);color:var(--accent);box-shadow:none}.nav-icon-button:active{transform:translateY(0) scale(.98)}.nav-icon-button:focus-visible{outline:3px solid var(--focus-outline);outline-offset:2px}.header-actions,.row-actions,.nav-actions,.label-row,.drawer-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.app-header .header-actions{gap:10px;flex-wrap:nowrap}.brand-lockup{display:flex;align-items:center;justify-content:center;gap:16px;min-width:0;width:100%}.brand-logo-image{display:block;height:114px;width:auto;max-width:min(520px,100%);object-fit:contain;flex-shrink:0}.app-header .brand-lockup{justify-content:flex-start;width:auto;flex:1 1 auto}.app-header .brand-logo-image{height:91px;max-width:min(416px,100%)}.brand-mark{width:76px;height:76px;flex:0 0 auto;filter:drop-shadow(0 12px 24px var(--accent-shadow))}.brand-mark svg{display:block;width:100%;height:100%}.brand-copy{display:grid;gap:2px;min-width:0}.brand-kicker{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.brand-name{font-size:clamp(1.85rem,4vw,2.9rem);line-height:1;letter-spacing:.01em}.brand-tagline{color:var(--text-muted);font-size:.94rem}.user-badge,.summary-chip,.confidence-badge,.type-badge,.event-pill,.event-empty,.week-range-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:var(--chip-bg);color:var(--chip-text);font-size:.86rem}.header-profile-name.user-badge{max-width:180px;padding:0;border:0;background:transparent;color:var(--text-muted);font-size:.95rem;font-weight:800;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-chip{min-width:140px;justify-content:space-between}.week-range-chip{font-size:.84rem;white-space:nowrap}.date-picker-trigger{border:1px solid color-mix(in srgb,var(--accent) 12%,transparent);font:inherit;font-size:.84rem;font-weight:800;cursor:pointer}.date-picker-trigger:hover{border-color:color-mix(in srgb,var(--accent) 24%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-strong)}.my-page-trigger{display:inline-flex;align-items:center;gap:0;padding:3px;border-color:transparent;background:transparent;box-shadow:none}.header-settings-button{width:42px;height:42px;min-width:42px;min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-color:transparent;border-radius:14px;background:transparent;box-shadow:none;line-height:1}.header-settings-button span{display:block;transform:translateY(-1px);font-size:1.08rem;line-height:1}.header-settings-button svg{color:var(--text-muted);transition:color .18s ease}.header-settings-button:hover,.header-settings-button:focus-visible{border-color:color-mix(in srgb,var(--accent) 14%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent);box-shadow:none}.header-settings-button:active{background:color-mix(in srgb,var(--accent) 12%,transparent);transform:translateY(0) scale(.98)}.header-settings-button:hover svg,.header-settings-button:focus-visible svg{color:var(--accent)}.user-avatar{width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;position:relative;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;font-size:1.5rem;font-weight:800;box-shadow:0 10px 22px var(--accent-shadow)}.user-avatar-image{width:100%;height:100%;object-fit:cover;display:block}.user-avatar-small{width:46px;height:46px;font-size:1.15rem;box-shadow:none}.assistant-runtime{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.assistant-runtime-help{font-size:.82rem;color:var(--text-muted)}.assistant-settings-card{display:grid;gap:14px;padding:16px 18px;border-radius:20px;background:var(--assistant-settings-background);border:1px solid var(--border-strong)}.assistant-settings-grid{display:grid;gap:14px}.collapsible-field{gap:10px}.collapsible-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid var(--button-ghost-border);background:var(--surface-strong);color:inherit;text-align:left}.collapsible-toggle-copy{display:grid;gap:2px}.collapsible-toggle-copy>span{font-size:.78rem;font-weight:600;color:var(--text-muted)}.collapsible-toggle-copy>strong{font-size:.92rem}.collapsible-toggle-summary{font-size:.74rem;font-weight:700;color:var(--accent)}.collapsible-panel{display:grid;gap:10px}.assistant-feedback-card{display:grid;gap:8px;padding:14px 16px;border-radius:18px;background:var(--assistant-feedback-background);border:1px solid var(--assistant-feedback-border)}.assistant-feedback-card.warning{background:var(--assistant-warning-background);border-color:var(--assistant-warning-border)}.assistant-feedback-list{margin:0;padding-left:18px;color:var(--text-muted)}.tracking-tools-card{gap:16px}.tracking-display{padding:16px 18px;border-radius:18px;background:var(--surface-strong);border:1px solid var(--border);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;letter-spacing:.08em;text-align:center;font-variant-numeric:tabular-nums}.tracking-timer-row{display:grid;gap:12px}.type-badge,.event-pill,.event-empty,.confidence-badge{padding:6px 10px}.segmented-control{display:inline-flex;gap:10px;flex-wrap:wrap}.segment.active,.week-chip.active{background:var(--accent);color:#fff}.app-notice{padding:14px 18px;border-radius:18px;border:1px solid transparent}.app-toast-layer{position:fixed;top:18px;left:50%;transform:translate(-50%);z-index:1200;width:min(560px,calc(100vw - 24px));pointer-events:none}.app-toast-layer.bottom{top:auto;bottom:calc(var(--app-bottom-nav-clearance) + 18px)}.app-toast{display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 18px 44px #161d212e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto}.app-toast span{min-width:0}.app-toast-action{flex:0 0 auto;min-height:30px;padding:5px 10px;border:1px solid var(--button-ghost-border);border-radius:999px;background:var(--button-ghost-bg);color:var(--accent-strong);font:inherit;font-size:.8rem;font-weight:800;white-space:nowrap}.app-toast-action:hover{border-color:var(--border-strong);background:var(--surface-soft)}.app-toast-close{flex:0 0 auto;width:28px;height:28px;padding:0;border:0;border-radius:999px;background:#ffffff29;color:inherit;line-height:1}.app-notice.info{background:var(--notice-info-background);border-color:var(--notice-info-border)}.app-notice.success{background:var(--notice-success-background);border-color:var(--notice-success-border)}.app-notice.error,.inline-error{color:var(--danger)}.app-notice.error{background:var(--notice-error-background);border-color:var(--notice-error-border)}.section-header{display:flex;justify-content:space-between;gap:16px;align-items:start}.view-header-stack{display:grid;gap:14px}.swipe-view{touch-action:pan-y}.view-titlebar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.view-titlebar h2{margin-bottom:0}.view-title-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex:1 1 auto;min-width:0}.view-title-nav{gap:8px;margin-right:auto}.app-shell.home-app-shell{width:min(100%,508px);max-width:508px;min-height:100dvh;margin:0 auto;gap:0;padding:10px 12px 76px;background:radial-gradient(circle at 8% 0%,rgba(255,244,218,.44),transparent 24%),linear-gradient(180deg,#fbfdff,#f5faf7)}.home-main{min-width:0}.home-dashboard{--home-blue: #0876f9;--home-blue-strong: #0566df;--home-ink: #151d31;--home-muted: #637089;--home-line: #e3e9f1;--home-line-soft: #edf1f5;--home-card: #fff;--home-radius: 14px;--home-radius-small: 11px;--home-shadow-soft: 0 4px 13px rgba(33, 54, 87, .055);--home-shadow-card: 0 7px 20px rgba(32, 55, 91, .05);--home-spring: cubic-bezier(.34, 1.56, .64, 1);display:grid;gap:8px;color:var(--home-ink);font-family:Hiragino Sans,Yu Gothic UI,Meiryo,system-ui,sans-serif}.home-dashboard *,.home-dashboard *:before,.home-dashboard *:after{box-sizing:border-box}.home-dashboard button{font:inherit}.home-topbar{display:grid;grid-template-columns:118px minmax(190px,1fr) 116px;align-items:center;gap:7px;min-height:62px}.home-streak-card,.home-icon-button,.home-avatar-button,.home-date-paper{border:1px solid var(--home-line);background:var(--home-card);box-shadow:var(--home-shadow-soft)}.home-streak-card{min-height:54px;display:flex;align-items:center;gap:7px;padding:6px 9px;border-radius:12px}.home-streak-flame{flex:0 0 auto;width:27px;height:27px;color:#ff6900;fill:#ff6900}.home-streak-card>div{min-width:0;display:grid;line-height:1.02}.home-streak-card span,.home-streak-card small{color:#46536b;font-size:.58rem;font-weight:800;white-space:nowrap}.home-streak-card strong{margin:2px 0;color:#10182b;font-size:1.12rem;line-height:1;white-space:nowrap}.home-date-display{position:relative;min-width:0;min-height:60px;display:block;padding-top:7px;color:#121b32;text-decoration:none}.home-date-paper{height:52px;display:grid;grid-template-columns:1.18fr .9fr .9fr .72fr;overflow:hidden;border-radius:9px}.home-date-rings{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;pointer-events:none}.home-date-ring{position:absolute;top:-1px;width:7px;height:18px;transform:translate(-50%);border:2px solid #17213a;border-radius:999px;background:#f8fbfd;box-shadow:0 1px 1px #17213a1a,inset 0 0 0 1px #fffc}.home-date-ring:after{content:"";position:absolute;left:50%;bottom:-5px;width:3px;height:8px;transform:translate(-50%);border-radius:999px;background:#17213a}.home-date-segment{min-width:0;display:flex;align-items:center;justify-content:center;gap:1px;padding:0 4px;border-right:1px solid #dfe5ed;background:#fff;white-space:nowrap}.home-date-segment:last-child{border-right:0}.home-date-value{color:#111a31;font-size:.98rem;font-weight:900;line-height:1;letter-spacing:-.025em}.home-date-unit{color:#202a43;font-size:.68rem;font-weight:900;line-height:1}.home-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.home-icon-button,.home-avatar-button{position:relative;width:36px;height:36px;min-width:36px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:10px;color:#273451;cursor:pointer;transition:transform .2s var(--home-spring),filter .15s ease}.home-avatar-button{overflow:hidden;border:0;border-radius:50%;background:#eaf4ff;box-shadow:none}.home-avatar-button .user-avatar,.home-avatar-button img{width:34px;height:34px}.home-notification-badge{position:absolute;z-index:3;top:-7px;right:-5px;min-width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#ef3040;color:#fff;font-size:.61rem;font-weight:900}.home-next-card,.home-panel,.home-alert-card{border:1px solid var(--home-line-soft);background:var(--home-card);box-shadow:var(--home-shadow-card)}.home-next-card{position:relative;height:226px;overflow:hidden;padding:15px 16px 62px;border-radius:var(--home-radius);background:linear-gradient(90deg,#f5fafffc,#f5fafffa 56%,#ffffff3d),#fff}.home-next-copy{position:relative;z-index:2;width:56%;min-width:245px}.home-eyebrow{margin:0 0 6px;color:var(--home-blue);font-size:.72rem;font-weight:900}.home-next-copy h1{margin:0 0 9px;color:#11182c;font-size:1.32rem;line-height:1.18}.home-next-meta{display:grid;gap:5px;color:#26344f;font-size:.75rem;font-weight:700}.home-next-meta span{display:flex;align-items:center;gap:7px}.home-next-meta svg{width:16px;height:16px;color:#415779}.home-empty-copy{max-width:280px;margin:0;color:var(--home-muted);font-size:.75rem;line-height:1.5}.home-study-scene{position:absolute;z-index:1;top:0;right:0;width:55%;height:177px;overflow:hidden}.home-scene-window{position:absolute;top:0;right:0;bottom:34px;left:0;background:linear-gradient(90deg,transparent 45%,rgba(206,225,244,.72) 46%,rgba(206,225,244,.72) 49%,transparent 50%),linear-gradient(180deg,transparent 46%,rgba(206,225,244,.58) 47%,rgba(206,225,244,.58) 50%,transparent 51%),linear-gradient(145deg,#fbfdff,#edf7ff)}.home-scene-desk{position:absolute;right:-10px;bottom:0;width:112%;height:79px;border-top:7px solid #b26d35;background:linear-gradient(90deg,rgba(118,66,28,.08),transparent 22%,rgba(255,255,255,.08) 46%,transparent 70%),linear-gradient(180deg,#da8b4e,#bd6d34);box-shadow:inset 0 4px #ffffff2e}.home-scene-notebook{position:absolute;left:19%;top:-49px;width:112px;height:69px;display:flex;align-items:center;justify-content:center;transform:rotate(3deg);border-radius:5px;background:#fffdf8;color:#1d5186;box-shadow:0 6px 12px #313b482e}.home-scene-notebook svg{width:66px;height:56px}.home-scene-notebook:after{content:"";position:absolute;right:-18px;bottom:4px;width:4px;height:72px;transform:rotate(54deg);transform-origin:bottom center;border-radius:4px;background:linear-gradient(90deg,#0f5d9e,#2f83c3);box-shadow:0 1px 2px #12436e33}.home-scene-books{position:absolute;left:13%;top:-72px;width:118px;height:51px;transform:rotate(-5deg)}.home-scene-books span{position:absolute;left:0;width:108px;height:17px;border-radius:3px;box-shadow:0 2px 5px #1e2b3d2e}.home-scene-books span:nth-child(1){top:0;left:10px;background:#2d80b8}.home-scene-books span:nth-child(2){top:15px;background:#128660}.home-scene-books span:nth-child(3){top:30px;left:5px;background:#f8f5eb;border:1px solid #d7d1c6}.home-scene-cup{position:absolute;right:14%;top:-34px;width:31px;height:38px;border:1px solid #d4d7d9;border-radius:4px 4px 11px 11px;background:#fbfbfb;box-shadow:0 3px 6px #28303821}.home-scene-cup:after{content:"";position:absolute;top:10px;right:-9px;width:10px;height:13px;border:2px solid #d4d7d9;border-left:0;border-radius:0 8px 8px 0}.home-scene-plant{position:absolute;right:8%;bottom:71px;width:36px;height:78px}.home-scene-plant:before{content:"";position:absolute;bottom:0;left:15px;width:4px;height:56px;border-radius:5px;background:#38844e}.home-scene-plant:after{content:"";position:absolute;bottom:-13px;left:5px;width:29px;height:24px;border:1px solid #d5d1c8;border-radius:4px 4px 9px 9px;background:#f4f1ea}.home-scene-plant span{position:absolute;width:19px;height:10px;border-radius:100% 0;background:#4ca65f;transform:rotate(-28deg)}.home-scene-plant span:nth-child(1){top:7px;left:1px}.home-scene-plant span:nth-child(2){top:22px;left:18px;transform:scaleX(-1) rotate(-28deg)}.home-scene-plant span:nth-child(3){top:36px;left:0}.home-scene-plant span:nth-child(4){top:49px;left:18px;transform:scaleX(-1) rotate(-28deg)}.home-start-button{position:absolute;z-index:3;left:16px;right:16px;bottom:10px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:11px;background:linear-gradient(180deg,#0b72ff,#0562ec);color:#fff;box-shadow:0 7px 16px #086bff38;font-size:.96rem;font-weight:900;cursor:pointer}.home-start-icon{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;color:var(--home-blue)}.home-panel{padding:10px 12px 8px;border-radius:var(--home-radius)}.home-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.home-section-heading h2{margin:0;font-size:.8rem}.home-section-heading button{display:inline-flex;align-items:center;gap:1px;padding:2px;border:0;background:transparent;color:var(--home-blue);font-size:.64rem;font-weight:900;cursor:pointer}.home-today-panel{display:block}.home-schedule-list{min-height:0;max-height:224px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#aab4c4 transparent;border:1px solid #eef1f5;border-radius:12px;background:#fff}.home-schedule-list::-webkit-scrollbar{width:4px}.home-schedule-list::-webkit-scrollbar-thumb{border-radius:999px;background:#aab4c4}.home-schedule-row,.home-schedule-add-row,.home-schedule-empty{width:100%;min-height:54px;border:0;background:#fff}.home-schedule-row{position:relative;display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:7px;padding:7px 9px;border-bottom:1px solid #edf0f4;color:var(--home-ink);text-align:left;cursor:pointer}.home-schedule-row:last-of-type{border-bottom:0}.home-time-dot{position:relative;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--home-blue);color:#fff}.home-time-dot:after{content:"";position:absolute;top:18px;left:8px;height:45px;border-left:1px dashed #cbd5e4}.home-schedule-row:last-of-type .home-time-dot:after{display:none}.home-time-dot.completed{background:#31a56f}.home-schedule-content{min-width:0;display:grid;gap:1px}.home-schedule-content time{color:#5f7191;font-size:.67rem;font-weight:800}.home-schedule-content strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.home-schedule-content small{display:flex;align-items:center;gap:4px;overflow:hidden;color:#5c6b83;text-overflow:ellipsis;white-space:nowrap;font-size:.61rem}.home-schedule-add-row{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:7px;padding:7px 9px;border-top:1px solid #edf0f4;color:#56708e;text-align:left;cursor:pointer}.home-schedule-add-row>svg:first-child{color:var(--home-blue)}.home-schedule-add-row span{font-size:.72rem;font-weight:800}.home-schedule-empty{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:7px;padding:7px 9px;color:#64728a;text-align:left;cursor:pointer}.home-schedule-empty span{font-size:.72rem;font-weight:800}.home-scroll-hint{margin:6px 0 0;color:#8090a7;text-align:center;font-size:.6rem}.home-schedule-date-label{color:#8996a8;font-size:.58rem;font-weight:700}.home-alert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-alert-card{min-width:0;padding:10px;border-radius:var(--home-radius);text-align:left;cursor:pointer}.home-alert-card.danger{background:linear-gradient(145deg,#fff8f8,#fff1f3)}.home-alert-card.warning{background:linear-gradient(145deg,#fffaf5,#fff4ec)}.home-alert-heading{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:7px;font-size:.66rem;font-weight:900}.home-alert-card.danger .home-alert-heading{color:#ed3f4b}.home-alert-card.warning .home-alert-heading{color:#f07a21}.home-alert-heading b{padding:3px 7px;border-radius:999px;background:#ffffffc2}.home-alert-body{display:grid;grid-template-columns:24px minmax(0,1fr) 15px;align-items:center;gap:6px;color:#24314a}.home-alert-card.danger .home-alert-body>svg:first-child{color:#f12d42}.home-alert-card.warning .home-alert-body>svg:first-child{color:#ff7a1a}.home-alert-body span{min-width:0;display:grid}.home-alert-body small{color:#6a7689;font-size:.59rem}.home-alert-body strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem}.home-progress-panel{padding-bottom:11px}.home-progress-body{display:grid;grid-template-columns:72px 122px minmax(0,1fr);align-items:center;gap:8px}.home-progress-ring{width:66px;height:66px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--home-blue) var(--home-progress),#e8eef6 0)}.home-progress-ring>div{width:53px;height:53px;display:grid;place-items:center;border-radius:50%;background:#fff}.home-progress-ring strong{font-size:1rem}.home-progress-copy{display:grid;gap:4px;color:#6c7890;font-size:.63rem}.home-progress-copy span{display:flex;justify-content:space-between;gap:6px}.home-progress-copy strong{color:#25314a}.home-progress-copy .negative{justify-content:flex-start;color:#eb3547;font-weight:900}.home-progress-copy .positive{justify-content:flex-start;color:#1f9a69;font-weight:900}.home-week-chart{min-width:0;display:grid;gap:4px}.home-chart-legend{display:flex;justify-content:flex-end;gap:10px;color:#53627a;font-size:.58rem;font-weight:800}.home-chart-legend span:before{content:"";width:7px;height:7px;display:inline-block;margin-right:3px;border-radius:2px;vertical-align:-1px}.home-chart-legend .actual:before{background:var(--home-blue)}.home-chart-legend .planned:before{border:1px dashed #63a2ff;background:#fff}.home-chart-bars{height:68px;display:grid;grid-template-columns:repeat(7,minmax(15px,1fr));align-items:end;gap:4px}.home-chart-day{height:100%;display:grid;grid-template-rows:1fr 13px;gap:2px;align-items:end}.home-chart-columns{height:100%;display:flex;align-items:end;justify-content:center;gap:2px}.home-chart-plan,.home-chart-actual{width:7px;min-height:3px;border-radius:2px 2px 0 0}.home-chart-plan{border:1px dashed #63a2ff;background:#f7fbff}.home-chart-actual{background:var(--home-blue)}.home-chart-day small{color:#68758a;text-align:center;font-size:.55rem}.home-bottom-nav{position:fixed;z-index:95;left:50%;bottom:0;width:min(508px,100%);height:calc(62px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(5,1fr);padding:6px 8px env(safe-area-inset-bottom,0px);transform:translate(-50%);border-top:1px solid #e4e9f0;background:#fffffffa;box-shadow:0 -8px 24px #22365812;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.home-bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:0;border:0;background:transparent;color:#52617a;cursor:pointer}.home-bottom-nav svg{width:21px;height:21px}.home-bottom-nav span:last-child{font-size:.59rem;font-weight:800}.home-bottom-nav button:first-child,.home-bottom-nav button.active{color:var(--home-blue)}.home-nav-active-circle{width:33px;height:33px;display:grid;place-items:center;margin-top:-13px;border:4px solid #fff;border-radius:50%;background:var(--home-blue);color:#fff;box-shadow:0 5px 13px #086bff3d}.home-nav-active-circle svg{width:18px;height:18px;fill:currentColor}.home-icon-button:hover,.home-avatar-button:hover,.home-schedule-row:hover,.home-schedule-add-row:hover,.home-schedule-empty:hover,.home-alert-card:hover,.home-section-heading button:hover,.home-bottom-nav button:hover{filter:brightness(.985)}.home-icon-button:active,.home-avatar-button:active,.home-start-button:active,.home-alert-card:active{transform:scale(.985)}.home-dashboard button:focus-visible{outline:3px solid rgba(8,118,249,.25);outline-offset:2px}@media(max-width:520px){.app-shell.home-app-shell{width:100%;padding:8px 8px 74px}.home-topbar{grid-template-columns:118px minmax(0,1fr) 112px;gap:5px}.home-date-paper{grid-template-columns:1.2fr .88fr .88fr .7fr}.home-date-value{font-size:.9rem}.home-date-unit{font-size:.62rem}.home-next-card{height:222px;padding-inline:14px}.home-next-copy h1{font-size:1.22rem}.home-next-copy{width:58%}.home-study-scene{width:55%}.home-start-button{left:14px;right:14px}.home-progress-body{grid-template-columns:68px 112px minmax(0,1fr);gap:6px}.home-chart-bars{gap:2px}}@media(max-width:455px){.home-topbar{grid-template-columns:112px minmax(0,1fr) 116px}.home-date-ring{width:6px}.home-date-value{font-size:.82rem}.home-date-unit{font-size:.56rem}.home-streak-card{padding-inline:7px}.home-streak-flame{width:24px;height:24px}.home-next-copy h1{font-size:1.12rem}.home-next-meta{font-size:.67rem}.home-progress-body{grid-template-columns:64px 100px minmax(0,1fr)}.home-progress-ring{width:60px;height:60px}.home-progress-ring>div{width:48px;height:48px}}@media(max-width:380px){.home-topbar{grid-template-columns:104px minmax(0,1fr) 106px}.home-icon-button,.home-avatar-button{width:33px;height:33px;min-width:33px}.home-avatar-button .user-avatar,.home-avatar-button img{width:31px;height:31px}.home-streak-card span,.home-streak-card small{font-size:.53rem}.home-streak-card strong{font-size:1rem}.home-date-value{font-size:.76rem}.home-date-unit{font-size:.52rem}.home-alert-grid{grid-template-columns:1fr}.home-progress-body{grid-template-columns:64px 1fr}.home-week-chart{grid-column:1 / -1}}.home-setup-card,.home-material-panel{border:1px solid var(--home-line-soft);border-radius:var(--home-radius);background:var(--home-card);box-shadow:var(--home-shadow-card)}.home-setup-card{display:grid;gap:13px;padding:18px 16px 16px}.home-setup-heading{display:flex;align-items:center;gap:10px}.home-setup-heading>div{min-width:0}.home-setup-heading p,.home-setup-heading h1,.home-setup-copy{margin:0}.home-setup-heading p{margin-bottom:2px;color:var(--home-blue);font-size:.68rem;font-weight:900}.home-setup-heading h1{color:#121a2e;font-size:1.14rem;line-height:1.2}.home-setup-mark{width:40px;height:40px;flex:0 0 auto;display:grid;place-items:center;border-radius:12px;background:#edf6ff;color:var(--home-blue)}.home-setup-copy{color:var(--home-muted);font-size:.72rem;line-height:1.65}.home-setup-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-setup-action{min-width:0;min-height:76px;display:grid;grid-template-columns:32px minmax(0,1fr) 16px;align-items:center;gap:8px;padding:10px;border:1px solid #e7edf4;border-radius:12px;background:#fff;color:#1b2943;text-align:left;cursor:pointer}.home-setup-action.primary{border-color:#cfe4ff;background:linear-gradient(145deg,#f4f9ff,#edf6ff)}.home-setup-action-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#f0f4f8;color:#50627e}.home-setup-action.primary .home-setup-action-icon{background:var(--home-blue);color:#fff}.home-setup-action>span:nth-child(2){min-width:0;display:grid;gap:3px}.home-setup-action strong{overflow:hidden;color:#17223a;font-size:.72rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.home-setup-action small{color:#758197;font-size:.59rem;line-height:1.35}.home-setup-action>svg{color:#718097}.home-material-panel{padding:calc(10px + var(--home-relax-material-side, 0px)) 12px calc(9px + var(--home-relax-material-side, 0px))}.home-material-list{overflow:hidden;border:1px solid #edf1f5;border-radius:12px;background:#fff}.home-material-row,.home-material-empty{width:100%;display:grid;grid-template-columns:32px minmax(0,1fr) 16px;align-items:center;gap:8px;border:0;background:transparent;color:#21304a;text-align:left;cursor:pointer}.home-material-row{min-height:63px;padding:8px 9px;border-bottom:1px solid #edf1f5}.home-material-row:last-child{border-bottom:0}.home-material-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#eef6ff;color:var(--home-blue)}.home-material-copy{min-width:0;display:grid;gap:4px}.home-material-title-line{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px}.home-material-title-line strong{overflow:hidden;color:#19243a;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.home-material-title-line b{flex:0 0 auto;color:var(--home-blue);font-size:.63rem;font-weight:900}.home-material-track{height:5px;overflow:hidden;border-radius:999px;background:#e9eef5}.home-material-track>span{display:block;height:100%;border-radius:inherit;background:var(--home-blue)}.home-material-copy small,.home-material-empty small{color:#788399;font-size:.58rem;line-height:1.3}.home-material-row>svg,.home-material-empty>svg{color:#6c7a91}.home-material-empty{min-height:66px;padding:9px 10px;border:1px dashed #d9e4f0;border-radius:12px;background:#fbfdff}.home-material-empty>span:nth-child(2){min-width:0;display:grid;gap:3px}.home-material-empty strong{color:#1c2941;font-size:.72rem}@media(min-height:1000px){.home-material-panel{padding-top:calc(14px + var(--home-relax-material-side, 0px));padding-bottom:calc(13px + var(--home-relax-material-side, 0px))}}@media(max-width:420px){.home-setup-actions{grid-template-columns:1fr}.home-setup-action{min-height:62px}}.home-core-sections{display:grid;gap:8px}.home-top-actions>.home-icon-button:first-child{border-color:transparent;background:transparent;box-shadow:none}.home-date-display{padding-top:6px}.home-date-paper{height:52px;grid-template-columns:1.22fr .92fr .92fr .76fr;overflow:visible;border-radius:9px}.home-date-segment{position:relative;overflow:visible;padding-inline:3px}.home-date-segment:first-child{border-radius:9px 0 0 9px}.home-date-segment:last-child{border-radius:0 9px 9px 0}.home-date-segment:before,.home-date-segment-year:after{content:"";position:absolute;z-index:4;top:-6px;width:5px;height:14px;transform:translate(-50%);border:2px solid #17213a;border-radius:999px;background:#fff;box-shadow:0 1px 1px #17213a14;pointer-events:none}.home-date-value{font-size:.98rem}.home-date-unit{font-size:.65rem}@media(max-width:380px){.home-alert-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.home-alert-card{padding:8px 7px}.home-alert-heading{gap:4px;margin-bottom:5px;font-size:.6rem}.home-alert-heading>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-alert-heading b{padding:2px 5px}.home-alert-body{grid-template-columns:20px minmax(0,1fr) 12px;gap:4px}.home-alert-body>svg:first-child{width:20px;height:20px}.home-alert-body>svg:last-child{width:14px;height:14px}.home-alert-body small{font-size:.54rem}.home-alert-body strong{font-size:.62rem}}.home-progress-panel{min-height:118px;padding:9px 10px 10px}.weekly-progress-layout{min-width:0;display:grid;grid-template-columns:clamp(56px,14%,68px) clamp(82px,23%,108px) minmax(0,1fr);align-items:center;gap:clamp(5px,1.5vw,10px)}.weekly-progress-ring{width:clamp(55px,13vw,64px);height:clamp(55px,13vw,64px);display:grid;place-items:center;justify-self:start;border-radius:50%;background:conic-gradient(var(--home-blue) var(--weekly-progress),#e8eef6 0)}.weekly-progress-ring>div{width:calc(100% - 13px);height:calc(100% - 13px);display:grid;place-items:center;border-radius:50%;background:#fff}.weekly-progress-ring strong{color:#25314a;font-size:clamp(.86rem,2.8vw,1rem)}.weekly-progress-summary{min-width:0;display:grid;align-content:center;gap:4px;color:#6c7890;font-size:clamp(.5rem,1.65vw,.61rem)}.weekly-progress-summary span{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:5px;white-space:nowrap}.weekly-progress-summary strong{color:#25314a;font-variant-numeric:tabular-nums}.weekly-progress-negative,.weekly-progress-positive{display:block!important;overflow:hidden;text-overflow:ellipsis;font-weight:900}.weekly-progress-negative{color:#eb3547}.weekly-progress-positive{color:#1f9a69}.weekly-progress-chart{min-width:0;display:grid;align-self:stretch;align-content:center;gap:4px}.weekly-progress-legend{min-height:12px;display:flex;justify-content:flex-end;gap:8px;color:#53627a;font-size:clamp(.46rem,1.4vw,.55rem);font-weight:800;white-space:nowrap}.weekly-progress-legend span{display:inline-flex;align-items:center;gap:4px}.weekly-progress-legend span:before{content:"";width:7px;height:7px;border-radius:2px}.weekly-progress-legend-actual:before{background:var(--home-blue)}.weekly-progress-legend-planned:before{border:1px dashed #63a2ff;background:#fff}.weekly-progress-plot{--weekly-progress-plot-height: 58px;min-width:0;display:grid;grid-template-columns:clamp(21px,6vw,27px) minmax(0,1fr);align-items:start;gap:clamp(2px,.8vw,4px)}.weekly-progress-axis{height:var(--weekly-progress-plot-height);display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding-bottom:1px;color:#66758d;font-size:clamp(.42rem,1.25vw,.49rem);line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}.weekly-progress-bars{height:calc(var(--weekly-progress-plot-height) + 14px);display:grid;grid-template-columns:repeat(7,minmax(8px,1fr));align-items:start;gap:clamp(1px,.65vw,3px)}.weekly-progress-day{height:100%;display:grid;grid-template-rows:var(--weekly-progress-plot-height) 12px;gap:2px;align-items:end}.weekly-progress-columns{height:var(--weekly-progress-plot-height);display:flex;align-items:end;justify-content:center;gap:2px}.weekly-progress-day small{color:#68758a;text-align:center;font-size:clamp(.44rem,1.2vw,.5rem);line-height:12px}.weekly-progress-plan,.weekly-progress-actual{width:clamp(4px,1.3vw,6px);min-height:2px;border-radius:2px 2px 0 0}.weekly-progress-plan{border:1px dashed #66a6ff;background:#ffffffe6}.weekly-progress-actual{background:var(--home-blue)}:root[data-theme=dark] .weekly-progress-ring{background:conic-gradient(var(--home-blue) var(--weekly-progress),color-mix(in srgb,var(--text-muted) 18%,var(--surface-strong) 82%) 0)}:root[data-theme=dark] .weekly-progress-ring>div,:root[data-theme=dark] .weekly-progress-legend-planned:before,:root[data-theme=dark] .weekly-progress-plan{background:var(--surface-strong)}:root[data-theme=dark] .weekly-progress-ring strong,:root[data-theme=dark] .weekly-progress-summary strong{color:var(--text-primary)}:root[data-theme=dark] .weekly-progress-summary,:root[data-theme=dark] .weekly-progress-legend,:root[data-theme=dark] .weekly-progress-axis,:root[data-theme=dark] .weekly-progress-day small{color:var(--text-muted)}:root[data-theme=dark] .weekly-progress-legend-planned:before,:root[data-theme=dark] .weekly-progress-plan{border-color:color-mix(in srgb,var(--accent) 72%,var(--border) 28%)}:root[data-theme=dark] .weekly-progress-negative{color:var(--danger)}:root[data-theme=dark] .weekly-progress-positive{color:color-mix(in srgb,var(--accent) 72%,#8fe5bf 28%)}@media(max-height:900px){.home-progress-panel{min-height:104px;padding:6px 8px 7px}.weekly-progress-layout{grid-template-columns:clamp(52px,13%,58px) clamp(76px,21%,94px) minmax(0,1fr);gap:clamp(4px,1vw,7px)}.weekly-progress-ring{width:clamp(52px,11vw,56px);height:clamp(52px,11vw,56px)}.weekly-progress-ring>div{width:calc(100% - 12px);height:calc(100% - 12px)}.weekly-progress-summary,.weekly-progress-chart{gap:3px}.weekly-progress-legend{min-height:10px;gap:7px}.weekly-progress-plot{--weekly-progress-plot-height: 42px}}@media(max-width:390px){.weekly-progress-layout{grid-template-columns:52px 76px minmax(0,1fr);gap:4px}.weekly-progress-ring{width:52px;height:52px}.weekly-progress-summary{font-size:.49rem}.weekly-progress-plot{grid-template-columns:21px minmax(0,1fr);gap:2px}.weekly-progress-bars{grid-template-columns:repeat(7,minmax(8px,1fr));gap:1px}.weekly-progress-plan,.weekly-progress-actual{width:4px}}.month-view-titlebar{flex-wrap:nowrap;align-items:center}.month-view-title-actions{flex:0 0 auto;gap:8px;margin-left:8px}.month-view-title-nav{margin-right:0;flex-wrap:nowrap}.month-view-print-button{margin-left:0}.view-print-button{margin-left:auto;padding:8px 11px;border-radius:12px;background:transparent;border:1px dashed var(--border-strong);color:var(--text-muted);box-shadow:none;font-size:.78rem;font-weight:600;opacity:.88}.view-print-button:hover{background:var(--surface-soft);border-color:var(--border);color:var(--text);transform:none}.week-chip-row,.plan-stack,.month-event-list{display:flex;gap:10px;flex-wrap:wrap}.week-chip-row{margin-top:2px}.month-week-chip-row{margin-top:18px;margin-bottom:6px;padding-top:2px;flex-wrap:nowrap;overflow-x:auto;gap:8px}.month-week-chip-row .week-chip{flex:0 0 auto;border-radius:12px;min-height:38px;padding:9px 16px;font-size:.84rem;white-space:nowrap}.month-pager-viewport{overflow:hidden;width:100%;min-width:0;touch-action:pan-y}.month-pager-track{display:flex;align-items:stretch;width:100%;will-change:transform}.month-pager-track.is-animated{transition:transform .26s cubic-bezier(.2,0,0,1)}.month-pager-track.is-dragging{transition:none;cursor:grabbing;-webkit-user-select:none;user-select:none}.month-pager-panel{flex:0 0 100%;min-width:100%;max-width:100%;overflow:hidden;opacity:1}.month-pager-panel.is-current{opacity:1}.month-pager-panel:not(.is-current){pointer-events:none}.month-pager-panel .month-grid{width:100%;min-width:0;max-width:100%;grid-template-columns:repeat(7,minmax(0,1fr));overflow:hidden}.month-pager-panel .month-cell,.month-pager-panel .month-weekday{min-width:0;overflow:hidden}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:0;overflow-x:auto}.month-weekday{padding:0 8px 8px;font-size:.85rem;font-weight:700;color:var(--text-muted);text-align:center}.month-weekday.is-saturday{color:var(--calendar-saturday)}.month-weekday.is-holiday{color:var(--calendar-holiday)}.month-cell{min-height:156px;padding:12px;text-align:left;border-radius:0;background:var(--month-cell-background);border-style:solid;border-color:var(--border-strong);border-width:1px 0 0;display:grid;align-content:start;gap:7px}.month-cell:nth-last-child(-n+7){border-bottom-width:1px}.month-major-event-list{display:grid;gap:4px}.month-study-summary{display:grid;gap:1px;margin:0;color:var(--text-muted);font-size:.66rem;font-weight:700;line-height:1.05;font-variant-numeric:tabular-nums}.month-study-summary span{white-space:nowrap}.month-cell.is-muted{opacity:.55}.month-cell.is-selected{background:var(--surface-selected);box-shadow:inset 0 0 0 1px var(--month-selection-outline)}.month-cell.is-today{box-shadow:inset 0 0 0 3px var(--today-cell-outline)}.month-cell.is-selected.is-today{box-shadow:inset 0 0 0 3px var(--today-cell-outline),inset 0 0 0 4px var(--month-selection-today-outline)}.month-cell-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:6px}.month-cell-head>strong,.month-cell-head>.month-holiday-label{min-width:0}.month-date-number.is-saturday{color:var(--calendar-saturday)}.month-date-number.is-holiday{color:var(--calendar-holiday)}.month-holiday-label{flex:1 1 auto;min-width:0;font-size:.78rem;font-weight:700;color:var(--calendar-holiday);white-space:nowrap;overflow:visible;text-align:left;line-height:1.1;letter-spacing:-.01em}.month-holiday-label.is-medium{font-size:.66rem!important}.month-holiday-label.is-long{font-size:.56rem!important}.month-holiday-label.is-very-long{font-size:.48rem!important}.month-holiday-label.is-ultra-long{font-size:.42rem!important}.month-date-number{display:inline-block;font-weight:800;color:var(--text-primary)}.month-cell.is-muted .month-date-number{color:var(--text-muted)}.month-major-event-pill{justify-content:flex-start;max-width:100%;min-height:19px;padding:2px 7px;border-radius:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;line-height:1.15}.month-week-chip-short,.month-target-label-short,.month-target-value-short,.month-major-event-short,.week-subtitle-label-short{display:none}.month-event-more{font-size:.8rem;color:var(--text-muted)}.today-dot{width:10px;height:10px;border-radius:50%;background:var(--accent)}.week-grid,.score-grid,.form-grid{display:grid;gap:14px}.week-grid{grid-template-columns:repeat(7,minmax(220px,1fr));overflow-x:auto}.week-view-grid{grid-template-columns:repeat(7,minmax(0,1fr));overflow-x:hidden;align-items:start}.day-column,.score-card,.suggestion-card,.plan-detail-card{padding:18px}.day-column{display:grid;gap:14px;border-radius:20px;background:var(--day-column-background);border:1px solid var(--border)}.week-day-column{min-width:0;padding:12px;gap:10px}.day-column-head,.plan-detail-head{display:flex;justify-content:space-between;gap:14px;align-items:start}.week-day-column-head{gap:8px}.week-day-column-head p{margin-bottom:0;font-size:.76rem;line-height:1.35}.week-day-link{padding:0;border:0;background:transparent;color:inherit;font-size:.88rem;font-weight:700;text-align:left}.week-day-link:hover{color:var(--accent)}.week-plan-stack{display:grid;gap:8px}.comparison-card{padding:14px;display:grid;gap:10px}.week-comparison-card{padding:10px;gap:8px;border-radius:16px}.comparison-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.week-comparison-head{display:grid;gap:6px;align-items:start}.week-comparison-head strong{font-size:.82rem;line-height:1.3;word-break:break-word}.week-comparison-head .type-badge{justify-self:start;font-size:.72rem;padding:4px 8px}.week-comparison-card .comparison-subtitle,.week-comparison-card .comparison-metrics{font-size:.74rem;line-height:1.35;margin-bottom:0}.week-comparison-card .comparison-track{height:10px}.comparison-track{position:relative;height:12px;border-radius:999px;overflow:hidden;background:var(--comparison-track-bg)}.comparison-plan-bar,.comparison-actual-bar{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px}.comparison-plan-bar{background:linear-gradient(90deg,var(--comparison-plan-start),var(--comparison-plan-end))}.comparison-actual-bar{background:linear-gradient(90deg,var(--comparison-actual-start),var(--comparison-actual-end))}.week-timeline-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:6px;margin-bottom:12px}.week-timeline-mode-control{width:fit-content;gap:6px}.week-timeline-mode-control .segment{min-height:34px;padding:6px 11px;border-radius:999px;font-size:.78rem;line-height:1}.week-timeline-legend{display:flex;gap:10px;flex-wrap:wrap;align-items:center;color:var(--text-muted);font-size:.82rem}.week-timeline-legend-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.week-timeline-legend-plan,.week-timeline-legend-actual,.week-timeline-legend-draft{width:16px;height:12px;border-radius:5px}.week-timeline-legend-plan{background:var(--timeline-plan-bg-split);border:1px solid var(--timeline-plan-border)}.week-timeline-legend-actual{background:var(--accent);box-shadow:inset 4px 0 0 var(--accent-strong)}.week-timeline-legend-draft{background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong) 88%);border:1px dashed color-mix(in srgb,var(--accent) 54%,var(--border) 46%)}.week-timeline-shell{--week-timeline-head-height: 72px;--week-timeline-hour-height: 36px;--week-timeline-min-block-height: 24px;display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;overflow-x:auto;padding-bottom:4px}.week-timeline-hours{display:grid;grid-template-rows:var(--week-timeline-head-height);flex:0 0 auto}.week-timeline-corner{min-height:var(--week-timeline-head-height)}.week-timeline-hour-label{display:flex;align-items:flex-start;justify-content:flex-end;padding-right:4px;color:var(--text-muted);font-size:.72rem;line-height:1;transform:translateY(-.35em)}.week-timeline-days{display:grid;grid-template-columns:repeat(7,minmax(136px,1fr));gap:8px;min-width:1000px}.week-timeline-day{min-width:0;display:grid;grid-template-rows:var(--week-timeline-head-height) auto}.week-timeline-day-head{display:grid;align-content:center;gap:4px;min-width:0;padding:10px;border-radius:18px 18px 0 0;background:var(--timeline-label-bg);border:1px solid var(--timeline-label-border);border-bottom:0}.week-timeline-canvas{position:relative;min-width:0;border-radius:0 0 18px 18px;background:var(--timeline-canvas-background);border:1px solid var(--border);overflow:hidden}.week-timeline-canvas.mode-compare{background:linear-gradient(180deg,rgba(23,109,102,.04),transparent 38%),var(--timeline-canvas-background)}.week-timeline-grid-line{position:absolute;left:0;right:0;border-top:1px solid var(--timeline-grid-line)}.week-timeline-block{position:absolute;z-index:1;display:flex;align-items:center;gap:0;min-width:0;padding:5px 8px;border-radius:12px;border:1px solid transparent;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;text-align:left;cursor:pointer;container-type:inline-size}.week-timeline-block--compact{padding-inline:6px;border-radius:10px}.week-timeline-block--narrow{padding-inline:5px;border-radius:9px}.week-timeline-block:hover{transform:translateY(-1px)}.week-timeline-entry-line,.week-timeline-block__title,.week-timeline-meta,.week-timeline-time,.week-timeline-subject{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-timeline-entry-line{display:grid;gap:2px;width:100%;font-size:.68rem;line-height:1.05}.week-timeline-block__title{flex:1 1 auto;font-weight:700}.week-timeline-title-row{display:flex;align-items:center;gap:4px;width:100%;min-width:0}.week-timeline-title-row .week-timeline-block__title{min-width:0}.week-timeline-title-row .weekly-draft-badge{flex:0 0 auto;max-width:54px;overflow:hidden;text-overflow:ellipsis}.week-timeline-block:not(.week-timeline-block--short):not(.week-timeline-block--tiny):not(.week-timeline-block--micro) .week-timeline-block__title{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.08}.week-timeline-block--short .week-timeline-block__title,.week-timeline-block--tiny .week-timeline-block__title,.week-timeline-block--micro .week-timeline-block__title{display:block;white-space:nowrap}.week-timeline-meta{display:flex;align-items:center;gap:5px}.week-timeline-time{flex:0 0 auto;color:var(--text-muted);font-size:.6rem;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.week-timeline-subject{flex:0 1 auto;max-width:7ch;color:var(--text-muted);font-size:.56rem;opacity:.78}.week-timeline-block--compact .week-timeline-entry-line{display:flex;align-items:center;gap:3px}.week-timeline-block--compact .week-timeline-meta{flex:0 1 auto}.week-timeline-block--compact .week-timeline-time{display:none}.week-timeline-block--narrow .week-timeline-entry-line{display:flex;align-items:center;gap:2px}.week-timeline-block--narrow .week-timeline-meta{display:none}@container (max-width: 86px){.week-timeline-entry-line{display:flex;align-items:center;gap:3px;line-height:1}.week-timeline-meta{flex:0 1 auto}.week-timeline-time{display:none}}@container (max-width: 58px){.week-timeline-entry-line{gap:2px}.week-timeline-meta{display:none}}.week-timeline-plan-block{background:var(--timeline-plan-bg-split);border-color:var(--timeline-plan-border);color:var(--timeline-plan-text)}.week-timeline-draft-block{z-index:3;padding-right:26px;border-style:dashed;border-color:color-mix(in srgb,var(--accent) 54%,var(--border) 46%);background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong) 88%);color:var(--text);box-shadow:inset 4px 0 color-mix(in srgb,var(--accent) 52%,transparent);cursor:default}.week-timeline-draft-block:hover{transform:none}.week-timeline-actual-block{z-index:2}.week-timeline-canvas.mode-compare .week-timeline-plan-block{opacity:.78}.week-timeline-canvas.mode-compare .week-timeline-draft-block{opacity:.92}.week-timeline-canvas.mode-compare .week-timeline-actual-block{border-width:1px}.week-timeline-empty{position:absolute;top:12px;left:8px;right:8px;margin:0;color:var(--text-muted);font-size:.72rem;text-align:center}.weekly-draft-badge{flex:0 0 auto;padding:2px 5px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--surface-strong) 86%);border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border) 66%);color:var(--accent-strong);font-size:.56rem;font-weight:800;line-height:1;white-space:nowrap}.weekly-draft-remove-button{position:absolute;top:3px;right:3px;z-index:1;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border) 70%);border-radius:999px;background:var(--surface);color:var(--text-muted);font:inherit;font-size:.72rem;font-weight:900;line-height:1;cursor:pointer}.weekly-draft-remove-button:hover{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,var(--border) 58%)}.week-timeline-block--short,.week-timeline-block--tiny,.week-timeline-block--micro{padding:2px 5px;border-radius:8px}.week-timeline-block--short .week-timeline-entry-line,.week-timeline-block--tiny .week-timeline-entry-line,.week-timeline-block--micro .week-timeline-entry-line{display:grid;align-items:center;gap:3px;font-size:.62rem;line-height:1}.week-timeline-block--short .week-timeline-meta,.week-timeline-block--tiny .week-timeline-meta{gap:3px}.week-timeline-block--short .week-timeline-subject,.week-timeline-block--tiny .week-timeline-subject,.week-timeline-block--micro .week-timeline-meta{display:none}.week-timeline-block--short .week-timeline-time,.week-timeline-block--tiny .week-timeline-time{font-size:.54rem}.week-timeline-block--micro .week-timeline-block__title{font-size:.56rem;line-height:1}.week-timeline-draft-block.week-timeline-block--short,.week-timeline-draft-block.week-timeline-block--tiny,.week-timeline-draft-block.week-timeline-block--micro{padding-right:22px}.week-timeline-block--tiny .weekly-draft-remove-button,.week-timeline-block--micro .weekly-draft-remove-button{top:2px;right:2px;width:16px;height:16px;font-size:.58rem}.day-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.9fr);gap:20px;align-items:start}.day-layout.is-single-panel{grid-template-columns:minmax(0,1fr)}.day-review-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:20px;align-items:start}.form-grid,.form-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-note{margin-bottom:0}.score-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.score-title{margin-bottom:8px;font-size:.88rem;font-weight:700;color:var(--text-muted)}.score-value{font-size:2rem;line-height:1}.score-comment{margin-bottom:0;padding:14px 16px;border-radius:18px;background:var(--score-comment-background)}.empty-copy{margin-bottom:0}.day-timeline-header{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}.day-timeline-header-main{display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);align-items:center;gap:12px;min-width:0;width:100%}.day-timeline-title-copy{flex:0 1 auto;min-width:0;justify-self:start}.day-timeline-title-copy h2{margin-bottom:0}.day-timeline-title-actions{grid-column:2;flex:0 0 auto;width:auto;min-width:0;margin-left:0;display:flex;align-items:center;gap:8px;justify-self:center}.day-timeline-title-actions .view-title-nav{display:inline-grid;grid-template-columns:repeat(3,auto);align-items:center;gap:6px;width:auto;margin-right:0}.day-timeline-print-button{grid-column:4;flex:0 0 auto;justify-self:end;margin-left:0}.day-timetable-import-button{grid-column:3;flex:0 0 auto;justify-self:end;margin-left:0}.timeline-shell{--timeline-head-height: 44px;--timeline-row-gap: 10px;--timeline-hour-height: 54px;--timeline-min-block-height: 24px;--timeline-hour-label-offset: -6px;--timeline-title-size: clamp(.94rem, .88rem + .18vw, 1.06rem);--timeline-meta-size: clamp(.7rem, .67rem + .08vw, .78rem);--timeline-chip-size: .72rem;display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;overflow-x:auto}.timeline-shell.split{align-items:start}.timeline-main{display:grid;gap:var(--timeline-row-gap);min-width:720px}.timeline-columns-head{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.timeline-column-label{min-height:var(--timeline-head-height);display:flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:16px;background:var(--timeline-label-bg);border:1px solid var(--timeline-label-border);font-size:.86rem;font-weight:700;color:var(--timeline-label-text);text-align:center}.timeline-column-label.actual{background:var(--timeline-label-actual-bg);border-color:var(--timeline-label-actual-border);color:var(--accent-strong)}.timeline-hours{display:grid;padding-top:calc(var(--timeline-head-height) + var(--timeline-row-gap))}.timeline-hour-label{display:flex;align-items:flex-start;font-size:.8rem;color:var(--text-muted);transform:translateY(var(--timeline-hour-label-offset))}.timeline-canvas{position:relative;min-width:640px;border-radius:24px;background:var(--timeline-canvas-background);border:1px solid var(--border);overflow:hidden}.timeline-canvas.split{min-width:720px;background:var(--timeline-canvas-split-overlay),var(--timeline-canvas-background)}.timeline-grid-line{position:absolute;left:0;right:0;border-top:1px solid var(--timeline-grid-line)}.timeline-divider{position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--timeline-divider)}.timeline-legend{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.timeline-legend-item{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:var(--timeline-legend-bg);border:1px solid var(--timeline-legend-border);font-size:.84rem}.timeline-legend-plan,.timeline-legend-subject{width:14px;height:14px;border-radius:4px}.timeline-legend-plan{display:none}.timeline-plan-block,.timeline-actual-block{position:absolute;display:flex;align-items:center;gap:0;padding:2px 7px;border-radius:12px;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;text-align:left;cursor:pointer}.timeline-plan-block{background:var(--timeline-plan-bg);border:1px solid var(--timeline-plan-border);color:var(--timeline-plan-text)}.timeline-plan-block.split{background:var(--timeline-plan-bg-split)}.timeline-actual-block{border:1px solid transparent;box-shadow:0 10px 24px #24313014}.timeline-draft-block{padding-right:30px;border-style:dashed;border-color:color-mix(in srgb,var(--accent) 54%,var(--border) 46%);background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong) 88%);color:var(--text);box-shadow:inset 5px 0 color-mix(in srgb,var(--accent) 52%,transparent);cursor:default}.timeline-plan-block:hover,.timeline-actual-block:hover{transform:translateY(-1px)}.timeline-draft-block:hover{transform:none}.timeline-plan-block.is-selected,.timeline-actual-block.is-selected{outline:2px solid var(--focus-outline);outline-offset:1px}.timeline-plan-block.is-compact,.timeline-actual-block.is-compact,.timeline-plan-block.is-narrow,.timeline-actual-block.is-narrow{padding-inline:5px;border-radius:10px}.timeline-plan-block.is-short,.timeline-plan-block.is-tiny,.timeline-plan-block.is-micro,.timeline-actual-block.is-short,.timeline-actual-block.is-tiny,.timeline-actual-block.is-micro{padding-block:2px;padding-inline:5px;border-radius:9px}.timeline-plan-block.is-short .timeline-entry-line,.timeline-plan-block.is-tiny .timeline-entry-line,.timeline-plan-block.is-micro .timeline-entry-line,.timeline-actual-block.is-short .timeline-entry-line,.timeline-actual-block.is-tiny .timeline-entry-line,.timeline-actual-block.is-micro .timeline-entry-line{gap:3px;font-size:.68rem;line-height:1}.timeline-plan-block.is-compact .timeline-entry-subject,.timeline-plan-block.is-narrow .timeline-entry-subject,.timeline-plan-block.is-short .timeline-entry-subject,.timeline-plan-block.is-tiny .timeline-entry-subject,.timeline-plan-block.is-micro .timeline-entry-time,.timeline-plan-block.is-micro .timeline-entry-subject,.timeline-actual-block.is-compact .timeline-entry-subject,.timeline-actual-block.is-narrow .timeline-entry-subject,.timeline-actual-block.is-short .timeline-entry-subject,.timeline-actual-block.is-tiny .timeline-entry-subject,.timeline-actual-block.is-micro .timeline-entry-time,.timeline-actual-block.is-micro .timeline-entry-subject{display:none}.timeline-plan-block.is-tiny .timeline-entry-title,.timeline-plan-block.is-micro .timeline-entry-title,.timeline-actual-block.is-tiny .timeline-entry-title,.timeline-actual-block.is-micro .timeline-entry-title{font-size:.72rem}.timeline-draft-block.is-short,.timeline-draft-block.is-tiny,.timeline-draft-block.is-micro{padding-right:22px}.timeline-draft-block.is-tiny .weekly-draft-remove-button,.timeline-draft-block.is-micro .weekly-draft-remove-button{top:2px;right:2px;width:16px;height:16px;font-size:.58rem}.timeline-plan-block p,.timeline-actual-block p{margin-bottom:0;font-size:.78rem}.timeline-subject-line{font-weight:600}.timeline-entry-line{display:flex;gap:5px;align-items:center;width:100%;min-width:0;font-size:var(--timeline-meta-size);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-draft-block .timeline-entry-line{display:grid;align-content:start;gap:2px}.timeline-draft-block .timeline-entry-meta-row{display:flex;flex-flow:row nowrap;align-items:center;gap:4px;width:100%;min-width:0;overflow:hidden;white-space:nowrap}.timeline-draft-block .timeline-entry-meta-row .timeline-entry-time,.timeline-draft-block .timeline-entry-meta-row .weekly-draft-badge{flex:0 0 auto}.timeline-draft-block .timeline-entry-meta-row .timeline-entry-subject{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-draft-block .weekly-draft-badge{max-width:54px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-entry-title,.timeline-entry-time,.timeline-entry-subject{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-entry-title{flex:1 1 auto;font-size:var(--timeline-title-size);line-height:1;font-weight:700}.timeline-entry-time,.timeline-entry-subject{flex:0 2 auto;font-size:var(--timeline-meta-size);line-height:1}.timeline-entry-subject{font-weight:600}.standalone-actual-editor-card .standalone-actual-duration-grid{margin-top:10px}.standalone-actual-editor-card .quick-entry-custom-duration{margin-top:8px}.standalone-link-section{gap:10px}.standalone-link-candidates{display:grid;gap:8px}.standalone-link-candidate{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong)}.standalone-link-candidate .comparison-subtitle{margin-bottom:0}@media screen and (max-width:560px){.standalone-link-candidate{grid-template-columns:1fr}.standalone-link-candidate .mini-button{width:100%}}.timeline-chip{display:inline-flex;align-items:center;width:fit-content;padding:4px 8px;border-radius:999px;font-size:var(--timeline-chip-size);font-weight:700}.timeline-chip.neutral{background:var(--timeline-neutral-chip-bg);color:var(--timeline-neutral-chip-text)}.timeline-chip-short{display:none}.detail-selection-card{display:grid;gap:8px;padding:18px;border-radius:20px;background:var(--detail-card-background);border:1px dashed var(--detail-card-border)}.notebook-panel{background:var(--notebook-background)}.notebook-topline{display:flex;gap:12px;flex-wrap:wrap}.notebook-summary-grid{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:0}.notebook-chip{background:var(--notebook-chip-bg)}.progress-card{display:grid;gap:10px;padding:16px;border-radius:18px;background:var(--progress-card-background);border:1px solid var(--border)}.progress-track{height:10px;border-radius:999px;overflow:hidden;background:var(--progress-track-background)}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#50af88,#206c68)}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.check-card{display:flex;gap:10px;align-items:start;padding:14px;border-radius:18px;background:var(--check-card-background);border:1px solid var(--border)}.check-card input{margin-top:2px}.check-card span{font-size:.92rem}.day-note-grid textarea{background:var(--textarea-background)}.daily-detail-modal img,.daily-detail-modal iframe,.daily-detail-modal object,.daily-detail-modal embed{display:block;max-width:min(360px,100%);max-height:240px;object-fit:contain}.faq-view{display:grid;gap:16px}.faq-list{display:grid;gap:10px}.faq-item{display:grid;gap:6px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-strong)}.faq-item h3,.faq-item p{margin:0}.faq-item h3{font-size:.96rem}.faq-item p{color:var(--text-muted);font-size:.88rem;line-height:1.6}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-background);display:grid;justify-content:end;z-index:var(--z-modal-overlay)}.todo-panel{display:grid;gap:14px}.todo-view{display:grid;gap:18px}.todo-view-header{align-items:center}.todo-sort-control{gap:6px;flex-wrap:nowrap}.todo-sort-control .segment{min-height:34px;padding:6px 10px;border-radius:10px;font-size:.78rem;white-space:nowrap}.todo-panel-header{align-items:center}.todo-form{display:grid;gap:12px}.todo-form-grid{gap:12px}.todo-form-actions{justify-content:flex-end}.todo-list{display:grid;gap:8px}.todo-section-list{display:grid;gap:14px}.todo-status-section{display:grid;gap:8px}.todo-status-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.todo-status-section-head h3{margin:0;font-size:.95rem}.todo-section-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:24px;padding:2px 8px;border-radius:999px;background:var(--chip-bg);color:var(--chip-text);font-size:.78rem;font-weight:800}.todo-view-list{gap:7px}.todo-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface-soft) 72%,transparent)}.todo-view-item{padding:9px 11px}.todo-item-pinned{border-color:color-mix(in srgb,#f6c343 34%,var(--border) 66%);background:color-mix(in srgb,#f6c343 8%,var(--surface-soft) 92%)}.todo-item-main{display:grid;gap:5px;min-width:0}.todo-item-title-row{display:flex;align-items:center;gap:8px;min-width:0}.todo-item-main strong{min-width:0;font-size:.95rem;line-height:1.3;overflow-wrap:anywhere}.todo-item-main p{margin-bottom:0;color:var(--text-muted);font-size:.8rem;line-height:1.4;overflow-wrap:anywhere}.todo-memo{display:inline-flex;align-items:flex-start;gap:6px}.todo-memo svg{flex:0 0 auto;margin-top:1px;color:var(--text-muted)}.todo-memo span{min-width:0}.todo-meta{display:flex;gap:6px;flex-wrap:wrap;color:var(--text-muted);font-size:.74rem}.todo-tag,.todo-lozenge{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:22px;padding:2px 7px;border:1px solid transparent;border-radius:7px;background:var(--chip-bg);color:var(--chip-text);font-weight:700;line-height:1.1;white-space:nowrap}.todo-tag svg{flex:0 0 auto;color:currentColor}.todo-lozenge{flex:0 0 auto;min-height:20px;padding-inline:7px;border-radius:6px;font-size:.68rem;letter-spacing:0}.todo-status-open{background:var(--surface);border-color:var(--border);color:var(--text-muted)}.todo-status-scheduled{background:var(--chip-bg);color:var(--accent)}.todo-status-done{background:color-mix(in srgb,var(--accent) 14%,var(--surface) 86%);color:var(--accent-strong)}.todo-status-archived,.todo-type-tag{background:var(--surface);border-color:var(--border);color:var(--text-muted)}.todo-date-tag{background:var(--surface);border-color:var(--border)}.todo-scheduled-tag{background:color-mix(in srgb,var(--accent) 12%,var(--surface) 88%);border-color:color-mix(in srgb,var(--accent) 26%,var(--border) 74%);color:var(--accent-strong)}.todo-pinned-tag{background:color-mix(in srgb,#f6c343 18%,var(--surface) 82%);border-color:color-mix(in srgb,#f6c343 38%,var(--border) 62%);color:color-mix(in srgb,#7a5200 84%,var(--text) 16%)}.todo-item-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.todo-action-button,.todo-delete-button{align-self:center;padding:6px 9px;border-radius:9px;font-size:.76rem}.todo-icon-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;border-radius:12px;color:var(--text-muted);font-size:1rem;line-height:1}.todo-icon-button svg{flex:0 0 auto;color:currentColor}.todo-icon-button:hover:not(:disabled){color:var(--accent)}.todo-icon-button:disabled{cursor:not-allowed;opacity:.42;transform:none}.todo-pin-button.active{background:color-mix(in srgb,var(--accent) 12%,var(--surface) 88%);border-color:color-mix(in srgb,var(--accent) 32%,var(--border) 68%);color:var(--accent)}.todo-icon-button.todo-delete-button{color:var(--danger)}.todo-icon-button.todo-delete-button:hover{border-color:color-mix(in srgb,var(--danger) 40%,var(--border) 60%);background:color-mix(in srgb,var(--danger) 8%,var(--surface) 92%)}.todo-section-toggle{justify-self:end;min-height:32px;padding:6px 10px;border-radius:10px;font-size:.76rem}.todo-edit-modal{width:min(560px,100%);display:grid;gap:14px}.todo-schedule-modal{width:min(520px,100%)}.todo-edit-header{align-items:center}.todo-edit-header p{margin:3px 0 0;color:var(--text-muted);font-size:.82rem;line-height:1.4;overflow-wrap:anywhere}.todo-edit-actions{justify-content:flex-end}.todo-schedule-duration{display:grid;gap:8px}.todo-schedule-duration-head h3{margin:0;font-size:.9rem}.todo-empty{color:var(--text-muted)}@media screen and (max-width:640px){.todo-view-header{align-items:stretch}.todo-sort-control{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.todo-item{grid-template-columns:1fr;gap:8px}.todo-item-title-row{align-items:flex-start}.todo-item-actions{justify-content:flex-end}.todo-delete-button{justify-self:end}}.timetable-view{--timetable-period-column-width: 46px;--timetable-grid-gap: 6px;--timetable-cell-height: clamp(96px, 13vh, 126px);display:grid;gap:12px;overflow:hidden;background:color-mix(in srgb,var(--surface-soft) 72%,transparent)}.timetable-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.timetable-title-block{min-width:0;text-align:center}.timetable-title-block h2{margin:0;color:var(--text);font-size:clamp(1.12rem,4.2vw,1.48rem);font-weight:900;letter-spacing:0;white-space:nowrap}.timetable-term-control{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.timetable-term-switch,.timetable-ocr-button{min-height:38px;padding:7px 13px;border-radius:999px;font-size:.84rem;font-weight:900;white-space:nowrap}.timetable-import-file-input{display:none}.timetable-ocr-notice{margin:-4px 0 0;color:var(--text-muted);font-size:.78rem;font-weight:800;text-align:right}.timetable-grid-shell{overflow:hidden;padding:10px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:20px;background:color-mix(in srgb,#eaf4ff 74%,var(--surface) 26%)}.timetable-grid{display:grid;gap:var(--timetable-grid-gap);width:100%;min-width:0}.timetable-row-contents{display:contents}.timetable-corner-cell,.timetable-weekday-cell,.timetable-period-cell,.timetable-grid-cell{min-width:0;box-sizing:border-box;border:1px solid color-mix(in srgb,var(--border) 62%,transparent);border-radius:16px;overflow:hidden}.timetable-corner-cell,.timetable-weekday-cell{min-height:32px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--surface) 72%,transparent);color:var(--text-muted);font-size:.86rem;font-weight:900}.timetable-corner-cell{border-color:transparent;background:transparent}.timetable-period-cell{height:var(--timetable-cell-height);display:grid;grid-template-rows:auto auto auto auto;align-content:center;justify-items:center;gap:4px;padding:5px 1px;border-color:transparent;border-radius:0;background:transparent;color:var(--text-muted);text-align:center;cursor:pointer}.timetable-period-cell.needs-time{background:color-mix(in srgb,#f59e0b 10%,transparent)}.timetable-period-cell strong{color:var(--text);font-size:20px;font-weight:600;line-height:1;white-space:nowrap}.timetable-period-time-field{position:relative;display:grid;place-items:center;width:100%;min-width:0;min-height:16px;line-height:1}.timetable-period-time-text{display:block;width:100%;min-width:0;overflow:visible;color:var(--text-muted);font-size:11px;font-weight:500;line-height:1;letter-spacing:-.02em;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}.timetable-period-cell input{position:absolute;top:-3px;right:-2px;bottom:-3px;left:-2px;width:100%;height:calc(100% + 6px);min-height:0;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text-muted);font:inherit;font-size:inherit;font-weight:500;line-height:1;text-align:center;font-variant-numeric:tabular-nums;opacity:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.timetable-period-cell input::-webkit-calendar-picker-indicator{display:none}.timetable-period-cell input::-webkit-datetime-edit{padding:0}.timetable-period-cell input::-webkit-datetime-edit-fields-wrapper{padding:0}.timetable-period-time-field:focus-within{outline:2px solid var(--focus-outline);outline-offset:1px;border-radius:6px;background:color-mix(in srgb,var(--surface) 88%,transparent)}.timetable-period-separator{display:grid;place-items:center;min-height:8px;color:var(--text-muted);font-size:8px;font-weight:500;line-height:1}.timetable-period-separator:before{content:"~";display:block;transform:rotate(90deg);transform-origin:center}.timetable-period-status{max-width:100%;color:var(--text-muted);font-size:9px;font-weight:600;line-height:1.05;white-space:normal}.timetable-grid-cell{height:var(--timetable-cell-height);display:grid;width:100%;min-width:0;padding:3px;background:color-mix(in srgb,var(--surface) 94%,transparent);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.timetable-grid-cell:hover{border-color:var(--border-strong);background:var(--surface)}.timetable-grid-cell.has-class{border-color:color-mix(in srgb,var(--accent) 18%,var(--border) 82%);background:color-mix(in srgb,#bdddff 72%,var(--surface) 28%)}.timetable-grid-cell.needs-time{background:color-mix(in srgb,var(--surface) 90%,var(--surface-muted) 10%)}.timetable-empty-cell-label{display:grid;place-items:center;width:100%;height:100%;color:transparent;font-size:.72rem;font-weight:800}.timetable-grid-cell:hover .timetable-empty-cell-label,.timetable-grid-cell:focus-visible .timetable-empty-cell-label{color:var(--text-muted)}.timetable-cell-stack{display:grid;grid-auto-rows:minmax(0,1fr);gap:4px;width:100%;min-width:0;height:100%;overflow:hidden}.timetable-class-card{display:grid;grid-template-rows:minmax(0,1fr) auto;align-content:stretch;gap:4px;width:100%;min-width:0;height:100%;min-height:0;padding:8px 4px 6px;border:0;border-radius:13px;overflow:hidden;background:transparent}.timetable-class-card strong{min-width:0;align-self:center;color:var(--text);font-size:clamp(.68rem,2.65vw,.9rem);font-weight:900;line-height:1.3;text-align:center;white-space:normal;word-break:normal;overflow-wrap:break-word;line-break:strict;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5}.timetable-class-subject{display:none}.timetable-class-meta{display:block;min-width:0;max-width:100%;padding:2px 5px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--text-muted);font-size:clamp(.52rem,1.8vw,.66rem);font-weight:900;line-height:1.1;text-align:center;text-overflow:ellipsis;white-space:nowrap}.timetable-grid-actions{justify-content:flex-end}.timetable-period-error{margin:-4px 0 0;color:var(--danger);font-size:.78rem;font-weight:800;text-align:right}.timetable-term-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;min-height:100dvh;padding:max(16px,env(safe-area-inset-top,0px)) 16px calc(16px + var(--bottom-nav-height, 72px) + env(safe-area-inset-bottom,0px));overflow:hidden;background:#0f172a52;overscroll-behavior:contain;touch-action:none}.timetable-term-sheet{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:14px;width:min(560px,100%);max-height:calc(100dvh - 32px - var(--bottom-nav-height, 72px) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:hidden;padding:14px;border:1px solid var(--border);border-radius:22px 22px 16px 16px;background:var(--surface);box-shadow:0 -18px 48px #0f172a3d;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.timetable-term-sheet-handle{justify-self:center;width:42px;height:4px;border-radius:999px;background:var(--border-strong)}.timetable-term-sheet-body{display:grid;gap:14px;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.timetable-term-kind-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.timetable-term-kind{min-height:36px;white-space:nowrap}.timetable-current-term-card,.timetable-term-danger-zone{display:grid;gap:6px;padding:10px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface) 88%,var(--surface-muted) 12%)}.timetable-current-term-card>span{color:var(--text-muted);font-size:.76rem;font-weight:800}.timetable-current-term-card>strong{color:var(--text);font-size:.95rem}.timetable-term-danger-zone{border-color:color-mix(in srgb,var(--danger) 28%,var(--border) 72%);background:color-mix(in srgb,var(--danger) 5%,var(--surface) 95%)}.timetable-clear-term-button{justify-self:start;color:var(--danger)}.timetable-existing-terms{display:grid;gap:8px}.timetable-existing-terms>span{color:var(--text-muted);font-size:.78rem;font-weight:800}.timetable-existing-terms>div{display:flex;flex-wrap:wrap;gap:8px}.timetable-existing-term{display:inline-flex;align-items:center;min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.timetable-existing-term.active{border-color:color-mix(in srgb,var(--accent) 40%,var(--border) 60%);background:color-mix(in srgb,var(--accent) 10%,var(--surface) 90%)}.timetable-existing-term-select,.timetable-existing-term-delete{min-height:32px;border:0;background:transparent;color:inherit;font:inherit;font-size:.78rem;font-weight:900}.timetable-existing-term-select{min-width:0;max-width:170px;padding:5px 9px 5px 11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timetable-existing-term-delete{width:34px;padding:0;color:var(--danger);cursor:pointer}.timetable-existing-term-select:disabled,.timetable-existing-term-delete:disabled{cursor:wait;opacity:.58}.timetable-modal-overlay{align-items:center;padding:16px;overflow:hidden;background:#0f172a6b;overscroll-behavior:contain;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-card.timetable-editor-modal{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:hidden;padding:12px;border-radius:22px;background:color-mix(in srgb,var(--surface) 94%,var(--surface-strong) 6%);box-shadow:0 22px 60px #0f172a47}.timetable-editor-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:2px 2px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.timetable-editor-heading{min-width:0;text-align:center}.timetable-editor-heading h2{margin:0;color:var(--text);font-size:1rem;font-weight:900;line-height:1.15}.timetable-editor-heading p{margin:2px 0 0;color:var(--text-muted);font-size:.74rem;font-weight:800;line-height:1.2;white-space:nowrap}.timetable-editor-header .ghost-button,.timetable-editor-save{min-height:36px;padding:7px 12px;border-radius:12px;font-size:.8rem}.timetable-editor-body{display:grid;gap:10px;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;padding:2px 2px 4px}.timetable-editor-card{display:grid;gap:8px;padding:10px;border:1px solid var(--border-strong);border-radius:14px;background:color-mix(in srgb,var(--surface-strong) 82%,var(--surface-soft) 18%)}.timetable-title-card{border-color:color-mix(in srgb,var(--accent) 28%,var(--border) 72%);background:color-mix(in srgb,var(--surface-strong) 88%,var(--accent) 12%)}.timetable-card-title{display:flex;align-items:center;min-width:0}.timetable-card-title strong{color:var(--text);font-size:.78rem;font-weight:900;line-height:1.2}.timetable-schedule-grid,.timetable-detail-grid{display:grid;gap:8px;min-width:0}.timetable-schedule-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.timetable-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timetable-editor-modal .field{gap:4px;min-width:0}.timetable-editor-modal .field span{color:var(--text-muted);font-size:.74rem;font-weight:800;line-height:1.2}.modal-card.timetable-editor-modal .field input,.modal-card.timetable-editor-modal .field select,.modal-card.timetable-editor-modal .field textarea{min-height:38px;padding:7px 10px;border-radius:10px;background:var(--surface-strong);font-size:.84rem;line-height:1.25}.modal-card.timetable-editor-modal .timetable-title-field input{min-height:44px;padding:9px 12px;border-color:color-mix(in srgb,var(--accent) 32%,var(--input-border) 68%);font-size:1rem;font-weight:850}.timetable-memo-field{grid-column:1 / -1}.modal-card.timetable-editor-modal .timetable-memo-field textarea{min-height:60px;max-height:130px;resize:vertical}.timetable-editor-actions{justify-content:flex-start;min-height:0;padding:0 2px}.timetable-delete-button{color:var(--danger)}.timetable-import-card{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-soft) 72%,transparent)}.timetable-import-card h3{margin:0;font-size:.92rem}.timetable-import-list{display:grid;gap:7px;max-height:min(340px,48vh);overflow-y:auto}.timetable-import-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;padding:9px;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.timetable-import-item input{margin-top:3px}.timetable-import-item strong{display:block;font-size:.84rem}.timetable-import-item span{display:block;color:var(--text-muted);font-size:.74rem}.timetable-import-actions{justify-content:flex-end}.timetable-ocr-overlay{align-items:center;padding:16px;overflow:hidden;background:#0f172a70;overscroll-behavior:contain;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-card.timetable-ocr-modal{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;width:min(860px,calc(100vw - 32px));max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:hidden;padding:12px;border-radius:22px;background:color-mix(in srgb,var(--surface) 94%,var(--surface-strong) 6%);box-shadow:0 22px 60px #0f172a47}.timetable-ocr-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:2px 2px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.timetable-ocr-heading{min-width:0;text-align:center}.timetable-ocr-heading h2,.timetable-ocr-heading p{margin:0}.timetable-ocr-heading h2{color:var(--text);font-size:1rem;font-weight:900;line-height:1.15}.timetable-ocr-heading p{margin-top:2px;overflow:hidden;color:var(--text-muted);font-size:.74rem;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.timetable-ocr-header .ghost-button,.timetable-ocr-save{min-height:36px;padding:7px 12px;border-radius:12px;font-size:.8rem}.timetable-ocr-body{display:grid;gap:10px;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;padding:2px 2px 4px}.timetable-ocr-modal img,.timetable-ocr-modal iframe,.timetable-ocr-modal object,.timetable-ocr-modal embed{display:block;max-width:min(360px,100%);max-height:240px;object-fit:contain}.timetable-ocr-card,.timetable-ocr-item{display:grid;gap:9px;min-width:0;padding:10px;border:1px solid var(--border-strong);border-radius:14px;background:color-mix(in srgb,var(--surface-strong) 82%,var(--surface-soft) 18%)}.timetable-ocr-card-head,.timetable-ocr-item-title{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.timetable-ocr-card-head .ghost-button{min-height:34px;padding:6px 10px;border-radius:11px;font-size:.76rem}.timetable-ocr-summary,.timetable-ocr-warning,.timetable-ocr-item-title span{color:var(--text-muted);font-size:.74rem;font-weight:800;line-height:1.2}.timetable-ocr-warning{color:var(--danger)}.timetable-ocr-period-list,.timetable-ocr-item-list{display:grid;gap:8px}.timetable-ocr-period-row{display:grid;grid-template-columns:52px repeat(2,minmax(0,1fr)) auto;align-items:end;gap:8px;min-width:0}.timetable-ocr-period-row strong{align-self:center;color:var(--text);font-size:.82rem;font-weight:900;white-space:nowrap}.timetable-ocr-item.has-error{border-color:color-mix(in srgb,var(--danger) 44%,var(--border) 56%)}.timetable-ocr-item-title strong{color:var(--text);font-size:.84rem;font-weight:900}.timetable-ocr-item-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0}.timetable-ocr-title-field,.timetable-ocr-memo-field{grid-column:span 2}.timetable-ocr-modal .field{gap:4px;min-width:0}.timetable-ocr-modal .field span{color:var(--text-muted);font-size:.74rem;font-weight:800;line-height:1.2}.modal-card.timetable-ocr-modal .field input,.modal-card.timetable-ocr-modal .field select{min-height:38px;padding:7px 10px;border-radius:10px;background:var(--surface-strong);font-size:.84rem;line-height:1.25}.timetable-ocr-item-actions{justify-content:space-between;min-height:0}@media screen and (max-width:900px){.timetable-view{--timetable-period-column-width: 42px;--timetable-grid-gap: 4px;--timetable-cell-height: clamp(92px, 12.2vh, 116px)}.timetable-grid-shell{padding:6px}}@media screen and (max-width:640px){.timetable-view{--timetable-period-column-width: 34px;--timetable-grid-gap: 2px;--timetable-cell-height: clamp(84px, 11.2vh, 104px);gap:9px;margin-inline:-10px;padding:6px 2px;border-radius:14px}.timetable-header{grid-template-columns:minmax(0,1fr) auto;gap:8px}.timetable-title-block h2{font-size:clamp(1rem,4.4vw,1.18rem)}.timetable-term-switch{min-height:34px;padding:5px 9px;border-radius:999px;font-size:.76rem}.timetable-ocr-button{min-height:34px;padding:5px 9px;border-radius:999px;font-size:.72rem}.timetable-ocr-notice{font-size:.72rem;text-align:left}.timetable-grid-shell{padding:2px;border-radius:14px}.timetable-corner-cell,.timetable-weekday-cell,.timetable-period-cell,.timetable-grid-cell{border-radius:11px}.timetable-corner-cell,.timetable-weekday-cell{min-height:26px;font-size:.72rem}.timetable-period-cell{gap:3px;padding:4px 0;border-color:transparent;border-radius:0;background:transparent}.timetable-period-cell strong{font-size:19px;font-weight:600}.timetable-period-time-field{min-height:15px}.timetable-period-time-text{font-size:7px;font-weight:500}.timetable-period-separator{min-height:6px;font-size:6px}.timetable-period-status{font-size:8px;font-weight:600}.timetable-grid-cell{padding:2px}.timetable-class-card{padding:7px 3px 5px;border-radius:10px}.timetable-class-card strong{font-size:clamp(.62rem,2.35vw,.74rem);line-height:1.27;-webkit-line-clamp:5}.timetable-class-meta{padding:2px 4px;font-size:clamp(.46rem,1.65vw,.56rem)}.timetable-grid-actions{gap:8px}.timetable-grid-actions .ghost-button{min-height:34px;padding:6px 10px;border-radius:11px;font-size:.74rem}.timetable-term-sheet-overlay{padding:max(10px,env(safe-area-inset-top,0px)) 10px calc(10px + var(--bottom-nav-height, 72px) + env(safe-area-inset-bottom,0px))}.timetable-term-sheet{max-height:calc(100dvh - 20px - var(--bottom-nav-height, 72px) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:12px;border-radius:18px 18px 12px 12px}.timetable-term-kind-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.timetable-term-kind{min-height:34px;font-size:.76rem}.timetable-modal-overlay{padding:8px}.modal-card.timetable-editor-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:10px;border-radius:18px}.timetable-editor-header{gap:7px;padding-bottom:8px}.timetable-editor-heading h2{font-size:.92rem}.timetable-editor-heading p{font-size:.68rem}.timetable-editor-header .ghost-button,.timetable-editor-save{min-height:38px;padding:7px 10px;border-radius:11px;font-size:.76rem}.timetable-editor-body{gap:8px}.timetable-editor-card{gap:7px;padding:9px;border-radius:13px}.timetable-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timetable-detail-grid{gap:8px}.modal-card.timetable-editor-modal .field input,.modal-card.timetable-editor-modal .field select,.modal-card.timetable-editor-modal .field textarea{min-height:40px;padding:8px 9px;border-radius:10px;font-size:.8rem}.modal-card.timetable-editor-modal .timetable-title-field input{min-height:42px;font-size:.92rem}.timetable-ocr-overlay{padding:8px}.modal-card.timetable-ocr-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:10px;border-radius:18px}.timetable-ocr-header{gap:7px;padding-bottom:8px}.timetable-ocr-heading h2{font-size:.92rem}.timetable-ocr-heading p{font-size:.68rem}.timetable-ocr-header .ghost-button,.timetable-ocr-save{min-height:38px;padding:7px 10px;border-radius:11px;font-size:.74rem}.timetable-ocr-card,.timetable-ocr-item{padding:9px;border-radius:13px}.timetable-ocr-period-row{grid-template-columns:46px repeat(2,minmax(0,1fr))}.timetable-ocr-period-row .timetable-ocr-warning{grid-column:2 / -1}.timetable-ocr-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-card.timetable-ocr-modal .field input,.modal-card.timetable-ocr-modal .field select{min-height:40px;padding:8px 9px;font-size:.84rem}.timetable-ocr-modal img,.timetable-ocr-modal iframe,.timetable-ocr-modal object,.timetable-ocr-modal embed{max-height:180px}}@media screen and (max-width:380px){.timetable-view{--timetable-period-column-width: 32px;--timetable-grid-gap: 2px;--timetable-cell-height: clamp(76px, 10.6vh, 94px);margin-inline:-10px;padding:4px 1px}.timetable-grid-shell{padding:1px}.timetable-period-time-field{min-height:14px}.timetable-period-time-text{font-size:7px}.timetable-period-cell strong{font-size:18px}.timetable-class-card{padding:6px 2px 4px}.timetable-class-card strong{font-size:.58rem;line-height:1.22}.timetable-class-meta{font-size:.44rem}.timetable-editor-header{grid-template-columns:auto minmax(0,1fr) auto;gap:5px}.timetable-editor-heading p{display:none}.timetable-editor-header .ghost-button,.timetable-editor-save{padding:7px 8px;font-size:.72rem}.timetable-detail-grid{grid-template-columns:1fr}.timetable-term-control{flex-wrap:wrap}.timetable-ocr-heading p{display:none}.timetable-ocr-header{gap:5px}.timetable-ocr-header .ghost-button,.timetable-ocr-save{padding:7px 8px;font-size:.7rem}.timetable-ocr-title-field,.timetable-ocr-memo-field{grid-column:1 / -1}}.bookshelf-view{min-width:0}.bookshelf-hero{gap:16px}.bookshelf-subject-section{display:grid;gap:12px}.bookshelf-subject-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.bookshelf-subject-title{display:flex;align-items:center;gap:9px;min-width:0}.bookshelf-subject-title h3{margin:0;font-size:1.02rem;overflow-wrap:anywhere}.bookshelf-subject-title p{margin:2px 0 0;color:var(--text-muted);font-size:.78rem}.bookshelf-bookmark{width:28px;height:31px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:9px 9px 7px 7px;background:color-mix(in srgb,var(--subject-color) 18%,var(--surface-strong) 82%);color:var(--subject-color);border:1px solid color-mix(in srgb,var(--subject-color) 28%,var(--border) 72%)}.bookshelf-bookmark svg{width:15px;height:15px}.bookshelf-material-grid,.daily-material-row{display:flex;gap:10px;min-width:0;overflow-x:auto;overflow-y:hidden;padding:2px 2px 10px;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin}.bookshelf-material-card{display:grid;align-content:start;gap:8px;width:90px;min-width:90px;padding:8px;border:1px solid color-mix(in srgb,var(--subject-color) 18%,var(--border) 82%);border-radius:8px;background:color-mix(in srgb,var(--surface-strong) 88%,var(--subject-color) 12%);color:inherit;text-align:left;scroll-snap-align:start;box-shadow:0 6px 16px #161d210d;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.bookshelf-material-card.has-pace{width:166px;min-width:166px}.bookshelf-material-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--subject-color) 38%,var(--border) 62%);box-shadow:0 10px 20px #161d2114}.bookshelf-material-title{min-height:2.5em;display:-webkit-box;overflow:hidden;color:var(--text-primary);font-size:.72rem;font-weight:800;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.material-pace-summary{display:grid;gap:6px;min-width:0}.material-pace-progress{height:5px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--subject-color) 13%,var(--surface-strong) 87%)}.material-pace-progress span{display:block;height:100%;min-width:2px;border-radius:inherit;background:var(--subject-color)}.material-pace-chip-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;min-width:0}.bookshelf-material-card .material-pace-chip-row span,.bookshelf-material-card .material-pace-note{min-height:0;display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;padding:3px 4px;border-radius:7px;background:color-mix(in srgb,var(--surface-strong) 82%,transparent);color:var(--text-muted);font-size:.54rem;font-weight:800;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:unset}.bookshelf-material-card .material-pace-note{justify-content:flex-start;overflow-wrap:anywhere;white-space:normal}.bookshelf-material-image,.bookshelf-material-placeholder{width:100%;aspect-ratio:4 / 5;border-radius:5px}.bookshelf-material-image{display:block;object-fit:cover;background:var(--surface-soft)}.bookshelf-material-placeholder{display:grid;place-items:center;background:linear-gradient(160deg,color-mix(in srgb,var(--subject-color) 28%,var(--surface-strong) 72%),color-mix(in srgb,var(--subject-color) 10%,var(--surface-soft) 90%));color:var(--subject-color);border:1px solid color-mix(in srgb,var(--subject-color) 24%,var(--border) 76%)}.bookshelf-material-placeholder svg{width:22px;height:22px}.bookshelf-empty-subject,.bookshelf-empty-state{display:grid;justify-items:start;gap:10px}.bookshelf-empty-state{justify-items:center;text-align:center}.bookshelf-modal{width:min(680px,calc(100vw - 40px))}.bookshelf-color-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:10px}.bookshelf-color-button{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:9px 12px;border:1px solid var(--button-ghost-border);border-radius:14px;background:var(--surface-strong);color:inherit;font:inherit;font-weight:800}.bookshelf-color-button span{width:18px;height:18px;flex:0 0 auto;border-radius:50%;background:var(--subject-color);box-shadow:inset 0 0 0 1px #fff6}.bookshelf-color-button.active{border-color:var(--subject-color);background:color-mix(in srgb,var(--subject-color) 12%,var(--surface-strong) 88%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--subject-color) 30%,transparent)}.bookshelf-material-edit-grid{display:grid;grid-template-columns:minmax(140px,.42fr) minmax(0,1fr);gap:18px;align-items:start}.bookshelf-cover-preview{display:grid;place-items:center;width:100%;aspect-ratio:4 / 5;overflow:hidden;border-radius:8px;border:1px solid color-mix(in srgb,var(--subject-color) 24%,var(--border) 76%);background:linear-gradient(160deg,color-mix(in srgb,var(--subject-color) 24%,var(--surface-strong) 76%),color-mix(in srgb,var(--subject-color) 8%,var(--surface-soft) 92%));color:var(--subject-color)}.bookshelf-cover-preview img{width:100%;height:100%;display:block;object-fit:cover}.material-pace-settings{display:grid;gap:12px;padding:12px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface-strong) 74%,transparent)}.material-pace-toggle{display:flex;align-items:flex-start;gap:10px;color:inherit}.material-pace-toggle input{width:18px;height:18px;margin-top:2px;flex:0 0 auto;accent-color:var(--accent)}.material-pace-toggle span{display:grid;gap:2px}.material-pace-toggle strong{color:var(--text-primary);font-size:.92rem}.material-pace-toggle small{color:var(--text-muted);font-size:.74rem;font-weight:700;line-height:1.35}.material-pace-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.daily-bookshelf-link-card{display:grid;gap:12px}.daily-bookshelf-link-card p{margin:2px 0 0}.daily-material-section{display:grid;gap:12px}.daily-material-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.daily-material-subject{display:grid;gap:7px;min-width:0}.daily-material-subject-title{display:inline-flex;align-items:center;gap:7px;width:fit-content;max-width:100%;margin:0;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--subject-color) 13%,var(--surface-strong) 87%);color:var(--subject-color);font-size:.78rem;font-weight:900}.daily-material-subject-title:before{content:"";width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--subject-color)}.daily-material-card{cursor:pointer}.material-quick-modal{width:min(460px,calc(100vw - 32px))}.material-quick-kind-switch{width:min(260px,100%)}.material-quick-form{display:grid;gap:12px}.material-quick-duration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.material-quick-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media screen and (max-width:640px){.bookshelf-hero .section-header,.daily-bookshelf-link-card{display:grid}.bookshelf-material-grid,.daily-material-row{gap:8px;padding-bottom:8px}.bookshelf-material-card{width:78px;min-width:78px;padding:6px}.bookshelf-material-card.has-pace{width:154px;min-width:154px}.bookshelf-material-title{font-size:.66rem}.bookshelf-material-card .material-pace-chip-row span,.bookshelf-material-card .material-pace-note{padding:2px 3px;font-size:.5rem}.material-pace-chip-row{gap:4px}.daily-material-head{display:grid;align-items:start}.material-quick-duration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.material-quick-progress-grid,.bookshelf-material-edit-grid,.material-pace-form-grid{grid-template-columns:1fr}.bookshelf-cover-preview{width:min(220px,100%)}.bookshelf-modal{width:calc(100vw - 20px)}}.app-shell:has(.bookshelf-view){width:min(96vw,1040px);max-width:1040px;margin:0 auto;gap:0;padding:10px clamp(10px,2.2vw,24px) calc(92px + env(safe-area-inset-bottom,0px));background:radial-gradient(circle at 8% 0%,rgba(255,244,218,.28),transparent 24%),linear-gradient(180deg,#fbfdff,#f8fbfa)}.app-shell:has(.bookshelf-view)>.app-header,.app-shell:has(.bookshelf-view)>.app-view-switcher{display:none}.app-shell:has(.bookshelf-view)>main{display:block}.bookshelf-view{--bookshelf-blue: #0876f9;--bookshelf-blue-strong: #0566df;--bookshelf-ink: #151d31;--bookshelf-muted: #66738a;--bookshelf-line: #e3e9f1;--bookshelf-soft: #f7f9fc;min-width:0;display:grid;gap:10px;color:var(--bookshelf-ink);font-family:Hiragino Sans,Yu Gothic UI,Meiryo,system-ui,sans-serif}.bookshelf-view *,.bookshelf-view *:before,.bookshelf-view *:after{box-sizing:border-box}.bookshelf-view button,.bookshelf-view input{font:inherit}.bookshelf-primary-header{--home-blue: var(--bookshelf-blue);--home-blue-strong: var(--bookshelf-blue-strong);--home-ink: var(--bookshelf-ink);--home-muted: var(--bookshelf-muted);--home-line: var(--bookshelf-line);--home-line-soft: #edf1f5;--home-card: #fff;--home-shadow-soft: 0 4px 13px rgba(33, 54, 87, .055);padding:0}.bookshelf-dashboard,.bookshelf-detail-page{min-width:0;border:1px solid #edf1f5;border-radius:18px;background:#fffffff5;box-shadow:0 8px 24px #20375b0b}.bookshelf-dashboard{position:relative;display:grid;gap:18px;padding:18px 20px 74px}.bookshelf-page-header{display:grid;gap:14px}.bookshelf-page-title-row{display:grid;grid-template-columns:42px 1fr 42px;align-items:center}.bookshelf-page-title-row h1{margin:0;text-align:center;font-size:1.28rem;line-height:1}.bookshelf-icon-button,.bookshelf-page-title-row button,.bookshelf-detail-header button,.bookshelf-modal-title-row>button{width:38px;height:38px;display:inline-grid;place-items:center;padding:0;border:0;border-radius:11px;background:transparent;color:#17223a;cursor:pointer}.bookshelf-icon-button svg,.bookshelf-page-title-row button svg,.bookshelf-detail-header button svg,.bookshelf-modal-title-row>button svg{width:22px;height:22px}.bookshelf-icon-button.compact{width:36px;height:36px;flex:0 0 auto}.bookshelf-search-field{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 13px;border:1px solid var(--bookshelf-line);border-radius:12px;background:#fff;color:var(--bookshelf-muted)}.bookshelf-search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--bookshelf-ink)}.bookshelf-category-filter-row{display:flex;align-items:center;gap:8px;min-width:0}.bookshelf-category-chips{min-width:0;display:flex;gap:8px;overflow-x:auto;padding:1px 1px 4px;scrollbar-width:none}.bookshelf-category-chips::-webkit-scrollbar{display:none}.bookshelf-category-chips button{flex:0 0 auto;min-height:38px;padding:7px 18px;border:1px solid var(--bookshelf-line);border-radius:999px;background:#fff;color:#26324a;font-size:.8rem;font-weight:800;cursor:pointer}.bookshelf-category-chips button.active{border-color:var(--bookshelf-blue);background:var(--bookshelf-blue);color:#fff}.bookshelf-dashboard-section{min-width:0;display:grid;gap:10px}.bookshelf-section-heading,.bookshelf-detail-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.bookshelf-section-heading h2,.bookshelf-detail-section-head h3{margin:0;color:#111a2f;font-size:.96rem}.bookshelf-section-heading button,.bookshelf-detail-section-head button,.bookshelf-structure-status button,.bookshelf-detail-empty button{padding:4px 7px;border:0;background:transparent;color:var(--bookshelf-blue);font-size:.75rem;font-weight:900;cursor:pointer}.bookshelf-featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.bookshelf-featured-card{min-width:0;display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:12px;padding:12px;border:1px solid var(--bookshelf-line);border-radius:14px;background:#fff;color:inherit;text-align:left;cursor:pointer}.bookshelf-featured-cover{width:72px;height:92px;display:grid;place-items:center;object-fit:cover;overflow:hidden;border-radius:7px;background:var(--bookshelf-soft)}.bookshelf-cover-placeholder{color:var(--subject-color, var(--bookshelf-blue));background:color-mix(in srgb,var(--subject-color, var(--bookshelf-blue)) 12%,#f8fbff 88%);border:1px solid color-mix(in srgb,var(--subject-color, var(--bookshelf-blue)) 22%,var(--bookshelf-line) 78%)}.bookshelf-featured-copy{min-width:0;display:grid;align-content:center;gap:5px}.bookshelf-featured-copy>strong,.bookshelf-material-row-copy strong,.bookshelf-recent-row strong{min-width:0;overflow:hidden;color:#172035;font-size:.82rem;font-weight:900;line-height:1.35;text-overflow:ellipsis}.bookshelf-featured-copy>small,.bookshelf-material-row-copy small,.bookshelf-recent-row small{color:var(--bookshelf-muted);font-size:.68rem;font-weight:700}.bookshelf-progress-caption{min-width:0;display:grid;grid-template-columns:minmax(40px,1fr) auto;align-items:center;gap:7px;color:#58657c;font-size:.67rem;font-weight:800}.bookshelf-inline-progress,.bookshelf-detail-progress-track{height:5px;overflow:hidden;border-radius:999px;background:#e8edf4}.bookshelf-inline-progress>span,.bookshelf-detail-progress-track>span{display:block;height:100%;min-width:0;border-radius:inherit;background:var(--bookshelf-blue)}.bookshelf-subject-list,.bookshelf-recent-list{overflow:hidden;border:1px solid var(--bookshelf-line);border-radius:14px;background:#fff}.bookshelf-subject-row+.bookshelf-subject-row,.bookshelf-recent-row+.bookshelf-recent-row{border-top:1px solid #edf1f5}.bookshelf-subject-toggle{width:100%;min-height:62px;display:grid;grid-template-columns:42px minmax(0,1fr) 24px;align-items:center;gap:11px;padding:9px 12px;border:0;background:#fff;color:inherit;text-align:left;cursor:pointer}.bookshelf-subject-symbol{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--subject-color) 12%,#fff 88%);color:var(--subject-color)}.bookshelf-subject-symbol svg{width:22px;height:22px}.bookshelf-subject-toggle>span:nth-child(2){min-width:0;display:grid;gap:2px}.bookshelf-subject-toggle strong{font-size:.86rem}.bookshelf-subject-toggle small{color:var(--bookshelf-muted);font-size:.68rem}.bookshelf-expanded-materials{border-top:1px solid #edf1f5;background:#fcfdff}.bookshelf-material-list-row{min-height:72px;display:grid;grid-template-columns:42px minmax(0,1fr) minmax(110px,.32fr) 36px;align-items:center;gap:11px;padding:8px 12px 8px 54px;cursor:pointer}.bookshelf-material-list-row+.bookshelf-material-list-row{border-top:1px solid #eef2f6}.bookshelf-list-cover{width:42px;height:54px;display:grid;place-items:center;overflow:hidden;border-radius:5px;object-fit:cover;background:var(--bookshelf-soft)}.bookshelf-material-row-copy,.bookshelf-recent-row>span:nth-child(2){min-width:0;display:grid;gap:3px}.bookshelf-material-row-progress{display:grid;gap:5px}.bookshelf-material-row-progress small{color:#56647b;font-size:.68rem;text-align:right}.bookshelf-material-list-row>button,.bookshelf-recent-row>button{width:34px;height:34px;display:grid;place-items:center;padding:0;border:0;border-radius:9px;background:transparent;color:#26334b;cursor:pointer}.bookshelf-material-list-row>button svg,.bookshelf-recent-row>button svg{width:19px;height:19px}.bookshelf-category-empty,.bookshelf-empty-dashboard,.bookshelf-detail-empty{display:grid;justify-items:center;gap:8px;padding:22px;color:var(--bookshelf-muted);text-align:center}.bookshelf-category-empty p,.bookshelf-empty-dashboard p,.bookshelf-detail-empty p{margin:0;font-size:.76rem}.bookshelf-category-empty button,.bookshelf-empty-dashboard button{border:0;background:transparent;color:var(--bookshelf-blue);font-weight:900;cursor:pointer}.bookshelf-recent-row{min-height:64px;display:grid;grid-template-columns:42px minmax(0,1fr) auto 36px;align-items:center;gap:11px;padding:7px 12px;cursor:pointer}.bookshelf-recent-row time{color:#52617a;font-size:.68rem;font-weight:700}.bookshelf-add-material-fab{position:absolute;right:20px;bottom:16px;min-height:48px;display:inline-flex;align-items:center;gap:9px;padding:0 20px;border:0;border-radius:999px;background:var(--bookshelf-blue);color:#fff;box-shadow:0 8px 18px #0876f93d;font-weight:900;cursor:pointer}.bookshelf-add-material-fab svg{width:23px;height:23px}.bookshelf-bottom-nav{width:min(1040px,96vw)}.bookshelf-bottom-nav button:first-child{color:#52617a}.bookshelf-bottom-nav button.active{color:var(--bookshelf-blue)}.bookshelf-detail-page{overflow:hidden;padding-bottom:20px}.bookshelf-detail-header{min-height:58px;display:grid;grid-template-columns:42px 1fr 42px;align-items:center;padding:8px 14px;border-bottom:1px solid #edf1f5}.bookshelf-detail-header h1{margin:0;text-align:center;font-size:1rem}.bookshelf-detail-hero{display:grid;grid-template-columns:132px minmax(0,1fr);gap:20px;align-items:center;padding:20px}.bookshelf-detail-cover-image,.bookshelf-detail-cover-placeholder{width:132px;height:168px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--bookshelf-line);border-radius:9px;object-fit:cover;background:#f5f8fb;color:var(--bookshelf-blue)}.bookshelf-detail-hero-copy{min-width:0;display:grid;align-content:center;gap:8px}.bookshelf-detail-hero-copy h2{margin:0;color:#111a2f;font-size:1.3rem;line-height:1.35}.bookshelf-detail-hero-copy p,.bookshelf-detail-section-head p{margin:0;color:var(--bookshelf-muted);font-size:.76rem;font-weight:700}.bookshelf-important-chip{width:fit-content;padding:3px 8px;border-radius:7px;background:#e8f3ff;color:var(--bookshelf-blue);font-size:.68rem;font-weight:900}.bookshelf-detail-progress-line{max-width:520px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:6px}.bookshelf-detail-progress-track{height:7px}.bookshelf-detail-progress-line strong{color:#56647b;font-size:.76rem;white-space:nowrap}.bookshelf-detail-hero-copy>small{color:var(--bookshelf-muted);font-size:.68rem}.bookshelf-detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 20px;overflow:hidden;border:1px solid var(--bookshelf-line);border-radius:12px;background:#fff}.bookshelf-detail-metrics>div{min-width:0;display:grid;grid-template-columns:18px 1fr;gap:3px 7px;padding:12px}.bookshelf-detail-metrics>div+div{border-left:1px solid #edf1f5}.bookshelf-detail-metrics svg{grid-row:1 / span 2;width:17px;height:17px;color:#5d6c84}.bookshelf-detail-metrics span{color:#68758c;font-size:.62rem;font-weight:800}.bookshelf-detail-metrics strong{min-width:0;overflow:hidden;color:#26334a;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.bookshelf-detail-tabs{display:flex;margin-top:12px;padding:0 20px;border-bottom:1px solid var(--bookshelf-line)}.bookshelf-detail-tabs button{min-width:92px;min-height:44px;padding:9px 14px;border:0;border-bottom:3px solid transparent;background:transparent;color:#52617a;font-size:.76rem;font-weight:900;cursor:pointer}.bookshelf-detail-tabs button.active{border-bottom-color:var(--bookshelf-blue);color:var(--bookshelf-blue)}.bookshelf-detail-content{min-height:260px;padding:18px 20px 0}.bookshelf-detail-section-stack{display:grid;gap:20px}.bookshelf-structure-status,.bookshelf-aggregate-progress{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #dfeaf9;border-radius:11px;background:#f5f9ff}.bookshelf-structure-status.is-disabled{border-color:var(--bookshelf-line);background:#fafbfc}.bookshelf-structure-status>div{min-width:0;display:grid;gap:3px}.bookshelf-structure-status strong{font-size:.78rem}.bookshelf-structure-status span,.bookshelf-aggregate-progress p,.bookshelf-detail-muted{margin:0;color:var(--bookshelf-muted);font-size:.72rem;line-height:1.5}.bookshelf-structure-list{overflow:hidden;border:1px solid var(--bookshelf-line);border-radius:12px;background:#fff}.bookshelf-structure-list .bookshelf-structure-list{margin:0;border:0;border-radius:0}.bookshelf-structure-row{min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) 48px minmax(74px,.25fr) 20px;align-items:center;gap:10px;padding:9px 12px 9px calc(12px + var(--structure-depth, 0) * 20px)}.bookshelf-structure-row+.bookshelf-structure-row,.bookshelf-structure-list>div+div>.bookshelf-structure-row{border-top:1px solid #edf1f5}.bookshelf-structure-copy{min-width:0;display:grid;gap:2px}.bookshelf-structure-copy strong{overflow:hidden;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.bookshelf-structure-copy small,.bookshelf-structure-row>span{color:#63718a;font-size:.68rem}.bookshelf-activity-list{overflow:hidden;border:1px solid var(--bookshelf-line);border-radius:12px;background:#fff}.bookshelf-activity-list>div{min-height:52px;display:grid;grid-template-columns:120px 130px minmax(0,1fr);align-items:center;gap:12px;padding:9px 12px}.bookshelf-activity-list>div+div{border-top:1px solid #edf1f5}.bookshelf-activity-list span,.bookshelf-activity-list small{color:#607089;font-size:.69rem}.bookshelf-activity-list strong{color:#28354c;font-size:.73rem}.bookshelf-detail-primary-action{padding:20px 20px 0}.bookshelf-detail-primary-action>button{width:100%;min-height:52px;display:flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:11px;background:var(--bookshelf-blue);color:#fff;font-weight:900;cursor:pointer}.bookshelf-detail-primary-action svg{width:19px;height:19px}.bookshelf-sheet-overlay{align-items:end;justify-content:center}.bookshelf-action-sheet{width:min(560px,calc(100vw - 18px));display:grid;overflow:hidden;margin-bottom:max(8px,env(safe-area-inset-bottom,0px));border-radius:18px;background:#fff;box-shadow:0 20px 60px #111b2e38}.bookshelf-sheet-handle{width:42px;height:4px;margin:9px auto 5px;border-radius:999px;background:#aab3c0}.bookshelf-sheet-material{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;padding:10px 15px 12px}.bookshelf-sheet-material>span{min-width:0;display:grid;gap:2px}.bookshelf-sheet-material strong{overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.bookshelf-sheet-material small{color:var(--bookshelf-muted);font-size:.68rem}.bookshelf-action-sheet>button:not(.bookshelf-sheet-cancel){min-height:52px;display:grid;grid-template-columns:22px minmax(0,1fr) 20px;align-items:center;gap:11px;padding:0 16px;border:0;border-top:1px solid #edf1f5;background:#fff;color:#1b2740;text-align:left;cursor:pointer}.bookshelf-action-sheet>button svg{width:19px;height:19px}.bookshelf-action-sheet>button.danger{color:#e32938}.bookshelf-sheet-cancel{min-height:50px;margin-top:8px;border:0;border-top:8px solid #f1f3f6;background:#fff;color:#1c273d;font-weight:900;cursor:pointer}.bookshelf-settings-modal,.bookshelf-manager-modal{width:min(520px,calc(100vw - 24px))}.bookshelf-structure-editor{width:min(760px,calc(100vw - 24px));max-height:min(82vh,760px);overflow-y:auto}.bookshelf-modal-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.bookshelf-modal-title-row>div{min-width:0}.bookshelf-modal-title-row h2,.bookshelf-modal-title-row p{margin:0}.bookshelf-modal-title-row h2{font-size:1rem}.bookshelf-modal-title-row p{margin-top:3px;color:var(--bookshelf-muted);font-size:.7rem}.bookshelf-settings-group{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--bookshelf-line);border-radius:12px;background:#fff}.bookshelf-settings-group>div{min-width:0;display:grid;gap:3px}.bookshelf-settings-group strong{font-size:.8rem}.bookshelf-settings-group small,.bookshelf-settings-note{color:var(--bookshelf-muted);font-size:.69rem;line-height:1.5}.bookshelf-settings-note{margin:0}.bookshelf-switch{position:relative;width:44px;height:26px;flex:0 0 auto}.bookshelf-switch input{position:absolute;opacity:0;pointer-events:none}.bookshelf-switch span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:#cbd3df;transition:background .16s ease}.bookshelf-switch span:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #19273d29;transition:transform .16s ease}.bookshelf-switch input:checked+span{background:var(--bookshelf-blue)}.bookshelf-switch input:checked+span:after{transform:translate(18px)}.bookshelf-switch input:disabled+span{opacity:.45}.bookshelf-structure-edit-list{display:grid;gap:10px}.bookshelf-structure-edit-row{display:grid;grid-template-columns:minmax(180px,1.7fr) repeat(3,minmax(90px,.7fr)) 38px;align-items:end;gap:8px;padding:10px;border:1px solid var(--bookshelf-line);border-radius:12px;background:#fff}.bookshelf-structure-edit-row label{min-width:0;display:grid;gap:4px}.bookshelf-structure-edit-row label>span{color:#5f6d84;font-size:.64rem;font-weight:800}.bookshelf-structure-edit-row input{width:100%;min-width:0;min-height:38px;padding:7px 9px;border:1px solid var(--bookshelf-line);border-radius:9px;background:#fff;color:#18223a}.bookshelf-structure-edit-row>button{width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid #f1c7cc;border-radius:9px;background:#fff7f8;color:#dd3342;cursor:pointer}.bookshelf-add-structure-row{width:fit-content;min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border:1px solid #cfe2ff;border-radius:9px;background:#f6faff;color:var(--bookshelf-blue);font-weight:900;cursor:pointer}.bookshelf-manager-list,.bookshelf-favorite-manager-list{display:grid;overflow:hidden;border:1px solid var(--bookshelf-line);border-radius:12px}.bookshelf-manager-list>button,.bookshelf-favorite-manager-list>button{min-height:50px;display:grid;align-items:center;gap:10px;padding:8px 12px;border:0;background:#fff;color:#1d2941;text-align:left;cursor:pointer}.bookshelf-manager-list>button{grid-template-columns:12px 1fr 20px}.bookshelf-favorite-manager-list>button{grid-template-columns:22px 1fr}.bookshelf-manager-list>button+button,.bookshelf-favorite-manager-list>button+button{border-top:1px solid #edf1f5}.bookshelf-manager-dot{width:10px;height:10px;border-radius:50%;background:var(--subject-color)}.bookshelf-favorite-manager-list>button>span{display:grid;gap:2px}.bookshelf-favorite-manager-list small{color:var(--bookshelf-muted);font-size:.67rem}@media(max-width:760px){.app-shell:has(.bookshelf-view){width:100%;padding:8px 8px calc(88px + env(safe-area-inset-bottom,0px))}.bookshelf-bottom-nav{width:100%}.bookshelf-dashboard{padding:15px 12px 72px}.bookshelf-featured-grid{gap:8px}.bookshelf-featured-card{grid-template-columns:58px minmax(0,1fr);gap:8px;padding:9px}.bookshelf-featured-cover{width:58px;height:76px}.bookshelf-featured-copy>strong{font-size:.74rem}.bookshelf-material-list-row{grid-template-columns:38px minmax(0,1fr) minmax(88px,.32fr) 32px;gap:8px;padding-left:24px}.bookshelf-list-cover{width:38px;height:49px}.bookshelf-detail-hero{grid-template-columns:104px minmax(0,1fr);gap:14px;padding:16px}.bookshelf-detail-cover-image,.bookshelf-detail-cover-placeholder{width:104px;height:134px}.bookshelf-detail-hero-copy h2{font-size:1.06rem}.bookshelf-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 16px}.bookshelf-detail-metrics>div:nth-child(3){border-left:0;border-top:1px solid #edf1f5}.bookshelf-detail-metrics>div:nth-child(4){border-top:1px solid #edf1f5}.bookshelf-detail-tabs{overflow-x:auto;padding:0 16px}.bookshelf-detail-tabs button{min-width:max-content}.bookshelf-detail-content,.bookshelf-detail-primary-action{padding-left:16px;padding-right:16px}.bookshelf-activity-list>div{grid-template-columns:88px 100px minmax(0,1fr);gap:8px}.bookshelf-structure-edit-row{grid-template-columns:minmax(0,1fr) minmax(86px,.5fr) 38px}.bookshelf-structure-edit-row label:nth-child(3),.bookshelf-structure-edit-row label:nth-child(4){grid-column:auto}}@media(max-width:440px){.bookshelf-featured-grid{display:flex;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x proximity}.bookshelf-featured-card{min-width:250px;scroll-snap-align:start}.bookshelf-category-chips button{min-height:34px;padding:6px 13px;font-size:.72rem}.bookshelf-material-list-row{grid-template-columns:36px minmax(0,1fr) 32px;min-height:64px;padding-left:14px}.bookshelf-material-row-progress{grid-column:2 / 3}.bookshelf-material-list-row>button{grid-column:3;grid-row:1 / span 2}.bookshelf-recent-row{grid-template-columns:38px minmax(0,1fr) 32px}.bookshelf-recent-row time{display:none}.bookshelf-detail-hero{grid-template-columns:88px minmax(0,1fr);gap:12px;padding:14px}.bookshelf-detail-cover-image,.bookshelf-detail-cover-placeholder{width:88px;height:114px}.bookshelf-detail-progress-line{grid-template-columns:1fr;gap:5px}.bookshelf-detail-progress-line strong{font-size:.68rem}.bookshelf-structure-row{grid-template-columns:minmax(0,1fr) 38px 72px 16px;gap:6px}.bookshelf-activity-list>div{grid-template-columns:1fr auto}.bookshelf-activity-list small{grid-column:1 / -1}.bookshelf-structure-edit-row{grid-template-columns:1fr 38px}.bookshelf-structure-edit-row label{grid-column:1 / -1}.bookshelf-structure-edit-row>button{grid-column:2}}.admin-app-shell{max-width:980px;padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}.admin-shell{width:min(980px,100%);margin:0 auto;display:grid;gap:14px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}.admin-detail-shell{gap:12px}.admin-hero,.admin-profile-card,.admin-state-card{display:flex;align-items:center;justify-content:space-between;gap:14px}.admin-title-row{display:flex;align-items:center;gap:12px;min-width:0}.admin-title-row h1{margin:0;font-size:clamp(1.15rem,3vw,1.55rem);line-height:1.15}.admin-title-row p,.admin-state-card p,.admin-profile-card p{margin:2px 0 0;color:var(--text-muted);font-size:.86rem}.admin-title-row code,.admin-user-copy code{color:var(--text-muted);font-size:.72rem;word-break:break-all}.admin-icon-badge,.admin-user-avatar{flex:0 0 auto;width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:16px;background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong));color:var(--accent-strong);font-weight:900;overflow:hidden}.admin-user-avatar{border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;box-shadow:0 10px 22px var(--accent-shadow)}.admin-user-avatar-large{width:58px;height:58px;font-size:1.3rem}.admin-readonly-badge{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-strong);font-size:.78rem;font-weight:900}.admin-header-link{min-height:38px;padding:8px 12px;border-radius:13px;font-size:.82rem;font-weight:900;white-space:nowrap}.admin-search-card{padding:12px}.admin-search-field{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 12px;border:1px solid var(--input-border);border-radius:14px;background:var(--surface-strong);color:var(--text-muted)}.admin-search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text-primary);font:inherit;font-size:.94rem}.admin-user-list{display:grid;gap:12px}.admin-user-card{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;color:inherit;text-align:left;cursor:pointer}.admin-user-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.admin-user-card-main{display:flex;align-items:center;gap:12px;min-width:0}.admin-user-copy{display:grid;gap:2px;min-width:0}.admin-user-copy strong{font-size:1rem}.admin-user-copy span{color:var(--text-muted);font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-stats{grid-column:1 / -1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.admin-user-stats span,.admin-metric-card{display:grid;gap:2px;min-width:0;padding:10px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-strong) 78%,transparent);color:var(--text-muted);font-size:.74rem}.admin-user-stats strong,.admin-metric-card strong{color:var(--text-primary);font-size:.94rem;line-height:1.2}.admin-user-card-icon{grid-column:2;grid-row:1;color:var(--text-muted)}.admin-metric-grid,.admin-delta-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.admin-delta-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-section-card{display:grid;gap:12px}.admin-report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-report-head h2,.admin-report-head p{margin:0}.admin-report-head p{color:var(--text-muted);font-size:.82rem}.admin-report-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:5px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface-soft) 78%,transparent)}.admin-report-tabs .segment{min-height:42px;justify-content:center;border-radius:12px;font-weight:900}.admin-period-nav{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}.admin-period-nav strong{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-strong);text-align:center}.admin-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-section-heading h2{margin:0}.admin-section-heading span{display:inline-flex;align-items:center;gap:5px;color:var(--text-muted);font-size:.8rem;font-weight:800}.admin-item-list{display:grid;gap:8px}.admin-list-item{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-soft) 78%,transparent)}.admin-list-item-inline{grid-template-columns:minmax(0,1fr) auto;align-items:center}.admin-list-item span,.admin-list-item p,.admin-empty-state{margin:0;color:var(--text-muted);font-size:.82rem}.admin-daily-summary{display:grid;gap:8px}.admin-daily-row{display:grid;grid-template-columns:44px minmax(0,1fr) 72px 34px;align-items:center;gap:8px;font-size:.78rem}.admin-weekly-row{display:grid;grid-template-columns:92px minmax(0,1fr) 72px 34px;align-items:center;gap:8px;font-size:.78rem}.admin-daily-track{height:9px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,transparent)}.admin-daily-track span{display:block;height:100%;min-width:3px;border-radius:inherit;background:var(--accent)}.admin-daily-row small,.admin-weekly-row small{color:var(--text-muted);font-size:.72rem;text-align:right}.admin-back-button{width:fit-content;display:inline-flex;align-items:center;gap:7px}.admin-app-return-button{width:fit-content;min-height:42px;display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border-color:color-mix(in srgb,var(--accent) 22%,var(--button-ghost-border));background:color-mix(in srgb,var(--surface-strong) 86%,var(--accent) 14%);color:var(--accent-strong);font-weight:900}@media screen and (max-width:700px){.admin-app-shell{padding:14px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}.admin-shell{gap:12px}.admin-hero,.admin-profile-card,.admin-state-card{align-items:flex-start;flex-direction:column}.admin-user-stats,.admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-user-card{grid-template-columns:minmax(0,1fr)}.admin-report-head{flex-direction:column}.admin-user-card-icon{display:none}.admin-header-link{min-width:38px;padding:8px 10px;font-size:.72rem}.admin-app-return-button{width:100%;justify-content:center;min-height:46px}.admin-daily-row{grid-template-columns:40px minmax(0,1fr) 62px 30px;gap:6px}.admin-weekly-row{grid-template-columns:82px minmax(0,1fr) 62px 30px;gap:6px}}@media screen and (max-width:380px){.admin-app-shell{padding:10px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}.admin-user-stats,.admin-metric-grid{gap:6px}.admin-user-stats span,.admin-metric-card{padding:8px;border-radius:12px}}.quick-entry-overlay{position:fixed;top:0;right:0;bottom:0;left:0;align-items:center;padding:16px;overflow:hidden;overscroll-behavior:contain;background:#0f172a6b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.quick-entry-modal{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:hidden;overscroll-behavior:contain;touch-action:pan-y;padding:12px;border-radius:22px;background:color-mix(in srgb,var(--surface) 94%,var(--surface-strong) 6%);box-shadow:0 22px 60px #0f172a47}.quick-entry-overlay:has(.weekly-draft-preview){align-items:stretch;padding:8px}.quick-entry-modal:has(.weekly-draft-preview){width:min(960px,calc(100vw - 16px));max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}.quick-entry-modal:has(.weekly-planning-confirmation-screen){padding:8px;border-radius:16px}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .quick-entry-switch-card{display:none}.quick-entry-modal:has(.weekly-draft-preview) .quick-entry-modal-body,.quick-entry-modal:has(.weekly-draft-preview) .quick-entry-ai-panel,.quick-entry-modal:has(.weekly-draft-preview) .section-stack{min-height:0}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .quick-entry-modal-body{gap:0;padding:0;overflow-y:auto;overflow-x:hidden}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .quick-entry-ai-panel{padding:0;border:0;border-radius:0;background:transparent}.quick-entry-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:2px 2px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.quick-entry-heading{display:grid;gap:4px;justify-items:center;min-width:0;text-align:center}.quick-entry-heading h2,.quick-entry-heading p{margin:0}.quick-entry-heading h2{color:var(--text);font-size:1rem;font-weight:900;line-height:1.15}.quick-entry-heading p{margin-top:2px;color:var(--text-muted);font-size:.74rem;font-weight:800;line-height:1.2;white-space:nowrap}.quick-entry-kind-switch{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(260px,100%);min-height:38px;padding:4px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:999px;background:color-mix(in srgb,var(--surface-soft) 72%,var(--surface) 28%);box-shadow:inset 0 1px 2px #0f172a0f}.quick-entry-kind-slider{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:var(--surface-strong);box-shadow:0 5px 14px #0f172a1f;transform:translate(0);transition:transform .18s ease}.quick-entry-kind-switch.is-actual .quick-entry-kind-slider{transform:translate(100%)}.quick-entry-kind-option{position:relative;z-index:1;min-height:30px;border:0;border-radius:999px;background:transparent;color:var(--text-muted);font:inherit;font-size:.84rem;font-weight:850;line-height:1;cursor:pointer;transition:color .18s ease}.quick-entry-kind-option.active{color:var(--accent-strong)}.quick-entry-kind-option:focus-visible{outline:2px solid var(--focus-outline);outline-offset:2px}.quick-entry-close-button,.quick-entry-save-button{min-height:36px;padding:7px 12px;border-radius:12px;font-size:.8rem}.quick-entry-modal-body{display:grid;gap:9px;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;padding:2px 2px 4px}.quick-entry-title-card{padding:10px;border-color:color-mix(in srgb,var(--accent) 28%,var(--border) 72%);background:color-mix(in srgb,var(--surface-strong) 88%,var(--accent) 12%)}.quick-entry-card-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:16px;background:var(--chip-bg);color:var(--accent);font-weight:700}.quick-entry-title-field{display:grid;gap:4px;min-width:0}.quick-entry-title-field span{color:var(--text-muted);font-size:.74rem;font-weight:900;line-height:1.2}.quick-entry-title-field input{min-height:44px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--input-border) 68%);border-radius:10px;background:var(--surface-strong);color:inherit;font-size:1rem;font-weight:850;line-height:1.25}.quick-entry-title-field input:focus{outline:2px solid var(--focus-outline);border-color:var(--accent)}.quick-entry-input-method-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:5px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.quick-entry-input-method-tabs .segment{min-width:0;min-height:38px;padding:7px 8px;border-radius:10px;font-size:.88rem;font-weight:800}.quick-entry-switch-card{padding:4px}.quick-entry-manual-panel,.quick-entry-ai-panel{display:grid;gap:9px}.quick-entry-ai-panel{padding:10px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.quick-entry-ai-panel .section-header{margin:0}.quick-entry-ai-panel .section-header p{display:none}.quick-entry-ai-panel .assistant-runtime{align-items:flex-end}.weekly-planning-assistant{gap:10px}.weekly-planning-response-card{display:grid;gap:6px;padding:12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--text)}.weekly-planning-response-card.warning{border-color:color-mix(in srgb,var(--danger) 34%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.weekly-planning-response-card strong{font-size:.9rem}.weekly-planning-response-card p{margin:0;white-space:pre-line;color:var(--muted);font-size:.88rem;line-height:1.55}.weekly-planning-chat-log{display:grid;gap:10px}.weekly-planning-chat-message{display:grid;gap:6px;max-width:min(100%,38rem);padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.weekly-planning-chat-message--user{justify-self:end;background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}.weekly-planning-chat-message--assistant{justify-self:start;background:color-mix(in srgb,var(--surface-elevated) 60%,var(--surface))}.weekly-planning-chat-message strong{font-size:.82rem}.weekly-planning-chat-message p{margin:0;white-space:pre-line;line-height:1.6}.quick-entry-modal:has(.weekly-draft-preview) .weekly-planning-assistant{gap:8px}.weekly-planning-confirmation-screen{display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;width:100%;min-height:0}.weekly-planning-confirmation-header{display:flex;align-items:center;justify-content:center;min-height:36px;color:var(--text);font-size:1rem;font-weight:900}.weekly-draft-control-card{display:grid;gap:10px;padding:12px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface) 92%,var(--surface-strong) 8%)}.weekly-draft-confirmation-main{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:10px;width:100%;min-height:0}.weekly-draft-summary-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;align-items:start;padding:14px;border:1px solid color-mix(in srgb,var(--border) 62%,transparent);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 92%,var(--accent) 8%),color-mix(in srgb,var(--surface) 94%,var(--accent) 6%))}.weekly-draft-summary-check{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-top:2px;border:2px solid var(--accent-strong);border-radius:999px;color:var(--accent-strong);font-size:.86rem;font-weight:900;line-height:1}.weekly-draft-summary-main{display:grid;gap:7px;min-width:0}.weekly-draft-summary-main>strong{color:var(--text);font-size:1rem;line-height:1.25}.weekly-draft-status-row{display:flex;flex-wrap:wrap;gap:5px}.weekly-draft-status-row span{padding:3px 9px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border) 78%);border-radius:999px;background:color-mix(in srgb,var(--accent) 9%,var(--surface-strong) 91%);color:var(--accent-strong);font-size:.7rem;font-weight:900;line-height:1.15}.weekly-draft-summary-grid{grid-column:1 / -1;display:grid;grid-template-columns:max-content minmax(0,1fr);gap:9px 16px;align-items:baseline;padding-top:4px;font-size:.9rem}.weekly-draft-summary-grid span{color:var(--text-muted)}.weekly-draft-summary-grid strong{min-width:0;color:var(--text);font-size:.96rem;overflow-wrap:anywhere}.weekly-draft-preview{--weekly-draft-preview-hour-height: 22px;--weekly-draft-preview-ten-minute-height: calc( var(--weekly-draft-preview-hour-height) / 6 );display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:visible;border:0;border-radius:0;background:var(--surface)}.weekly-draft-preview-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.weekly-draft-preview-tab{min-width:0;min-height:42px;border:0;border-radius:0;background:transparent;color:var(--text);font:inherit;font-size:.9rem;font-weight:900;cursor:pointer}.weekly-draft-preview-tab.active{background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:var(--surface)}.weekly-draft-preview-tab:disabled{cursor:not-allowed;opacity:.5}.weekly-draft-preview-scroll{overflow:auto;max-height:min(64vh,680px);border:1px solid var(--border);border-radius:12px;background:var(--surface)}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-preview{overflow:visible}.quick-entry-modal:has(.weekly-draft-preview) .weekly-draft-preview-scroll{max-height:max(360px,calc(100dvh - 330px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)))}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-preview-scroll{max-height:none;overflow:visible}.weekly-draft-preview-grid{width:100%;min-width:0}.weekly-draft-preview-header,.weekly-draft-preview-body{display:grid}.weekly-draft-preview-header{position:sticky;top:0;z-index:3;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,var(--surface-strong) 8%)}.weekly-draft-preview-corner,.weekly-draft-preview-date{display:grid;gap:2px;align-content:center;min-width:0;min-height:48px;padding:6px 3px;border:0;border-left:1px solid var(--border);background:transparent;color:inherit;font:inherit;font-size:.74rem;line-height:1.2;text-align:center;cursor:pointer}.weekly-draft-preview-corner{color:var(--text-muted);font-weight:900;text-align:right}.weekly-draft-preview-date strong,.weekly-draft-preview-date small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weekly-draft-preview-date small{color:var(--text-muted);font-size:.62rem}.weekly-draft-preview-time-axis,.weekly-draft-preview-day-column{position:relative}.weekly-draft-preview-time-axis{border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface-strong) 70%,var(--surface) 30%)}.weekly-draft-preview-day-column{display:block;width:100%;min-width:0;padding:0;border-left:1px solid var(--border);border-top:0;border-right:0;border-bottom:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--surface) 92%,var(--accent) 8%),var(--surface));color:inherit;cursor:pointer;font:inherit;text-align:left}.weekly-draft-preview-time-label{position:absolute;right:7px;transform:translateY(-50%);color:var(--text-muted);font-size:.68rem;font-weight:800;line-height:1;white-space:nowrap}.weekly-draft-preview-time-label--start{transform:translateY(0)}.weekly-draft-preview-time-label--end{transform:translateY(-100%)}.weekly-draft-preview-hour-line{position:absolute;right:0;left:0;border-top:1px dashed color-mix(in srgb,var(--border) 68%,transparent 32%);pointer-events:none}.weekly-draft-preview-block{--weekly-draft-tone: var(--accent);--weekly-draft-tone-bg: color-mix(in srgb, var(--accent) 13%, var(--surface-strong) 87%);position:absolute;right:4px;left:4px;box-sizing:border-box;min-width:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--weekly-draft-tone) 46%,var(--border) 54%);border-radius:6px;background:var(--weekly-draft-tone-bg);box-shadow:0 8px 18px color-mix(in srgb,var(--shadow) 8%,transparent 92%);z-index:3}.weekly-draft-preview-existing{position:absolute;right:6px;left:6px;z-index:2;box-sizing:border-box;min-width:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--text-muted) 34%,var(--border) 66%);border-radius:6px;background:color-mix(in srgb,var(--text-muted) 13%,var(--surface-strong) 87%);color:var(--text-muted);pointer-events:none}.weekly-draft-preview-existing--overview{display:grid;gap:1px;place-items:center;padding:2px;text-align:center}.weekly-draft-preview-existing--overview strong,.weekly-draft-preview-existing--overview small{display:-webkit-box;overflow:hidden;line-height:1.15;-webkit-box-orient:vertical}.weekly-draft-preview-existing--overview strong{color:var(--text-muted);font-size:.48rem;font-weight:850;-webkit-line-clamp:2}.weekly-draft-preview-existing--short,.weekly-draft-preview-existing--tiny,.weekly-draft-preview-existing--micro{gap:0}.weekly-draft-preview-existing--short strong,.weekly-draft-preview-existing--tiny strong,.weekly-draft-preview-existing--micro strong{-webkit-line-clamp:1}.weekly-draft-preview-existing--overview small{color:var(--text-muted);font-size:.48rem;font-weight:800;-webkit-line-clamp:1}.weekly-draft-preview-existing--detail{display:flex;flex-direction:column;gap:2px;right:14px;left:18px;padding:6px 8px;border-radius:8px}.weekly-draft-tone-1{--weekly-draft-tone: #3b82f6;--weekly-draft-tone-bg: #eaf2ff}.weekly-draft-tone-2{--weekly-draft-tone: #16a34a;--weekly-draft-tone-bg: #eaf8ee}.weekly-draft-tone-3{--weekly-draft-tone: #f97316;--weekly-draft-tone-bg: #fff1e6}.weekly-draft-tone-4{--weekly-draft-tone: #ef4444;--weekly-draft-tone-bg: #ffecef}.weekly-draft-tone-5{--weekly-draft-tone: #8b5cf6;--weekly-draft-tone-bg: #f1edff}.weekly-draft-tone-6{--weekly-draft-tone: #0d9488;--weekly-draft-tone-bg: #e6f6f4}.weekly-draft-tone-7{--weekly-draft-tone: #f59e0b;--weekly-draft-tone-bg: #fff5df}.weekly-draft-tone-8{--weekly-draft-tone: #64748b;--weekly-draft-tone-bg: #eef2f6}.weekly-draft-preview-block--overview{display:grid;gap:1px;place-items:center;padding:2px;text-align:center}.weekly-draft-preview-block--overview strong,.weekly-draft-preview-block--overview small{display:-webkit-box;overflow:hidden;line-height:1.15;-webkit-box-orient:vertical}.weekly-draft-preview-block--overview strong{color:var(--text);font-size:.5rem;font-weight:850;-webkit-line-clamp:1}.weekly-draft-preview-block--overview small{color:color-mix(in srgb,var(--text-muted) 86%,var(--weekly-draft-tone) 14%);font-size:.5rem;font-weight:750;-webkit-line-clamp:1}.weekly-draft-preview-block--detail{display:flex;flex-direction:column;gap:2px;right:6px;left:10px;padding:6px 38px 6px 8px;border-radius:8px}.weekly-draft-preview-block-main{display:grid;gap:2px;min-width:0}.weekly-draft-preview-block-main strong,.weekly-draft-preview-block-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weekly-draft-preview-block-main strong{color:var(--text);font-size:.76rem;line-height:1.25}.weekly-draft-preview-block-main small{color:var(--text-muted);font-size:.76rem;line-height:1.2}.weekly-draft-preview-meta-row{display:flex;flex-flow:row nowrap;align-items:center;gap:4px;min-width:0;min-height:18px;overflow:hidden;line-height:1.2;white-space:nowrap}.weekly-draft-preview-meta-row .weekly-draft-badge{display:inline-flex;align-items:center;box-sizing:border-box;min-height:16px;padding:2px 5px;font-size:.54rem;line-height:1.15}.weekly-draft-preview-meta-row>span:first-child,.weekly-draft-preview-meta-row .weekly-draft-badge:not(.weekly-draft-preview-subject-badge){flex:0 0 auto}.weekly-draft-preview-subject-badge{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:.52rem;font-weight:750}.weekly-draft-preview-remove{position:absolute;top:7px;right:7px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border) 65%);border-radius:999px;background:color-mix(in srgb,var(--surface) 82%,var(--accent) 18%);color:var(--text-muted);cursor:pointer;font-size:.82rem;line-height:1}.weekly-draft-preview-remove:hover{border-color:var(--accent);color:var(--accent-strong)}.weekly-draft-day-detail{--weekly-draft-preview-hour-height: 44px;display:grid;gap:8px;padding:10px 0 0}.weekly-draft-day-detail-header{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto);gap:8px;align-items:center}.weekly-draft-day-detail-header strong{justify-self:center;min-width:0;font-size:.98rem}.weekly-draft-day-detail-header:after{content:"";width:1px}.weekly-draft-back-button{min-height:34px}.weekly-draft-day-nav{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center}.weekly-draft-day-nav .ghost-button{border-radius:999px;box-shadow:0 5px 12px #0f172a14}.weekly-draft-day-nav span{color:var(--text-muted);font-size:.78rem;font-weight:850;white-space:nowrap}.weekly-draft-preview-scroll--day{border:1px solid var(--border);border-radius:12px;background:var(--surface)}.weekly-draft-day-grid{display:grid;grid-template-columns:66px minmax(0,1fr);width:100%}.weekly-draft-day-time-axis{background:color-mix(in srgb,var(--surface-strong) 78%,var(--surface) 22%)}.weekly-draft-day-column{position:relative;min-width:0;background:var(--surface)}.weekly-draft-ten-minute-guide{position:absolute;left:0;width:16px;border-top:1px solid color-mix(in srgb,var(--border) 48%,transparent 52%);pointer-events:none}.weekly-draft-ten-minute-guide--half{width:32px;border-top-color:color-mix(in srgb,var(--border) 72%,transparent 28%)}.weekly-draft-ten-minute-guide--hour{right:0;width:auto;border-top-color:color-mix(in srgb,var(--border) 92%,transparent 8%)}.weekly-draft-action-bar{position:sticky;bottom:0;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin:2px -4px -4px;padding:10px 4px 4px;background:linear-gradient(to top,color-mix(in srgb,var(--accent) 8%,var(--surface-strong) 92%) 78%,transparent)}.weekly-draft-action-bar .ghost-button,.weekly-draft-action-bar .primary-button{min-height:58px;border-radius:10px;font-size:.92rem;font-weight:900}.weekly-draft-action-bar .ghost-button{border:1px solid #ef4444;background:var(--surface);color:#ef4444}.weekly-draft-action-bar .primary-button{background:linear-gradient(135deg,var(--accent),var(--accent-strong))}.quick-entry-mode-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.quick-entry-mode-tabs .segment{min-width:0;min-height:34px;padding:6px 8px;border-radius:9px;font-size:.82rem;font-weight:700}.quick-entry-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-entry-card{display:grid;gap:8px;min-width:0;padding:10px;border:1px solid var(--border-strong);border-radius:14px;background:color-mix(in srgb,var(--surface-strong) 82%,var(--surface-soft) 18%)}.quick-entry-memo-card,.quick-entry-duration-card{grid-column:1 / -1}.quick-entry-card-head{display:flex;align-items:center;gap:8px}.quick-entry-card-head h3{margin:0;color:var(--text);font-size:.82rem;font-weight:900;line-height:1.2}.quick-entry-card-icon{width:30px;height:30px;border-radius:10px;font-size:.82rem}.quick-entry-two-column-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}.quick-entry-card .field{gap:4px;min-width:0}.quick-entry-card .field span,.quick-entry-weekdays>span{color:var(--text-muted);font-size:.74rem;font-weight:800;line-height:1.2}.quick-entry-card .field input,.quick-entry-card .field select,.quick-entry-card .field textarea{min-height:38px;padding:7px 10px;border-radius:10px;background:var(--surface-strong);font-size:.84rem;line-height:1.25}.quick-entry-card .field textarea{min-height:56px;max-height:120px;resize:vertical}.quick-entry-chip-row{display:flex;flex-wrap:wrap;gap:6px}.quick-entry-duration-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.quick-entry-chip,.quick-entry-weekday-chip{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:6px 10px;border:1px solid var(--button-ghost-border);border-radius:10px;background:var(--surface);color:var(--text-muted);font:inherit;font-size:.82rem;font-weight:700;line-height:1;white-space:nowrap;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.quick-entry-duration-grid .quick-entry-chip{width:100%;min-width:0;padding-inline:6px}.quick-entry-custom-duration{max-width:220px}.quick-entry-weekday-chip{width:34px;padding-inline:0}.quick-entry-chip:hover,.quick-entry-weekday-chip:hover{transform:translateY(-1px)}.quick-entry-chip:disabled,.quick-entry-weekday-chip:disabled{cursor:not-allowed;opacity:.5;transform:none}.quick-entry-chip.active,.quick-entry-weekday-chip.active{border-color:var(--accent);background:var(--accent);color:#fff}.quick-entry-repeat-note{margin:2px 0 0;font-size:.76rem}.quick-entry-pin-card{padding:8px 10px}.quick-entry-pin-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:38px;padding:7px 10px;border:1px solid var(--button-ghost-border);border-radius:10px;background:var(--surface);color:var(--text-muted);font:inherit;font-size:.86rem;font-weight:800;line-height:1;text-align:center;white-space:nowrap}.quick-entry-pin-toggle svg{flex:0 0 auto;color:currentColor}.quick-entry-pin-toggle.active{border-color:color-mix(in srgb,var(--accent) 32%,var(--border) 68%);background:color-mix(in srgb,var(--accent) 12%,var(--surface) 88%);color:var(--accent)}.quick-entry-deadline-grid{align-items:end}.quick-entry-deadline-grid .quick-entry-pin-toggle{grid-column:1 / -1;justify-self:start;width:auto;min-width:112px}.quick-entry-weekdays{display:grid;gap:7px}@media screen and (max-width:640px){.quick-entry-overlay{padding:8px}.quick-entry-modal{max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));width:calc(100vw - 16px);padding:10px;border-radius:18px}.quick-entry-header{gap:7px;padding-bottom:8px}.quick-entry-heading h2{font-size:.92rem}.quick-entry-heading p{font-size:.68rem}.quick-entry-close-button,.quick-entry-save-button{min-height:38px;padding:7px 10px;border-radius:11px;font-size:.76rem}.quick-entry-title-field input{min-height:42px;font-size:16px}.quick-entry-input-method-tabs .segment,.quick-entry-mode-tabs .segment{min-height:34px;padding-inline:5px;font-size:.78rem}.quick-entry-ai-panel{padding:9px;border-radius:12px}.quick-entry-card{padding:9px;border-radius:13px}.quick-entry-card .field input,.quick-entry-card .field select,.quick-entry-card .field textarea{min-height:40px;padding:8px 9px;font-size:16px}.quick-entry-chip,.quick-entry-weekday-chip{min-height:31px;font-size:.78rem}.quick-entry-duration-grid{gap:5px}.quick-entry-duration-grid .quick-entry-chip{padding-inline:3px;font-size:.72rem}.quick-entry-deadline-grid .quick-entry-pin-toggle{min-width:112px}}@media screen and (max-width:420px){.quick-entry-body{grid-template-columns:1fr}.quick-entry-heading p{display:none}.quick-entry-header{grid-template-columns:auto minmax(0,1fr) auto;gap:5px}.quick-entry-close-button,.quick-entry-save-button{padding:7px 8px;font-size:.72rem}.quick-entry-duration-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media screen and (max-width:340px){.quick-entry-two-column-grid{grid-template-columns:1fr}}.quick-entry-modal:has(.weekly-planning-confirmation-screen){display:grid;grid-template-rows:auto minmax(0,1fr);width:min(960px,calc(100vw - 16px));height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:8px;overflow:hidden}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .quick-entry-modal-body{min-height:0;overflow-y:auto;overflow-x:hidden;padding:0;gap:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .quick-entry-ai-panel{display:block;padding:0;border:0;border-radius:0;background:transparent}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .section-stack,.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-planning-assistant{display:block;min-height:0}.weekly-planning-confirmation-screen{display:block;width:100%;min-height:auto}.weekly-planning-confirmation-header{margin:8px 0 12px}.weekly-draft-control-card{width:100%;box-sizing:border-box;padding:0;border:0;border-radius:0;background:transparent}.weekly-draft-confirmation-main{display:block;width:100%;min-height:auto}.weekly-draft-summary-hero{margin:0 0 12px}.weekly-draft-preview{display:block;width:100%;min-height:auto;overflow:visible;background:transparent}.weekly-draft-preview-switch{margin-bottom:8px}.weekly-draft-preview-scroll,.quick-entry-modal:has(.weekly-draft-preview) .weekly-draft-preview-scroll,.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-preview-scroll{max-height:none;height:auto;overflow:visible}.weekly-draft-preview-grid{width:100%}.weekly-draft-action-bar{position:static;z-index:auto;margin:14px 0 0;padding:0;background:transparent}.weekly-draft-action-bar .ghost-button,.weekly-draft-action-bar .primary-button{min-height:56px}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-day-detail{display:block;min-height:0;height:auto;padding-bottom:0}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-preview-scroll--day{display:block;min-height:0;height:auto;max-height:none;overflow:visible}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-day-grid{align-items:start;min-height:0;height:auto}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-preview-grid,.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-preview-body{min-height:0;height:auto}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-day-detail{min-height:0;height:auto;padding-bottom:0}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-preview-scroll--day{min-height:0;height:auto;max-height:none;overflow:visible}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-day-grid{align-items:start;align-content:start;min-height:0;height:auto}.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-day-time-axis,.quick-entry-modal:has(.weekly-planning-confirmation-screen) .weekly-draft-day-column{min-height:0}.weekly-planning-chat-message--typing{min-width:84px}.weekly-planning-typing-indicator{display:inline-flex;gap:5px;align-items:center;min-height:20px}.weekly-planning-typing-indicator span{width:7px;height:7px;border-radius:50%;background:var(--text-muted);animation:weekly-planning-typing-bounce 1.1s infinite ease-in-out}.weekly-planning-typing-indicator span:nth-child(2){animation-delay:.14s}.weekly-planning-typing-indicator span:nth-child(3){animation-delay:.28s}@keyframes weekly-planning-typing-bounce{0%,60%,to{opacity:.42;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.weekly-planning-typing-indicator span{animation:none}}@media print{@page{size:A4 landscape;margin:5mm}:root,body{background:#fff!important;color:#111!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.print-hide,.overlay,.drawer,.modal-overlay,.day-review-layout-print-hide,.app-toast-layer,.app-notice{display:none!important}.app-shell,.section-stack{max-width:none;gap:12px}.loading-screen,.auth-shell,.app-shell{padding:0}.panel,.hero-card,.comparison-card,.score-card,.plan-detail-card{box-shadow:none;border:1px solid #cfcfcf;background:#fff!important}.hero-card,.panel,.comparison-card,.score-card,.plan-detail-card,.day-column,.week-comparison-card,.month-cell{padding:10px!important;border-radius:12px!important}h2{font-size:1rem;margin-bottom:2px}.view-titlebar h2{font-size:.92rem}p,.summary-chip,.week-day-link,.comparison-subtitle,.comparison-metrics,.timeline-entry-line,.timeline-legend-item,.month-target,.month-holiday-label,.event-pill,.type-badge{font-size:.68rem!important;line-height:1.25}.month-grid,.week-grid,.week-view-grid,.timeline-shell,.timeline-main,.timeline-canvas,.timeline-canvas.split,.report-bar-chart-scroll{overflow:visible!important;min-width:0!important}.month-grid,.week-view-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.timeline-shell{--timeline-head-height: 30px;--timeline-row-gap: 6px;--timeline-hour-height: 22px;--timeline-min-block-height: 20px;--timeline-hour-label-offset: -6px;grid-template-columns:44px minmax(0,1fr);gap:4px}.timeline-main{gap:4px}.timeline-canvas.split{min-width:0!important}.section-stack,.view-header-stack,.section-header{gap:6px}.timeline-column-label{min-height:var(--timeline-head-height);padding:4px 6px;font-size:.72rem;border-radius:10px}.timeline-hour-label{font-size:.62rem}.timeline-plan-block,.timeline-actual-block{padding:2px 5px;border-radius:10px}.timeline-chip{padding:1px 5px;font-size:.58rem}.notebook-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.summary-chip{min-width:0;padding:4px 6px}.timeline-legend{display:none!important}.notebook-summary-grid,.timeline-legend,.month-week-chip-row{gap:6px}.week-day-column,.week-comparison-card{padding:6px!important;gap:4px}.week-plan-stack{gap:4px}.comparison-track{height:8px}.month-cell{min-height:72px;gap:4px}.month-major-event-list,.month-study-summary{gap:2px}.month-cell-head{gap:4px}.month-holiday-label{font-size:.62rem!important}.timeline-plan-block,.timeline-actual-block,.month-cell,.week-day-link,.report-bar-item,.report-timeline-item{break-inside:avoid}.month-cell,.week-day-column,.week-comparison-card{transform:none!important}}.modal-overlay{justify-content:center;justify-items:center;align-items:start;padding:20px;overflow-y:scroll;scrollbar-gutter:stable both-edges;z-index:var(--z-modal-overlay)}.drawer{position:relative;z-index:var(--z-modal-content);width:min(460px,100vw);height:100vh;height:100dvh;padding:24px;border-radius:0;overflow-y:auto}.modal-card{position:relative;z-index:var(--z-modal-content);width:min(760px,100%);max-height:min(88vh,920px);overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;padding:24px;border-radius:28px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);margin-top:12px;margin-inline:auto}.modal-card .section-header>div,.modal-card .label-row>*,.modal-card .field,.modal-card .field-pair,.modal-card .form-grid,.modal-card .row-actions>*{min-width:0}.modal-card .confidence-badge,.modal-card .type-badge,.month-event-chip strong,.month-event-chip span,.month-event-timeline-copy,.month-event-timeline-copy strong,.month-event-timeline-copy span{max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-card .section-header h2,.modal-card .label-row strong{word-break:keep-all;overflow-wrap:anywhere}.plan-input-modal{width:min(760px,calc(100vw - 40px));max-width:760px;overflow:hidden}.plan-input-modal .section-stack,.plan-input-modal .form-grid,.plan-input-modal .field,.plan-input-modal .row-actions,.plan-input-modal .segmented-control,.plan-input-modal .primary-button{min-width:0}.plan-input-modal .field input,.plan-input-modal .field select,.plan-input-modal .field textarea{width:100%}.plan-editor-modal{width:min(680px,calc(100vw - 40px))}.plan-editor-modal .section-stack{gap:16px}.daily-detail-modal-overlay{align-items:center;padding:16px;overflow:hidden;background:#0f172a6b;overscroll-behavior:contain;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-card.daily-detail-modal{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;width:min(660px,calc(100vw - 32px));max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:hidden;padding:12px;border-radius:22px;background:color-mix(in srgb,var(--surface) 94%,var(--surface-strong) 6%);box-shadow:0 22px 60px #0f172a47}.daily-detail-modal-header{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:2px 2px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.daily-detail-modal-heading{min-width:0;text-align:center}.daily-detail-modal-heading h2{margin:0;color:var(--text);font-size:1rem;font-weight:900;line-height:1.15}.daily-detail-modal-heading p{margin:2px 0 0;overflow:hidden;color:var(--text-muted);font-size:.74rem;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.daily-detail-modal-header .ghost-button{min-height:36px;padding:7px 12px;border-radius:12px;font-size:.8rem}.daily-detail-modal-body{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;padding:2px 2px 4px}.daily-detail-modal .actual-editor-card{display:grid;gap:10px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.daily-detail-modal .actual-editor-head,.actual-editor-section{display:grid;gap:8px;padding:10px;border:1px solid var(--border-strong);border-radius:14px;background:color-mix(in srgb,var(--surface-strong) 82%,var(--surface-soft) 18%)}.daily-detail-modal .actual-editor-head{grid-template-columns:minmax(0,1fr) auto;align-items:start}.daily-detail-modal .actual-editor-head .label-row{gap:7px}.daily-detail-modal .actual-editor-head strong{font-size:.96rem;line-height:1.25}.daily-detail-modal .comparison-subtitle,.daily-detail-modal .comparison-metrics,.daily-detail-modal .detail-note{margin:3px 0 0;font-size:.74rem;line-height:1.3}.actual-editor-head-actions{justify-content:flex-end;gap:7px}.actual-editor-head-actions .primary-button,.actual-editor-head-actions .mini-button,.daily-detail-modal .ghost-button,.daily-detail-modal .segment{min-height:36px;padding:7px 10px;border-radius:11px;font-size:.78rem}.actual-form-compact{display:grid;gap:10px;padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))}.actual-editor-section-title strong{color:var(--text);font-size:.78rem;font-weight:900;line-height:1.2}.actual-time-grid,.actual-content-grid{display:grid;gap:8px;min-width:0}.actual-time-grid{grid-template-columns:minmax(128px,.9fr) repeat(2,minmax(156px,1fr))}.actual-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-detail-modal .field{gap:4px}.daily-detail-modal .field span{color:var(--text-muted);font-size:.74rem;font-weight:800;line-height:1.2}.modal-card.daily-detail-modal .field input,.modal-card.daily-detail-modal .field select,.modal-card.daily-detail-modal .field textarea{min-height:38px;padding:7px 10px;border-radius:10px;background:var(--surface-strong);font-size:.84rem;line-height:1.25}.modal-card.daily-detail-modal .field input[type=date],.modal-card.daily-detail-modal .field input[type=time]{inline-size:100%;min-inline-size:0;max-inline-size:100%;box-sizing:border-box}.modal-card.daily-detail-modal .field textarea{min-height:58px;max-height:120px;resize:vertical}.actual-editor-summary-card{gap:4px;padding:8px 10px;border-radius:12px}.actual-tracking-details{display:grid;gap:8px}.actual-tracking-details summary{min-height:38px;padding:9px 10px;border:1px solid var(--border-strong);border-radius:12px;background:color-mix(in srgb,var(--surface-strong) 82%,var(--surface-soft) 18%);color:var(--text);font-size:.8rem;font-weight:900;cursor:pointer}.actual-tracking-details .tracking-tools-card{gap:8px;padding:10px;border-radius:14px}.actual-tracking-details .tracking-tools-card>.section-header{display:none}.actual-tracking-details .section-stack{gap:8px}.actual-tracking-details .tracking-display{padding:10px 12px;border-radius:12px;font-size:1.25rem}.actual-tracking-details .detail-note{display:none}.actual-tracking-launch-button{justify-self:flex-start}.floating-tracking-event-shield{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147482998;background:transparent;pointer-events:auto;touch-action:none}.floating-tracking-panel{position:fixed;top:max(12px,env(safe-area-inset-top,0px) + 12px);right:max(12px,env(safe-area-inset-right,0px) + 12px);z-index:2147482999;display:grid;gap:8px;width:min(330px,calc(100vw - 16px));max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:10px;border:1px solid color-mix(in srgb,var(--border-strong) 72%,transparent);border-radius:16px;overflow:auto;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 22px 48px #0f172a3d;pointer-events:auto;touch-action:none;cursor:grab}.floating-tracking-panel.dragging{cursor:grabbing;touch-action:none;-webkit-user-select:none;user-select:none}.floating-tracking-panel.collapsed{width:min(270px,calc(100vw - 16px));padding:8px 9px;border-radius:999px}.floating-tracking-panel-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.floating-tracking-panel-title{min-width:0;text-align:center}.floating-tracking-panel-title strong,.floating-tracking-panel-title span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.floating-tracking-panel-title strong{color:var(--text);font-size:.9rem;font-weight:900}.floating-tracking-panel-title span{margin-top:2px;color:var(--text-muted);font-size:.68rem;font-weight:700}.floating-tracking-close{display:grid;place-items:center;width:36px;height:36px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:999px;background:var(--surface-strong);color:var(--text);font-size:1.08rem;font-weight:900;cursor:pointer}.floating-tracking-collapse{display:grid;place-items:center;width:36px;height:36px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:999px;background:var(--surface-strong);color:var(--text);font-size:1rem;font-weight:900;cursor:pointer}.floating-tracking-panel-body[hidden]{display:none}.floating-tracking-panel .tracking-tools-card{gap:8px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.floating-tracking-panel .tracking-tools-card>.section-header{display:none}.floating-tracking-panel .segmented-control{gap:6px}.floating-tracking-panel .segment,.floating-tracking-panel .ghost-button,.floating-tracking-panel .mini-button{min-height:34px;padding:6px 9px;border-radius:10px;font-size:.72rem}.floating-tracking-panel .section-stack{gap:8px}.floating-tracking-panel .tracking-display{padding:10px 12px;border-radius:12px;font-size:1.28rem}.floating-tracking-panel .detail-note{margin:0;font-size:.68rem;line-height:1.45}.floating-tracking-panel .tracking-apply-note{color:var(--text-muted)}.floating-tracking-panel .row-actions{gap:6px}.floating-tracking-panel .field span{font-size:.68rem}.floating-tracking-panel .field input{min-height:36px;padding:7px 9px;border-radius:10px;font-size:.82rem}.actual-editor-actions{justify-content:flex-start}.actual-editor-save-footer{position:sticky;bottom:0;z-index:4;display:grid;gap:7px;margin:2px -2px 0;padding:10px 2px max(10px,env(safe-area-inset-bottom,0px));border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 0%,transparent) 0%,color-mix(in srgb,var(--surface) 94%,transparent) 18%,var(--surface) 100%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.actual-editor-save-summary{margin:0;overflow:hidden;color:var(--text-muted);font-size:.72rem;font-weight:800;line-height:1.25;text-align:center;text-overflow:ellipsis;white-space:nowrap}.daily-detail-modal .actual-editor-save-button{width:100%;min-height:54px;border-radius:15px;font-size:.96rem;font-weight:900;box-shadow:0 14px 26px color-mix(in srgb,var(--primary) 28%,transparent)}.month-event-modal-overlay{align-items:center;padding:16px;overflow:hidden;background:#0f172a6b;overscroll-behavior:contain;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-card.month-event-modal{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;width:min(640px,calc(100vw - 32px));max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:hidden;padding:12px;border-radius:22px;background:color-mix(in srgb,var(--surface) 94%,var(--surface-strong) 6%);box-shadow:0 22px 60px #0f172a47}.month-event-editor-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:2px 2px 8px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.month-event-date-heading{min-width:0;overflow:hidden;color:var(--text);font-size:clamp(1.22rem,3.2vw,1.7rem);font-weight:700;line-height:1.12;text-align:center;text-overflow:ellipsis;white-space:nowrap}.month-event-editor-header .ghost-button,.month-event-save-button{min-height:36px;padding:7px 12px;border-radius:12px;font-size:.8rem}.month-event-editor-body{display:grid;gap:0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;padding:0 2px 4px}.month-event-editor-card{display:grid;gap:8px;padding:10px;border:1px solid var(--border-strong);border-radius:14px;background:color-mix(in srgb,var(--surface-strong) 82%,var(--surface-soft) 18%)}.month-event-core-section,.month-event-subtle-section,.month-event-addons,.month-event-addon-panel{display:grid;gap:8px;padding:10px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 68%,transparent)}.month-event-core-section:first-child{padding-top:8px}.month-event-addon-panel{padding:8px 0 10px}.month-event-title-card{border-color:color-mix(in srgb,var(--border) 68%,transparent);background:transparent}.month-event-card-title{display:flex;align-items:center;min-width:0}.month-event-card-title strong,.month-event-modal .label-row strong{color:var(--text);font-size:.78rem;font-weight:900;line-height:1.2}.month-event-datetime-rows{display:grid;gap:7px;min-width:0}.month-event-datetime-row{display:grid;grid-template-columns:38px minmax(128px,1fr) minmax(84px,.58fr);gap:8px;align-items:center;min-width:0}.month-event-datetime-label{color:var(--text);font-size:.78rem;font-weight:900;line-height:1.2;white-space:nowrap}.month-event-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;color:var(--text);font-size:.82rem;font-weight:850}.month-event-all-day-switch{position:relative;display:inline-flex;width:48px;height:28px;flex:0 0 auto;cursor:pointer}.month-event-all-day-switch input{position:absolute;opacity:0;pointer-events:none}.month-event-all-day-switch span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 22%,var(--surface-strong) 78%);border:1px solid color-mix(in srgb,var(--border) 72%,transparent);transition:background-color .18s ease,border-color .18s ease}.month-event-all-day-switch span:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--surface);box-shadow:0 2px 7px #0f172a29;transition:transform .18s ease}.month-event-all-day-switch input:checked+span{background:color-mix(in srgb,var(--accent) 78%,var(--surface-strong) 22%);border-color:color-mix(in srgb,var(--accent) 70%,var(--border) 30%)}.month-event-all-day-switch input:checked+span:after{transform:translate(20px)}.month-event-repeat-card{grid-template-columns:minmax(0,.44fr) minmax(0,1fr);align-items:end}.month-event-optional-card .collapsible-toggle{min-height:38px;padding:0;border:0;background:transparent}.month-event-optional-card .collapsible-panel{gap:8px}.month-event-modal .field{gap:4px;min-width:0}.month-event-modal .field span{color:var(--text-muted);font-size:.7rem;font-weight:800;line-height:1.2}.modal-card.month-event-modal .field input,.modal-card.month-event-modal .field select,.modal-card.month-event-modal .field textarea,.modal-card.month-event-modal .month-event-date-button,.modal-card.month-event-modal .month-event-time-input,.modal-card.month-event-modal .month-event-checklist-item input[type=text],.modal-card.month-event-modal .month-event-checklist-item input:not([type=checkbox]){min-height:38px;padding:7px 10px;border:1px solid var(--input-border);border-radius:10px;background:var(--surface-strong);color:inherit;font:inherit;font-size:.82rem;line-height:1.25}.modal-card.month-event-modal .month-event-date-button,.modal-card.month-event-modal .month-event-time-input{overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.modal-card.month-event-modal .month-event-title-field input{min-height:42px;padding:8px 10px;border-color:var(--input-border);font-size:.95rem;font-weight:850}.month-event-addon-chip-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.month-event-addon-chip{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px;border:0;border-radius:999px;background:transparent;color:var(--text);font:inherit;font-size:.78rem;font-weight:850;cursor:pointer;box-shadow:none}.month-event-addon-chip.active{background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong) 88%);color:var(--accent)}.month-event-addon-plus{display:inline-grid;place-items:center;width:18px;height:18px;flex:0 0 auto;border-radius:50%;background:var(--accent);color:#fff;font-size:.86rem;font-weight:900;line-height:1}.modal-card.month-event-modal .field input[type=date],.modal-card.month-event-modal .field input[type=time],.modal-card.month-event-modal .month-event-date-button,.modal-card.month-event-modal .month-event-time-input{inline-size:100%;min-inline-size:0;max-inline-size:100%;box-sizing:border-box}.modal-card.month-event-modal .field textarea{min-height:60px;max-height:130px;resize:vertical}.month-event-editor-actions{justify-content:flex-start;padding:0 2px;padding-bottom:env(safe-area-inset-bottom,0px)}.my-page-modal{width:min(640px,100%)}.app-settings-modal{width:min(620px,100%)}.app-settings-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.app-settings-tabs .segment{min-height:44px}.app-settings-placeholder strong,.support-section>strong{color:var(--text-primary);font-size:.94rem}.settings-field-label{display:inline-flex;align-items:center;gap:8px;min-width:0}.settings-field-label svg{flex:0 0 auto;color:var(--accent)}.support-section{gap:8px}.support-link-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;padding:10px 12px;border-radius:14px;background:var(--surface-strong);color:inherit;text-decoration:none}.support-link-button{width:100%;border:0;font:inherit;text-align:left;cursor:pointer}.support-link-row:hover{background:var(--surface-selected)}.support-link-row svg{flex:0 0 auto;color:var(--text-muted)}.support-link-row:hover svg{color:var(--accent)}.support-link-main{display:inline-flex;align-items:center;gap:10px;min-width:0;color:inherit;font-weight:800}.support-link-main span{min-width:0;overflow-wrap:anywhere}.support-link-row-static{color:var(--text-muted)}.support-link-row-static:hover{background:var(--surface-strong)}.support-link-row-static strong{color:var(--text-primary);font-size:.86rem}.support-copyright{margin:4px 0 0;color:var(--text-muted);font-size:.8rem}.profile-hero-card{gap:16px}.profile-hero{display:flex;gap:16px;align-items:center}.profile-name{display:block;margin-bottom:4px;font-size:1.2rem}.avatar-option-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.avatar-upload-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.hidden-file-input{display:none}.avatar-option{min-height:52px;border-radius:16px;border:1px solid var(--border);background:var(--surface-soft);color:inherit;font-size:1.2rem}.avatar-option.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--surface-selected)}.theme-palette-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.theme-palette-button{display:grid;gap:8px;padding:12px;border-radius:14px;border:1px solid var(--button-ghost-border);background:var(--surface-strong);color:inherit;text-align:left}.theme-palette-button.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface-strong) 90%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 26%,transparent)}.theme-palette-swatches{display:flex;gap:6px}.theme-palette-swatch{width:18px;height:18px;flex:0 0 auto;border-radius:50%;border:1px solid rgba(0,0,0,.08)}.theme-palette-copy{display:grid;gap:2px}.theme-palette-copy strong{font-size:.88rem}.theme-palette-copy span{font-size:.72rem;line-height:1.35;color:var(--text-muted)}.month-picker-trigger{min-width:136px;justify-content:center;font-weight:700}.month-picker-overlay{align-items:center;padding:18px;overflow:hidden;background:#0f141657;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.month-picker-modal{width:min(390px,calc(100vw - 32px));display:grid;gap:10px;max-height:calc(100dvh - 36px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:14px;overflow:hidden;border-radius:22px;background:color-mix(in srgb,var(--surface-strong) 92%,transparent);box-shadow:0 22px 52px #0c121433;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.month-picker-summary{padding:4px 8px 0;color:var(--text-muted);font-size:.82rem;font-weight:800;text-align:center}.month-wheel-picker{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:8px;align-items:stretch;padding:0 4px}.month-wheel-picker:before,.month-wheel-picker:after{content:"";position:absolute;left:4px;right:4px;height:64px;pointer-events:none;z-index:3}.month-wheel-picker:before{top:20px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-strong) 96%,transparent) 0%,transparent 100%)}.month-wheel-picker:after{bottom:0;background:linear-gradient(0deg,color-mix(in srgb,var(--surface-strong) 96%,transparent) 0%,transparent 100%)}.month-wheel-selection{position:absolute;left:4px;right:4px;top:50%;height:48px;transform:translateY(calc(-50% + 9px));border-radius:14px;background:color-mix(in srgb,var(--surface-selected) 72%,transparent);border:1px solid color-mix(in srgb,var(--border-strong) 76%,transparent);pointer-events:none;z-index:1}.month-wheel-column{position:relative;display:grid;grid-template-rows:auto 1fr;gap:4px;min-width:0}.month-wheel-column:after{content:none}.month-wheel-label{font-size:.68rem;font-weight:800;color:var(--text-muted);text-align:center}.month-wheel-list{height:228px;overflow-y:auto;padding:90px 0;scroll-snap-type:y mandatory;scrollbar-width:none;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.month-wheel-list::-webkit-scrollbar{display:none}.month-wheel-item{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 8px;border:0;background:transparent;color:var(--text-muted);font-size:1.18rem;font-weight:700;opacity:.48;scroll-snap-align:center;transition:color .16s ease,font-size .16s ease,opacity .16s ease}.month-wheel-item.active{color:var(--text-primary);font-size:1.56rem;font-weight:900;opacity:1}.month-picker-actions{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:8px;align-items:stretch}.month-picker-actions .ghost-button,.month-picker-actions .primary-button{min-height:38px;padding:8px 10px;border-radius:12px;font-size:.78rem;box-shadow:none}.date-picker-overlay{align-items:center;justify-content:center;justify-items:center;padding:18px 18px calc(var(--app-bottom-nav-clearance) + 18px);overflow:hidden;background:#0f141647;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.compact-date-picker-modal{width:min(430px,calc(100vw - 28px));display:grid;gap:12px;max-height:calc(100dvh - var(--app-bottom-nav-clearance) - 38px - env(safe-area-inset-top,0px));padding:14px;overflow:hidden;border-radius:22px;background:color-mix(in srgb,var(--surface-strong) 94%,transparent);box-shadow:0 20px 48px #0c12142e;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.compact-picker-title{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:0 4px}.compact-picker-title strong{font-size:.95rem}.compact-picker-title span{color:var(--text-muted);font-size:.78rem;font-weight:800;white-space:nowrap}.week-picker-modal{width:min(520px,calc(100vw - 28px))}.week-picker-grid{display:grid;grid-template-columns:minmax(96px,.82fr) minmax(82px,.68fr) minmax(150px,1.28fr);gap:8px;min-height:0}.compact-picker-column{display:grid;grid-template-rows:auto minmax(0,1fr);gap:6px;min-width:0}.compact-picker-column>span{color:var(--text-muted);font-size:.68rem;font-weight:900;text-align:center}.compact-picker-options{display:grid;align-content:start;gap:5px;max-height:min(260px,calc(100dvh - var(--app-bottom-nav-clearance) - 170px));padding:3px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.compact-picker-option{min-height:36px;padding:7px 9px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text-muted);font:inherit;font-size:.82rem;font-weight:800;cursor:pointer}.compact-picker-option:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--accent-strong)}.compact-picker-option.active{border-color:color-mix(in srgb,var(--accent) 16%,transparent);background:var(--accent);color:#fff;box-shadow:0 7px 16px var(--accent-shadow)}.week-option{display:grid;gap:2px;justify-items:center;min-height:48px}.week-option strong{font-size:.84rem}.week-option small{font-size:.68rem;font-weight:800;opacity:.78}.compact-picker-actions{display:grid;grid-template-columns:1fr 1.1fr;gap:8px}.compact-picker-actions .ghost-button,.compact-picker-actions .primary-button{min-height:38px;padding:8px 12px;border-radius:12px;font-size:.78rem;box-shadow:none}.mini-calendar-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.mini-calendar-header strong{text-align:center;font-size:.98rem}.mini-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.mini-calendar-weekday{color:var(--text-muted);font-size:.66rem;font-weight:900;text-align:center}.mini-calendar-day{aspect-ratio:1;min-width:0;min-height:38px;padding:0;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text-primary);font:inherit;font-size:.82rem;font-weight:850;cursor:pointer}.mini-calendar-day:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.mini-calendar-day.is-outside{color:color-mix(in srgb,var(--text-muted) 58%,transparent)}.mini-calendar-day.is-saturday{color:var(--calendar-saturday)}.mini-calendar-day.is-holiday{color:var(--calendar-holiday)}.mini-calendar-day.is-today{border-color:color-mix(in srgb,var(--accent) 32%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.mini-calendar-day.is-selected{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 8px 18px var(--accent-shadow)}.month-event-chip-list{display:flex;gap:8px;flex-wrap:wrap}.month-event-chip{display:grid;gap:2px;padding:10px 14px;border-radius:16px;border:1px solid var(--border);background:var(--surface-soft);color:inherit;text-align:left}.month-event-chip.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.month-event-chip strong{font-size:.9rem}.month-event-chip span{font-size:.78rem;color:var(--text-muted)}.month-event-timeline-list{display:grid;gap:8px;min-width:0}.month-event-timeline-item{display:grid;grid-template-columns:50px 5px minmax(0,1fr);gap:14px;align-items:center;width:100%;min-width:0;min-height:62px;padding:7px 2px;border:0;border-radius:12px;background:transparent;color:inherit;text-align:left;cursor:pointer}.month-event-timeline-item:hover,.month-event-timeline-item.active{background:color-mix(in srgb,var(--accent) 7%,transparent)}.month-event-timeline-times{display:grid;gap:5px;justify-items:end;color:var(--text);font-size:.92rem;font-weight:850;line-height:1.05;white-space:nowrap}.month-event-timeline-times span:last-child{color:var(--text-muted);font-weight:760}.month-event-timeline-bar{width:5px;height:48px;border-radius:999px;background:var(--month-event-bar-color, var(--accent))}.month-event-timeline-copy{display:grid;gap:4px;min-width:0}.month-event-timeline-copy strong{color:var(--text);font-size:1.02rem;font-weight:900;line-height:1.18}.month-event-timeline-copy span{color:var(--text-muted);font-size:.74rem;font-weight:760;line-height:1.25}.month-event-checklist{display:grid;gap:10px}.month-event-checklist-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.month-event-checklist-item input[type=text],.month-event-checklist-item input:not([type=checkbox]){width:100%;min-width:0;padding:12px 14px;border:1px solid var(--input-border);border-radius:14px;background:var(--surface-strong);color:inherit}.month-event-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.month-event-modal .month-event-chip-list{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.month-event-modal .month-event-chip{min-width:max-content}@media screen and (max-width:640px){.floating-tracking-panel{width:min(300px,calc(100vw - 16px));padding:9px;border-radius:14px}.floating-tracking-panel .tracking-display{font-size:1.14rem}.daily-detail-modal-overlay{padding:8px}.modal-card.daily-detail-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:10px;border-radius:18px}.daily-detail-modal-header{gap:7px;padding-bottom:8px}.daily-detail-modal-heading h2{font-size:.92rem}.daily-detail-modal-heading p{font-size:.68rem}.daily-detail-modal .actual-editor-head,.actual-editor-section{gap:7px;padding:9px;border-radius:13px}.daily-detail-modal .actual-editor-head{grid-template-columns:1fr}.actual-editor-head-actions{justify-content:flex-start}.actual-time-grid{grid-template-columns:1fr}.modal-card.daily-detail-modal .field input,.modal-card.daily-detail-modal .field select,.modal-card.daily-detail-modal .field textarea{min-height:40px;padding:8px 9px;border-radius:10px;font-size:.8rem}.month-event-modal-overlay{padding:8px}.modal-card.month-event-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:10px;border-radius:18px}.month-event-editor-header{gap:7px;padding-bottom:8px}.month-event-date-heading{font-size:1.18rem;font-weight:700;text-align:center}.month-event-editor-header .ghost-button,.month-event-save-button{min-height:38px;padding:7px 10px;border-radius:11px;font-size:.76rem}.month-event-editor-body{gap:8px}.month-event-editor-card,.month-event-list-card,.month-event-checklist-card{gap:7px;padding:9px;border-radius:13px}.month-event-datetime-row{grid-template-columns:34px minmax(112px,1fr) minmax(78px,.54fr);gap:6px}.month-event-repeat-card{grid-template-columns:1fr}.modal-card.month-event-modal .field input,.modal-card.month-event-modal .field select,.modal-card.month-event-modal .field textarea,.modal-card.month-event-modal .month-event-date-button,.modal-card.month-event-modal .month-event-time-input,.modal-card.month-event-modal .month-event-checklist-item input[type=text],.modal-card.month-event-modal .month-event-checklist-item input:not([type=checkbox]){min-height:40px;padding:8px 9px;border-radius:10px;font-size:.8rem}.modal-card.month-event-modal .month-event-title-field input{min-height:42px;font-size:.92rem}.month-event-checklist-item{grid-template-columns:auto minmax(0,1fr) auto}}@media screen and (max-width:380px){.daily-detail-modal-heading p{display:none}.daily-detail-modal-header .ghost-button,.actual-editor-head-actions .primary-button,.actual-editor-head-actions .mini-button{padding:7px 8px;font-size:.72rem}.actual-time-grid,.actual-content-grid{grid-template-columns:1fr}.month-event-editor-header{gap:5px}.month-event-date-heading{font-size:1rem}.month-event-editor-header .ghost-button,.month-event-save-button{padding:7px 8px;font-size:.72rem}.month-event-checklist-item{grid-template-columns:auto minmax(0,1fr)}.month-event-checklist-item .mini-button{grid-column:2;justify-self:end}}@media screen and (max-width:380px){.floating-tracking-panel{width:min(280px,calc(100vw - 12px))}}.report-grid,.report-metrics-grid{display:grid;gap:14px}.report-range-toolbar{display:grid;gap:14px;margin-top:16px}.report-range-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.report-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:18px}.report-metrics-panel{display:grid;gap:8px;margin-top:10px}.report-metrics-primary,.report-metric-chips{display:grid;gap:8px}.report-metrics-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.report-metric-chips{grid-template-columns:repeat(4,minmax(0,1fr))}.report-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.report-daily-review-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:14px}@media screen and (max-width:900px){.report-daily-review-layout{grid-template-columns:minmax(0,1fr)}}.report-card{padding:20px}.report-pie-card{padding:14px}.report-metric-card{display:grid;gap:2px;min-height:0;padding:7px 9px;border-radius:12px;background:var(--surface-soft);border:1px solid var(--border)}.report-metric-card.primary{gap:3px;padding:9px 10px}.report-metric-chips .report-metric-card{grid-template-columns:auto minmax(0,1fr);gap:6px;align-items:baseline}.report-metric-label,.report-metric-help,.report-timeline-date{color:var(--text-muted)}.report-metric-value{font-size:.88rem;line-height:1.1}.report-metric-card.primary .report-metric-value{font-size:1.18rem;line-height:1.1}.report-metric-label{font-size:.66rem}.report-metric-chips .report-metric-label{font-size:.62rem}.report-metric-chips .report-metric-value{text-align:right}.report-bar-chart-shell{display:grid;grid-template-columns:68px minmax(0,1fr);gap:14px;margin-top:18px;align-items:stretch}.report-bar-chart-axis{height:320px;display:grid;grid-template-rows:repeat(6,minmax(0,1fr))}.report-bar-chart-axis-tick{display:flex;justify-content:flex-end;align-items:flex-start}.report-bar-chart-axis-label{transform:translateY(-50%);color:var(--text-muted);font-size:.78rem;white-space:nowrap}.report-bar-chart-scroll{overflow-x:auto;padding-bottom:6px}.report-bar-chart-grid{position:relative;min-width:max-content;height:320px;display:grid;grid-template-rows:repeat(6,minmax(0,1fr))}.report-bar-chart-grid-line{border-top:1px solid var(--border)}.report-bar-chart-bars{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;gap:18px;align-items:stretch;padding:0 8px 0 10px}.report-bar-item{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:8px;align-items:end;justify-items:center;padding:0;border:0;background:transparent;color:inherit;min-width:0;height:100%;align-self:stretch}.report-bar-value,.report-bar-label,.report-bar-sublabel{display:block;text-align:center}.report-bar-value,.report-bar-sublabel{color:var(--text-muted)}.report-bar-value{font-size:.8rem;font-weight:700}.report-bar-column-track{width:100%;height:100%;min-height:0;align-self:stretch;display:flex;align-items:end;justify-content:center;border-bottom:1px solid var(--border-strong)}.report-bar-column-fill{width:min(52px,74%);min-height:0;border-radius:12px 12px 0 0;background:linear-gradient(180deg,#739bcf,#567fb6);box-shadow:0 10px 18px #567fb62e}.report-bar-label{font-weight:700}.report-bar-sublabel{font-size:.76rem}.report-pie-layout{display:grid;grid-template-columns:minmax(128px,150px) minmax(0,1fr);gap:14px;align-items:center;margin-top:12px}.report-pie-chart-wrap{display:grid;gap:6px;justify-items:center}.report-pie-chart{position:relative;width:clamp(120px,15vw,150px);aspect-ratio:1;border-radius:50%;background-repeat:no-repeat;background-size:cover;box-shadow:inset 0 0 0 1px var(--border),0 10px 18px #1f2b2b14}.report-pie-slice-label{position:absolute;transform:translate(-50%,-50%);padding:1px 4px;border-radius:999px;background:color-mix(in srgb,var(--surface) 42%,transparent);color:var(--text);font-size:.72rem;font-weight:800;line-height:1.2;pointer-events:none}.report-pie-total{display:grid;gap:2px;justify-items:center;text-align:center}.report-pie-total strong{font-size:.88rem}.report-pie-total span{color:var(--text-muted);font-size:.7rem}.report-pie-legend{display:grid;gap:6px}.report-pie-legend-item{display:grid;grid-template-columns:10px minmax(0,1fr);gap:8px;align-items:center;min-width:0;padding:2px 0}.report-pie-legend-dot{width:10px;height:10px;border-radius:50%}.report-pie-legend-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0;align-items:baseline}.report-pie-legend-body strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem}.report-pie-legend-body span{color:var(--text-muted);font-size:.74rem;white-space:nowrap}.subject-breakdown-list,.report-timeline{display:grid;gap:12px}.report-timeline-scroll{max-height:420px;overflow-y:auto;padding-right:4px}.subject-breakdown-item,.report-timeline-item{display:grid;gap:8px;padding:12px 14px;border-radius:18px;background:var(--surface-soft);border:1px solid var(--border)}.subject-breakdown-track{height:8px;border-radius:999px;overflow:hidden;background:var(--progress-track-background)}.subject-breakdown-fill{height:100%;border-radius:999px}.report-timeline-item{grid-template-columns:112px minmax(0,1fr);align-items:center;text-align:left;color:inherit;min-height:74px}.report-timeline-body{display:grid;gap:2px;min-width:0}.report-timeline-body strong,.report-timeline-body span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-view .section-header{gap:10px}.report-scope-tabs{min-width:min(360px,100%);gap:6px}.report-scope-tabs .segment{min-height:34px;padding:6px 11px;font-size:.9rem}.report-view>.panel:first-child{padding:16px}.report-view>.panel:first-child .section-header h2{font-size:1.25rem}.report-view>.panel:first-child .section-header p{margin-top:3px;font-size:.82rem}.report-ranking-list,.report-comparison-list,.report-compact-list{display:grid;gap:10px;margin-top:14px}.report-ranking-item,.report-comparison-item,.report-compact-item{display:grid;gap:8px;padding:12px 14px;border-radius:16px;background:var(--surface-soft);border:1px solid var(--border)}.report-ranking-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.report-color-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.report-ranking-subject,.report-ranking-ratio,.report-compact-item span,.report-comparison-label span,.report-summary-line{color:var(--text-muted);font-size:.84rem}.report-comparison-item{display:grid;gap:8px;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:center}.report-comparison-item.interactive{cursor:pointer}.report-comparison-item.interactive:hover{color:var(--accent)}.report-comparison-legend{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:var(--text-muted);font-size:.82rem}.report-comparison-legend span{display:inline-flex;gap:6px;align-items:center}.report-comparison-legend i{width:10px;height:10px;border-radius:3px}.report-comparison-legend i.planned,.report-comparison-fill.planned{background:#9aa8b6}.report-comparison-legend i.actual,.report-comparison-fill.actual{background:#567fb6}.report-comparison-plot{--comparison-item-width: 70px;display:grid;grid-template-columns:46px minmax(0,1fr);gap:10px;margin-top:16px}.report-comparison-axis{display:flex;flex-direction:column;justify-content:space-between;height:210px;color:var(--text-muted);font-size:.72rem;text-align:right;padding-top:1px}.report-comparison-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:4px;scrollbar-width:thin}.report-comparison-chart{position:relative;display:grid;gap:14px;align-items:end;width:max-content;min-width:100%}.report-comparison-grid-lines{position:absolute;inset:0 0 auto;height:210px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.report-comparison-grid-lines span{display:block;width:100%;border-top:1px solid var(--border)}.report-comparison-grid-lines span:last-child{border-top-color:var(--border-strong)}.report-comparison-column{display:flex;align-items:end;justify-content:center;min-height:0}.report-comparison-column-track{position:relative;display:flex;align-items:end;justify-content:center;width:100%;height:210px;min-height:0}.report-comparison-bar-pair{display:grid;grid-template-columns:repeat(2,minmax(10px,18px));gap:8px;align-items:end;justify-content:center;height:100%;width:100%}.report-comparison-bar{position:relative;height:100%;min-width:0}.report-comparison-fill{position:absolute;inset-inline:0;bottom:0;width:100%;height:var(--bar-height);min-height:0;border-radius:8px 8px 0 0;z-index:1}.report-comparison-value{position:absolute;left:50%;bottom:min(calc(var(--bar-height) + 8px),calc(100% - 1.45em));transform:translate(-50%);width:max-content;max-width:68px;padding:1px 3px;border-radius:6px;background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--text);font-size:.66rem;font-weight:700;line-height:1.08;text-align:center;white-space:normal;pointer-events:none;z-index:3}.report-comparison-value span{display:block}.report-comparison-value.staggered{bottom:min(calc(var(--bar-height) + 22px),calc(100% - 1.45em))}.report-comparison-label{display:grid;gap:2px;min-width:0}.report-comparison-label strong,.report-comparison-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-summary-line{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px}@media screen and (max-width:720px){.report-metrics-panel{gap:8px;margin-top:12px}.report-metrics-primary{gap:8px}.report-metric-chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-metric-card{padding:8px 9px;border-radius:12px}.report-metric-card.primary{padding:10px}.report-metric-card.primary .report-metric-value{font-size:1.18rem}.report-pie-layout{grid-template-columns:minmax(112px,132px) minmax(0,1fr);gap:10px}.report-pie-chart{width:clamp(112px,34vw,132px)}.report-pie-card{padding:12px}.report-pie-legend{gap:5px}.report-pie-legend-body{gap:6px}.report-pie-legend-body strong{font-size:.78rem}.report-pie-legend-body span{font-size:.68rem}.report-comparison-plot{--comparison-item-width: 76px;grid-template-columns:40px minmax(0,1fr);gap:7px}.report-comparison-axis{height:184px;font-size:.66rem}.report-comparison-chart{gap:12px}.report-comparison-grid-lines,.report-comparison-column-track{height:184px}.report-comparison-bar-pair{grid-template-columns:repeat(2,minmax(9px,13px));gap:7px}.report-comparison-value{max-width:56px;padding:1px 2px;font-size:.54rem}.report-comparison-value.staggered{bottom:min(calc(var(--bar-height) + 17px),calc(100% - 1.45em))}.report-comparison-label strong,.report-comparison-label span{font-size:.68rem}}.admin-global-nav{display:flex;gap:8px;width:min(980px,100%);margin:0 auto 14px;padding:6px}.admin-global-nav .segment{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px 14px}.weekly-planning-trace-debug{width:min(1120px,100%)}.weekly-planning-trace-debug .button-row,.weekly-planning-trace-debug .field-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.weekly-planning-trace-stream,.weekly-planning-trace-entry-list{display:grid;gap:12px}.weekly-planning-trace-stream-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.weekly-planning-trace-stream-heading h2{margin:0}.weekly-planning-trace-stream-heading span{color:var(--text-muted);font-size:.86rem;font-weight:800}.trace-session-panel{display:grid;gap:14px;padding:0;overflow:hidden}.trace-session-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:18px 20px;color:inherit;text-align:left;border:0;border-radius:0;background:transparent;box-shadow:none}.trace-session-summary:hover{transform:none;background:color-mix(in srgb,var(--accent) 6%,transparent)}.trace-session-summary-main{display:grid;gap:4px;min-width:0}.trace-session-summary-main span,.trace-session-summary-main small,.trace-session-summary-main code{color:var(--text-muted)}.trace-session-summary-main code{overflow-wrap:anywhere}.trace-session-detail{display:grid;gap:14px;padding:0 20px 20px;border-top:1px solid var(--border)}.trace-session-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:16px}.trace-session-actions>span{color:var(--text-muted);font-size:.84rem;overflow-wrap:anywhere}.trace-entry{display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong)}.trace-entry header{display:flex;justify-content:space-between;gap:12px}.trace-entry p{margin:0;white-space:pre-wrap}.trace-entry pre{max-height:420px;margin:0;padding:12px;overflow:auto;border-radius:8px;background:color-mix(in srgb,var(--surface-soft) 82%,transparent);white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:900px){.admin-global-nav{width:100%}.admin-global-nav .segment{flex:1 1 0}.trace-session-summary,.trace-session-detail{padding-inline:14px}.trace-session-actions{align-items:stretch}.trace-session-actions .primary-button{width:100%}.trace-entry header{display:grid}}@media screen and (max-width:1100px){.day-layout,.day-review-layout,.auth-shell,.check-grid{grid-template-columns:1fr}.week-view-grid{grid-template-columns:repeat(7,minmax(150px,1fr));overflow-x:auto}}@media screen and (max-width:800px){.loading-screen,.auth-shell,.app-shell{padding:16px}.splash-screen__inner{gap:14px}.splash-screen__logo{width:min(780px,94vw)}.splash-screen__message{font-size:.86rem}.app-header,.toolbar,.section-header,.day-column-head,.plan-detail-head,.timeline-shell{flex-direction:column}.view-titlebar{align-items:flex-start}.auth-summary-grid,.auth-mode-tabs,.score-grid,.form-grid,.report-metrics-grid,.report-grid,.form-grid.compact,.report-range-form{grid-template-columns:1fr}.brand-lockup{width:100%}.brand-mark{width:62px;height:62px}.avatar-option-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.timeline-shell{display:block}.timeline-hours{display:none}.timeline-main,.timeline-canvas{min-width:100%}.timeline-canvas.split{min-width:720px}.month-cell{min-height:auto}.drawer{width:100vw}.modal-overlay{align-items:start;padding:10px}.modal-overlay.daily-detail-modal-overlay,.modal-overlay.month-event-modal-overlay,.modal-overlay.quick-entry-overlay,.modal-overlay.timetable-modal-overlay,.modal-overlay.timetable-ocr-overlay{align-items:start}.modal-card{width:min(100%,calc(100vw - 20px));max-height:86vh;padding:14px;border-radius:20px;margin-top:0}.plan-input-modal,.plan-editor-modal{width:calc(100vw - 20px);max-width:none}.modal-card .section-stack,.modal-card .auth-stage-card,.modal-card .assistant-settings-card,.modal-card .actual-form,.modal-card .suggestion-card{gap:12px}.modal-card .assistant-settings-card,.modal-card .auth-stage-card,.modal-card .detail-selection-card{padding:10px 12px;border-radius:16px}.modal-card .section-header,.modal-card .label-row,.modal-card .row-actions{gap:8px}.modal-card .collapsible-toggle{padding:10px 12px;border-radius:12px}.modal-card .collapsible-toggle-copy>span{font-size:.7rem}.modal-card .collapsible-toggle-copy>strong{font-size:.82rem}.modal-card .collapsible-toggle-summary{font-size:.68rem}.modal-card .field{gap:6px}.modal-card .field-pair{grid-template-columns:repeat(2,minmax(132px,1fr));column-gap:10px;row-gap:8px}.modal-card .datetime-stack{gap:8px}.modal-card .datetime-row{grid-template-columns:max-content minmax(146px,1.15fr) minmax(88px,.7fr);gap:10px}.modal-card .datetime-row__label,.modal-card .field span,.modal-card .detail-note,.modal-card .inline-note,.modal-card .inline-error{font-size:.78rem}.modal-card .field input,.modal-card .field select,.modal-card .field textarea,.modal-card .month-event-checklist-item input[type=text],.modal-card .month-event-checklist-item input:not([type=checkbox]){min-height:42px;padding:9px 12px;border-radius:12px;font-size:.82rem}.modal-card .ghost-button,.modal-card .primary-button,.modal-card .mini-button,.modal-card .segment,.modal-card .week-chip{min-height:42px;padding:8px 12px;font-size:.8rem}.month-event-modal{max-height:88vh}.month-event-modal .section-header p{display:none}.month-event-modal .assistant-settings-card{padding:10px 11px}.month-event-modal .form-grid{grid-template-columns:1fr;gap:8px}.month-event-modal .field{gap:4px}.month-event-modal .field input,.month-event-modal .field select,.month-event-modal .field textarea,.month-event-modal .month-event-checklist-item input[type=text],.month-event-modal .month-event-checklist-item input:not([type=checkbox]){padding:9px 10px;font-size:.8rem}.month-event-modal .field textarea{min-height:56px}.month-event-modal .datetime-row .field{gap:3px}.month-event-modal .label-row strong{font-size:.72rem}.month-event-modal .month-event-chip-list{gap:6px}.month-event-modal .month-event-chip{padding:6px 8px;border-radius:10px}.month-event-modal .month-event-chip strong{font-size:.72rem}.month-event-modal .month-event-chip span{font-size:.62rem}.month-event-modal .month-event-checklist{gap:6px;max-height:120px;overflow-y:auto}.month-event-modal .month-event-checklist-item{gap:6px}.modal-card .profile-hero{gap:12px}.modal-card .profile-name{font-size:1rem}.modal-card .avatar-option{min-height:42px;border-radius:12px;font-size:1rem}.modal-card .avatar-option-grid,.modal-card .theme-palette-grid{gap:8px}.modal-card .theme-palette-button{padding:10px;border-radius:12px}.modal-card .theme-palette-copy strong{font-size:.8rem}.modal-card .theme-palette-copy span{font-size:.66rem}.modal-card .month-wheel-picker:before,.modal-card .month-wheel-picker:after{height:48px}.month-wheel-picker{grid-template-columns:1fr}.month-picker-actions{flex-direction:column;align-items:stretch}.modal-card.month-picker-modal{width:min(390px,calc(100vw - 28px));padding:14px;border-radius:22px}.month-picker-modal .month-wheel-picker{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:8px}.modal-card.month-picker-modal .month-wheel-picker:before,.modal-card.month-picker-modal .month-wheel-picker:after{height:64px}.month-picker-modal .month-picker-actions{grid-template-columns:1fr 1fr 1.2fr;align-items:stretch}.modal-card.compact-date-picker-modal{width:min(430px,calc(100vw - 20px));max-height:calc(100dvh - var(--app-bottom-nav-clearance) - 24px - env(safe-area-inset-top,0px));padding:12px;border-radius:18px}.week-picker-modal .week-picker-grid{grid-template-columns:minmax(76px,.78fr) minmax(68px,.62fr) minmax(132px,1.25fr);gap:6px}.compact-picker-options{max-height:min(228px,calc(100dvh - var(--app-bottom-nav-clearance) - 156px))}.compact-picker-option{min-height:34px;padding:6px 8px;border-radius:10px;font-size:.76rem}.week-option{min-height:46px}.mini-calendar-day{min-height:34px;border-radius:10px;font-size:.78rem}.report-bar-chart-shell{grid-template-columns:52px minmax(0,1fr);gap:10px}.report-bar-chart-axis-label{font-size:.72rem}.report-bar-chart-bars{gap:12px}.report-bar-value{font-size:.74rem}.report-bar-sublabel{font-size:.7rem}.report-timeline-item{grid-template-columns:1fr}}.week-hidden-plan-count{display:none;margin:0;color:var(--text-muted);font-size:.72rem}.week-day-summary{margin-bottom:0;display:flex;gap:6px;flex-wrap:wrap;align-items:center}.week-day-summary-item,.week-subtitle-item{display:inline-flex;gap:4px;align-items:baseline;min-width:0}.week-day-summary-item strong{font-size:inherit}.week-comparison-subtitle{display:flex;gap:6px;flex-wrap:wrap;align-items:baseline}@media screen and (max-width:900px){.app-toast-layer{top:10px;width:min(480px,calc(100vw - 16px))}.app-toast-layer.bottom{top:auto;bottom:calc(var(--app-bottom-nav-clearance) + 16px)}.app-toast{padding:11px 13px;border-radius:14px;gap:10px;font-size:.72rem}.app-toast-close{width:24px;height:24px;font-size:.8rem}.app-toast-action{min-height:28px;padding:5px 9px;font-size:.72rem}.loading-screen,.auth-shell,.app-shell{padding:14px}.app-shell{padding-bottom:calc(14px + var(--app-bottom-nav-clearance));gap:14px}.panel,.hero-card{padding:14px;border-radius:20px}h2{font-size:1rem;margin-bottom:2px}.section-header p,.view-header-stack p,.report-card p{font-size:.76rem;line-height:1.45}.view-header-stack>div>p,.section-header>div>p{display:none}.app-header{flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;gap:8px}.header-actions{width:auto;margin-left:auto;justify-content:flex-end;align-items:center;gap:7px;flex-wrap:nowrap;flex:0 0 auto}.brand-lockup{flex:1 1 auto;min-width:0;gap:8px;justify-content:center}.brand-logo-image{height:69px;max-width:min(340px,100%)}.app-header .brand-logo-image{height:55px;max-width:min(272px,100%)}.brand-copy{min-width:0}.brand-mark{width:46px;height:46px}.brand-name{font-size:1.18rem}.brand-tagline{font-size:.6rem}.my-page-trigger{gap:0;padding:2px;min-width:auto;font-size:.72rem}.header-settings-button{width:38px;height:38px;min-width:38px;min-height:38px;border-radius:12px}.header-settings-button svg{width:21px;height:21px}.my-page-trigger-label{display:none}.user-avatar-small{width:40px;height:40px;font-size:1rem}.user-badge{min-width:0;max-width:100%;padding:6px 10px;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-profile-name.user-badge{width:auto;max-width:112px;justify-content:flex-start;padding:0;border:none;background:transparent;color:var(--text-muted);font-size:.76rem;font-weight:800;line-height:1.2}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:nowrap}.toolbar .segmented-control{flex:1 1 auto;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.app-view-switcher.toolbar{flex-direction:row;align-items:center;justify-content:flex-start;overflow-x:auto}.app-view-switcher .segmented-control{display:inline-flex;flex:0 0 auto;flex-wrap:nowrap;width:max-content;max-width:none;min-width:max-content;gap:3px}.toolbar .segment{justify-content:center;min-width:0;padding-inline:6px;padding-block:8px;font-size:.68rem;white-space:nowrap;word-break:keep-all}.app-view-switcher .segment{flex:0 0 auto;min-height:32px;min-width:max-content;padding-block:6px;padding-inline:10px;font-size:.74rem}.toolbar .row-actions{flex:0 0 auto;width:auto;gap:0}.toolbar .primary-button{width:auto;justify-content:center;min-width:0;padding:8px 12px;font-size:.7rem;white-space:nowrap}.view-titlebar,.view-title-actions,.section-header{align-items:flex-start}.view-titlebar,.month-view-titlebar{align-items:center;gap:8px;flex-wrap:nowrap}.view-title-actions,.month-view-title-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;gap:4px;flex:1 1 auto;min-width:0;margin-left:auto;align-items:center}.view-title-nav,.month-view-title-nav{display:inline-grid;grid-template-columns:repeat(3,auto);align-items:center;min-width:0;width:auto;margin-right:0;gap:4px;justify-self:center}.view-title-nav>:first-child,.month-view-title-nav>:first-child{justify-self:center}.view-title-nav>:nth-child(2),.month-view-title-nav>:nth-child(2){justify-self:center}.view-title-nav>:last-child,.month-view-title-nav>:last-child{justify-self:center}.view-title-nav .ghost-button,.view-title-nav .month-picker-trigger{min-width:0;padding:6px 9px;border-radius:14px;font-size:.72rem}.view-print-button{margin-left:0;padding:7px 10px;font-size:.72rem;opacity:.8}.day-timeline-header-main{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}.day-timeline-title-actions{display:flex;flex:0 0 auto;width:auto;min-width:0}.week-range-chip{max-width:100%;text-align:center;padding:5px 9px;font-size:.68rem}.month-week-chip-row{margin-top:12px;margin-bottom:6px;padding-top:0;flex-wrap:nowrap;overflow-x:auto;gap:8px}.month-week-chip-row .week-chip{flex:0 0 auto;min-width:auto;justify-content:center;min-height:36px;padding:8px 12px;font-size:.72rem;border-radius:10px}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:0;overflow:visible}.month-weekday{font-size:.7rem;letter-spacing:0}.month-cell{min-height:112px;padding:7px;gap:3px;border-radius:0}.month-cell-head{align-items:center;gap:4px;flex-wrap:nowrap}.month-date-number{font-size:.8rem;line-height:1.1}.month-holiday-label,.month-target,.month-event-more,.month-major-event-pill{font-size:.58rem;line-height:1.2}.month-holiday-label.is-long{font-size:.46rem!important}.month-holiday-label.is-very-long{font-size:.4rem!important}.month-holiday-label.is-medium{font-size:.54rem!important}.month-holiday-label.is-ultra-long{font-size:.34rem!important}.month-week-chip-full,.month-target-label-full,.month-target-value-full,.month-major-event-full,.week-subtitle-label-full{display:none}.month-week-chip-short,.month-major-event-short,.week-subtitle-label-short{display:inline}.month-target{display:inline-flex;gap:2px;align-items:baseline;white-space:nowrap;font-size:.54rem;line-height:1.1}.month-target-label-full,.month-target-value-full{display:inline}.month-target-label-short,.month-target-value-short{display:none}.month-major-event-pill{min-height:15px;padding:1px 5px;border-radius:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.month-study-summary{gap:1px;font-size:.5rem;line-height:1.05}.month-major-event-list{gap:1px}.week-view-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible}.week-day-column{padding:8px;gap:6px;border-radius:16px}.week-day-column-head{gap:6px}.week-day-link{display:block;font-size:.8rem;line-height:1.2;text-align:left}.week-day-summary{font-size:.68rem;line-height:1.25;gap:4px}.week-plan-stack{gap:6px}.week-comparison-card{padding:8px;gap:6px}.week-comparison-card:nth-child(n+3){display:none}.week-hidden-plan-count{display:block}.week-comparison-head strong,.week-comparison-card .comparison-subtitle,.week-comparison-card .comparison-metrics{font-size:.68rem;line-height:1.25}.week-comparison-head{gap:4px}.week-comparison-subtitle,.week-comparison-head{gap:4px}.week-comparison-head .type-badge{display:none}.week-comparison-subtitle{gap:4px}.week-comparison-card .comparison-track{height:8px}.week-timeline-shell{--week-timeline-head-height: 62px;--week-timeline-hour-height: 28px;--week-timeline-min-block-height: 24px;grid-template-columns:38px minmax(0,1fr);gap:8px}.week-timeline-days{grid-template-columns:repeat(7,minmax(118px,1fr));min-width:880px;gap:6px}.week-timeline-day-head{padding:8px}.week-timeline-hour-label{font-size:.58rem}.week-timeline-block{padding:4px 6px;border-radius:9px}.week-timeline-block--compact{padding-inline:5px}.week-timeline-block--narrow{padding-inline:4px}.week-timeline-entry-line{gap:3px;font-size:.6rem}.week-timeline-time{font-size:.52rem}.week-timeline-subject{max-width:6ch;font-size:.48rem}.week-timeline-block--narrow .week-timeline-entry-line{gap:2px}.notebook-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.summary-chip{min-width:0;padding:7px 9px}.summary-chip span{font-size:.62rem}.summary-chip strong{font-size:.8rem}.timeline-shell{--timeline-head-height: 32px;--timeline-row-gap: 6px;--timeline-hour-height: 26px;--timeline-min-block-height: 18px;--timeline-hour-label-offset: -6px;--timeline-title-size: .58rem;--timeline-meta-size: .48rem;--timeline-chip-size: .36rem;display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:start}.timeline-hours{display:grid;padding-top:calc(var(--timeline-head-height) + var(--timeline-row-gap))}.timeline-hour-label{font-size:.56rem}.timeline-main,.timeline-canvas,.timeline-canvas.split{min-width:0!important}.timeline-main{gap:6px}.timeline-column-label{min-height:var(--timeline-head-height);padding:4px 6px;font-size:.66rem;border-radius:10px}.timeline-legend{gap:6px}.timeline-legend-item{font-size:.66rem}.timeline-plan-block,.timeline-actual-block{padding:2px 5px}.timeline-chip{padding:1px 4px}.timeline-entry-title{font-size:var(--timeline-title-size)}.timeline-entry-line{gap:3px;line-height:1}.timeline-entry-time,.timeline-entry-subject{font-size:var(--timeline-meta-size)}.day-review-layout{grid-template-columns:1fr;gap:12px}.notebook-topline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.notebook-chip{min-width:0}.score-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.score-card{padding:12px}.score-help{display:none}.report-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-metrics-primary,.report-metric-chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.report-grid{grid-template-columns:1fr;gap:12px}.report-card{padding:14px}.report-view>.panel:first-child{padding:12px}.report-scope-tabs{gap:5px}.report-scope-tabs .segment{min-height:30px;padding:5px 9px;font-size:.82rem}.report-metric-card{padding:6px 8px}.report-metric-card.primary{padding:8px 9px}.report-metric-label,.report-metric-help{font-size:.7rem}.report-metric-value{font-size:.82rem}.report-metric-card.primary .report-metric-value{font-size:1.04rem}.report-range-toolbar{gap:10px}.report-range-toolbar .row-actions{justify-content:space-between;gap:8px;flex-wrap:wrap}.report-range-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-range-form .ghost-button{grid-column:1 / -1}.report-bar-chart-shell{grid-template-columns:46px minmax(0,1fr);gap:8px}.report-bar-chart-axis-label{font-size:.66rem}.report-bar-chart-bars{gap:10px}.report-bar-item{gap:6px}.report-bar-value{font-size:.72rem}.report-bar-label,.report-bar-sublabel{font-size:.68rem}.report-timeline-scroll{max-height:360px}}@media screen and (max-width:640px){:root{--app-bottom-nav-height: 112px}.app-toast-layer{top:8px;width:calc(100vw - 14px)}.app-toast-layer.bottom{top:auto;bottom:calc(var(--app-bottom-nav-clearance) + 14px)}.app-toast{padding:9px 11px;border-radius:12px;gap:8px;font-size:.66rem}.app-toast-close{width:22px;height:22px;font-size:.74rem}.app-toast-action{min-height:26px;padding:4px 8px;font-size:.66rem}.loading-screen,.auth-shell,.app-shell{padding:12px}.app-shell{padding-bottom:calc(12px + var(--app-bottom-nav-clearance))}.app-view-switcher.panel{padding:10px 12px calc(24px + env(safe-area-inset-bottom,0px))}.splash-screen{padding:16px}.splash-screen__inner{gap:12px}.splash-screen__logo{width:min(700px,96vw)}.splash-screen__message{font-size:.78rem}.panel,.hero-card{padding:12px;border-radius:16px}h2{font-size:.9rem}.view-titlebar h2{font-size:.78rem;letter-spacing:0}.section-header p,.view-header-stack p,.report-card p{font-size:.68rem;line-height:1.4}.view-header-stack>div>p,.section-header>div>p{display:none}.header-actions{flex-wrap:nowrap;gap:5px}.brand-lockup{gap:6px;justify-content:center;width:100%}.brand-logo-image{height:57px;max-width:min(260px,100%)}.app-header .brand-logo-image{height:46px;max-width:min(208px,100%)}.brand-mark{width:38px;height:38px}.brand-name{font-size:.98rem}.brand-tagline{font-size:.52rem}.my-page-trigger{width:auto;max-width:none;justify-content:center;padding:2px;font-size:.68rem;gap:0}.header-settings-button{width:36px;height:36px;min-width:36px;min-height:36px;border-radius:11px}.user-avatar-small{width:36px;height:36px;font-size:.9rem}.user-badge{width:100%;max-width:none;justify-content:center;padding:5px 8px;font-size:.74rem}.header-actions .user-badge{width:auto;max-width:78px;justify-content:flex-start;padding:0;font-size:.66rem;font-weight:800}.view-titlebar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:8px}.modal-overlay{padding:8px}.modal-card{width:calc(100vw - 16px);max-height:86vh;padding:10px;border-radius:16px}.plan-input-modal,.plan-editor-modal{width:calc(100vw - 16px)}.modal-card .section-stack,.modal-card .auth-stage-card,.modal-card .assistant-settings-card,.modal-card .actual-form,.modal-card .suggestion-card{gap:10px}.modal-card .assistant-settings-card,.modal-card .auth-stage-card,.modal-card .detail-selection-card,.modal-card .mailbox-preview{padding:9px 10px;border-radius:14px}.modal-card .section-header,.modal-card .label-row,.modal-card .row-actions,.modal-card .avatar-upload-row{gap:6px}.modal-card .field-pair{grid-template-columns:repeat(2,minmax(128px,1fr));column-gap:10px;row-gap:8px}.modal-card .datetime-stack{gap:8px}.modal-card .datetime-row{grid-template-columns:max-content minmax(138px,1.12fr) minmax(86px,.68fr);gap:10px}.modal-card .datetime-row__label{font-size:.74rem}.modal-card .collapsible-toggle{padding:8px 10px;border-radius:10px}.modal-card .collapsible-toggle-copy>span{font-size:.72rem}.modal-card .collapsible-toggle-copy>strong{font-size:.8rem}.modal-card .collapsible-toggle-summary{font-size:.72rem}.modal-card .field span,.modal-card .detail-note,.modal-card .inline-note,.modal-card .inline-error{font-size:.74rem}.modal-card .field input,.modal-card .field select,.modal-card .field textarea,.modal-card .month-event-checklist-item input[type=text],.modal-card .month-event-checklist-item input:not([type=checkbox]){min-height:40px;padding:8px 10px;border-radius:10px;font-size:.8rem}.modal-card .ghost-button,.modal-card .primary-button,.modal-card .mini-button,.modal-card .segment,.modal-card .week-chip{min-height:40px;padding:7px 11px;font-size:.78rem}.modal-card .profile-hero{gap:10px}.modal-card .profile-name{font-size:.86rem}.modal-card .avatar-option-grid{gap:6px}.modal-card .avatar-option{min-height:36px;border-radius:10px;font-size:.84rem}.modal-card .theme-palette-grid{grid-template-columns:1fr;gap:6px}.modal-card .theme-palette-button{gap:6px;padding:8px;border-radius:10px}.modal-card .theme-palette-swatch{width:14px;height:14px}.modal-card .theme-palette-copy strong{font-size:.72rem}.modal-card .theme-palette-copy span{font-size:.58rem}.modal-card .month-event-chip{padding:7px 9px;border-radius:12px}.month-event-modal{max-height:86vh}.month-event-modal .section-stack{gap:10px}.month-event-modal .section-header p{display:none}.month-event-modal .section-header h2{font-size:.9rem}.month-event-modal .assistant-settings-card{padding:9px 10px}.month-event-modal .form-grid{grid-template-columns:1fr;gap:8px}.month-event-modal .field span,.month-event-modal .detail-note,.month-event-modal .inline-note,.month-event-modal .inline-error{font-size:.72rem}.month-event-modal .field input,.month-event-modal .field select,.month-event-modal .field textarea,.month-event-modal .month-event-checklist-item input[type=text],.month-event-modal .month-event-checklist-item input:not([type=checkbox]){min-height:40px;padding:8px 10px;border-radius:9px;font-size:.78rem}.month-event-modal .field textarea{min-height:48px}.month-event-modal .datetime-row .field{gap:3px}.month-event-modal .ghost-button,.month-event-modal .primary-button,.month-event-modal .mini-button{min-height:40px;padding:7px 10px;font-size:.78rem}.month-event-modal .month-event-chip-list{gap:4px}.month-event-modal .month-event-chip{padding:5px 7px;border-radius:10px}.month-event-modal .month-event-chip strong{font-size:.72rem}.month-event-modal .month-event-chip span{font-size:.64rem}.month-event-modal .month-event-checklist{gap:4px;max-height:96px}.month-event-modal .month-event-checklist-item{gap:4px}.modal-card .month-wheel-picker:before,.modal-card .month-wheel-picker:after{height:42px}.modal-card.month-picker-modal{width:min(370px,calc(100vw - 20px));padding:12px}.month-picker-modal .month-wheel-list{height:214px;padding-block:84px}.month-picker-modal .month-wheel-item{min-height:46px;font-size:1.08rem}.month-picker-modal .month-wheel-item.active{font-size:1.42rem}.modal-card.month-picker-modal .month-wheel-picker:before,.modal-card.month-picker-modal .month-wheel-picker:after{height:56px}.modal-card.compact-date-picker-modal{width:calc(100vw - 16px);max-height:calc(100dvh - var(--app-bottom-nav-clearance) - 16px - env(safe-area-inset-top,0px));padding:10px;border-radius:16px}.week-picker-modal .week-picker-grid{grid-template-columns:minmax(72px,.76fr) minmax(58px,.56fr) minmax(124px,1.25fr);gap:5px}.compact-picker-title strong{font-size:.86rem}.compact-picker-title span{font-size:.68rem}.compact-picker-options{max-height:min(210px,calc(100dvh - var(--app-bottom-nav-clearance) - 146px));gap:4px}.compact-picker-option{min-height:32px;padding:6px 7px;font-size:.7rem}.week-option{min-height:43px}.week-option small{font-size:.58rem}.mini-calendar-grid{gap:3px}.mini-calendar-day{min-height:32px;border-radius:9px;font-size:.72rem}.view-titlebar,.month-view-titlebar{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.view-title-actions,.month-view-title-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px;flex:1 1 auto;min-width:0;width:100%;margin-left:auto;align-items:center}.view-titlebar h2,.month-view-titlebar h2{flex:0 0 auto}.view-title-nav,.month-view-title-nav{display:inline-grid;grid-template-columns:repeat(3,auto);align-items:center;width:auto;margin-top:0;gap:3px;flex:1 1 auto;min-width:0;justify-self:center}.view-title-nav>:first-child,.month-view-title-nav>:first-child{justify-self:center}.view-title-nav>:nth-child(2),.month-view-title-nav>:nth-child(2){justify-self:center}.view-title-nav>:last-child,.month-view-title-nav>:last-child{justify-self:center}.view-title-nav .ghost-button,.view-title-nav .month-picker-trigger,.month-view-title-nav .ghost-button,.month-view-title-nav .month-picker-trigger{min-width:0;padding:4px 6px;border-radius:11px;font-size:.58rem}.view-print-button,.month-view-print-button{width:auto;align-self:center;margin-left:0;padding:4px 6px;font-size:.54rem;line-height:1;border-radius:10px;flex:0 0 auto}.day-timeline-header-main{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px}.day-timeline-title-actions{display:flex;flex:0 0 auto;width:auto;min-width:0}.day-timeline-title-actions .view-title-nav{gap:3px}.day-timeline-title-actions .view-title-nav .ghost-button,.day-timeline-print-button{padding:4px 6px;font-size:.58rem}.day-timeline-title-actions .week-range-chip,.week-range-chip{padding:4px 8px;font-size:.62rem}.toolbar .segment{padding-block:5px;padding-inline:5px;font-size:.56rem}.app-view-switcher .segment{min-height:54px;min-width:64px;padding-block:12px;padding-inline:22px;color:var(--text-primary);font-size:.92rem;font-weight:900}.app-view-switcher .segment.active{box-shadow:0 9px 22px var(--accent-shadow)}.toolbar .primary-button{padding:6px 8px;font-size:.56rem}.toolbar{gap:6px;padding:10px}.toolbar .segmented-control{gap:4px}.app-view-switcher .segmented-control{display:inline-flex;flex-wrap:nowrap;width:max-content;max-width:none;min-width:max-content;gap:7px;padding:5px;border-radius:16px}.month-grid{gap:0}.month-week-chip-row .week-chip{min-height:34px;padding:7px 10px;font-size:.66rem}.month-weekday{font-size:.56rem}.month-cell{min-height:98px;padding:6px;gap:3px;border-radius:0}.month-date-number{font-size:.72rem}.month-holiday-label,.month-target,.month-event-more,.month-major-event-pill{font-size:.52rem}.month-holiday-label.is-medium{font-size:.48rem!important}.month-holiday-label.is-long{font-size:.4rem!important}.month-holiday-label.is-very-long{font-size:.34rem!important}.month-holiday-label.is-ultra-long{font-size:.3rem!important}.month-target{gap:1px;font-size:.46rem;line-height:1.05}.month-target-label-full,.month-target-value-full{display:inline}.month-target-label-short,.month-target-value-short{display:none}.week-view-grid{gap:6px}.week-day-column{padding:6px;gap:4px}.week-day-link{font-size:.66rem}.week-day-summary,.week-comparison-head strong,.week-comparison-card .comparison-subtitle,.week-comparison-card .comparison-metrics,.week-hidden-plan-count{font-size:.62rem}.week-day-summary,.week-comparison-subtitle{gap:3px}.week-timeline-toolbar{align-items:stretch;margin-top:6px}.month-study-summary{gap:1px;font-size:.44rem;line-height:1.05}.week-timeline-mode-control{width:fit-content;max-width:100%;gap:5px}.week-timeline-mode-control .segment{min-height:32px;padding:6px 10px;font-size:.72rem}.week-timeline-shell{--week-timeline-head-height: 56px;--week-timeline-hour-height: 24px;--week-timeline-min-block-height: 24px;grid-template-columns:34px minmax(0,1fr);gap:6px}.week-timeline-days{grid-template-columns:repeat(7,minmax(104px,1fr));min-width:770px;gap:5px}.week-timeline-day-head{padding:6px;border-radius:14px 14px 0 0}.week-timeline-canvas{border-radius:0 0 14px 14px}.week-timeline-hour-label,.week-timeline-empty{font-size:.52rem}.week-timeline-block{padding:4px 5px;border-radius:8px}.week-timeline-block--compact{padding-inline:4px}.week-timeline-block--narrow{padding-inline:3px}.week-timeline-entry-line{gap:3px;font-size:.56rem}.week-timeline-time{font-size:.48rem}.week-timeline-subject{max-width:5ch;font-size:.44rem}.week-timeline-block--compact .week-timeline-entry-line,.week-timeline-block--narrow .week-timeline-entry-line{gap:2px}.notebook-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-chip{padding:5px 6px;border-radius:12px}.summary-chip span{font-size:.52rem}.summary-chip strong{font-size:.68rem}.timeline-shell{--timeline-head-height: 28px;--timeline-row-gap: 5px;--timeline-hour-height: 24px;--timeline-min-block-height: 18px;--timeline-title-size: .54rem;--timeline-meta-size: .46rem;--timeline-chip-size: .32rem;grid-template-columns:30px minmax(0,1fr);gap:6px}.timeline-column-label{font-size:.6rem;padding:3px 5px}.timeline-hour-label{font-size:.52rem}.timeline-legend-item{font-size:.6rem}.timeline-entry-title{font-size:var(--timeline-title-size)}.timeline-entry-line{gap:3px;line-height:1}.timeline-entry-time,.timeline-entry-subject{font-size:var(--timeline-meta-size)}.timeline-chip{font-size:var(--timeline-chip-size)}.notebook-topline,.score-grid,.report-range-form{grid-template-columns:1fr}.report-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-metrics-panel,.report-metrics-primary,.report-metric-chips{gap:6px}.report-metric-card{padding:6px 7px;border-radius:12px;gap:2px}.report-metric-card.primary{padding:7px 8px}.report-bar-chart-shell{grid-template-columns:40px minmax(0,1fr)}.report-metric-label,.report-metric-help{font-size:.56rem}.report-metric-value{font-size:.78rem}.report-metric-card.primary .report-metric-value{font-size:.96rem}.report-timeline-scroll{max-height:300px}}@media screen and (max-width:380px){:root{--mobile-ad-reserve: 76px;--app-bottom-nav-height: 106px}.loading-screen,.auth-shell,.app-shell{padding:10px;padding-bottom:calc(10px + var(--mobile-ad-reserve) + var(--app-bottom-nav-clearance))}.splash-screen{padding:12px;padding-bottom:calc(12px + var(--mobile-ad-reserve) + env(safe-area-inset-bottom,0px))}.splash-screen__logo{width:min(620px,97vw)}.splash-screen__message{font-size:.72rem}.app-shell{gap:10px}.brand-logo-image{height:50px;max-width:min(220px,100%)}.app-header .brand-logo-image{height:40px;max-width:min(176px,100%)}.panel,.hero-card,.toolbar{padding:10px;border-radius:14px}.app-view-switcher.panel{padding:9px 10px calc(22px + env(safe-area-inset-bottom,0px));border-radius:0}.app-view-switcher .segment{min-height:50px;min-width:58px;padding:11px 18px;border-radius:11px;font-size:.86rem}.notebook-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.summary-chip{padding:4px 5px}.summary-chip span{font-size:.48rem}.summary-chip strong{font-size:.62rem}.report-metrics-grid{gap:6px}.report-metrics-panel,.report-metrics-primary,.report-metric-chips{gap:5px}.report-metric-card{padding:5px 6px;border-radius:10px}.report-metric-card.primary{padding:6px 7px}.report-metric-label,.report-metric-help{font-size:.5rem}.report-metric-value{font-size:.72rem}.report-metric-card.primary .report-metric-value{font-size:.88rem}.month-week-chip-row{gap:5px;margin-bottom:5px}.month-week-chip-row .week-chip{min-height:32px;padding:6px 8px;font-size:.6rem;border-radius:8px}.month-grid{gap:0}.month-weekday{padding:0 2px;font-size:.48rem}.month-cell{min-height:84px;padding:4px;gap:2px;border-radius:0}.month-cell-head{gap:2px;flex-wrap:nowrap;align-items:center}.month-date-number{font-size:.64rem;line-height:1}.month-holiday-label,.month-target,.month-event-more,.month-major-event-pill{font-size:.46rem;line-height:1.05}.month-holiday-label.is-medium{font-size:.42rem!important}.month-holiday-label.is-long{font-size:.36rem!important}.month-holiday-label.is-very-long{font-size:.31rem!important}.month-holiday-label.is-ultra-long{font-size:.28rem!important}.month-target{gap:0;font-size:.4rem;line-height:1}.month-study-summary{gap:1px;font-size:.4rem;line-height:1}.month-target-label-full,.month-target-value-full{display:inline}.month-target-label-short,.month-target-value-short{display:none}.month-major-event-pill{padding:1px 4px;border-radius:6px}.scope-option-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:14px 16px;border:1px solid var(--line-color);border-radius:16px;background:var(--surface-color);color:inherit;text-align:left}.scope-option-card:hover{border-color:var(--accent-color)}.scope-option-card span{color:var(--muted-text-color);font-size:.92rem;line-height:1.4}}@media screen and (max-width:340px){.modal-card .field-pair,.modal-card .datetime-row{grid-template-columns:1fr;gap:8px}.modal-card .datetime-row__label{align-self:end}}.app-shell.home-app-shell:has(.home-dashboard-default){box-sizing:border-box;height:100dvh;min-height:100dvh;overflow:hidden;padding-top:clamp(6px,1.05dvh,10px)}.home-main:has(.home-dashboard-default){min-height:0;height:100%}.home-dashboard-default{--home-fit-gap-base: clamp(5px, .85dvh, 8px);--home-fit-hero-height-base: clamp(145px, calc(23dvh - 18px) , 226px);--home-fit-row-height-base: clamp(40px, 5.7dvh, 50px);--home-fit-gap: min(18px, calc(var(--home-fit-gap-base) + var(--home-relax-gap, 0px)));--home-fit-hero-height: calc(var(--home-fit-hero-height-base) + var(--home-relax-hero, 0px));--home-fit-row-height: min(50px, calc(var(--home-fit-row-height-base) + var(--home-relax-row, 0px)));position:relative;height:100%;min-height:0;align-content:start;gap:var(--home-fit-gap);overflow:hidden}.home-dashboard-default .home-core-sections{min-height:0;gap:var(--home-fit-gap)}.home-dashboard-default .home-material-measurements{position:absolute;top:0;right:0;left:0;visibility:hidden;pointer-events:none}.home-dashboard-default .home-material-measurement{width:100%}.home-dashboard-default .home-topbar{min-height:min(62px,calc(clamp(50px,7dvh,62px) + var(--home-relax-topbar, 0px)))}.home-dashboard-default .home-streak-card{min-height:clamp(46px,6.3dvh,54px)}.home-dashboard-default .home-date-display{min-height:clamp(48px,6.8dvh,60px)}.home-dashboard-default .home-date-paper{height:clamp(44px,6dvh,52px)}.home-dashboard-default .home-next-card{height:var(--home-fit-hero-height);min-height:0;padding-top:clamp(9px,1.45dvh,15px);padding-bottom:clamp(46px,6.5dvh,62px)}.home-dashboard-default .home-study-scene{height:calc(100% - clamp(40px,6dvh,49px))}.home-dashboard-default .home-start-button{bottom:clamp(7px,1.1dvh,10px);min-height:clamp(37px,5.3dvh,46px)}.home-dashboard-default .home-next-copy h1{margin-bottom:clamp(4px,.75dvh,8px);font-size:clamp(1.02rem,2.15dvh,1.32rem)}.home-dashboard-default .home-eyebrow{margin-bottom:clamp(3px,.6dvh,6px)}.home-dashboard-default .home-empty-copy{font-size:clamp(.64rem,1.25dvh,.75rem);line-height:1.36}.home-dashboard-default .home-panel{padding:clamp(7px,1dvh,10px) clamp(9px,1.2dvh,12px) clamp(6px,.9dvh,8px)}.home-dashboard-default .home-today-panel{min-height:0;padding-top:calc(clamp(7px,1dvh,10px) + var(--home-relax-today-side, 0px));padding-bottom:calc(clamp(6px,.9dvh,8px) + var(--home-relax-today-side, 0px))}.home-dashboard-default .home-section-heading{margin-bottom:clamp(3px,.55dvh,6px)}.home-dashboard-default .home-schedule-list{min-height:0;max-height:var(--home-dynamic-schedule-max, none);overflow-y:auto}.home-dashboard-default .home-schedule-row,.home-dashboard-default .home-schedule-empty{min-height:var(--home-fit-row-height);padding-top:calc(clamp(4px,.65dvh,7px) + var(--home-relax-schedule-side, 0px));padding-bottom:calc(clamp(4px,.65dvh,7px) + var(--home-relax-schedule-side, 0px))}.home-dashboard-default .home-schedule-add-row{min-height:clamp(32px,4.5dvh,40px);padding-top:calc(clamp(3px,.45dvh,5px) + var(--home-relax-schedule-side, 0px));padding-bottom:calc(clamp(3px,.45dvh,5px) + var(--home-relax-schedule-side, 0px))}.home-dashboard-default .home-alert-grid{gap:var(--home-fit-gap)}.home-dashboard-default .home-alert-card{padding:clamp(7px,1dvh,10px);padding-block:calc(clamp(7px,1dvh,10px) + var(--home-relax-alert-side, 0px))}.home-dashboard-default .home-alert-heading{margin-bottom:clamp(4px,.65dvh,7px)}.home-dashboard-default .home-progress-panel{min-height:104px}@media(max-height:900px){.home-dashboard-default .home-streak-card{gap:5px;padding:4px 7px}.home-dashboard-default .home-streak-flame{width:23px;height:23px}.home-dashboard-default .home-streak-card strong{font-size:1rem}.home-dashboard-default .home-streak-card span,.home-dashboard-default .home-streak-card small{font-size:.53rem}.home-dashboard-default .home-date-display{padding-top:5px}.home-dashboard-default .home-date-segment:before,.home-dashboard-default .home-date-segment-year:after{top:-5px;height:13px}.home-dashboard-default .home-date-value{font-size:clamp(.86rem,2dvh,.96rem)}.home-dashboard-default .home-date-unit{font-size:clamp(.57rem,1.35dvh,.63rem)}.home-dashboard-default .home-icon-button,.home-dashboard-default .home-avatar-button{width:33px;height:33px;min-width:33px}.home-dashboard-default .home-avatar-button .user-avatar,.home-dashboard-default .home-avatar-button img{width:31px;height:31px}.home-dashboard-default .home-next-copy{min-width:0;width:58%}.home-dashboard-default .home-next-meta{gap:3px;font-size:.66rem}.home-dashboard-default .home-start-button{left:14px;right:14px;gap:7px;font-size:.84rem}.home-dashboard-default .home-start-icon{width:22px;height:22px}.home-dashboard-default .home-section-heading h2{font-size:.75rem}.home-dashboard-default .home-section-heading button{font-size:.59rem}.home-dashboard-default .home-schedule-row,.home-dashboard-default .home-schedule-empty{padding-top:calc(3px + var(--home-relax-schedule-side, 0px));padding-bottom:calc(3px + var(--home-relax-schedule-side, 0px))}.home-dashboard-default .home-schedule-content{gap:0}.home-dashboard-default .home-schedule-content time{font-size:.6rem;line-height:1.05}.home-dashboard-default .home-schedule-content strong{font-size:.72rem;line-height:1.1}.home-dashboard-default .home-schedule-content small{font-size:.56rem;line-height:1.05}.home-dashboard-default .home-schedule-add-row strong{font-size:.72rem;line-height:1.1}.home-dashboard-default .home-schedule-empty{line-height:1.1}.home-dashboard-default .home-alert-card{padding:7px 8px;padding-block:calc(7px + var(--home-relax-alert-side, 0px))}.home-dashboard-default .home-alert-heading{gap:4px;margin-bottom:4px;font-size:.59rem}.home-dashboard-default .home-alert-heading>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-dashboard-default .home-alert-heading b{padding:2px 5px}.home-dashboard-default .home-alert-body{grid-template-columns:20px minmax(0,1fr) 12px;gap:4px}.home-dashboard-default .home-alert-body>svg:first-child{width:20px;height:20px}.home-dashboard-default .home-alert-body>svg:last-child{width:13px;height:13px}.home-dashboard-default .home-alert-body small{font-size:.53rem}.home-dashboard-default .home-alert-body strong{font-size:.61rem}}@media(max-height:800px){.home-dashboard-default .home-eyebrow{margin-bottom:2px;font-size:.62rem;line-height:1}.home-dashboard-default .home-next-copy h1{margin-bottom:3px;font-size:.96rem;line-height:1.08}.home-dashboard-default .home-next-meta{gap:1px;font-size:.58rem;line-height:1.05}.home-dashboard-default .home-next-meta span{min-height:14px;gap:4px}.home-dashboard-default .home-next-meta svg{width:14px;height:14px}}@media(max-height:760px){.home-dashboard-default{--home-fit-gap-base: 5px}.home-dashboard-default .home-study-scene{transform:scale(.86);transform-origin:top right}}@media(max-height:640px){.home-dashboard-default{--home-fit-hero-height-base: 145px;--home-fit-row-height-base: 40px}.home-dashboard-default .home-study-scene{transform:scale(.8)}.home-dashboard-default .home-empty-copy{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}}.home-date-display{position:relative;min-width:0;min-height:60px;display:block;padding-top:5px;color:#fffaf0;text-decoration:none}.home-date-paper{position:relative;height:52px;display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));overflow:visible;border:1px solid rgba(104,59,27,.28);border-radius:11px;background:linear-gradient(180deg,#ffffff24,#592d1317),repeating-linear-gradient(7deg,#cf945d 0,#cf945d 7px,#c88852 7px,#c88852 13px,#c2834e 13px,#c2834e 20px,#d79c67 20px,#d79c67 27px);box-shadow:0 5px 12px #66412229,inset 0 1px #ffffff47,inset 0 -1px #522c141f}.home-date-paper:after{content:"";position:absolute;inset:4px 7px auto;height:1px;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(255,247,230,.34),transparent);pointer-events:none}.home-date-segment{position:relative;min-width:0;display:flex;align-items:center;justify-content:center;padding:0 3px;border-right:1px solid rgba(255,244,226,.18);background:transparent;white-space:nowrap}.home-date-segment:first-child{border-radius:11px 0 0 11px}.home-date-segment:last-child{border-right:0;border-radius:0 11px 11px 0}.home-date-segment:before,.home-date-segment-year:after{content:"";position:absolute;z-index:4;top:-3px;width:5px;height:11px;transform:translate(-50%);border:0;border-radius:4px;background:linear-gradient(90deg,#5c3218,#754522 52%,#4e2a15);box-shadow:0 1px 2px #44261233,inset 1px 0 #ffe9c72e;pointer-events:none}.home-date-segment:before{left:50%}.home-date-segment-year:before{left:32%}.home-date-segment-year:after{left:68%}.home-date-value{min-width:0;max-width:100%;overflow:hidden;color:#fffaf0;font-size:.98rem;font-weight:900;font-variant-numeric:tabular-nums;line-height:1;letter-spacing:-.025em;text-align:center;text-overflow:clip;text-shadow:0 1px 0 rgba(93,56,27,.38),0 2px 4px rgba(70,40,18,.2)}@media(max-width:520px){.home-date-paper{grid-template-columns:minmax(0,1.9fr) repeat(3,minmax(0,1fr))}.home-date-value{font-size:.9rem}}@media(max-width:455px){.home-date-value{font-size:.82rem}}@media(max-height:760px){.home-date-display{min-height:52px;padding-top:4px}.home-date-paper{height:47px}.home-date-segment:before,.home-date-segment-year:after{top:-2px;height:9px}.home-date-value{font-size:.88rem}}@media(max-width:380px){.home-date-value{font-size:.76rem}}.app-shell.home-app-shell{--home-nav-height: 74px;--home-nav-icon-size: 25px;--home-nav-label-size: .66rem;--home-nav-active-size: 40px;--home-nav-active-icon-size: 22px;padding-bottom:calc(var(--home-nav-height) + 14px + env(safe-area-inset-bottom,0px))}.app-shell.home-app-shell:has(.home-dashboard-default){padding-bottom:calc(var(--home-nav-height) + 8px + env(safe-area-inset-bottom,0px))}.home-bottom-nav,.home-dashboard-default .home-bottom-nav{height:calc(var(--home-nav-height) + env(safe-area-inset-bottom,0px));padding:7px 8px env(safe-area-inset-bottom,0px)}.home-bottom-nav button{gap:3px}.home-bottom-nav button:first-child{color:var(--text-muted)}.home-bottom-nav button.active,.home-bottom-nav button:first-child.active{color:var(--home-blue, var(--accent))}.home-bottom-nav svg{width:var(--home-nav-icon-size);height:var(--home-nav-icon-size)}.home-bottom-nav span:last-child{font-size:var(--home-nav-label-size)}.home-nav-active-circle{width:var(--home-nav-active-size);height:var(--home-nav-active-size);margin-top:-16px}.home-nav-active-circle svg{width:var(--home-nav-active-icon-size);height:var(--home-nav-active-icon-size)}@media(max-height:760px){.app-shell.home-app-shell{--home-nav-height: 68px;--home-nav-icon-size: 23px;--home-nav-label-size: .62rem;--home-nav-active-size: 37px;--home-nav-active-icon-size: 20px;padding-bottom:calc(var(--home-nav-height) + 10px + env(safe-area-inset-bottom,0px))}.app-shell.home-app-shell:has(.home-dashboard-default){padding-bottom:calc(var(--home-nav-height) + 7px + env(safe-area-inset-bottom,0px))}.home-bottom-nav,.home-dashboard-default .home-bottom-nav{padding-top:6px}.home-nav-active-circle{margin-top:-14px}}@media(min-width:900px)and (min-height:1200px){.app-shell.home-app-shell:has(.home-dashboard-default){--home-nav-height: 112px;--home-nav-icon-size: 33px;--home-nav-label-size: .8rem;--home-nav-active-size: 52px;--home-nav-active-icon-size: 29px}}@media(max-height:700px){.home-dashboard-default>.home-material-panel,.home-dashboard-default .home-material-measurements{display:none!important}}@media(min-width:700px){.app-shell.home-app-shell{width:min(96vw,1040px);max-width:1040px;padding-inline:clamp(16px,2.4vw,30px)}.home-dashboard{--home-radius: 18px;--home-radius-small: 14px;--home-shadow-card: 0 9px 24px rgba(32, 55, 91, .055)}.home-topbar{grid-template-columns:minmax(150px,.78fr) minmax(330px,1.8fr) minmax(154px,.8fr);gap:clamp(9px,1.25vw,14px);min-height:70px}.home-streak-card{min-height:62px;gap:9px;padding:8px 12px;border-radius:14px}.home-streak-flame{width:31px;height:31px}.home-streak-card span,.home-streak-card small{font-size:.66rem}.home-streak-card strong{font-size:1.28rem}.home-date-display{min-height:68px;padding-top:8px}.home-date-paper{height:60px;border-radius:12px}.home-date-value{font-size:clamp(1rem,1.65vw,1.18rem)}.home-date-unit{font-size:clamp(.67rem,1vw,.75rem)}.home-top-actions{gap:7px}.home-icon-button,.home-avatar-button,.home-dashboard-default .home-icon-button,.home-dashboard-default .home-avatar-button{width:42px;height:42px;min-width:42px}.home-avatar-button .user-avatar,.home-avatar-button img,.home-dashboard-default .home-avatar-button .user-avatar,.home-dashboard-default .home-avatar-button img{width:40px;height:40px}.home-next-card{padding-inline:clamp(20px,2.3vw,28px);border-radius:18px}.home-next-copy,.home-dashboard-default .home-next-copy{width:52%;min-width:310px}.home-eyebrow{font-size:.8rem}.home-next-copy h1,.home-dashboard-default .home-next-copy h1{font-size:clamp(1.35rem,2.15vw,1.72rem)}.home-next-meta,.home-dashboard-default .home-next-meta{gap:5px;font-size:clamp(.78rem,1.2vw,.9rem);line-height:1.15}.home-next-meta span,.home-dashboard-default .home-next-meta span{min-height:20px;gap:7px}.home-next-meta svg,.home-dashboard-default .home-next-meta svg{width:18px;height:18px}.home-empty-copy{max-width:390px;font-size:.86rem;line-height:1.55}.home-study-scene{width:50%}.home-start-button,.home-dashboard-default .home-start-button{left:clamp(20px,2.3vw,28px);right:clamp(20px,2.3vw,28px);min-height:50px;border-radius:13px;font-size:.98rem}.home-start-icon,.home-dashboard-default .home-start-icon{width:27px;height:27px}.home-panel{border-radius:18px}.home-dashboard-default .home-panel{padding-inline:clamp(12px,1.7vw,18px)}.home-section-heading h2,.home-dashboard-default .home-section-heading h2{font-size:.88rem}.home-section-heading button,.home-dashboard-default .home-section-heading button{font-size:.7rem}.home-dashboard-default .home-schedule-row,.home-dashboard-default .home-schedule-empty{min-height:var(--home-fit-row-height)}.home-dashboard-default .home-schedule-add-row{min-height:clamp(32px,calc(var(--home-fit-row-height) - 10px),48px)}.home-dashboard-default .home-schedule-content{gap:2px}.home-dashboard-default .home-schedule-content time{font-size:.68rem;line-height:1.1}.home-dashboard-default .home-schedule-content strong,.home-dashboard-default .home-schedule-add-row strong{font-size:.82rem;line-height:1.15}.home-dashboard-default .home-schedule-content small{font-size:.64rem;line-height:1.1}.home-alert-grid{gap:clamp(8px,1.25vw,14px)}.home-dashboard-default .home-alert-card{padding-inline:clamp(10px,1.5vw,15px);border-radius:18px}.home-dashboard-default .home-alert-heading{font-size:.7rem}.home-dashboard-default .home-alert-body small{font-size:.62rem}.home-dashboard-default .home-alert-body strong{font-size:.72rem}.home-progress-panel,.home-material-panel{border-radius:18px}.home-material-panel{padding-inline:clamp(12px,1.7vw,18px)}.home-material-row{min-height:72px;grid-template-columns:38px minmax(0,1fr) 18px;gap:11px;padding-inline:12px}.home-material-icon{width:36px;height:36px}.home-material-title-line strong{font-size:.82rem}.home-material-title-line b,.home-material-copy small{font-size:.68rem}.weekly-progress-layout{grid-template-columns:clamp(64px,10vw,80px) clamp(104px,17vw,150px) minmax(0,1fr);gap:clamp(9px,1.7vw,16px)}.weekly-progress-ring{width:clamp(62px,8vw,74px);height:clamp(62px,8vw,74px)}.weekly-progress-summary{font-size:clamp(.58rem,.95vw,.7rem)}.weekly-progress-legend{font-size:clamp(.52rem,.8vw,.62rem)}.home-bottom-nav,.home-dashboard-default .home-bottom-nav{width:min(96vw,1040px)}}@media(min-width:700px)and (min-height:1000px){.app-shell.home-app-shell{--home-nav-height: 96px;--home-nav-icon-size: 31px;--home-nav-label-size: .78rem;--home-nav-active-size: 49px;--home-nav-active-icon-size: 27px}.home-dashboard-default{--home-fit-gap: min(22px, calc(var(--home-fit-gap-base) + 2px + var(--home-relax-gap, 0px)));--home-fit-hero-height: min(350px, calc(var(--home-fit-hero-height-base) + 30px + var(--home-relax-hero, 0px)));--home-fit-row-height: min(70px, calc(var(--home-fit-row-height-base) + var(--home-relax-row, 0px)))}.home-dashboard-default .home-topbar{min-height:78px;padding-block:calc(4px + var(--home-relax-topbar, 0px) / 2)}.home-dashboard-default .home-streak-card{min-height:70px;padding-block:11px}.home-dashboard-default .home-date-display{min-height:78px}.home-dashboard-default .home-date-paper{height:70px}.home-dashboard-default .home-next-card{padding-top:22px;padding-bottom:76px}.home-dashboard-default .home-start-button{min-height:58px;bottom:13px;font-size:1.05rem}.home-dashboard-default .home-schedule-row,.home-dashboard-default .home-schedule-empty{padding-top:calc(9px + var(--home-relax-schedule-side, 0px));padding-bottom:calc(9px + var(--home-relax-schedule-side, 0px))}.home-dashboard-default .home-schedule-add-row{padding-top:calc(8px + var(--home-relax-schedule-side, 0px));padding-bottom:calc(8px + var(--home-relax-schedule-side, 0px))}.home-dashboard-default .home-today-panel{padding-top:calc(11px + var(--home-relax-today-side, 0px));padding-bottom:calc(10px + var(--home-relax-today-side, 0px))}.home-dashboard-default .home-alert-card{padding-block:calc(13px + var(--home-relax-alert-side, 0px))}.home-dashboard-default .home-progress-panel{min-height:152px;padding-top:calc(14px + var(--home-relax-progress-side, 0px));padding-bottom:calc(15px + var(--home-relax-progress-side, 0px))}.weekly-progress-plot{--weekly-progress-plot-height: 74px}.weekly-progress-ring{width:clamp(74px,9vw,86px);height:clamp(74px,9vw,86px)}.home-material-panel{padding-top:calc(18px + var(--home-relax-material-side, 0px));padding-bottom:calc(17px + var(--home-relax-material-side, 0px))}.home-material-row{min-height:92px;padding-block:16px}}@media(min-width:900px)and (min-height:1200px){.app-shell.home-app-shell{--home-nav-height: 100px}.home-dashboard-default{--home-fit-gap: min(23px, calc(var(--home-fit-gap-base) + 3px + var(--home-relax-gap, 0px)));--home-fit-hero-height: min(368px, calc(var(--home-fit-hero-height-base) + 48px + var(--home-relax-hero, 0px)))}.home-dashboard-default .home-topbar{padding-block:calc(5px + var(--home-relax-topbar, 0px) / 2)}.home-dashboard-default .home-schedule-row,.home-dashboard-default .home-schedule-empty{padding-top:calc(11px + var(--home-relax-schedule-side, 0px));padding-bottom:calc(11px + var(--home-relax-schedule-side, 0px))}.home-dashboard-default .home-schedule-add-row{padding-top:calc(10px + var(--home-relax-schedule-side, 0px));padding-bottom:calc(10px + var(--home-relax-schedule-side, 0px))}.home-dashboard-default .home-today-panel{padding-top:calc(14px + var(--home-relax-today-side, 0px));padding-bottom:calc(13px + var(--home-relax-today-side, 0px))}.home-dashboard-default .home-alert-card{padding-block:calc(15px + var(--home-relax-alert-side, 0px))}.home-dashboard-default .home-progress-panel{min-height:168px}.home-material-panel{padding-top:calc(21px + var(--home-relax-material-side, 0px));padding-bottom:calc(20px + var(--home-relax-material-side, 0px))}.home-material-row{min-height:100px}}@media(min-width:900px){.app-shell.home-app-shell{width:min(94vw,1080px);max-width:1080px;padding-inline:clamp(22px,2.6vw,34px)}.home-bottom-nav,.home-dashboard-default .home-bottom-nav{width:min(94vw,1080px)}.home-topbar{grid-template-columns:minmax(170px,.78fr) minmax(390px,1.9fr) minmax(172px,.78fr)}.home-next-copy,.home-dashboard-default .home-next-copy{min-width:360px}.home-study-scene{width:48%}}@media(min-width:700px)and (max-height:850px){.home-dashboard-default .home-topbar{min-height:clamp(50px,7dvh,62px)}.home-dashboard-default .home-streak-card{min-height:54px;gap:7px;padding:6px 9px;border-radius:12px}.home-dashboard-default .home-streak-flame{width:27px;height:27px}.home-dashboard-default .home-streak-card span,.home-dashboard-default .home-streak-card small{font-size:.58rem}.home-dashboard-default .home-streak-card strong{font-size:1.12rem}.home-dashboard-default .home-date-display{min-height:60px;padding-top:6px}.home-dashboard-default .home-date-paper{height:52px;border-radius:9px}.home-dashboard-default .home-date-value{font-size:.98rem}.home-dashboard-default .home-date-unit{font-size:.65rem}.home-dashboard-default .home-top-actions{gap:4px}.home-dashboard-default .home-icon-button,.home-dashboard-default .home-avatar-button{width:36px;height:36px;min-width:36px}.home-dashboard-default .home-avatar-button .user-avatar,.home-dashboard-default .home-avatar-button img{width:34px;height:34px}.home-dashboard-default .home-next-card{padding-inline:16px;border-radius:14px}.home-dashboard-default .home-next-copy{width:58%;min-width:0}.home-dashboard-default .home-eyebrow{margin-bottom:2px;font-size:.62rem;line-height:1}.home-dashboard-default .home-next-copy h1{margin-bottom:3px;font-size:.96rem;line-height:1.08}.home-dashboard-default .home-next-meta{gap:1px;font-size:.58rem;line-height:1.05}.home-dashboard-default .home-next-meta span{min-height:14px;gap:4px}.home-dashboard-default .home-next-meta svg{width:14px;height:14px}.home-dashboard-default .home-start-button{left:14px;right:14px;bottom:7px;min-height:37px;border-radius:11px;font-size:.84rem}.home-dashboard-default .home-start-icon{width:22px;height:22px}.home-dashboard-default .home-panel,.home-dashboard-default .home-alert-card,.home-dashboard-default .home-progress-panel,.home-dashboard-default>.home-material-panel{border-radius:14px}.home-dashboard-default .home-panel{padding-inline:10px}.home-dashboard-default .home-section-heading h2{font-size:.75rem}.home-dashboard-default .home-section-heading button{font-size:.59rem}.home-dashboard-default .home-schedule-row,.home-dashboard-default .home-schedule-empty{min-height:var(--home-fit-row-height);padding-top:3px;padding-bottom:3px}.home-dashboard-default .home-schedule-add-row{min-height:clamp(32px,4.5dvh,40px);padding-top:3px;padding-bottom:3px}.home-dashboard-default .home-schedule-content{gap:0}.home-dashboard-default .home-schedule-content time{font-size:.6rem;line-height:1.05}.home-dashboard-default .home-schedule-content strong,.home-dashboard-default .home-schedule-add-row strong{font-size:.72rem;line-height:1.1}.home-dashboard-default .home-schedule-content small{font-size:.56rem;line-height:1.05}.home-dashboard-default .home-alert-grid{gap:var(--home-fit-gap)}.home-dashboard-default .home-alert-card{padding:7px 8px}.home-dashboard-default .home-alert-heading{gap:4px;margin-bottom:4px;font-size:.59rem}.home-dashboard-default .home-alert-body{grid-template-columns:20px minmax(0,1fr) 12px;gap:4px}.home-dashboard-default .home-alert-body>svg:first-child{width:20px;height:20px}.home-dashboard-default .home-alert-body>svg:last-child{width:13px;height:13px}.home-dashboard-default .home-alert-body small{font-size:.53rem}.home-dashboard-default .home-alert-body strong{font-size:.61rem}.home-dashboard-default .home-progress-panel{min-height:104px}.home-dashboard-default .weekly-progress-ring{width:58px;height:58px}.home-dashboard-default .weekly-progress-summary{font-size:.58rem}.home-dashboard-default .weekly-progress-legend{font-size:.52rem}.home-dashboard-default>.home-material-panel{padding:10px 12px 9px}.home-dashboard-default .home-material-row{min-height:63px;grid-template-columns:32px minmax(0,1fr) 16px;gap:8px;padding:8px 9px}.home-dashboard-default .home-material-icon{width:30px;height:30px}.home-dashboard-default .home-material-title-line strong{font-size:.72rem}.home-dashboard-default .home-material-title-line b{font-size:.63rem}.home-dashboard-default .home-material-copy small{font-size:.58rem}}.layout-contained-panel,.home-dashboard-default .home-today-panel{min-inline-size:0;min-block-size:0;max-inline-size:100%;display:grid;grid-template-rows:max-content minmax(0,1fr) max-content;align-content:stretch}.layout-contained-panel>*,.home-dashboard-default .home-today-panel>*{min-inline-size:0;max-inline-size:100%}.layout-scroll-region,.home-dashboard-default .home-today-panel>.home-schedule-list{min-inline-size:0;min-block-size:0;max-inline-size:100%;overflow:auto;overscroll-behavior:contain}.home-study-scene{background:#eef7ff}.home-study-scene:after{content:"";position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,#f5fafffa,#f5faffb8 12%,#f5faff29 34%,#f5faff00 52%)}.home-study-scene-image{width:100%;height:100%;display:block;object-fit:cover;object-position:64% 54%;-webkit-user-select:none;user-select:none}:root[data-theme=dark] .home-study-scene{--home-next-scene-blend: color-mix( in srgb, var(--surface-strong) 96%, var(--accent) 4% );background:var(--home-next-scene-blend)}:root[data-theme=dark] .home-study-scene:before{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;background-repeat:no-repeat;background-size:cover;background-position:64% 54%}:root[data-theme=dark] .home-next-card[data-next-plan-visual=study] .home-study-scene:before{background-image:url(/assets/home/next-plan-study-dark.webp)}:root[data-theme=dark] .home-next-card[data-next-plan-visual=class] .home-study-scene:before{background-image:url(/assets/home/next-plan-class-dark.webp)}:root[data-theme=dark] .home-next-card[data-next-plan-visual=other] .home-study-scene:before{background-image:url(/assets/home/next-plan-other-dark.webp)}:root[data-theme=dark] .home-study-scene:after{background:linear-gradient(90deg,var(--home-next-scene-blend) 0%,color-mix(in srgb,var(--home-next-scene-blend) 96%,transparent) 14%,color-mix(in srgb,var(--home-next-scene-blend) 78%,transparent) 30%,color-mix(in srgb,var(--home-next-scene-blend) 52%,transparent) 44%,color-mix(in srgb,var(--home-next-scene-blend) 26%,transparent) 58%,color-mix(in srgb,var(--home-next-scene-blend) 10%,transparent) 68%,transparent 78%)}:root[data-theme=dark] .home-study-scene-image{display:none;filter:none}@media(max-width:520px){.home-study-scene-image{object-position:67% 56%}:root[data-theme=dark] .home-study-scene:before{background-position:67% 56%}}@media(min-width:900px){.home-study-scene-image{object-position:60% 54%}:root[data-theme=dark] .home-study-scene:before{background-position:60% 54%}}@media(max-width:500px){.ai-planning-view.home-dashboard .ai-planning-composer-side,.ai-planning-view.home-dashboard .ai-planning-mic-button{display:inline-flex!important;visibility:visible!important}.ai-planning-view.home-dashboard .ai-planning-composer{grid-template-columns:auto minmax(0,1fr) auto auto!important;gap:3px;min-width:0}.ai-planning-view.home-dashboard .ai-planning-composer textarea{min-width:0}.ai-planning-view.home-dashboard .ai-planning-composer-side,.ai-planning-view.home-dashboard .ai-planning-mic-button,.ai-planning-view.home-dashboard .ai-planning-send-button{width:36px;min-width:36px;height:36px;flex:0 0 36px}}@media(max-width:360px){.ai-planning-view.home-dashboard .ai-planning-composer{gap:2px;margin-inline:6px;padding-inline:6px}.ai-planning-view.home-dashboard .ai-planning-composer-side,.ai-planning-view.home-dashboard .ai-planning-mic-button,.ai-planning-view.home-dashboard .ai-planning-send-button{width:34px;min-width:34px;height:34px;flex-basis:34px}}.app-shell.home-app-shell:has(.ai-planning-view){box-sizing:border-box;height:100dvh;min-height:100dvh;overflow:hidden;padding-top:clamp(6px,1.05dvh,10px);padding-bottom:calc(var(--home-nav-height) + 8px + env(safe-area-inset-bottom,0px))}.home-main:has(.ai-planning-view){display:grid;grid-template-rows:auto minmax(0,1fr);gap:clamp(6px,.8dvh,9px);min-width:0;min-height:0;height:100%}.ai-planning-primary-header.home-dashboard-default{display:block;height:auto;min-height:0;overflow:visible;align-content:initial;gap:0}.ai-planning-primary-header .home-topbar{width:100%}.app-shell.home-app-shell .ai-planning-view.home-dashboard{position:relative;inset:auto!important;z-index:auto;width:100%;max-width:none;height:100%;min-height:0;margin:0;padding:0;overflow:hidden;grid-template-rows:minmax(0,1fr);gap:0;background:transparent}.app-shell.home-app-shell .ai-planning-view.home-dashboard .ai-planning-card{width:100%;height:100%;min-height:0;margin:0;border-radius:clamp(12px,1.6vw,18px)}.app-shell.home-app-shell .ai-planning-view.home-dashboard .ai-planning-conversation{min-height:0}.app-shell.home-app-shell .ai-planning-view .home-bottom-nav.ai-planning-home-nav button:first-child{color:var(--accent)}.app-shell.home-app-shell .ai-planning-view .home-bottom-nav.ai-planning-home-nav button:nth-child(3){color:var(--text-muted)}.app-shell.home-app-shell .ai-planning-view .home-bottom-nav.ai-planning-home-nav button:nth-child(3) .home-nav-active-circle{width:var(--home-nav-icon-size);height:var(--home-nav-icon-size);margin-top:0;border-radius:0;background:transparent;color:inherit}.app-shell.home-app-shell .ai-planning-view .home-bottom-nav.ai-planning-home-nav button:nth-child(3) .home-nav-active-circle svg{width:var(--home-nav-icon-size);height:var(--home-nav-icon-size)}@media(min-width:700px){.app-shell.home-app-shell .ai-planning-view.home-dashboard .ai-planning-card{border-radius:18px}}@media(max-height:760px){.app-shell.home-app-shell:has(.ai-planning-view){padding-bottom:calc(var(--home-nav-height) + 7px + env(safe-area-inset-bottom,0px))}.home-main:has(.ai-planning-view){gap:5px}.app-shell.home-app-shell .ai-planning-view.home-dashboard .ai-planning-heading{padding-block:8px}.app-shell.home-app-shell .ai-planning-view.home-dashboard .ai-planning-composer{padding-block:7px}}.schedule-workspace-shell{--schedule-nav-height: 72px;box-sizing:border-box;width:min(100%,900px);max-width:900px;height:100dvh;min-height:100dvh;margin:0 auto;padding:0 14px calc(var(--schedule-nav-height) + env(safe-area-inset-bottom,0px));overflow:hidden;background:var(--surface)}.schedule-app-header{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;min-height:62px;margin:0 -14px;padding:env(safe-area-inset-top,0px) 14px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:4}.schedule-app-header h1{margin:0;font-size:clamp(1.15rem,3.8vw,1.45rem);line-height:1;text-align:center;letter-spacing:.02em}.schedule-back-button,.schedule-header-spacer{width:44px;height:44px}.schedule-back-button{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:14px;background:transparent;color:var(--text)}.schedule-toolbar{position:relative;z-index:3;display:grid;gap:10px;padding:12px 0 10px;background:var(--surface)}.schedule-toolbar-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.schedule-period-control{min-width:0;display:flex;align-items:center;gap:7px;color:var(--text)}.schedule-period-control>svg:first-child{flex:0 0 auto;color:var(--accent)}.schedule-period-control strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.92rem,2.8vw,1.08rem);line-height:1.2}.schedule-period-step{flex:0 0 auto;width:26px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:9px;background:transparent;color:var(--text-muted)}.schedule-period-step:hover{background:var(--surface-soft);color:var(--accent)}.schedule-view-tabs{display:grid;grid-template-columns:repeat(4,minmax(44px,1fr));min-width:min(44vw,280px);padding:3px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.schedule-view-tabs button{min-height:34px;padding:5px 12px;border:0;border-radius:9px;background:transparent;color:var(--text);font:inherit;font-size:.78rem;font-weight:700}.schedule-view-tabs button.active{background:var(--accent);color:#fff;box-shadow:0 5px 12px color-mix(in srgb,var(--accent) 24%,transparent)}.schedule-day-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.schedule-day-strip button{min-width:0;min-height:64px;display:grid;justify-items:center;align-content:center;gap:4px;padding:4px 2px;border:0;border-radius:999px;background:transparent;color:var(--text);font:inherit}.schedule-day-strip button span{font-size:.66rem;font-weight:700}.schedule-day-strip button strong{width:38px;height:38px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--border) 68%,transparent);border-radius:50%;background:var(--surface);font-size:.92rem}.schedule-day-strip button.active{color:var(--accent)}.schedule-day-strip button.active strong{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 7px 16px color-mix(in srgb,var(--accent) 25%,transparent)}.schedule-main{min-width:0;min-height:0;height:100%;overflow:auto;overscroll-behavior:contain;padding:0 0 18px}.schedule-main>.panel,.schedule-main>.swipe-view,.schedule-main>.section-stack,.schedule-main .schedule-month-view,.schedule-main .todo-view{min-width:0}.schedule-main>.panel,.schedule-main .schedule-month-view,.schedule-main .todo-view,.schedule-main>.section-stack>.panel:first-child{border:0;border-radius:0;background:transparent;box-shadow:none}.schedule-main .view-header-stack,.schedule-main .month-legacy-header,.schedule-main .month-week-chip-row,.schedule-main .day-timeline-header,.schedule-main .daily-bookshelf-link-card,.schedule-main .view-print-button,.schedule-main .timeline-legend,.schedule-main .week-timeline-legend{display:none!important}.schedule-bottom-nav.home-bottom-nav{position:fixed;z-index:40;left:50%;right:auto;bottom:0;transform:translate(-50%);width:min(100%,900px);height:calc(var(--schedule-nav-height) + env(safe-area-inset-bottom,0px));padding:7px 16px env(safe-area-inset-bottom,0px);border-top:1px solid var(--border);border-radius:0;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 -8px 24px #1123420f;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.schedule-bottom-nav.home-bottom-nav button{min-width:0;color:var(--text-muted)}.schedule-bottom-nav.home-bottom-nav svg{width:23px;height:23px}.schedule-bottom-nav.home-bottom-nav span{font-size:.66rem}.schedule-add-fab.daily-add-fab{position:fixed;z-index:45;right:max(22px,calc((100vw - min(100vw,900px))/2 + 22px));bottom:calc(var(--schedule-nav-height) + 14px + env(safe-area-inset-bottom,0px));width:56px;height:56px;border-radius:50%;border:0;background:var(--accent);color:#fff;box-shadow:0 10px 22px color-mix(in srgb,var(--accent) 30%,transparent);font-size:2rem;font-weight:300}.schedule-month-view{padding:0!important}.schedule-month-view .month-pager-viewport{border:0;border-radius:0}.schedule-month-view .month-grid{grid-template-columns:repeat(7,minmax(0,1fr));overflow:hidden;border-top:1px solid var(--border)}.schedule-month-view .month-weekday{min-height:34px;display:grid;place-items:center;padding:7px 2px;border-bottom:1px solid var(--border);font-size:.72rem;color:var(--text)}.schedule-month-view .month-cell{position:relative;min-height:clamp(84px,12.2dvh,128px);padding:8px 5px 6px;gap:5px;border:0;border-bottom:1px solid var(--border);background:transparent;overflow:visible}.schedule-month-view .month-cell:nth-last-child(-n+7){border-bottom-width:1px}.schedule-month-view .month-cell-head{display:flex;justify-content:center;align-items:center;min-height:28px}.schedule-month-view .month-date-number{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;font-size:.85rem;font-weight:700}.schedule-month-view .month-holiday-label,.schedule-month-view .month-study-summary{display:none!important}.schedule-month-view .month-cell.is-muted .month-date-number{color:color-mix(in srgb,var(--text-muted) 62%,transparent)}.schedule-month-view .month-cell.is-selected{background:color-mix(in srgb,var(--text) 6%,transparent);box-shadow:none}.schedule-month-view .month-cell.is-selected .month-date-number{background:color-mix(in srgb,var(--text) 88%,#000 12%);color:#fff!important}.schedule-month-view .month-cell.is-today:not(.is-selected) .month-date-number{box-shadow:inset 0 0 0 2px var(--accent)}.schedule-month-view .month-cell.is-today,.schedule-month-view .month-cell.is-selected.is-today{box-shadow:none}.schedule-month-view .month-major-event-list{display:grid;gap:3px;align-content:start;width:100%}.schedule-month-view .month-major-event-pill{width:100%;max-width:100%;min-height:22px;justify-content:center;padding:3px 5px;border:0;border-radius:5px;background:color-mix(in srgb,#6ec9a2 30%,var(--surface) 70%);color:var(--text);font-size:.62rem;font-weight:700;box-shadow:none}.schedule-month-view .month-major-event-pill:nth-child(5n+2){background:color-mix(in srgb,#f4b85c 31%,var(--surface) 69%)}.schedule-month-view .month-major-event-pill:nth-child(5n+3){background:color-mix(in srgb,#a787ef 27%,var(--surface) 73%)}.schedule-month-view .month-major-event-pill:nth-child(5n+4){background:color-mix(in srgb,#72aefa 28%,var(--surface) 72%)}.schedule-month-view .month-major-event-pill:nth-child(5n){background:color-mix(in srgb,#ef7b9f 25%,var(--surface) 75%)}.schedule-month-view .month-major-event-full{display:none}.schedule-month-view .month-major-event-short{display:inline;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-month-view .month-event-more{font-size:.58rem;text-align:center}.month-day-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:flex-end;justify-content:center;background:#12182459;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.month-day-sheet{width:min(100%,720px);min-height:min(38dvh,360px);max-height:72dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr);padding:10px 22px calc(24px + env(safe-area-inset-bottom,0px));border-radius:28px 28px 0 0;background:var(--surface);box-shadow:0 -18px 48px #14203429;overflow:hidden}.month-day-sheet-handle,.schedule-action-handle{width:58px;height:5px;justify-self:center;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 38%,transparent)}.month-day-sheet-header{display:grid;grid-template-columns:48px minmax(0,1fr) 52px;align-items:center;gap:8px;padding:14px 0 18px}.month-day-sheet-header h2{margin:0;font-size:1.45rem;line-height:1.2}.month-day-sheet-close,.month-day-sheet-add{display:inline-flex;align-items:center;justify-content:center;border:0;font:inherit}.month-day-sheet-close{width:40px;height:40px;border-radius:12px;background:transparent;color:var(--text)}.month-day-sheet-add{width:48px;height:48px;border-radius:50%;background:var(--accent);color:#fff;box-shadow:0 7px 18px color-mix(in srgb,var(--accent) 28%,transparent)}.month-day-sheet-list{overflow:auto}.month-day-sheet-event{display:grid;grid-template-columns:78px 4px minmax(0,1fr);align-items:center;gap:16px;width:100%;min-height:74px;padding:12px 10px;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text);text-align:left;font:inherit}.month-day-sheet-time{display:grid;gap:3px;text-align:right;font-variant-numeric:tabular-nums}.month-day-sheet-time strong{font-size:.92rem}.month-day-sheet-time small{color:var(--text-muted);font-size:.8rem}.month-day-sheet-bar{align-self:stretch;border-radius:999px;background:#8b5cf6}.month-day-sheet-event.mint .month-day-sheet-bar{background:#44c08a}.month-day-sheet-event.violet .month-day-sheet-bar{background:#8b5cf6}.month-day-sheet-event.blue .month-day-sheet-bar{background:#4d9cf7}.month-day-sheet-event.amber .month-day-sheet-bar{background:#efa93a}.month-day-sheet-event.pink .month-day-sheet-bar{background:#ef6f95}.month-day-sheet-title{font-size:1rem}.month-day-sheet-empty{width:100%;min-height:110px;border:1px dashed var(--border);border-radius:16px;background:var(--surface-soft);color:var(--text-muted);font:inherit}.schedule-main .week-timeline-toolbar{display:grid;grid-template-columns:minmax(0,1fr);margin:0 0 10px}.schedule-main .week-timeline-mode-control{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;background:transparent}.schedule-main .week-timeline-mode-control .segment{min-height:40px;border:0;border-radius:12px;background:var(--surface-soft);color:var(--text);font-size:.82rem}.schedule-main .week-timeline-mode-control .segment.active{background:color-mix(in srgb,var(--accent) 8%,var(--surface) 92%);color:var(--accent)}.schedule-main .week-timeline-mode-control .segment:nth-child(3){display:none}.schedule-main .week-timeline-shell{--week-timeline-head-height: 38px;--week-timeline-hour-height: clamp(27px, 3.2dvh, 32px);--week-timeline-min-block-height: 20px;grid-template-columns:42px minmax(0,1fr);gap:4px;width:100%;overflow:hidden;padding-bottom:6px}.schedule-main .week-timeline-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:0;min-width:0}.schedule-main .week-timeline-day-head{padding:5px 2px;border-radius:0;border-color:var(--border);background:transparent;text-align:center}.schedule-main .week-day-link{width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:.64rem}.schedule-main .week-day-summary{display:none}.schedule-main .week-timeline-canvas{border-radius:0;border-color:var(--border);border-top:0}.schedule-main .week-timeline-block{padding:3px;border-radius:7px}.schedule-main .week-timeline-entry-line{gap:1px;font-size:.54rem}.schedule-main .week-timeline-block__title{line-height:1.02}.schedule-main .week-timeline-time,.schedule-main .week-timeline-subject{font-size:.48rem}.schedule-main .week-timeline-hour-label{padding-right:2px;font-size:.58rem}.schedule-main>.section-stack.swipe-view{gap:0}.schedule-main>.section-stack.swipe-view>.panel:first-of-type{padding:0}.schedule-main .timeline-shell{--timeline-head-height: 40px;--timeline-row-gap: 8px;--timeline-hour-height: clamp(28px, 3.25dvh, 32px);--timeline-min-block-height: 22px;grid-template-columns:52px minmax(0,1fr);gap:6px;width:100%;overflow:hidden}.schedule-main .timeline-main,.schedule-main .timeline-canvas,.schedule-main .timeline-canvas.split{min-width:0}.schedule-main .timeline-columns-head{gap:8px}.schedule-main .timeline-column-label{min-height:40px;padding:8px;border:0;border-radius:12px;background:var(--surface-soft);font-size:.78rem}.schedule-main .timeline-column-label.actual{background:color-mix(in srgb,var(--accent) 7%,var(--surface) 93%);color:var(--accent)}.schedule-main .timeline-canvas{border-radius:14px}.schedule-main .timeline-hour-label{font-size:.6rem}.schedule-main .timeline-plan-block,.schedule-main .timeline-actual-block{padding:2px 5px;border-radius:8px}.schedule-main .timeline-entry-title{font-size:.65rem}.schedule-main .timeline-entry-time,.schedule-main .timeline-entry-subject{font-size:.55rem}.schedule-main .todo-view{padding:0}.schedule-main .todo-view-header{padding:0 0 10px;border:0}.schedule-main .todo-view-header>div:first-child{display:none}.schedule-main .todo-sort-control{width:100%}.schedule-main .todo-section-list{gap:10px}.schedule-main .todo-status-section,.schedule-main .todo-view-item{border-radius:14px}.schedule-action-overlay{align-items:flex-end}.schedule-action-sheet,.schedule-record-sheet{width:min(100%,720px);max-width:720px;margin:auto 0 0;border-radius:28px 28px 0 0;box-shadow:0 -18px 48px #121c2e29}.schedule-action-sheet{padding:10px 22px calc(24px + env(safe-area-inset-bottom,0px))}.schedule-action-topline{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;padding:10px 0 14px}.schedule-action-topline>div{min-width:0;display:grid;gap:2px}.schedule-action-topline strong,.schedule-action-topline span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-action-topline span{color:var(--text-muted);font-size:.78rem}.schedule-action-close,.schedule-action-back{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:12px;background:transparent;color:var(--text)}.schedule-action-list{display:grid;gap:9px}.schedule-action-item{display:grid;grid-template-columns:56px minmax(0,1fr) 28px;align-items:center;gap:12px;min-height:76px;padding:10px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);text-align:left;font:inherit}.schedule-action-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--accent) 9%,var(--surface) 91%);color:var(--accent)}.schedule-action-copy{display:grid;gap:3px}.schedule-action-copy strong{font-size:1rem}.schedule-action-copy small{color:var(--text-muted);font-size:.78rem}.schedule-action-item>svg{color:var(--text-muted)}.schedule-action-item.danger,.schedule-action-item.danger .schedule-action-icon{color:var(--danger)}.schedule-action-item.danger .schedule-action-icon{background:color-mix(in srgb,var(--danger) 9%,var(--surface) 91%)}.schedule-record-sheet{max-height:88dvh;overflow:auto}.schedule-record-sheet .daily-detail-modal-header{grid-template-columns:44px minmax(0,1fr) 44px}.schedule-action-header-spacer{width:40px}.schedule-workspace-shell .quick-entry-overlay{align-items:flex-end;padding:0;background:#12182461}.schedule-workspace-shell .quick-entry-modal{width:min(100%,720px);max-width:720px;max-height:92dvh;margin:0;border-radius:28px 28px 0 0;border-bottom:0;box-shadow:0 -18px 48px #121c2e2e}.schedule-workspace-shell .quick-entry-header{position:sticky;top:0;z-index:5;padding-top:13px;background:var(--surface)}.schedule-workspace-shell .quick-entry-kind-switch{border-radius:14px;background:var(--surface-soft)}.schedule-workspace-shell .quick-entry-save-button{border-radius:999px}.schedule-workspace-shell .quick-entry-card{border-radius:14px;box-shadow:none}.schedule-workspace-shell .quick-entry-title-card input{min-height:58px;font-size:1rem}.schedule-workspace-shell .month-event-modal-overlay{align-items:flex-end;padding:0}.schedule-workspace-shell .month-event-modal{width:min(100%,720px);max-width:720px;max-height:92dvh;margin:0;border-radius:28px 28px 0 0;box-shadow:0 -18px 48px #121c2e2e}.schedule-workspace-shell .month-event-editor-header{position:sticky;top:0;z-index:4;background:var(--surface)}@media(max-width:640px){.schedule-workspace-shell{padding-inline:12px}.schedule-app-header{margin-inline:-12px;padding-inline:12px}.schedule-toolbar-row{gap:8px}.schedule-period-control{gap:4px}.schedule-period-step{display:none}.schedule-view-tabs{min-width:218px}.schedule-view-tabs button{padding-inline:7px}.schedule-month-view .month-cell{min-height:clamp(80px,11.4dvh,108px);padding-inline:3px}.schedule-month-view .month-major-event-pill{min-height:20px;padding-inline:3px;font-size:.57rem}.schedule-main .week-timeline-shell{--week-timeline-hour-height: 27px}.schedule-main .week-timeline-block{padding-inline:2px}.schedule-main .week-timeline-entry-line{font-size:.49rem}.schedule-main .timeline-shell{--timeline-hour-height: 29px;grid-template-columns:48px minmax(0,1fr)}.month-day-sheet,.schedule-action-sheet{padding-inline:18px}}@media(max-width:480px){.schedule-toolbar-row{grid-template-columns:1fr}.schedule-view-tabs{width:100%}.schedule-day-strip button{min-height:58px}.schedule-day-strip button strong{width:34px;height:34px}.schedule-month-view .month-date-number{width:27px;height:27px;font-size:.76rem}.schedule-month-view .month-major-event-pill{font-size:.52rem}}.schedule-workspace-shell{--schedule-nav-height: 74px;--home-nav-height: 74px;--home-nav-icon-size: 25px;--home-nav-label-size: .66rem;box-sizing:border-box;width:min(100%,508px);max-width:508px;height:100dvh;min-height:100dvh;margin:0 auto;grid-template-rows:auto auto auto minmax(0,1fr);gap:0;padding:clamp(6px,1.05dvh,10px) 12px calc(var(--schedule-nav-height) + 8px + env(safe-area-inset-bottom,0px));overflow:hidden}.schedule-workspace-shell .schedule-main{height:auto;min-width:0;min-height:0;overflow-x:hidden}.schedule-primary-header.home-dashboard-default{display:block;min-width:0;min-height:0;height:auto;overflow:visible;padding:0}.schedule-primary-header .home-topbar{width:100%}.schedule-app-header{display:flex;align-items:center;justify-content:center;min-height:44px;margin:0 -12px;padding:0 12px;border-bottom:1px solid color-mix(in srgb,var(--border) 68%,transparent)}.schedule-app-header h1{margin:0;font-size:1.08rem;line-height:1;text-align:center}.schedule-toolbar{gap:8px;padding:9px 0 8px}.schedule-toolbar-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.schedule-period-control{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:3px}.schedule-period-step{width:34px;height:36px;display:inline-flex!important;align-items:center;justify-content:center;padding:0;border:0;border-radius:11px;background:transparent;color:var(--text-muted);transition:background-color .16s ease,color .16s ease,transform .16s ease}.schedule-period-step:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface) 92%);color:var(--accent)}.schedule-period-step:active{transform:scale(.94)}.schedule-period-picker-trigger{min-width:0;height:38px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;padding:0 8px;border:0;border-radius:11px;background:transparent;color:var(--text);font:inherit;cursor:pointer}.schedule-period-picker-trigger:not(:disabled):hover{background:color-mix(in srgb,var(--accent) 6%,var(--surface) 94%)}.schedule-period-picker-trigger:disabled{cursor:default}.schedule-period-picker-trigger>svg:first-child{color:var(--accent)}.schedule-period-picker-trigger strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.88rem,2.8vw,1.02rem);line-height:1.2}.schedule-period-chevron{flex:0 0 auto;color:var(--text-muted)}.schedule-view-tabs{min-width:min(45vw,250px)}.schedule-day-strip{display:flex;grid-template-columns:none;gap:4px;width:100%;overflow-x:auto;overflow-y:hidden;padding:1px calc(50% - 30px) 4px;scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}.schedule-day-strip::-webkit-scrollbar{display:none}.schedule-day-strip button{flex:0 0 56px;min-width:56px;min-height:58px;scroll-snap-align:center;transition:color .2s ease,transform .2s ease}.schedule-day-strip button:not(.active){opacity:.72}.schedule-day-strip button.active{opacity:1;transform:translateY(-1px)}.schedule-day-strip button.is-saturday:not(.active){color:#3b82f6}.schedule-day-strip button.is-sunday:not(.active){color:#ef4444}.schedule-main:has(.schedule-month-view){overflow:hidden;padding-bottom:6px}.schedule-month-view,.schedule-month-static-grid,.schedule-month-static-grid>.month-pager-panel,.schedule-month-static-grid .month-grid{width:100%;height:100%;min-width:0;min-height:0}.schedule-month-view{display:block;overflow:hidden;padding:0!important}.schedule-month-static-grid{overflow:hidden;border-top:1px solid var(--border)}.schedule-month-static-grid>.month-pager-panel{display:block;transform:none!important}.schedule-month-static-grid .month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:32px repeat(6,minmax(0,1fr));overflow:hidden;border-top:0}.schedule-month-view .month-weekday{min-height:0;height:auto;padding:5px 2px;font-size:.68rem}.schedule-month-view .month-cell{min-height:0!important;height:auto;gap:2px;padding:clamp(3px,.65dvh,6px) 3px 2px;overflow:hidden}.schedule-month-view .month-cell-head{min-height:22px}.schedule-month-view .month-date-number{width:25px;height:25px;font-size:.74rem}.schedule-month-view .month-major-event-list{gap:2px;overflow:hidden}.schedule-month-view .month-major-event-pill{min-height:17px;padding:2px 3px;font-size:.52rem;line-height:1.05}.schedule-month-view .month-event-more{font-size:.5rem;line-height:1}.schedule-main:has(.schedule-week-view){overflow:hidden;padding-bottom:6px}.schedule-week-view{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:6px;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.schedule-week-view .week-timeline-toolbar{margin:0}.schedule-week-view .week-timeline-mode-control{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.schedule-week-view .week-timeline-mode-control .segment{min-height:34px;border-radius:10px;font-size:.74rem}.schedule-week-preview{height:100%;min-width:0;min-height:0;overflow:hidden;border:0;background:transparent}.schedule-week-preview-scroll{width:100%;height:100%;max-height:none!important;min-height:0;overflow-x:auto;overflow-y:hidden;border:1px solid var(--border);border-radius:12px;background:var(--surface);scrollbar-width:thin;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.schedule-week-preview .weekly-draft-preview-grid{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;min-width:0;min-height:0}.schedule-week-preview .weekly-draft-preview-header{top:0;z-index:5}.schedule-week-preview-body{min-height:0;height:100%}.schedule-week-preview .weekly-draft-preview-time-axis,.schedule-week-day-column{height:100%;min-height:0}.schedule-week-preview .weekly-draft-preview-corner,.schedule-week-preview .weekly-draft-preview-date{min-height:36px;padding:4px 1px;font-size:.58rem}.schedule-week-preview .weekly-draft-preview-date strong{font-size:.56rem;letter-spacing:-.035em}.schedule-week-preview .weekly-draft-preview-time-label{right:4px;font-size:.53rem}.schedule-week-day-column{min-width:0;overflow:hidden;background:var(--surface)}.schedule-week-block{display:grid;align-content:center;justify-items:center;gap:1px;padding:1px 2px;border-radius:5px;cursor:pointer}.schedule-week-block strong,.schedule-week-block small{width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.schedule-week-block strong{font-size:.47rem;line-height:1.02}.schedule-week-block small{font-size:.41rem;line-height:1}.schedule-week-block-short small,.schedule-week-block-micro small{display:none}.schedule-week-block-draft{border-style:dashed;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--weekly-draft-tone) 14%,transparent)}.schedule-week-draft-remove{position:absolute;top:1px;right:1px;z-index:2;width:14px;height:14px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--surface) 82%,var(--weekly-draft-tone) 18%);color:var(--text-muted);font-size:.55rem;line-height:1;cursor:pointer}.schedule-week-block-draft strong{padding-right:10px}.schedule-bottom-nav.home-bottom-nav{width:min(100%,508px)}.schedule-bottom-nav.home-bottom-nav button,.schedule-bottom-nav.home-bottom-nav button:first-child{color:var(--text-muted)}.schedule-bottom-nav.home-bottom-nav button.active{color:var(--accent)}.schedule-bottom-nav.home-bottom-nav button svg{display:block;width:var(--home-nav-icon-size);height:var(--home-nav-icon-size);opacity:1;fill:none}.schedule-bottom-nav.home-bottom-nav button span:last-child{font-size:var(--home-nav-label-size)}.schedule-add-fab.daily-add-fab{right:max(22px,calc((100vw - min(100vw,508px))/2 + 22px))}.schedule-workspace-shell .month-picker-overlay{z-index:120}.schedule-workspace-shell .month-picker-modal{border:1px solid color-mix(in srgb,var(--border) 70%,transparent);box-shadow:0 24px 70px #0f172a3d}@media(max-width:520px){.schedule-workspace-shell{width:100%;padding:clamp(6px,1.05dvh,10px) 12px calc(var(--schedule-nav-height) + 7px + env(safe-area-inset-bottom,0px))}.schedule-app-header{margin-inline:-12px;padding-inline:12px}.schedule-toolbar-row{gap:5px}.schedule-period-control{grid-template-columns:30px minmax(0,1fr) 30px}.schedule-period-step{width:30px}.schedule-period-picker-trigger{padding-inline:4px;gap:4px}.schedule-view-tabs{min-width:214px}.schedule-view-tabs button{padding-inline:6px;font-size:.72rem}.schedule-bottom-nav.home-bottom-nav{width:100%}.schedule-add-fab.daily-add-fab{right:18px}}@media(max-width:430px){.schedule-toolbar-row{grid-template-columns:1fr}.schedule-view-tabs{width:100%}.schedule-period-control{grid-template-columns:36px minmax(0,1fr) 36px}.schedule-day-strip{margin-top:-1px}}@media(max-width:350px){.schedule-week-preview .weekly-draft-preview-grid{width:620px;min-width:620px}.schedule-week-preview-scroll{overflow-x:auto}}@media(max-height:600px){.schedule-week-preview .weekly-draft-preview-grid{min-height:400px}.schedule-week-preview-scroll{overflow-y:auto}}@media(max-height:760px){.schedule-workspace-shell{--schedule-nav-height: 68px;--home-nav-height: 68px;--home-nav-icon-size: 23px;--home-nav-label-size: .62rem;padding-bottom:calc(var(--schedule-nav-height) + 7px + env(safe-area-inset-bottom,0px))}}@media(max-height:720px){.schedule-app-header{min-height:38px}.schedule-toolbar{gap:5px;padding-block:6px}.schedule-view-tabs button{min-height:30px}.schedule-day-strip button{min-height:50px}.schedule-day-strip button strong{width:32px;height:32px}.schedule-month-static-grid .month-grid{grid-template-rows:28px repeat(6,minmax(0,1fr))}.schedule-month-view .month-date-number{width:22px;height:22px;font-size:.68rem}.schedule-month-view .month-major-event-pill{min-height:14px;font-size:.46rem}}@media(min-width:700px){.schedule-workspace-shell{width:min(96vw,1040px);max-width:1040px;padding-inline:clamp(16px,2.4vw,30px)}.schedule-app-header{margin-inline:calc(-1*clamp(16px,2.4vw,30px));padding-inline:clamp(16px,2.4vw,30px)}.schedule-bottom-nav.home-bottom-nav{width:min(96vw,1040px);max-width:1040px}.schedule-add-fab.daily-add-fab{right:max(30px,calc((100vw - min(96vw,1040px))/2 + 30px))}.schedule-week-preview .weekly-draft-preview-date strong{font-size:.66rem}.schedule-week-block strong{font-size:.55rem}.schedule-week-block small{font-size:.48rem}}@media(min-width:900px)and (min-height:1200px){.schedule-workspace-shell{--schedule-nav-height: 112px;--home-nav-height: 112px;--home-nav-icon-size: 33px;--home-nav-label-size: .8rem}}html{scrollbar-gutter:stable}.schedule-workspace-shell{background:radial-gradient(circle at 8% 0%,rgba(255,244,218,.44),transparent 24%),linear-gradient(180deg,#fbfdff,#f5faf7);grid-template-rows:auto auto minmax(0,1fr)}.schedule-app-header{display:none!important}@media(max-width:699px){.schedule-workspace-shell{width:min(100%,508px);max-width:508px;padding-inline:12px}}@media(min-width:700px){.schedule-workspace-shell{width:min(96vw,1040px);max-width:1040px;padding-inline:clamp(16px,2.4vw,30px)}}@media(min-width:900px){.schedule-workspace-shell{width:min(94vw,1080px);max-width:1080px;padding-inline:clamp(22px,2.6vw,34px)}}.schedule-workspace-shell,.schedule-workspace-shell .schedule-main{max-inline-size:100%;overflow-x:hidden}.primary-app-header{width:min(calc(100vw - 24px),484px);margin-inline:auto;align-self:start;justify-self:center}.primary-app-header.home-dashboard-default{display:block;height:auto;min-height:0;overflow:visible;align-content:initial;gap:0}.primary-app-header .home-topbar{width:100%}.workspace-primary-header,.ai-planning-primary-header{justify-self:center}.app-shell.home-app-shell:has(>.primary-app-header){grid-template-rows:auto minmax(0,1fr)}.app-shell.home-app-shell:has(>.primary-app-header)>.home-main{min-width:0;min-height:0;height:auto;padding-top:clamp(6px,.8dvh,9px)}.app-shell.home-app-shell:has(.ai-planning-view)>.home-main{grid-template-rows:minmax(0,1fr);gap:0}.primary-bottom-nav{--home-nav-height: 74px;--home-nav-icon-size: 25px;--home-nav-label-size: .66rem;--home-nav-active-size: 40px;--home-nav-active-icon-size: 22px;width:min(508px,100%);height:calc(var(--home-nav-height) + env(safe-area-inset-bottom,0px));padding:7px 8px env(safe-area-inset-bottom,0px)}.primary-bottom-nav.schedule-bottom-nav.home-bottom-nav{z-index:95;width:min(508px,100%);height:calc(var(--home-nav-height) + env(safe-area-inset-bottom,0px));padding:7px 8px env(safe-area-inset-bottom,0px);border-top:1px solid #e4e9f0;border-radius:0;background:#fffffffa;box-shadow:0 -8px 24px #22365812;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.primary-bottom-nav button:first-child:not(.active){color:var(--home-gray, var(--text-muted))}.primary-bottom-nav button.active{color:var(--accent)}.primary-bottom-nav .home-nav-active-circle{width:var(--home-nav-active-size);height:var(--home-nav-active-size);margin-top:-16px;background:var(--accent);color:#fff;box-shadow:0 7px 18px var(--accent-shadow)}.primary-bottom-nav svg,.primary-bottom-nav.schedule-bottom-nav.home-bottom-nav svg{width:var(--home-nav-icon-size);height:var(--home-nav-icon-size)}.primary-bottom-nav span:last-child,.primary-bottom-nav.schedule-bottom-nav.home-bottom-nav span:last-child{font-size:var(--home-nav-label-size)}.primary-bottom-nav .home-nav-active-circle svg,.primary-bottom-nav.schedule-bottom-nav.home-bottom-nav .home-nav-active-circle svg{width:var(--home-nav-active-icon-size);height:var(--home-nav-active-icon-size)}.app-shell:not(.home-app-shell):has(.primary-app-header){padding-top:clamp(6px,1.05dvh,10px)}.app-view-switcher{position:static;inset:auto;top:auto;bottom:auto;z-index:auto;width:min(100%,508px);margin-inline:auto;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.app-view-switcher.panel{padding:7px 8px;border:0;border-bottom:1px solid color-mix(in srgb,var(--border) 74%,transparent);border-radius:0;box-shadow:none}.schedule-workspace-shell{grid-template-rows:auto auto minmax(0,1fr)}.bookshelf-view,.report-view,.timetable-view{min-width:0}@media(max-width:699px){.app-shell:not(.home-app-shell):has(>.primary-app-header){padding-inline:12px}}@media(max-width:520px){.primary-app-header{width:min(calc(100vw - 16px),492px)}.app-shell:not(.home-app-shell):has(>.primary-app-header){padding-inline:8px}}@media(max-height:760px){.app-shell.home-app-shell:has(>.primary-app-header)>.home-main{padding-top:5px}.primary-bottom-nav{--home-nav-height: 68px;--home-nav-icon-size: 23px;--home-nav-label-size: .62rem;--home-nav-active-size: 37px;--home-nav-active-icon-size: 20px;padding-top:6px}.primary-bottom-nav.schedule-bottom-nav.home-bottom-nav{padding-top:6px}.primary-bottom-nav .home-nav-active-circle{margin-top:-14px}}@media(min-width:700px){.primary-app-header{width:min(calc(96vw - (2*clamp(16px,2.4vw,30px))),calc(1040px - (2*clamp(16px,2.4vw,30px))))}.primary-bottom-nav,.primary-bottom-nav.schedule-bottom-nav.home-bottom-nav{width:min(96vw,1040px)}.app-shell:has(.bookshelf-view){width:min(96vw,1040px);max-width:1040px;padding-inline:clamp(16px,2.4vw,30px)}}@media(min-width:700px)and (min-height:1000px){.primary-bottom-nav{--home-nav-height: 96px;--home-nav-icon-size: 31px;--home-nav-label-size: .78rem;--home-nav-active-size: 49px;--home-nav-active-icon-size: 27px}}@media(min-width:900px){.primary-app-header{width:min(calc(94vw - (2*clamp(22px,2.6vw,34px))),calc(1080px - (2*clamp(22px,2.6vw,34px))))}.primary-bottom-nav,.primary-bottom-nav.schedule-bottom-nav.home-bottom-nav{width:min(94vw,1080px)}.app-shell:has(.bookshelf-view){width:min(94vw,1080px);max-width:1080px;padding-inline:clamp(22px,2.6vw,34px)}}@media(min-width:900px)and (min-height:1200px){.primary-bottom-nav{--home-nav-height: 100px}}@media(max-width:540px){.app-view-switcher{width:100%}}.timetable-view{width:min(1180px,100%);margin-inline:auto;padding:clamp(12px,1.8vw,22px);border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:24px;background:color-mix(in srgb,var(--surface) 96%,#eef6ff 4%);box-shadow:0 14px 40px #0f172a0f}.timetable-view .timetable-header{min-height:52px;padding:0 2px}.timetable-view .timetable-title-block{text-align:left}.timetable-view .timetable-title-block h2{font-size:clamp(1.18rem,2vw,1.55rem);letter-spacing:-.02em}.timetable-view .timetable-term-control{gap:10px}.timetable-view .timetable-term-switch,.timetable-view .timetable-ocr-button{min-height:42px;padding-inline:16px;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border) 84%);background:var(--surface);box-shadow:0 4px 12px #0f172a0a}.timetable-view .timetable-grid-shell{padding:clamp(4px,.8vw,10px);border-color:color-mix(in srgb,var(--accent) 14%,var(--border) 86%);border-radius:22px;background:color-mix(in srgb,#edf6ff 72%,var(--surface) 28%)}.timetable-view .timetable-weekday-cell{color:var(--text);background:color-mix(in srgb,var(--surface) 92%,#eaf3ff 8%)}.timetable-view .timetable-grid-cell{border-color:color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--surface) 97%,#f5f9ff 3%)}.timetable-view .timetable-class-card{padding-inline:8px}.timetable-view .timetable-class-card strong{text-align:left}.timetable-view .timetable-grid-actions{gap:10px}.timetable-view .timetable-grid-actions .ghost-button{min-height:40px;min-width:132px;border-radius:13px;background:var(--surface)}.timetable-modal-overlay{z-index:90;align-items:stretch;justify-content:flex-end;padding:0 0 calc(var(--bottom-nav-height, 72px) + env(safe-area-inset-bottom,0px));background:#0f172a47}.modal-card.timetable-editor-modal{width:min(460px,42vw);height:100%;max-height:none;margin:0;padding:16px;border:0;border-left:1px solid var(--border);border-radius:24px 0 0 24px;background:var(--surface);box-shadow:-18px 0 52px #0f172a33}.timetable-editor-header{min-height:58px;padding-bottom:12px}.timetable-editor-heading h2{font-size:1.08rem}.timetable-editor-body{gap:12px;padding:4px 2px 10px}.timetable-editor-card{padding:14px;border-radius:16px;background:color-mix(in srgb,var(--surface) 94%,#eef5ff 6%)}.timetable-title-card{border-color:color-mix(in srgb,var(--accent) 24%,var(--border) 76%);background:color-mix(in srgb,var(--surface) 91%,#e8f2ff 9%)}.timetable-editor-actions{padding-top:4px}.timetable-bottom-nav{--primary-nav-active-accent: var(--accent)}:root[data-theme=dark] .timetable-view{background:var(--surface-strong);color:var(--text-primary);box-shadow:0 14px 40px #0000003d}:root[data-theme=dark] .timetable-view .timetable-term-switch,:root[data-theme=dark] .timetable-view .timetable-ocr-button,:root[data-theme=dark] .timetable-view .timetable-grid-actions .ghost-button{background:var(--surface-strong);color:var(--text-primary);box-shadow:0 4px 12px #00000024}:root[data-theme=dark] .timetable-view .timetable-grid-shell{background:color-mix(in srgb,var(--accent) 7%,var(--surface-strong) 93%)}:root[data-theme=dark] .timetable-view .timetable-weekday-cell{background:var(--surface-soft);color:var(--text-primary)}:root[data-theme=dark] .timetable-view .timetable-grid-cell{background:var(--surface-strong);color:var(--text-primary)}:root[data-theme=dark] .timetable-modal-overlay{background:#0000007a}:root[data-theme=dark] .modal-card.timetable-editor-modal{background:var(--surface-strong);color:var(--text-primary);box-shadow:-18px 0 52px #00000061}:root[data-theme=dark] .timetable-editor-card{border-color:var(--border);background:var(--surface-soft)}:root[data-theme=dark] .timetable-title-card{border-color:color-mix(in srgb,var(--accent) 28%,var(--border) 72%);background:color-mix(in srgb,var(--accent) 8%,var(--surface-strong) 92%)}@media screen and (max-width:900px){.timetable-view{width:100%;padding:12px;border-radius:20px}.modal-card.timetable-editor-modal{width:min(440px,64vw)}}@media screen and (max-width:640px){.timetable-view{margin-inline:0;padding:8px 4px;border-inline:0;border-radius:16px;box-shadow:none}.timetable-view .timetable-header{grid-template-columns:minmax(0,1fr) auto;padding-inline:4px}.timetable-view .timetable-term-control{gap:6px}.timetable-view .timetable-term-switch,.timetable-view .timetable-ocr-button{min-height:36px;padding-inline:10px}.timetable-modal-overlay{align-items:flex-end;justify-content:center;padding:0 0 calc(var(--bottom-nav-height, 72px) + env(safe-area-inset-bottom,0px))}.modal-card.timetable-editor-modal{width:100%;height:auto;max-height:min(78dvh,720px);border-left:0;border-top:1px solid var(--border);border-radius:24px 24px 0 0;box-shadow:0 -18px 50px #0f172a3d}:root[data-theme=dark] .modal-card.timetable-editor-modal{box-shadow:0 -18px 50px #0006}.timetable-editor-header:before{content:"";position:absolute;top:7px;left:50%;width:42px;height:4px;border-radius:999px;background:var(--border-strong);transform:translate(-50%)}.timetable-editor-header{position:relative;padding-top:10px}}.primary-bottom-nav button{color:var(--home-gray, var(--text-muted))}.primary-bottom-nav button.active{color:var(--primary-nav-active-accent, var(--accent))}.primary-bottom-nav .home-nav-active-circle{background:var(--primary-nav-active-accent, var(--accent));color:#fff}.primary-bottom-nav .home-nav-active-circle svg,.primary-bottom-nav .home-nav-active-circle svg *{color:#fff;stroke:currentColor!important;fill:none!important}.primary-bottom-nav button.active>span:last-child{color:var(--primary-nav-active-accent, var(--accent))}.primary-bottom-nav button:not(.active),.primary-bottom-nav button:not(.active) svg,.primary-bottom-nav button:not(.active) span:last-child{color:var(--home-gray, var(--text-muted))}.timetable-view{--timetable-period-column-width: 68px}.timetable-period-time-field{min-height:28px}.timetable-period-time-text{display:none}.timetable-period-cell input[type=time]{position:static;inset:auto;display:block;width:100%;height:28px;min-width:0;min-height:28px;padding:2px 3px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text-muted);font:inherit;font-size:10px;font-weight:600;line-height:1;text-align:center;font-variant-numeric:tabular-nums;opacity:1;-moz-appearance:auto;appearance:auto;-webkit-appearance:auto;pointer-events:auto;cursor:text}.timetable-period-cell input[type=time]:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border) 72%);background:color-mix(in srgb,var(--surface) 88%,transparent)}.timetable-period-cell input[type=time]:focus,.timetable-period-cell input[type=time]:focus-visible{outline:2px solid var(--focus-outline);outline-offset:1px;border-color:color-mix(in srgb,var(--accent) 44%,var(--border) 56%);background:var(--surface)}.timetable-period-cell input[type=time]::-webkit-calendar-picker-indicator{display:block;width:12px;height:12px;margin:0;padding:0;opacity:.62;cursor:pointer}.timetable-period-time-field:focus-within{outline:none;background:transparent}@media screen and (max-width:640px){.timetable-view{--timetable-period-column-width: 64px}.timetable-period-cell input[type=time]{font-size:9px;padding-inline:1px}.timetable-period-cell input[type=time]::-webkit-calendar-picker-indicator{width:10px;height:10px}}.schedule-add-fab.daily-add-fab{transform:translateZ(0) scale(1);transform-origin:center;opacity:1;transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .15s ease-out,box-shadow .22s ease-out;will-change:transform,opacity}.schedule-workspace-shell:has(.month-day-sheet-overlay) .schedule-add-fab.daily-add-fab{transform:translate3d(0,-42px,0) scale(.72);opacity:0;pointer-events:none;box-shadow:none}.month-day-sheet-overlay{background:#12182452;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);overscroll-behavior:contain}.month-day-sheet-overlay.is-open{animation:month-day-sheet-backdrop-in .22s ease-out both}.month-day-sheet-overlay.is-open .month-day-sheet{animation:month-day-sheet-panel-in .41s cubic-bezier(.22,1,.36,1) both}.month-day-sheet-overlay.is-open .month-day-sheet-add{animation:month-day-sheet-add-in .3s cubic-bezier(.22,1,.36,1) 90ms both}.month-day-sheet-overlay.is-closing{pointer-events:none;animation:month-day-sheet-backdrop-out .28s ease-in both}.month-day-sheet-overlay.is-closing .month-day-sheet{animation:month-day-sheet-panel-out .28s cubic-bezier(.4,0,.65,1) both}.month-day-sheet-overlay.is-closing .month-day-sheet-add{animation:month-day-sheet-add-out .15s ease-in both}.month-day-sheet{transform-origin:50% 100%;will-change:transform;backface-visibility:hidden}.month-day-sheet-add{will-change:transform,opacity}.month-day-sheet-close:disabled,.month-day-sheet-add:disabled,.month-day-sheet-event:disabled,.month-day-sheet-empty:disabled{pointer-events:none}@keyframes month-day-sheet-backdrop-in{0%{background:#12182400;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{background:#12182452;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}}@keyframes month-day-sheet-backdrop-out{0%{background:#12182452;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}to{background:#12182400;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}}@keyframes month-day-sheet-panel-in{0%{transform:translate3d(0,calc(100% + 24px),0) scale(.99)}72%{transform:translate3d(0,-3px,0) scale(1)}to{transform:translateZ(0) scale(1)}}@keyframes month-day-sheet-panel-out{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(0,calc(100% + 24px),0) scale(.99)}}@keyframes month-day-sheet-add-in{0%{transform:translate3d(0,26px,0) scale(.72);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}@keyframes month-day-sheet-add-out{0%{transform:translateZ(0) scale(1);opacity:1}to{transform:translate3d(0,18px,0) scale(.78);opacity:0}}@media(prefers-reduced-motion:reduce){.schedule-add-fab.daily-add-fab,.month-day-sheet-overlay,.month-day-sheet,.month-day-sheet-add{animation-duration:1ms!important;animation-delay:0ms!important;transition-duration:1ms!important}}.bottom-sheet-motion.is-open,[data-weekly-planning-motion=open] .quick-entry-overlay,.month-event-dialog-motion.is-open .month-event-modal-overlay,.timetable-term-sheet-overlay{animation:planner-sheet-overlay-in .18s ease-out both}.bottom-sheet-motion.is-open .schedule-action-sheet,.bottom-sheet-motion.is-open .schedule-record-sheet,[data-weekly-planning-motion=open] .quick-entry-modal,.month-event-dialog-motion.is-open .month-event-modal,.timetable-term-sheet-overlay .timetable-term-sheet{transform-origin:50% 100%;backface-visibility:hidden;will-change:transform,opacity;animation:planner-bottom-sheet-in .3s cubic-bezier(.22,1,.36,1) both}.bottom-sheet-motion.is-closing,[data-weekly-planning-motion=closing] .quick-entry-overlay,.month-event-dialog-motion.is-closing .month-event-modal-overlay{pointer-events:none;animation:planner-sheet-overlay-out .21s ease-in both}.bottom-sheet-motion.is-closing .schedule-action-sheet,.bottom-sheet-motion.is-closing .schedule-record-sheet,[data-weekly-planning-motion=closing] .quick-entry-modal,.month-event-dialog-motion.is-closing .month-event-modal{animation:planner-bottom-sheet-out .22s cubic-bezier(.4,0,.65,1) both}.bottom-sheet-motion.is-open .schedule-action-close,.bottom-sheet-motion.is-open .schedule-action-back,[data-weekly-planning-motion=open] .quick-entry-close-button,.month-event-dialog-motion.is-open .month-event-save-button,.timetable-term-sheet-overlay .section-header .ghost-button{transform-origin:center;will-change:transform,opacity;animation:planner-sheet-control-in .24s cubic-bezier(.22,1,.36,1) 70ms both}.month-event-dialog-motion .month-event-modal-overlay,.timetable-term-sheet-overlay,[data-weekly-planning-motion] .quick-entry-overlay,.bottom-sheet-motion{overscroll-behavior:contain}@keyframes planner-sheet-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes planner-sheet-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes planner-bottom-sheet-in{0%{transform:translate3d(0,calc(100% + 28px),0) scale(.992);opacity:.72}72%{transform:translate3d(0,-3px,0) scale(1.002);opacity:1}to{transform:translateZ(0) scale(1);opacity:1}}@keyframes planner-bottom-sheet-out{0%{transform:translateZ(0) scale(1);opacity:1}to{transform:translate3d(0,calc(100% + 28px),0) scale(.992);opacity:.78}}@keyframes planner-sheet-control-in{0%{transform:translate3d(0,8px,0) scale(.84);opacity:0}62%{transform:translate3d(0,-1px,0) scale(1.035);opacity:1}to{transform:translateZ(0) scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.bottom-sheet-motion,.bottom-sheet-motion .schedule-action-sheet,.bottom-sheet-motion .schedule-record-sheet,.bottom-sheet-motion .schedule-action-close,.bottom-sheet-motion .schedule-action-back,[data-weekly-planning-motion] .quick-entry-overlay,[data-weekly-planning-motion] .quick-entry-modal,[data-weekly-planning-motion] .quick-entry-close-button,.month-event-dialog-motion .month-event-modal-overlay,.month-event-dialog-motion .month-event-modal,.month-event-dialog-motion .month-event-save-button,.timetable-term-sheet-overlay,.timetable-term-sheet,.timetable-term-sheet-overlay .section-header .ghost-button{animation-duration:1ms!important;animation-delay:0ms!important;transition-duration:1ms!important}}.quick-add-menu{--quick-add-right: max(22px, calc((100vw - min(100vw, 900px))/2 + 22px) );--quick-add-bottom: calc(var(--schedule-nav-height, 72px) + 14px + env(safe-area-inset-bottom, 0px))}.quick-add-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:43;padding:0;border:0;background:#111b2b00;opacity:0;pointer-events:none;transition:opacity .16s ease-out,background .18s ease-out}.quick-add-menu.is-open .quick-add-backdrop{background:#111b2b1f;opacity:1;pointer-events:auto}.quick-add-options{position:fixed;z-index:47;right:var(--quick-add-right);bottom:calc(var(--quick-add-bottom) + 68px);display:grid;justify-items:end;gap:10px;pointer-events:none}.quick-add-option{--quick-add-delay: calc(var(--quick-add-index, 0) * 40ms);display:flex;align-items:center;justify-content:flex-end;gap:10px;min-height:44px;padding:0;border:0;background:transparent;color:var(--text);font:inherit;cursor:pointer;opacity:0;transform:translate3d(0,13px,0) scale(.86);transform-origin:right bottom;transition:transform .17s cubic-bezier(.4,0,.65,1),opacity .12s ease-in;will-change:transform,opacity}.quick-add-menu.is-open .quick-add-option{pointer-events:auto;animation:quick-add-option-in .24s cubic-bezier(.22,1,.36,1) var(--quick-add-delay) both}.quick-add-option-label{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:13px;background:color-mix(in srgb,var(--surface) 96%,transparent);color:var(--text);box-shadow:0 8px 24px #1123421a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:.82rem;font-weight:760;line-height:1;white-space:nowrap}.quick-add-option-icon{width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border) 78%);border-radius:50%;background:color-mix(in srgb,var(--surface) 88%,var(--accent) 12%);color:var(--accent);box-shadow:0 8px 22px #1123421c;transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s ease-out,color .16s ease-out}.quick-add-option:hover .quick-add-option-label,.quick-add-option:focus-visible .quick-add-option-label{border-color:color-mix(in srgb,var(--accent) 34%,var(--border) 66%);background:color-mix(in srgb,var(--surface) 91%,var(--accent) 9%)}.quick-add-option:hover .quick-add-option-icon,.quick-add-option:focus-visible .quick-add-option-icon{transform:scale(1.045);background:var(--accent);color:#fff}.quick-add-trigger{display:grid;place-items:center;padding:0}.quick-add-trigger .quick-add-trigger-icon{width:28px;height:28px;transition:transform .24s cubic-bezier(.22,1,.36,1);will-change:transform}.quick-add-menu.is-open .quick-add-trigger .quick-add-trigger-icon{transform:rotate(45deg)}.quick-add-menu.is-open .quick-add-trigger{box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 34%,transparent)}.schedule-workspace-shell:has(.month-event-modal-overlay) .schedule-add-fab.daily-add-fab,.schedule-workspace-shell:has(.quick-entry-overlay) .schedule-add-fab.daily-add-fab{transform:translate3d(0,-34px,0) scale(.72);opacity:0;pointer-events:none;box-shadow:none}.schedule-workspace-shell:has(.month-day-sheet-overlay) .quick-add-options,.schedule-workspace-shell:has(.month-event-modal-overlay) .quick-add-options,.schedule-workspace-shell:has(.quick-entry-overlay) .quick-add-options{opacity:0;pointer-events:none}@keyframes quick-add-option-in{0%{opacity:0;transform:translate3d(0,13px,0) scale(.86)}68%{opacity:1;transform:translate3d(0,-1px,0) scale(1.035)}to{opacity:1;transform:translateZ(0) scale(1)}}@media(max-width:520px){.quick-add-menu{--quick-add-right: 18px}.quick-add-option-label{font-size:.8rem}}@media(prefers-reduced-motion:reduce){.quick-add-backdrop,.quick-add-option,.quick-add-option-icon,.quick-add-trigger .quick-add-trigger-icon{animation-duration:1ms!important;animation-delay:0ms!important;transition-duration:1ms!important;transition-delay:0ms!important}}.timetable-view{--timetable-cell-height: clamp(108px, 13.5vh, 138px)}.timetable-view .timetable-grid-cell.has-class{border:2px solid color-mix(in srgb,var(--accent) 76%,var(--border) 24%);background:color-mix(in srgb,var(--accent) 8%,var(--surface-strong) 92%);box-shadow:none!important}.timetable-view .timetable-grid-cell.has-class:hover,.timetable-view .timetable-grid-cell.has-class:focus-visible{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong) 88%);box-shadow:none!important}.timetable-view .timetable-class-card{gap:6px;background:transparent}.timetable-view .timetable-class-card strong{-webkit-line-clamp:4}.timetable-view .timetable-class-meta{display:block;justify-self:stretch;width:100%;min-width:0;max-width:100%;padding:0 2px;border-radius:0;overflow:hidden;background:transparent;color:color-mix(in srgb,var(--accent) 74%,var(--text-primary) 26%);font-size:clamp(.48rem,1.55vw,.62rem);font-weight:800;line-height:1.12;text-align:center;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-break:anywhere}:root[data-theme=dark] .timetable-view .timetable-grid-cell.has-class{border-color:color-mix(in srgb,var(--accent) 90%,white 10%);background:color-mix(in srgb,var(--accent) 10%,var(--surface-strong) 90%);box-shadow:none!important}:root[data-theme=dark] .timetable-view .timetable-grid-cell.has-class:hover,:root[data-theme=dark] .timetable-view .timetable-grid-cell.has-class:focus-visible{border-color:color-mix(in srgb,var(--accent) 96%,white 4%);background:color-mix(in srgb,var(--accent) 14%,var(--surface-strong) 86%);box-shadow:none!important}@media screen and (max-width:900px){.timetable-view{--timetable-cell-height: clamp(106px, 13vh, 130px)}}@media screen and (max-width:640px){.timetable-view{--timetable-cell-height: clamp(102px, 12vh, 118px)}.timetable-view .timetable-class-card{gap:5px;padding:8px 3px 6px}.timetable-view .timetable-class-card strong{-webkit-line-clamp:4}.timetable-view .timetable-class-meta{padding-inline:1px;font-size:clamp(.44rem,1.5vw,.56rem);line-height:1.08}}:root{--ui-motion-fast: .15s;--ui-motion-base: .21s;--ui-motion-spring: cubic-bezier(.22, 1, .36, 1)}.home-main .splash-screen,.section-stack .splash-screen{min-height:clamp(190px,38vh,320px);padding:24px;background:transparent}.home-main .splash-screen__inner,.section-stack .splash-screen__inner{width:min(320px,100%);gap:12px}.home-main .splash-screen__logo,.section-stack .splash-screen__logo{width:min(210px,58vw)}:root[data-theme=dark] .splash-screen{background:var(--app-background);color:var(--text-primary)}.home-main>.home-dashboard{animation:ui-surface-fade var(--ui-motion-fast) ease-out both}.home-main>.ai-planning-view,.section-stack>.schedule-month-view,.section-stack>.bookshelf-view,.section-stack>.timetable-view{animation:ui-surface-enter var(--ui-motion-base) var(--ui-motion-spring) both}@keyframes ui-surface-fade{0%{opacity:0}to{opacity:1}}@keyframes ui-surface-enter{0%{opacity:0;transform:translate3d(0,7px,0)}to{opacity:1;transform:translateZ(0)}}.home-streak-flame{transform-origin:50% 82%;animation:ui-streak-pop .52s var(--ui-motion-spring) both}@keyframes ui-streak-pop{0%{opacity:.76;transform:translate3d(0,3px,0) rotate(-8deg) scale(.76)}58%{opacity:1;transform:translate3d(0,-2px,0) rotate(5deg) scale(1.13)}to{opacity:1;transform:translateZ(0) rotate(0) scale(1)}}.home-next-card{transition:transform var(--ui-motion-base) var(--ui-motion-spring),border-color var(--ui-motion-fast) ease-out,box-shadow var(--ui-motion-base) ease-out}@media(hover:hover)and (pointer:fine){.home-next-card:hover{transform:translate3d(0,-2px,0);border-color:color-mix(in srgb,var(--accent) 24%,var(--border) 76%);box-shadow:0 12px 28px color-mix(in srgb,var(--accent-shadow) 54%,transparent)}}.home-nav-active-circle{transform-origin:center;animation:ui-nav-target-in .28s var(--ui-motion-spring) both}@keyframes ui-nav-target-in{0%{opacity:.62;transform:scale(.76)}70%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.ai-planning-typing{align-items:center;min-height:38px}.ai-planning-typing:after{content:"内容を整理しています";margin-left:7px;color:var(--text-muted);font-size:.76rem;font-weight:760;letter-spacing:.01em;animation:ui-ai-status-breathe 1.25s ease-in-out infinite}@keyframes ui-ai-status-breathe{0%,to{opacity:.58}50%{opacity:1}}.timetable-view .timetable-grid-cell.has-class{transform-origin:center;transition:transform var(--ui-motion-fast) var(--ui-motion-spring),border-color var(--ui-motion-fast) ease-out,background var(--ui-motion-fast) ease-out}.timetable-view .timetable-grid-cell.has-class:active{transform:scale(.965);border-color:color-mix(in srgb,var(--accent) 96%,white 4%);background:color-mix(in srgb,var(--accent) 16%,var(--surface-strong) 84%)}.bookshelf-view button.bookshelf-material-list-row,.bookshelf-view button.bookshelf-subject-toggle,.bookshelf-view .bookshelf-icon-button{transition:transform var(--ui-motion-fast) var(--ui-motion-spring),border-color var(--ui-motion-fast) ease-out,background var(--ui-motion-fast) ease-out}.bookshelf-view button.bookshelf-material-list-row:active,.bookshelf-view button.bookshelf-subject-toggle:active,.bookshelf-view .bookshelf-icon-button:active{transform:scale(.975)}.primary-bottom-nav button:focus-visible,.home-dashboard button:focus-visible,.ai-planning-view button:focus-visible,.schedule-workspace-shell button:focus-visible,.bookshelf-view button:focus-visible,.timetable-view button:focus-visible{outline:3px solid var(--focus-outline);outline-offset:2px}@media(prefers-reduced-motion:reduce){.home-main>.home-dashboard,.home-main>.ai-planning-view,.section-stack>.schedule-month-view,.section-stack>.bookshelf-view,.section-stack>.timetable-view,.home-streak-flame,.home-nav-active-circle,.ai-planning-typing:after,.splash-screen__logo{animation:none!important}.home-next-card,.timetable-view .timetable-grid-cell.has-class,.bookshelf-view button.bookshelf-material-list-row,.bookshelf-view button.bookshelf-subject-toggle,.bookshelf-view .bookshelf-icon-button{transition-duration:1ms!important}}:root[data-theme=dark] .home-date-segment{background:transparent}.weekly-progress-summary{color:#68758a}.weekly-progress-negative{color:#d92d43}:root[data-theme=dark] .bookshelf-add-material-fab{color:#10233f}.month-grid-row{display:grid;grid-column:1 / -1;grid-template-columns:subgrid}.month-grid-row:not(:last-child) .month-cell{border-bottom-width:0}.schedule-month-view .month-grid-row .month-cell,.month-grid-row:last-child .month-cell{border-bottom-width:1px}.bookshelf-material-list-row,.bookshelf-recent-row{position:relative;cursor:default}.bookshelf-row-open-button{position:absolute;z-index:1;top:0;right:48px;bottom:0;left:0;width:auto!important;height:auto!important;padding:0!important;border:0!important;border-radius:10px!important;background:transparent!important;color:inherit;cursor:pointer}.bookshelf-recent-row>span{min-width:0;display:grid;gap:3px}.bookshelf-material-list-row>.bookshelf-row-menu-button,.bookshelf-recent-row>.bookshelf-row-menu-button{position:relative;z-index:2}.bookshelf-row-open-button:focus-visible,.bookshelf-row-menu-button:focus-visible{outline:2px solid var(--bookshelf-blue);outline-offset:-2px}:root[data-theme=dark] .bookshelf-row-menu-button{color:var(--text-primary)}@media(max-width:440px){.bookshelf-row-open-button{right:42px}}:root{--text: var(--text-primary)}.home-dashboard{--home-blue: var(--accent);--home-blue-strong: var(--accent-strong)}.bookshelf-view{--bookshelf-blue: var(--accent);--bookshelf-blue-strong: var(--accent-strong)}.home-start-button{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 88%,white 12%),var(--accent-strong));box-shadow:0 7px 18px var(--accent-shadow)}.home-bottom-nav button.active,.home-bottom-nav button:first-child.active,.bookshelf-bottom-nav button.active,.schedule-bottom-nav.home-bottom-nav button.active{color:var(--accent)}.home-nav-active-circle,.bookshelf-add-material-fab,.bookshelf-detail-primary-action>button,.schedule-view-tabs button.active,.schedule-day-strip button.active strong,.month-day-sheet-add,.schedule-add-fab.daily-add-fab{background:var(--accent);color:#fff}.bookshelf-category-chips button.active{border-color:var(--accent);background:var(--accent);color:#fff}.bookshelf-add-material-fab,.bookshelf-detail-primary-action>button{box-shadow:0 8px 18px var(--accent-shadow)}.app-shell.home-app-shell .ai-planning-view .ai-planning-heading-icon,.app-shell.home-app-shell .ai-planning-view .ai-planning-message-avatar,.app-shell.home-app-shell .ai-planning-view .ai-planning-chat-menu-button,.app-shell.home-app-shell .ai-planning-view .ai-planning-user-placeholder{border-color:color-mix(in srgb,var(--accent) 28%,var(--border) 72%);background:color-mix(in srgb,var(--accent) 11%,var(--surface-strong) 89%);color:var(--accent)}.app-shell.home-app-shell .ai-planning-view .ai-planning-preview-button,.app-shell.home-app-shell .ai-planning-view .ai-planning-primary-action,.app-shell.home-app-shell .ai-planning-view .ai-planning-send-button,.app-shell.home-app-shell .ai-planning-view .ai-planning-plan-card-head b,.app-shell.home-app-shell .ai-planning-view .ai-planning-preview-header>span,.app-shell.home-app-shell .ai-planning-view .ai-chat-new-button,.app-shell.home-app-shell .ai-planning-view .ai-planning-nav-home,.app-shell.home-app-shell .ai-planning-view .home-bottom-nav.ai-planning-home-nav .home-nav-active-circle{border-color:var(--accent);background:var(--accent);color:#fff}.app-shell.home-app-shell .ai-planning-view .ai-planning-more-button,.app-shell.home-app-shell .ai-planning-view .ai-planning-preview-header button{border-color:color-mix(in srgb,var(--accent) 36%,var(--border) 64%);color:var(--accent)}.app-shell.home-app-shell .ai-planning-view .ai-planning-plan-summary svg,.app-shell.home-app-shell .ai-planning-view .ai-planning-starter-list button svg,.app-shell.home-app-shell .ai-planning-view .ai-planning-bottom-nav button.active,.app-shell.home-app-shell .ai-planning-view .home-bottom-nav.ai-planning-home-nav button.active{color:var(--accent)}:root[data-theme=dark] .app-shell,:root[data-theme=dark] .app-shell.home-app-shell,:root[data-theme=dark] .app-shell:has(.bookshelf-view),:root[data-theme=dark] .schedule-workspace-shell{background:var(--app-background);color:var(--text-primary)}:root[data-theme=dark] .home-dashboard{--home-ink: var(--text-primary);--home-muted: var(--text-muted);--home-line: var(--border);--home-line-soft: color-mix(in srgb, var(--border) 76%, transparent);--home-card: var(--surface-strong);--home-shadow-soft: 0 8px 24px rgba(0, 0, 0, .18);--home-shadow-card: 0 10px 30px rgba(0, 0, 0, .2);color:var(--text-primary)}:root[data-theme=dark] .home-streak-card,:root[data-theme=dark] .home-icon-button,:root[data-theme=dark] .home-date-paper,:root[data-theme=dark] .home-panel,:root[data-theme=dark] .home-setup-card,:root[data-theme=dark] .home-material-panel{border-color:var(--border);background:var(--surface-strong);color:var(--text-primary)}:root[data-theme=dark] .home-streak-card span,:root[data-theme=dark] .home-streak-card small,:root[data-theme=dark] .home-next-meta,:root[data-theme=dark] .home-next-meta svg,:root[data-theme=dark] .home-schedule-content time,:root[data-theme=dark] .home-schedule-content small,:root[data-theme=dark] .home-schedule-add-row,:root[data-theme=dark] .home-schedule-empty,:root[data-theme=dark] .home-scroll-hint,:root[data-theme=dark] .home-schedule-date-label,:root[data-theme=dark] .home-progress-copy,:root[data-theme=dark] .home-chart-legend,:root[data-theme=dark] .home-chart-day small,:root[data-theme=dark] .home-material-copy small,:root[data-theme=dark] .home-material-empty small,:root[data-theme=dark] .home-section-heading p,:root[data-theme=dark] .home-setup-copy,:root[data-theme=dark] .home-setup-action small{color:var(--text-muted)}:root[data-theme=dark] .home-streak-card strong,:root[data-theme=dark] .home-date-display,:root[data-theme=dark] .home-date-value,:root[data-theme=dark] .home-date-unit,:root[data-theme=dark] .home-icon-button,:root[data-theme=dark] .home-next-copy h1,:root[data-theme=dark] .home-schedule-row,:root[data-theme=dark] .home-progress-copy strong,:root[data-theme=dark] .home-material-row,:root[data-theme=dark] .home-material-title-line strong,:root[data-theme=dark] .home-material-empty strong,:root[data-theme=dark] .home-setup-heading h1,:root[data-theme=dark] .home-setup-action,:root[data-theme=dark] .home-setup-action strong{color:var(--text-primary)}:root[data-theme=dark] .home-date-segment{border-color:var(--border);background:var(--surface-strong)}:root[data-theme=dark] .home-date-ring{border-color:color-mix(in srgb,var(--text-primary) 76%,transparent);background:var(--surface-strong);box-shadow:0 1px 2px #00000057}:root[data-theme=dark] .home-date-ring:after{background:color-mix(in srgb,var(--text-primary) 76%,transparent)}:root[data-theme=dark] .home-avatar-button{background:color-mix(in srgb,var(--accent) 14%,var(--surface-strong) 86%)}:root[data-theme=dark] .home-notification-badge{border-color:var(--surface-strong)}:root[data-theme=dark] .home-next-card{border-color:var(--border);background:linear-gradient(90deg,color-mix(in srgb,var(--surface-strong) 94%,var(--accent) 6%),color-mix(in srgb,var(--surface-strong) 97%,var(--accent) 3%) 56%,color-mix(in srgb,var(--surface-strong) 78%,transparent))}:root[data-theme=dark] .home-schedule-list,:root[data-theme=dark] .home-schedule-row,:root[data-theme=dark] .home-schedule-add-row,:root[data-theme=dark] .home-schedule-empty{border-color:var(--border);background:var(--surface-strong)}:root[data-theme=dark] .home-time-dot:after{border-color:color-mix(in srgb,var(--text-muted) 32%,transparent)}:root[data-theme=dark] .home-alert-card.danger{border-color:color-mix(in srgb,var(--danger) 24%,var(--border) 76%);background:linear-gradient(145deg,color-mix(in srgb,var(--danger) 9%,var(--surface-strong) 91%),color-mix(in srgb,var(--danger) 5%,var(--surface-strong) 95%))}:root[data-theme=dark] .home-alert-card.warning{border-color:color-mix(in srgb,#f2a45a 22%,var(--border) 78%);background:linear-gradient(145deg,color-mix(in srgb,#d88942 9%,var(--surface-strong) 91%),color-mix(in srgb,#d88942 5%,var(--surface-strong) 95%))}:root[data-theme=dark] .home-alert-heading b{background:#ffffff0f}:root[data-theme=dark] .home-alert-body{color:var(--text-primary)}:root[data-theme=dark] .home-alert-body small{color:var(--text-muted)}:root[data-theme=dark] .home-progress-ring{background:conic-gradient(var(--accent) var(--home-progress),color-mix(in srgb,var(--text-muted) 18%,var(--surface-strong) 82%) 0)}:root[data-theme=dark] .home-progress-ring>div,:root[data-theme=dark] .home-chart-legend .planned:before{background:var(--surface-strong)}:root[data-theme=dark] .home-chart-plan{border-color:color-mix(in srgb,var(--accent) 62%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface-strong) 90%)}:root[data-theme=dark] .home-material-list,:root[data-theme=dark] .home-material-row,:root[data-theme=dark] .home-material-empty,:root[data-theme=dark] .home-setup-action{border-color:var(--border);background:var(--surface-strong)}:root[data-theme=dark] .home-material-icon,:root[data-theme=dark] .home-setup-mark,:root[data-theme=dark] .home-setup-action-icon{background:color-mix(in srgb,var(--accent) 10%,var(--surface-soft) 90%);color:var(--accent)}:root[data-theme=dark] .home-material-track{background:color-mix(in srgb,var(--text-muted) 16%,var(--surface-strong) 84%)}:root[data-theme=dark] .home-material-row,:root[data-theme=dark] .home-material-list,:root[data-theme=dark] .home-setup-action{box-shadow:none}:root[data-theme=dark] .home-setup-action.primary{border-color:color-mix(in srgb,var(--accent) 26%,var(--border) 74%);background:color-mix(in srgb,var(--accent) 9%,var(--surface-strong) 91%)}:root[data-theme=dark] .home-bottom-nav,:root[data-theme=dark] .schedule-bottom-nav.home-bottom-nav,:root[data-theme=dark] .bookshelf-bottom-nav{border-color:var(--border);background:color-mix(in srgb,var(--surface-strong) 96%,transparent);box-shadow:0 -8px 24px #0000003d}:root[data-theme=dark] .home-bottom-nav button,:root[data-theme=dark] .home-bottom-nav button:first-child,:root[data-theme=dark] .bookshelf-bottom-nav button,:root[data-theme=dark] .bookshelf-bottom-nav button:first-child,:root[data-theme=dark] .schedule-bottom-nav.home-bottom-nav button{color:var(--text-muted)}:root[data-theme=dark] .home-bottom-nav button.active,:root[data-theme=dark] .home-bottom-nav button:first-child.active,:root[data-theme=dark] .bookshelf-bottom-nav button.active,:root[data-theme=dark] .schedule-bottom-nav.home-bottom-nav button.active{color:var(--accent)}:root[data-theme=dark] .bookshelf-view{--bookshelf-ink: var(--text-primary);--bookshelf-muted: var(--text-muted);--bookshelf-line: var(--border);--bookshelf-soft: var(--surface-soft);color:var(--text-primary)}:root[data-theme=dark] .bookshelf-primary-header{--home-ink: var(--text-primary);--home-muted: var(--text-muted);--home-line: var(--border);--home-line-soft: color-mix(in srgb, var(--border) 76%, transparent);--home-card: var(--surface-strong);--home-shadow-soft: 0 8px 24px rgba(0, 0, 0, .18)}:root[data-theme=dark] .bookshelf-dashboard,:root[data-theme=dark] .bookshelf-detail-page{border-color:var(--border);background:color-mix(in srgb,var(--surface-strong) 97%,transparent);color:var(--text-primary);box-shadow:0 10px 30px #0003}:root[data-theme=dark] .bookshelf-page-title-row h1,:root[data-theme=dark] .bookshelf-icon-button,:root[data-theme=dark] .bookshelf-page-title-row button,:root[data-theme=dark] .bookshelf-detail-header button,:root[data-theme=dark] .bookshelf-modal-title-row>button,:root[data-theme=dark] .bookshelf-section-heading h2,:root[data-theme=dark] .bookshelf-detail-section-head h3,:root[data-theme=dark] .bookshelf-featured-copy>strong,:root[data-theme=dark] .bookshelf-material-row-copy strong,:root[data-theme=dark] .bookshelf-recent-row strong,:root[data-theme=dark] .bookshelf-subject-toggle,:root[data-theme=dark] .bookshelf-material-list-row,:root[data-theme=dark] .bookshelf-detail-hero-copy h2,:root[data-theme=dark] .bookshelf-detail-metrics strong,:root[data-theme=dark] .bookshelf-activity-list strong,:root[data-theme=dark] .bookshelf-action-sheet,:root[data-theme=dark] .bookshelf-action-sheet>button,:root[data-theme=dark] .bookshelf-sheet-cancel,:root[data-theme=dark] .bookshelf-settings-group,:root[data-theme=dark] .bookshelf-manager-list>button,:root[data-theme=dark] .bookshelf-favorite-manager-list>button,:root[data-theme=dark] .bookshelf-structure-edit-row,:root[data-theme=dark] .bookshelf-structure-edit-row input{color:var(--text-primary)}:root[data-theme=dark] .bookshelf-featured-copy>small,:root[data-theme=dark] .bookshelf-material-row-copy small,:root[data-theme=dark] .bookshelf-recent-row small,:root[data-theme=dark] .bookshelf-progress-caption,:root[data-theme=dark] .bookshelf-subject-toggle small,:root[data-theme=dark] .bookshelf-material-row-progress small,:root[data-theme=dark] .bookshelf-recent-row time,:root[data-theme=dark] .bookshelf-detail-hero-copy p,:root[data-theme=dark] .bookshelf-detail-section-head p,:root[data-theme=dark] .bookshelf-detail-progress-line strong,:root[data-theme=dark] .bookshelf-detail-hero-copy>small,:root[data-theme=dark] .bookshelf-detail-metrics span,:root[data-theme=dark] .bookshelf-detail-tabs button,:root[data-theme=dark] .bookshelf-structure-copy small,:root[data-theme=dark] .bookshelf-structure-row>span,:root[data-theme=dark] .bookshelf-activity-list span,:root[data-theme=dark] .bookshelf-activity-list small,:root[data-theme=dark] .bookshelf-structure-edit-row label>span{color:var(--text-muted)}:root[data-theme=dark] .bookshelf-search-field,:root[data-theme=dark] .bookshelf-category-chips button,:root[data-theme=dark] .bookshelf-featured-card,:root[data-theme=dark] .bookshelf-subject-list,:root[data-theme=dark] .bookshelf-recent-list,:root[data-theme=dark] .bookshelf-subject-toggle,:root[data-theme=dark] .bookshelf-detail-metrics,:root[data-theme=dark] .bookshelf-structure-list,:root[data-theme=dark] .bookshelf-activity-list,:root[data-theme=dark] .bookshelf-settings-group,:root[data-theme=dark] .bookshelf-structure-edit-row,:root[data-theme=dark] .bookshelf-action-sheet,:root[data-theme=dark] .bookshelf-action-sheet>button:not(.danger),:root[data-theme=dark] .bookshelf-sheet-cancel,:root[data-theme=dark] .bookshelf-manager-list>button,:root[data-theme=dark] .bookshelf-favorite-manager-list>button{border-color:var(--border);background:var(--surface-strong)}:root[data-theme=dark] .bookshelf-search-field input,:root[data-theme=dark] .bookshelf-structure-edit-row input{border-color:var(--border);background:transparent;color:var(--text-primary)}:root[data-theme=dark] .bookshelf-search-field input::placeholder,:root[data-theme=dark] .bookshelf-structure-edit-row input::placeholder{color:var(--text-muted)}:root[data-theme=dark] .bookshelf-category-chips button{color:var(--text-primary)}:root[data-theme=dark] .bookshelf-inline-progress,:root[data-theme=dark] .bookshelf-detail-progress-track{background:color-mix(in srgb,var(--text-muted) 18%,var(--surface-strong) 82%)}:root[data-theme=dark] .bookshelf-subject-row+.bookshelf-subject-row,:root[data-theme=dark] .bookshelf-recent-row+.bookshelf-recent-row,:root[data-theme=dark] .bookshelf-material-list-row+.bookshelf-material-list-row,:root[data-theme=dark] .bookshelf-detail-header,:root[data-theme=dark] .bookshelf-detail-metrics>div+div,:root[data-theme=dark] .bookshelf-detail-tabs,:root[data-theme=dark] .bookshelf-structure-row+.bookshelf-structure-row,:root[data-theme=dark] .bookshelf-structure-list>div+div>.bookshelf-structure-row,:root[data-theme=dark] .bookshelf-activity-list>div+div,:root[data-theme=dark] .bookshelf-action-sheet>button,:root[data-theme=dark] .bookshelf-manager-list>button+button,:root[data-theme=dark] .bookshelf-favorite-manager-list>button+button{border-color:var(--border)}:root[data-theme=dark] .bookshelf-subject-symbol,:root[data-theme=dark] .bookshelf-cover-placeholder,:root[data-theme=dark] .bookshelf-list-cover{background:color-mix(in srgb,var(--subject-color, var(--accent)) 12%,var(--surface-soft) 88%)}:root[data-theme=dark] .bookshelf-expanded-materials{border-color:var(--border);background:color-mix(in srgb,var(--surface-soft) 92%,transparent)}:root[data-theme=dark] .bookshelf-detail-cover-image,:root[data-theme=dark] .bookshelf-detail-cover-placeholder{border-color:var(--border);background:var(--surface-soft)}:root[data-theme=dark] .bookshelf-important-chip{background:color-mix(in srgb,var(--accent) 14%,var(--surface-strong) 86%);color:var(--accent)}:root[data-theme=dark] .bookshelf-detail-metrics svg{color:var(--text-muted)}:root[data-theme=dark] .bookshelf-detail-tabs button.active{border-bottom-color:var(--accent);color:var(--accent)}:root[data-theme=dark] .bookshelf-structure-status,:root[data-theme=dark] .bookshelf-aggregate-progress{border-color:color-mix(in srgb,var(--accent) 22%,var(--border) 78%);background:color-mix(in srgb,var(--accent) 8%,var(--surface-strong) 92%)}:root[data-theme=dark] .bookshelf-structure-status.is-disabled{border-color:var(--border);background:var(--surface-soft)}:root[data-theme=dark] .bookshelf-sheet-handle{background:color-mix(in srgb,var(--text-muted) 58%,transparent)}:root[data-theme=dark] .bookshelf-sheet-cancel{border-top-color:color-mix(in srgb,var(--border) 80%,var(--surface-soft) 20%)}:root[data-theme=dark] .bookshelf-switch span{background:color-mix(in srgb,var(--text-muted) 28%,var(--surface-strong) 72%)}:root[data-theme=dark] .bookshelf-switch input:checked+span{background:var(--accent)}:root[data-theme=dark] .bookshelf-switch span:after{background:var(--surface-strong)}:root[data-theme=dark] .bookshelf-add-structure-row{border-color:color-mix(in srgb,var(--accent) 30%,var(--border) 70%);background:color-mix(in srgb,var(--accent) 8%,var(--surface-strong) 92%);color:var(--accent)}:root[data-theme=dark] .schedule-workspace-shell,:root[data-theme=dark] .schedule-toolbar,:root[data-theme=dark] .schedule-week-preview-scroll,:root[data-theme=dark] .schedule-week-day-column,:root[data-theme=dark] .month-day-sheet{color:var(--text-primary);background-color:var(--surface)}:root[data-theme=dark] .schedule-app-header,:root[data-theme=dark] .schedule-bottom-nav.home-bottom-nav{border-color:var(--border);background:color-mix(in srgb,var(--surface-strong) 94%,transparent)}:root[data-theme=dark] .schedule-view-tabs{border-color:var(--border);background:var(--surface-soft)}:root[data-theme=dark] .schedule-back-button,:root[data-theme=dark] .schedule-period-control,:root[data-theme=dark] .schedule-period-picker-trigger,:root[data-theme=dark] .schedule-view-tabs button,:root[data-theme=dark] .schedule-day-strip button,:root[data-theme=dark] .schedule-month-view .month-weekday,:root[data-theme=dark] .month-day-sheet-close,:root[data-theme=dark] .month-day-sheet-event{color:var(--text-primary)}:root[data-theme=dark] .schedule-month-view .month-cell.is-selected{background:color-mix(in srgb,var(--text-primary) 8%,transparent)}:root[data-theme=dark] .schedule-month-view .month-cell.is-selected .month-date-number{background:color-mix(in srgb,var(--text-primary) 88%,#000 12%);color:var(--surface-strong)!important}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view.home-dashboard{color:var(--text-primary);background:transparent}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-card,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-plan-card,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-composer,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-preview-modal,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-preview-scroll,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-week-header,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-drawer,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-search,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-starter-list button{border-color:var(--border);background:var(--surface-strong);color:var(--text-primary)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-heading,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-plan-summary,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-preview-header,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-week-grid,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-time-axis,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-day-column{border-color:var(--border)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-heading p,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-plan-card-head span,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-plan-summary,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-preview-header p,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-week-header small,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-starters>p,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-attachment-preview>span,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-select small,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-empty{color:var(--text-muted)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-bubble{background:var(--surface-soft);color:var(--text-primary)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-message-row.user .ai-planning-bubble,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-row.active{background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong) 88%);color:var(--text-primary)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-more-button,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-preview-header button{background:var(--surface-strong)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-composer textarea,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-composer-side,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-mic-button,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-drawer-header button,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-delete,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-select,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-search input{color:var(--text-primary)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-composer-side,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-attachment-thumbnail,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-attachment-remove{border-color:var(--border)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-attachment-thumbnail{background:var(--surface-soft)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-attachment-remove{background:var(--surface-strong);color:var(--text-primary)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-drawer-header button:hover,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-chat-delete:hover,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-starter-list button:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface-strong) 92%)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-error{border-color:var(--notice-error-border);background:var(--notice-error-background);color:var(--danger)}:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .ai-planning-bottom-nav,:root[data-theme=dark] .app-shell.home-app-shell .ai-planning-view .home-bottom-nav.ai-planning-home-nav{border-color:var(--border);background:color-mix(in srgb,var(--surface-strong) 96%,transparent)}[data-quick-entry-manual-only=true] .quick-entry-switch-card,[data-quick-entry-manual-only=true] .quick-entry-ai-panel{display:none!important}.schedule-day-month-boundary{flex:0 0 64px;min-width:64px;min-height:58px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;margin:0 5px 0 3px;padding:4px 4px 4px 10px;border-left:2px solid color-mix(in srgb,var(--accent) 72%,var(--border) 28%);color:var(--text-muted);scroll-snap-align:none;-webkit-user-select:none;user-select:none}.schedule-day-month-boundary span{font-size:.58rem;font-weight:800;line-height:1;white-space:nowrap}.schedule-day-month-boundary strong{color:var(--accent);font-size:.86rem;font-weight:900;line-height:1;white-space:nowrap}@media(max-width:430px){.schedule-day-month-boundary{flex-basis:58px;min-width:58px;margin-right:3px;padding-left:8px}.schedule-day-month-boundary strong{font-size:.8rem}}@media(min-width:900px){.schedule-workspace-shell{width:min(94vw,1080px);max-width:1080px;padding-inline:clamp(22px,2.6vw,34px)}.schedule-app-header{margin-inline:calc(-1*clamp(22px,2.6vw,34px));padding-inline:clamp(22px,2.6vw,34px)}.schedule-bottom-nav.home-bottom-nav{width:min(94vw,1080px);max-width:1080px}}
