:root{--color-primary:#cfa6ae;--color-primary-dark:#a97782;--color-primary-ink:#80545e;--color-primary-soft:#f3e5e8;--color-accent:#94a998;--color-accent-dark:#6f8574;--color-accent-soft:#e4ebe5;--color-gas:#a58a7b;--color-gas-dark:#725b50;--color-gas-soft:#eee3dc;--color-background:#f8f5f3;--color-surface:#fffdfc;--color-surface-muted:#eee7e3;--color-border:#ddd3ce;--color-text:#3f3937;--color-text-muted:#7b716d;--color-text-muted-strong:#786e6a;--color-success:#78957f;--color-success-soft:#e3ece5;--color-success-dark:#526d59;--color-warning:#b99562;--color-warning-soft:#f5eadb;--color-warning-dark:#76592f;--color-danger:#b86f72;--color-danger-soft:#f7e5e5;--color-danger-dark:#874b4e;--color-focus:#6f8574;--shadow-soft:0 12px 30px #56453f17;--radius-small:10px;--radius-medium:18px;--touch-target:46px;--sidebar-width:232px;--header-height:72px}
*{box-sizing:border-box}html{background:var(--color-background);min-width:320px;color:var(--color-text);-webkit-text-size-adjust:100%}body{background:var(--color-background);min-height:100vh;margin:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic UI,Yu Gothic,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.app-shell{min-height:100vh}.app-header{z-index:30;min-height:var(--header-height);border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-content:space-between;align-items:center;gap:16px;padding:12px clamp(18px,3vw,36px);display:flex;position:sticky;top:0}.brand{gap:1px;display:grid}.brand-name{letter-spacing:.02em;font-size:clamp(1.05rem,2vw,1.25rem);font-weight:750}.brand-status{color:var(--color-text-muted);font-size:.78rem}.header-login{min-height:var(--touch-target);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;font-weight:650;font:inherit;border-radius:999px;justify-content:center;align-items:center;padding:8px 18px;display:inline-flex}.header-account{align-items:center;gap:12px;display:flex}.header-user-name{text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-weight:650;overflow:hidden}.app-body{min-height:calc(100vh - var(--header-height));grid-template-columns:var(--sidebar-width) minmax(0, 1fr);display:grid}.sidebar{top:var(--header-height);height:calc(100vh - var(--header-height));border-right:1px solid var(--color-border);background:var(--color-surface);padding:24px 16px;position:sticky}.navigation-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.navigation-link{min-height:var(--touch-target);border-radius:var(--radius-small);color:var(--color-text-muted);align-items:center;padding:10px 14px;font-weight:650;display:flex}.navigation-link:hover,.navigation-link[aria-current=page]{background:var(--color-primary-soft);color:var(--color-primary-ink)}.main-content{min-width:0;padding:clamp(24px,4vw,52px)}.placeholder{width:min(100%,920px);margin:0 auto}.eyebrow{color:var(--color-primary-ink);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.85rem;font-weight:750}.placeholder h1{letter-spacing:-.035em;margin:0;font-size:clamp(2rem,5vw,3.4rem);line-height:1.18}.placeholder-description{max-width:700px;color:var(--color-text-muted);margin:18px 0 0;font-size:clamp(1rem,2vw,1.12rem)}.preparing-card{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);min-height:230px;box-shadow:var(--shadow-soft);text-align:center;place-items:center;margin-top:clamp(28px,5vw,52px);padding:32px;display:grid}.preparing-label{min-height:var(--touch-target);background:var(--color-surface-muted);color:var(--color-text);border-radius:999px;align-items:center;padding:9px 22px;font-weight:750;display:inline-flex}.calendar-view-links{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.calendar-view-link{min-height:var(--touch-target);border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px;justify-content:center;align-items:center;padding:8px 18px;font-weight:650;display:inline-flex}.calendar-view-link:hover{border-color:var(--color-primary-ink);color:var(--color-primary-ink)}.setup-notice{min-height:var(--touch-target);border:1px solid var(--color-warning);border-radius:var(--radius-small);background:var(--color-warning-soft);color:var(--color-warning-dark);justify-content:space-between;align-items:center;gap:14px;margin-top:24px;padding:12px 16px;display:flex}.setup-notice.is-ready{border-color:var(--color-success);background:var(--color-accent-soft);color:var(--color-success-dark)}.setup-notice span{text-align:right}.rls-test-panel{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);gap:16px;margin-top:18px;padding:20px;display:grid}.rls-test-panel h2,.rls-test-panel p{margin:0}.rls-test-panel p{color:var(--color-text-muted)}.rls-test-button{min-height:var(--touch-target);border-radius:var(--radius-small);background:var(--color-primary);color:var(--color-text);cursor:pointer;font:inherit;border:0;padding:10px 18px;font-weight:750}.rls-test-button:disabled{cursor:wait;opacity:.65}.rls-test-result{border-radius:var(--radius-small);padding:12px 14px}.rls-test-result.is-success{background:var(--color-success-soft);color:var(--color-success-dark)}.rls-test-result.is-error{background:var(--color-danger-soft);color:var(--color-danger-dark)}.mobile-navigation{display:none}.page-section{width:min(100%,1120px);margin:0 auto}.page-narrow{width:min(100%,860px)}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.page-header h1,.page-header p,.data-card h2,.today-group h2,.today-group p{margin:0}.page-header h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.2}.page-header>div>p:last-child:not(.eyebrow){color:var(--color-text-muted-strong);margin-top:8px}.button{min-height:var(--touch-target);border-radius:var(--radius-small);cursor:pointer;font:inherit;text-align:center;border:1px solid #0000;justify-content:center;align-items:center;padding:9px 17px;font-weight:700;display:inline-flex}.button:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.56}.button-primary{background:var(--color-primary);color:var(--color-text)}.button-primary:hover:not(:disabled),.google-login-button:hover:not(:disabled),.rls-test-button:hover:not(:disabled){filter:brightness(.96)}.button-secondary{border-color:var(--color-border);background:var(--color-surface)}.button-secondary:hover:not(:disabled),.header-login:hover,.calendar-arrow:hover,.calendar-view-button:hover:not([aria-current=page]){border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-ink)}.button-danger{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-dark)}.feedback{border-radius:var(--radius-small);margin:0 0 18px;padding:12px 15px}.feedback-success{background:var(--color-success-soft);color:var(--color-success-dark)}.feedback-error{background:var(--color-danger-soft);color:var(--color-danger-dark)}.feedback-warning{background:var(--color-warning-soft);color:var(--color-warning-dark)}.list-toolbar,.detail-actions,.form-actions{flex-wrap:wrap;gap:10px;display:flex}.list-toolbar{justify-content:flex-end;margin-bottom:18px}.detail-actions{margin:18px 0 24px}.confirm-action{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.confirm-message{max-width:260px;color:var(--color-text-muted);font-size:.84rem}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.data-card,.detail-list,.subsection,.today-group,.empty-state,.data-form{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);box-shadow:var(--shadow-soft)}.data-card,.subsection,.today-group,.empty-state{padding:20px}.card-title-row{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.card-title-row h2{font-size:1.15rem}.status-badge,.overdue-label{background:var(--color-primary-soft);color:var(--color-primary-ink);white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:700;display:inline-flex}.status-badge[data-status=completed]{background:var(--color-success-soft);color:var(--color-success-dark)}.overdue-label{background:var(--color-danger-soft);color:var(--color-danger-dark);margin-left:8px}.summary-list,.detail-list{gap:0;margin:16px 0;display:grid}.summary-list>div,.detail-list>div{border-bottom:1px solid var(--color-border);grid-template-columns:130px minmax(0,1fr);gap:12px;padding:10px 0;display:grid}.detail-list{margin:0;padding:10px 20px}.summary-list dt,.detail-list dt{color:var(--color-text-muted);font-weight:700}.summary-list dd,.detail-list dd{overflow-wrap:anywhere;min-width:0;margin:0}.text-link{color:var(--color-primary-ink);text-underline-offset:3px;font-weight:700;text-decoration:underline}.empty-state{text-align:center;color:var(--color-text-muted)}.data-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:clamp(20px,4vw,32px);display:grid}.data-form label{gap:7px;min-width:0;font-weight:700;display:grid}.data-form input,.data-form select,.data-form textarea{width:100%;min-height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);color:var(--color-text);font:inherit;padding:10px 12px}.data-form input:focus-visible,.data-form select:focus-visible,.data-form textarea:focus-visible{border-color:var(--color-focus)}.data-form input:disabled,.data-form select:disabled,.data-form textarea:disabled{background:var(--color-surface-muted);color:var(--color-text-muted-strong);cursor:not-allowed}.data-form textarea{resize:vertical;min-height:110px}.field-wide{grid-column:1/-1}.table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);max-width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:860px}.data-table th,.data-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:13px 14px}.data-table th{color:var(--color-text-muted);font-size:.85rem}.data-table tr.is-overdue td:first-child{border-left:4px solid var(--color-danger)}.data-table tr.is-completed{background:var(--color-success-soft);color:var(--color-success-dark)}.data-table tr.is-completed .text-link{color:var(--color-success-dark)}.subsection{margin-top:20px}.link-list,.today-task-list{margin:14px 0 0;padding:0;list-style:none}.link-list li+li,.today-task-list li+li{border-top:1px solid var(--color-border)}.link-list a{color:var(--color-primary-ink);padding:10px 0;font-weight:700;display:block}.today-grid{gap:18px;display:grid}.today-dashboard{width:min(100%,1400px)}.today-dashboard-grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.today-mode-nav{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface-muted);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:18px;padding:6px;display:grid}.today-mode-nav a{min-height:var(--touch-target);border-radius:var(--radius-small);color:var(--color-text-muted-strong);text-align:center;place-content:center;padding:8px 12px;font-weight:800;display:grid}.today-mode-nav a span{font-size:.76rem;font-weight:600}.today-mode-nav a[aria-current=page]{background:var(--color-primary);color:var(--color-text);box-shadow:var(--shadow-soft)}.today-full-panel{grid-column:1/-1}.today-panel{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-soft);padding:clamp(16px,2.5vw,24px)}.today-panel h2,.today-panel h3,.today-panel p{margin:0}.today-panel .card-title-row{margin-bottom:16px}.today-panel .card-title-row p{color:var(--color-text-muted-strong);margin-top:4px;font-size:.9rem}.today-count{min-width:var(--touch-target);min-height:var(--touch-target);background:var(--color-surface-muted);color:var(--color-text-muted-strong);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;font-weight:750;display:inline-flex}.today-empty{border:1px dashed var(--color-border);border-radius:var(--radius-small);background:var(--color-background);min-height:116px;color:var(--color-text-muted-strong);text-align:center;place-content:center;gap:4px;padding:18px;display:grid}.today-focus-list,.today-candidate-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.today-focus-list>li{border:1px solid var(--color-border);border-left:5px solid var(--color-primary-dark);border-radius:var(--radius-small);background:var(--color-primary-soft);grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px;display:grid}.today-focus-list>li.is-completed{border-left-style:double;border-left-color:var(--color-success-dark);background:var(--color-success-soft)}.today-focus-position{background:var(--color-primary-dark);width:36px;height:36px;color:var(--color-surface);border-radius:50%;place-items:center;font-weight:850;display:inline-grid}.today-focus-list>li.is-completed .today-focus-position{background:var(--color-success-dark)}.today-focus-content,.today-candidate-content{min-width:0}.today-focus-heading,.today-candidate-heading,.today-task-facts,.today-subheading{justify-content:space-between;align-items:center;gap:10px;display:flex}.today-focus-heading a,.today-candidate-heading a{min-width:0;color:var(--color-primary-ink);overflow-wrap:anywhere;font-weight:800}.today-focus-list>li.is-completed .today-focus-heading a{color:var(--color-success-dark);text-decoration:line-through}.today-focus-content>p,.today-candidate-content>p{color:var(--color-text-muted-strong);margin-top:3px;font-size:.88rem}.today-task-facts{color:var(--color-text-muted-strong);flex-wrap:wrap;justify-content:flex-start;margin-top:8px;font-size:.82rem}.today-task-facts span+span:before{content:"·";margin-right:10px}.today-focus-actions{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.today-action-form{flex-wrap:wrap;align-items:flex-start;gap:6px;display:inline-flex}.today-action-button{min-width:var(--touch-target);min-height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);color:var(--color-text);cursor:pointer;font:inherit;justify-content:center;align-items:center;padding:8px 12px;font-weight:750;display:inline-flex}.today-action-button:hover:not(:disabled){border-color:var(--color-primary-dark);background:var(--color-primary-soft);color:var(--color-primary-ink)}.today-action-button.is-primary{border-color:var(--color-primary-dark);background:var(--color-primary)}.today-action-button.is-success{border-color:var(--color-success-dark);background:var(--color-success-soft);color:var(--color-success-dark)}.today-action-button:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.55}.today-action-error,.today-action-warning{border-radius:6px;width:100%;padding:5px 8px;font-size:.8rem}.today-action-error{background:var(--color-danger-soft);color:var(--color-danger-dark)}.today-action-warning{background:var(--color-warning-soft);color:var(--color-warning-dark)}.today-completed-label{min-height:var(--touch-target);color:var(--color-success-dark);align-items:center;font-size:.84rem;font-weight:750;display:inline-flex}.today-schedule-panel .calendar-source-legend{margin-top:4px}.today-schedule-stack{gap:18px;min-width:0;display:grid}.today-availability{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-soft);padding:clamp(16px,2.5vw,24px)}.today-availability h3,.today-availability p{margin:0}.today-availability .today-subheading{align-items:flex-start;margin-bottom:12px}.today-availability .today-subheading>div{min-width:0}.today-availability .today-subheading p{color:var(--color-text-muted-strong);margin-top:3px;font-size:.82rem}.today-availability .today-subheading>span{background:var(--color-accent-soft);color:var(--color-accent-dark);white-space:nowrap;border-radius:999px;flex:none;padding:5px 9px;font-weight:800}.today-availability-notice{border-left:4px solid var(--color-accent-dark);background:var(--color-accent-soft);color:var(--color-accent-dark);border-radius:6px;padding:9px 11px;font-size:.84rem;font-weight:700;margin-bottom:10px!important}.today-availability-notice.is-warning{border-left-color:var(--color-warning-dark);background:var(--color-warning-soft);color:var(--color-warning-dark)}.today-free-time-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.today-free-time-list>li{border:1px solid var(--color-accent);border-radius:var(--radius-small);background:var(--color-accent-soft);min-width:0;color:var(--color-text);justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;display:flex}.today-free-time-list strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.today-free-time-list span{color:var(--color-accent-dark);flex:none;font-size:.8rem;font-weight:750}.today-availability-summary{color:var(--color-text-muted-strong);font-size:.8rem;margin-top:10px!important}.today-schedule-group+.today-schedule-group{border-top:1px solid var(--color-border);margin-top:18px;padding-top:16px}.today-subheading{margin-bottom:9px}.today-subheading h3{font-size:1rem}.today-subheading span{color:var(--color-text-muted-strong);font-size:.84rem}.today-schedule-list{gap:7px;display:grid}.today-candidates-panel{grid-column:1/-1}.today-candidate-list>li{border:1px solid var(--color-border);border-radius:var(--radius-small);justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:13px 14px;display:flex}.today-candidate-heading{flex-wrap:wrap;justify-content:flex-start}.today-candidate-heading>a{margin-right:auto}.today-reason{background:var(--color-surface-muted);color:var(--color-text-muted-strong);white-space:nowrap;border-radius:999px;flex:none;padding:3px 9px;font-size:.78rem;font-weight:750;display:inline-flex}.today-reason.is-overdue{background:var(--color-danger-soft);color:var(--color-danger-dark)}.today-reason.is-due_today{background:var(--color-primary-soft);color:var(--color-primary-ink)}.today-reason.is-in_progress{background:var(--color-accent-soft);color:var(--color-accent-dark)}.today-score{border:1px solid var(--color-primary-dark);background:var(--color-primary-soft);color:var(--color-primary-ink);white-space:nowrap;border-radius:999px;flex:none;padding:3px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.today-duration-match{border-left:4px solid var(--color-accent-dark);background:var(--color-accent-soft);overflow-wrap:anywhere;border-radius:5px;padding:7px 9px;font-weight:700;color:var(--color-accent-dark)!important;margin-top:9px!important;font-size:.82rem!important}.today-duration-match.is-unset,.today-duration-match.is-indeterminate{border-left-color:var(--color-warning-dark);background:var(--color-warning-soft);color:var(--color-warning-dark)!important}.today-duration-match.is-split_only,.today-duration-match.is-too_long{border-left-color:var(--color-primary-dark);background:var(--color-primary-soft);color:var(--color-primary-ink)!important}.today-score-details{border-top:1px solid var(--color-border);margin-top:7px}.today-score-details summary{min-height:var(--touch-target);width:fit-content;color:var(--color-primary-ink);cursor:pointer;align-items:center;font-size:.82rem;font-weight:750;display:flex}.today-score-details summary:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px;border-radius:5px}.today-score-details ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 4px;padding:0;list-style:none;display:grid}.today-score-details li{background:var(--color-surface-muted);min-width:0;color:var(--color-text-muted-strong);border-radius:6px;justify-content:space-between;gap:5px;padding:6px 8px;font-size:.76rem;display:flex}.today-score-details strong{color:var(--color-text);flex:none}.today-panel-footer{justify-content:flex-end;margin-top:16px;display:flex}.today-extension-form{gap:12px;min-width:0;display:grid}.today-extension-form>label,.today-not-do-fields label{color:var(--color-text);gap:5px;font-size:.88rem;font-weight:750;display:grid}.today-extension-form input[type=text],.today-extension-form textarea,.today-not-do-fields input{width:100%;min-height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-background);color:var(--color-text);font:inherit;resize:vertical;padding:10px 12px}.today-extension-form input:focus-visible,.today-extension-form textarea:focus-visible{border-color:var(--color-primary-dark);outline:3px solid var(--color-focus-ring);outline-offset:1px}.today-form-footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.today-form-footer>span{color:var(--color-text-muted-strong);margin-right:auto;font-size:.82rem}.today-form-hint{color:var(--color-text-muted-strong);font-size:.8rem}.today-save-success{background:var(--color-success-soft);color:var(--color-success-dark);border-radius:6px;padding:7px 10px;font-size:.84rem;font-weight:750}.today-small-empty{min-height:82px}.today-not-do-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.today-not-do-list>li{border:1px solid var(--color-border);border-left:5px solid var(--color-accent-dark);border-radius:var(--radius-small);background:var(--color-accent-soft);grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;display:grid}.today-not-do-list .today-focus-position{background:var(--color-accent-dark)}.today-not-do-fields{gap:10px;min-width:0;display:grid}.today-inline-actions{flex-wrap:wrap;grid-column:1/-1;gap:7px;display:flex}.today-carry-list{border:0;gap:8px;margin:0;padding:0;display:grid}.today-carry-list legend{margin-bottom:7px;font-weight:800}.today-carry-list label{min-height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-background);cursor:pointer;align-items:center;gap:11px;padding:9px 12px;display:flex}.today-carry-list input{width:22px;height:22px;accent-color:var(--color-primary-dark)}.today-carry-list label>span{min-width:0;display:grid}.today-carry-list strong{overflow-wrap:anywhere}.today-carry-list small{color:var(--color-text-muted-strong)}@media (min-width:900px){.today-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (max-width:520px){.today-mode-nav a{padding-inline:6px}.today-mode-nav a span{display:none}.today-form-footer{align-items:stretch}.today-form-footer .today-action-button{width:100%}.today-not-do-list>li{grid-template-columns:minmax(0,1fr)}.today-not-do-list .today-focus-position{width:32px;height:32px}}.today-group.is-urgent{border-left:5px solid var(--color-danger)}.today-group .card-title-row p,.muted,.today-task-list p{color:var(--color-text-muted)}.today-task-list li{justify-content:space-between;align-items:center;gap:18px;padding:13px 0;display:flex}.today-task-list a{color:var(--color-primary-ink);font-weight:750}.today-task-list p{margin:2px 0 0;font-size:.9rem}.task-meta{color:var(--color-text-muted);text-align:right;flex:none;font-size:.88rem;display:grid}.preserve-lines{white-space:pre-wrap}.login-page{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);width:min(100%,520px);box-shadow:var(--shadow-soft);padding:clamp(28px,6vw,52px)}.login-card h1{margin:0;font-size:clamp(2rem,7vw,3rem);line-height:1.2}.login-card p{color:var(--color-text-muted)}.google-login-button{border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-primary);width:100%;min-height:52px;color:var(--color-text);cursor:pointer;font:inherit;justify-content:center;align-items:center;margin-top:18px;font-weight:750;display:inline-flex}.google-login-button:disabled{cursor:not-allowed;opacity:.55}.auth-error,.auth-notice{border-radius:var(--radius-small);padding:12px 14px}.login-card .auth-error{border:1px solid var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-dark)}.login-card .auth-notice{border:1px solid var(--color-warning);background:var(--color-warning-soft);color:var(--color-warning-dark)}.login-card .login-security-note{margin-bottom:0;font-size:.88rem}.login-privacy-link{min-height:var(--touch-target);color:var(--color-primary-ink);align-items:center;margin-top:10px;font-size:.9rem;font-weight:700;display:inline-flex}.public-document-page{align-items:start}.public-document-card{width:min(100%,760px)}.public-document-card h1{font-size:clamp(2rem,6vw,3rem)}.public-document-card section{margin-top:26px}.public-document-card h2{margin:0;font-size:1.2rem}.public-document-card section p{margin-bottom:0;line-height:1.8}.login-back-link{min-height:var(--touch-target);color:var(--color-primary-ink);align-items:center;margin-top:18px;font-weight:700;display:inline-flex}.calendar-page{width:min(100%,1400px)}.calendar-toolbar,.calendar-navigation,.calendar-view-switcher{align-items:center;gap:8px;display:flex}.calendar-toolbar{justify-content:space-between;gap:16px;margin-bottom:12px}.calendar-navigation{flex-wrap:wrap}.calendar-arrow,.calendar-view-button{min-width:var(--touch-target);min-height:var(--touch-target);border:1px solid var(--color-border);background:var(--color-surface);justify-content:center;align-items:center;font-weight:750;display:inline-flex}.calendar-arrow{border-radius:var(--radius-small);font-size:1.5rem;line-height:1}.calendar-range-label{margin-left:6px;font-size:clamp(1rem,2vw,1.25rem)}.calendar-view-switcher{border:1px solid var(--color-border);border-radius:var(--radius-small);flex:none;gap:0;overflow:hidden}.calendar-view-button{border:0;border-radius:0}.calendar-view-button[aria-current=page]{background:var(--color-primary);color:var(--color-text)}.calendar-source-note{color:var(--color-text-muted-strong);margin-bottom:10px;font-size:.86rem}.calendar-source-note span{color:var(--color-primary-ink)}.calendar-source-legend{color:var(--color-text-muted-strong);flex-wrap:wrap;gap:8px 18px;margin-bottom:10px;font-size:.86rem;display:flex}.calendar-source-legend span{align-items:center;gap:6px;display:inline-flex}.source-dot{border:2px solid;border-radius:3px;width:12px;height:12px}.source-dot.is-task{background:var(--color-primary);color:var(--color-primary-dark)}.source-dot.is-google{background:var(--color-accent);color:var(--color-accent-dark)}.source-dot.is-gas{background:var(--color-gas);color:var(--color-gas-dark)}.calendar-integration-notice{color:var(--color-text-muted-strong);margin:0 0 12px;font-size:.84rem}.calendar-integration-notice a{color:var(--color-primary-ink);font-weight:700;text-decoration:underline}.month-calendar{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-border);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.month-weekday{background:var(--color-surface-muted);color:var(--color-text);text-align:center;padding:8px 4px;font-size:.84rem;font-weight:750}.month-weekday.is-weekend,.month-day.is-weekend .month-day-heading time{color:var(--color-danger-dark)}.month-day{background:var(--color-surface);min-width:0;min-height:132px;padding:6px}.month-day.is-outside{background:var(--color-surface-muted);color:var(--color-text)}.month-day.is-today{box-shadow:inset 0 0 0 3px var(--color-primary-dark)}.month-day.is-selected:not(.is-today){box-shadow:inset 0 0 0 2px var(--color-primary)}.month-day-heading,.month-day-heading>a:first-child{align-items:center;display:flex}.month-day-heading{justify-content:space-between;gap:4px;margin-bottom:5px}.month-day-heading>a:first-child{min-width:var(--touch-target);min-height:var(--touch-target);border-radius:999px;gap:4px;font-weight:750}.month-day-heading span{color:var(--color-primary-ink);font-size:.68rem}.month-add-task{width:var(--touch-target);height:var(--touch-target);color:var(--color-text-muted);border-radius:999px;justify-content:center;align-items:center;font-size:1.1rem;font-weight:750;display:inline-flex}.month-add-task:hover,.month-day-heading a:hover{background:var(--color-primary-soft);color:var(--color-primary-ink)}.month-task-list,.selected-day-tasks,.day-task-stack{gap:4px;display:grid}.calendar-task{min-width:0;min-height:var(--touch-target);border-left:4px solid var(--color-primary-dark);background:var(--color-primary-soft);color:var(--color-text);border-radius:6px;align-items:center;gap:6px;padding:6px 8px;font-size:.86rem;line-height:1.3;display:flex}.calendar-task:hover{filter:brightness(.97)}.calendar-task.is-completed{border-left:4px double var(--color-success);background:var(--color-success-soft);color:var(--color-success-dark);text-decoration:line-through}.calendar-task[data-source=google_calendar]{border-left-color:var(--color-accent-dark);background:var(--color-accent-soft)}.calendar-task[data-source=gas_calendar]{border-left-color:var(--color-gas-dark);background:var(--color-gas-soft)}.calendar-task[data-source=gas_calendar] .calendar-readonly-label{border-color:var(--color-gas-dark);color:var(--color-gas-dark)}.calendar-task.is-timeline{z-index:4;align-items:flex-start;padding-block:5px;position:absolute;overflow:hidden}.calendar-source-label{background:var(--color-accent-dark);width:20px;height:20px;color:var(--color-surface);border-radius:50%;flex:none;place-items:center;font-size:.7rem;font-weight:850;display:inline-grid}.calendar-source-label.is-gas{background:var(--color-gas-dark);border-radius:999px;width:auto;min-width:34px;padding-inline:6px}.calendar-readonly-label{border:1px solid var(--color-accent-dark);color:var(--color-accent-dark);white-space:nowrap;border-radius:999px;flex:none;margin-left:auto;padding:1px 6px;font-size:.68rem}.settings-card,.detail-card{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);box-shadow:var(--shadow-soft);margin-top:18px;padding:clamp(16px,3vw,24px)}.settings-card h2,.detail-card h2{margin-top:0}.integration-summary{justify-content:space-between;align-items:center;gap:18px;display:flex}.integration-summary p{margin-bottom:0}.status-badge.is-connected{background:var(--color-success-soft);color:var(--color-success-dark)}.calendar-source-form{gap:14px;display:grid}.calendar-source-options{gap:8px;display:grid}.calendar-source-options label{min-height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-small);cursor:pointer;align-items:center;gap:12px;padding:10px 12px;display:flex}.calendar-source-options input{width:22px;height:22px;accent-color:var(--color-primary-dark)}.calendar-source-options span{gap:2px;display:grid}.calendar-source-options small{color:var(--color-text-muted-strong)}.google-event-detail,.gas-event-detail{max-width:820px}.event-description{margin-block:22px}.event-description p{white-space:pre-wrap;overflow-wrap:anywhere}@media (max-width:600px){.integration-summary{flex-direction:column;align-items:stretch}.calendar-readonly-label{display:none}.today-availability .today-subheading{flex-direction:column;align-items:stretch}.today-availability .today-subheading>span{align-self:flex-start}.today-focus-heading,.today-candidate-heading,.today-candidate-list>li{flex-direction:column;align-items:flex-start}.today-candidate-list .today-action-form,.today-candidate-list .today-action-button,.today-candidate-content{width:100%}.today-score-details ul{grid-template-columns:repeat(2,minmax(0,1fr))}}.calendar-task-state{flex:none;font-weight:800;text-decoration:none}.calendar-task time{font-variant-numeric:tabular-nums;flex:none;font-weight:750}.calendar-task-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-task-priority{border:1px solid;border-radius:999px;flex:none;margin-left:auto;padding:1px 6px;font-size:.7rem;text-decoration:none}.calendar-task-priority.is-short{text-align:center;width:22px;padding-inline:0}.month-more{min-height:32px;color:var(--color-primary-ink);align-items:center;padding-inline:6px;font-size:.8rem;font-weight:750;display:inline-flex}.month-mobile-count{display:none}.selected-day-panel,.day-all-day{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);box-shadow:var(--shadow-soft);margin-top:18px;padding:18px}.selected-day-panel h2,.day-all-day h2{margin:0;font-size:1.1rem}.selected-day-panel .muted,.day-all-day .muted{margin-bottom:0}.selected-day-tasks,.day-task-stack{margin-top:12px}.week-scroll{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);max-width:100%;overflow:auto}.week-calendar{grid-template-columns:74px repeat(7,minmax(126px,1fr));min-width:980px;display:grid}.week-corner,.week-day-header,.week-time-label,.week-all-day-cell,.week-hour-cell{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.week-corner,.week-day-header{z-index:5;background:var(--color-surface);position:sticky;top:0}.week-corner{color:var(--color-text-muted);place-items:center;font-size:.75rem;display:grid}.week-day-header{justify-content:center;align-items:center;gap:5px;min-height:62px;padding:8px;display:flex}.week-day-header strong{font-size:1.15rem}.week-day-header small{background:var(--color-primary);color:var(--color-text);border-radius:999px;padding:1px 6px}.week-day-header.is-today{color:var(--color-primary-ink)}.week-time-label{color:var(--color-text-muted);font-variant-numeric:tabular-nums;justify-content:flex-end;padding:7px 8px;font-size:.72rem;display:flex}.week-all-day-label,.week-all-day-cell{background:var(--color-surface-muted);min-height:66px}.week-all-day-cell{padding:4px;position:relative}.week-slot-add{min-width:var(--touch-target);min-height:var(--touch-target);color:var(--color-text-muted);justify-content:center;align-items:center;display:inline-flex}.week-hour-row{grid-column:1/-1;grid-template-columns:74px repeat(7,minmax(126px,1fr));display:grid}.week-hour-cell{min-height:64px;padding:3px;position:relative}.week-hour-cell.is-current-hour,.day-hour.is-current-hour{background:var(--color-primary-soft)}.week-slot-link{position:absolute;inset:0}.week-hour-cell .calendar-task:not(.is-timeline){z-index:2;position:relative}.current-time-marker{z-index:3;background:var(--color-primary);color:var(--color-text);border-radius:999px;padding:2px 7px;font-size:.68rem;font-weight:750;display:inline-flex;position:relative}.day-timeline{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);margin-top:18px;overflow:hidden}.day-hour{border-bottom:1px solid var(--color-border);grid-template-columns:76px minmax(0,1fr);min-height:76px;display:grid}.day-hour:last-child{border-bottom:0}.day-hour-label{border-right:1px solid var(--color-border);color:var(--color-text-muted);font-variant-numeric:tabular-nums;text-align:right;padding:8px 10px;font-size:.8rem}.day-hour-content{align-content:start;gap:5px;padding:5px;display:grid;position:relative}.day-task-entry.is-timeline>span{display:none}.day-task-entry{gap:2px;display:grid}.day-task-entry>span{color:var(--color-text-muted);padding-left:10px;font-size:.76rem}.day-slot-add{width:fit-content;min-height:var(--touch-target);color:var(--color-text-muted);align-items:center;padding:4px 10px;font-size:.78rem;display:inline-flex}@media (max-width:760px){.app-header{min-height:64px}.brand-status{display:none}.header-login{padding-inline:14px}.header-user-name{max-width:110px}.app-body{min-height:calc(100vh - 64px);display:block}.sidebar{display:none}.main-content{padding:28px 18px 166px}.mobile-navigation{z-index:40;border-top:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 97%, transparent);padding:8px max(8px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-navigation .navigation-link{text-align:center;justify-content:center;min-height:48px;padding:7px 4px;font-size:.78rem}.preparing-card{min-height:190px}.setup-notice{flex-direction:column;align-items:flex-start}.setup-notice span{text-align:left}.page-header{flex-direction:column;align-items:stretch}.page-header .button{width:100%}.card-grid,.data-form{grid-template-columns:minmax(0,1fr)}.field-wide{grid-column:auto}.summary-list>div,.detail-list>div{grid-template-columns:1fr;gap:2px}.today-task-list li{flex-direction:column;align-items:flex-start;gap:6px}.task-meta{text-align:left}.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-navigation{grid-template-columns:auto var(--touch-target) var(--touch-target) minmax(0, 1fr);display:grid}.calendar-range-label{text-align:right;margin:0}.calendar-view-switcher{grid-template-columns:repeat(3,1fr);display:grid}.month-day{min-height:94px;padding:2px}.month-day-heading{margin:0}.month-day-heading>a:first-child,.month-add-task{justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px}.month-day-heading span,.month-add-task,.month-task-list{display:none}.month-mobile-count{min-width:44px;min-height:44px;color:var(--color-primary-ink);border-radius:999px;justify-content:center;align-items:center;font-size:.72rem;font-weight:750;display:inline-flex}.day-hour{grid-template-columns:58px minmax(0,1fr)}}@media (min-width:761px) and (max-width:1024px){:root{--sidebar-width:200px}.main-content{padding:36px 30px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
