:root{--paper: #ececec;--screen: #ffffff;--ink: #121212;--soft: #5b5b5b;--faint: #8f8f8f;--line: #dfdfdf;--line2: #f5f5f5;--fresh: #34d399;--fresh-deep: #0b8f6a;--brand: #10b981;--grad: linear-gradient(160deg, #34d399 0%, #10b981 58%, #0ea47f 100%);--font-d: "Gowun Dodum", system-ui, sans-serif;--font-b: "IBM Plex Sans KR", system-ui, sans-serif;--danger: #d14a3c;--ok: #0b8f6a;--hover: rgba(16, 185, 129, .04)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;max-width:100%}body{font-family:var(--font-b);color:var(--ink);background:linear-gradient(180deg,#f7f7f7,#ececec),var(--paper);min-height:100vh;-webkit-font-smoothing:antialiased}button,input{font:inherit}.app-stage{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px 16px}.phone{position:relative;width:min(100%,380px);max-width:100%;height:min(772px,100dvh);background:#121212;border-radius:48px;padding:13px;box-shadow:0 24px 60px -24px #00000073;overflow:hidden}.screen{position:relative;width:100%;height:100%;background:var(--screen);border-radius:36px;overflow:hidden;display:flex;flex-direction:column}.apphead{padding:18px 20px 10px}.brand{font-family:var(--font-d);font-size:18px;font-weight:400;color:var(--ink);letter-spacing:.16em;line-height:1;text-indent:.16em;margin-left:-.16em}.brand-y{color:var(--brand)}.apphead h1{font-family:var(--font-d);font-size:25px;font-weight:400;margin-top:8px;letter-spacing:-.02em;line-height:1.25}.apphead .sub{font-size:12.5px;color:var(--soft);margin-top:5px}.view-toggle{display:inline-flex;align-items:center;height:44px;padding:4px;border-radius:999px;background:#f2f2f2;border:1px solid var(--line);gap:2px;flex-shrink:0;box-sizing:border-box}.view-toggle button{border:none;background:transparent;color:var(--soft);width:36px;height:36px;padding:0;border-radius:999px;cursor:pointer;display:grid;place-items:center}.view-toggle button svg{width:17px;height:17px;stroke:currentColor}.view-toggle button.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px #00000014}.due-banner{display:flex;align-items:center;gap:4px;margin:0 18px 4px;border:none;border-radius:12px;background:#d14a3c1a;color:var(--danger);font:inherit;font-size:12.5px;font-weight:600;text-align:left;padding:4px 6px 4px 4px}.due-banner-main{flex:1;min-width:0;border:none;background:transparent;color:inherit;font:inherit;font-weight:inherit;text-align:left;padding:8px 10px;border-radius:10px;cursor:pointer}.due-banner-main:hover{background:#d14a3c14}.due-banner-main span{display:block}.due-banner .toast-x{flex:0 0 auto}.due-banner .toast-x:hover{opacity:.9}.model-banner{margin:0 18px 10px;padding:12px 14px;border-radius:12px;background:#10b98114;color:var(--ink)}.model-banner p{margin:0 0 10px;font-size:13px;font-weight:550;line-height:1.45}.model-banner-actions{display:flex;gap:8px}.model-banner-actions button{font:inherit;font-size:13px;font-weight:650;border:none;border-radius:999px;padding:7px 14px;background:#10b981;color:#fff;cursor:pointer}.model-banner-actions button.later{background:transparent;color:var(--muted)}.model-banner-actions button.later:hover{background:var(--hover)}.card.due .last{color:var(--danger)}.list{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 0 168px;display:flex;flex-direction:column}.list::-webkit-scrollbar{width:0}.empty{text-align:center;padding:48px 18px;color:var(--soft);font-size:14px}.card{display:block;background:transparent;border-radius:0;padding:12px 18px;margin-bottom:0;cursor:pointer;box-shadow:none;border:none;border-bottom:1px solid var(--line);transition:background .15s ease}.card:last-child{border-bottom:none}.card-top{display:flex;align-items:flex-start;gap:4px}.card-main{flex:1;min-width:0}.card-title-row{display:flex;align-items:baseline;justify-content:flex-start;gap:8px;min-width:0}.card-title-row .name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-title-row .dday{flex-shrink:0;font-size:12px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.card-delete{flex:0 0 32px;width:32px;height:32px;margin-top:-2px;border:none;border-radius:10px;background:transparent;color:var(--faint);display:grid;place-items:center;cursor:pointer}.card-delete svg{width:15px;height:15px;stroke:currentColor}.card-delete:hover{background:#d14a3c14;color:var(--danger)}.card:hover{background:var(--hover);box-shadow:none;transform:none}.card:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:8px}.card .name{font-weight:600;font-size:15px;line-height:1.3;color:var(--ink)}.card .last{font-size:11.5px;color:var(--soft);margin-top:2px;line-height:1.3}.card-foot{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-top:8px;font-size:11px;color:var(--faint);line-height:1.35}.card-foot span{min-width:0}.gauge{margin-top:10px}.gauge .track{height:4px;border-radius:99px;background:var(--line2);overflow:hidden}.gauge .fill{height:100%;border-radius:99px;transition:width .9s cubic-bezier(.2,.8,.2,1)}.gauge .meta{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-top:6px;font-size:11px;color:var(--faint)}.gauge .meta>span{min-width:0;line-height:1.35}.gauge .meta b{flex-shrink:0;color:var(--soft);font-weight:600}.gauge .meta .due-text{color:var(--danger);font-weight:600}.fill-fresh{background:var(--brand)}.fill-warn{background:#f0c44d}.fill-due{background:var(--danger)}.composer{position:absolute;left:0;right:0;bottom:0;padding:16px 18px 26px;background:linear-gradient(to top,var(--screen) 62%,rgba(255,255,255,0));z-index:10;overflow-x:clip}.composer-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:74px;width:100%;min-width:0}.composer-view-slot{display:flex;justify-content:flex-start;margin-bottom:10px}.composer-row>.view-toggle{justify-self:start;align-self:center}.composer-row>.mic-btn{justify-self:center;grid-column:2}.composer-row>.mode-switch{justify-self:end;align-self:center;grid-column:3}.composer-row.text{grid-template-columns:minmax(0,1fr);min-height:52px}.composer-row.text>.text-field{grid-column:1;justify-self:stretch;width:100%;max-width:100%;min-width:0}.text-field{display:none}.text-field.on{display:flex;align-items:center;gap:8px;width:100%;max-width:100%;min-width:0;margin:0;background:#fff;border:1px solid var(--brand);border-radius:12px;padding:6px;box-shadow:none}.mic-btn{position:relative;width:66px;height:66px;border:none;border-radius:50%;background:var(--grad);cursor:pointer;display:grid;place-items:center;color:#fff;box-shadow:0 8px 18px -8px #10b98180}.mic-btn svg{width:30px;height:30px;stroke:#fff}.mic-btn.live{box-shadow:0 0 0 8px #10b9812e}.mic-hint{font-size:13.5px;color:var(--soft);font-weight:600;letter-spacing:.01em;text-align:center;line-height:1.35;margin:14px 0 0}.mode-switch{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cfcfcf;background:#fff;color:var(--soft);width:44px;height:44px;padding:0;border-radius:14px;cursor:pointer;box-shadow:none;box-sizing:border-box}.mode-switch svg{width:20px;height:20px;stroke:currentColor}.mode-switch:hover{color:var(--brand);border-color:var(--brand)}.mode-switch.in-field{position:static;transform:none;flex:0 0 40px;width:40px;height:40px;border-radius:12px;box-shadow:none;background:var(--line2);border-color:transparent}.text-field input{flex:1 1 0;min-width:0;width:100%;border:none;outline:none;font-size:14px;background:transparent;padding:9px 0}.send{flex:0 0 40px;width:40px;height:40px;border:none;border-radius:12px;cursor:pointer;background:var(--grad);color:#fff;display:grid;place-items:center}.send svg{width:18px;height:18px;stroke:currentColor}.overlay{position:absolute;inset:0;background:#121c1652;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;z-index:30;padding-top:10px;box-sizing:border-box}.overlay-x{flex:0 0 auto;align-self:flex-end;margin:0 16px 10px;width:36px;height:36px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:#ffffff47;color:#ffffffe0;font-size:22px;line-height:1;cursor:pointer;display:grid;place-items:center;box-shadow:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:0;z-index:1}.overlay-x:hover{background:#ffffff6b;color:#fff}.sheet{flex:0 1 auto;background:var(--screen);width:100%;max-height:calc(100% - 56px);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;border-radius:28px 28px 36px 36px;padding:24px 22px 30px;box-sizing:border-box}.grip{width:38px;height:4px;border-radius:99px;background:var(--line);margin:0 auto 18px}.voice,.thinking,.result{text-align:center}.badge{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--fresh-deep);background:#10b9811f;padding:7px 14px;border-radius:999px;margin-bottom:16px}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--fresh);animation:blink 1s infinite}@keyframes blink{50%{opacity:.25}}.wave{display:flex;gap:4px;height:56px;align-items:center;justify-content:center;margin-bottom:16px}.wave i{width:4px;min-height:5px;border-radius:99px;background:var(--brand);height:8px;transition:height .08s linear}.wave.idle i{animation:wv-idle 1.4s ease-in-out infinite;opacity:.45}.wave.idle i:nth-child(odd){animation-duration:1.1s}.wave.reactive i{animation:none;opacity:1}@keyframes wv-idle{0%,to{transform:scaleY(.85)}50%{transform:scaleY(1.15)}}.quote,.dictation{font-family:var(--font-d);font-size:18px;line-height:1.45;background:#fff;box-shadow:0 0 0 1px var(--line);border-radius:14px;padding:12px 16px;margin-bottom:14px;text-align:left;min-height:52px;overflow-wrap:anywhere;word-break:break-word}.dictation.placeholder,.muted{color:var(--faint)}.dictation .interim{color:var(--soft)}.dictation .cursor{display:inline-block;width:2px;height:18px;background:var(--brand);margin-left:3px;vertical-align:middle;animation:blink 1s infinite}.say{font-size:13px;color:var(--soft);margin-bottom:10px}.eyebrow{font-size:12px;color:var(--fresh-deep);font-weight:600;margin-bottom:12px}.parsed{display:flex;flex-direction:column;gap:10px;background:#fff;box-shadow:0 0 0 1px var(--line);border-radius:16px;padding:14px 16px;margin-bottom:12px;text-align:left}.parsed label{font-size:11px;color:var(--faint)}.parsed input{width:100%;border:none;border-bottom:1px solid var(--line);padding:6px 0;background:transparent}.date-field{display:flex;flex-direction:column;gap:10px;min-width:0;max-width:100%}.date-shell{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 14px;border:none;border-radius:14px;background:var(--screen);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;text-align:left;font:inherit}.date-shell-text{display:flex;flex-direction:column;gap:2px;min-width:0}.date-shell-text strong{font-family:var(--font-d);font-size:17px;font-weight:400;color:var(--ink)}.date-shell-text span{font-size:12px;color:var(--faint)}.date-shell-hint{flex:0 0 auto;font-size:12px;font-weight:600;color:var(--brand)}.cal-scrim{position:absolute;inset:0;z-index:60;background:#121c165c;display:flex;align-items:flex-end;justify-content:center;padding:0;box-sizing:border-box}.cal-panel{width:100%;max-height:100%;overflow:hidden;display:flex;flex-direction:column;background:var(--screen);border-radius:28px 28px 36px 36px;padding:18px 16px 24px;box-shadow:0 -12px 40px -12px #0f281c59;box-sizing:border-box}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex:0 0 auto}.cal-title{font-family:var(--font-d);font-size:18px;color:var(--ink)}.cal-nav{width:40px;height:40px;border:none;border-radius:12px;background:var(--line2);color:var(--ink);font-size:22px;line-height:1;cursor:pointer}.cal-week{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:6px;text-align:center;font-size:11px;font-weight:600;color:var(--faint)}.cal-week .sun{color:#d14a3c}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,minmax(36px,1fr));gap:4px}.cal-panel .cal-grid{flex:0 0 auto;height:228px}.cal-panel .cal-week,.cal-panel .cal-chips{flex:0 0 auto}.cal-day,.cal-empty{min-height:36px;height:100%;border:none;border-radius:12px;background:transparent;font:inherit;font-size:14px;color:var(--ink);box-sizing:border-box;min-width:0;padding:0;display:flex;align-items:center;justify-content:center;line-height:1;overflow:hidden}.cal-day{cursor:pointer}.cal-day.today:not(.on){box-shadow:none;background:#10b98124;color:var(--fresh-deep);font-weight:700}.cal-day.on{background:var(--brand);color:#fff;font-weight:600;box-shadow:none}.cal-day.muted{color:var(--faint);opacity:.45;cursor:not-allowed}.cal-day:not(.muted):not(.on):hover{background:#10b98124;color:var(--fresh-deep)}.cal-today{width:100%;margin-top:12px;border:none;border-radius:14px;background:var(--line2);color:var(--soft);font:inherit;font-weight:600;font-size:14px;padding:12px;cursor:pointer}.cal-chips{display:flex;gap:8px;margin-top:12px;flex-shrink:0}.cal-chips .cal-today{margin-top:0;flex:1}.month-cal{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding:8px 18px 0}.month-cal .cal-head{margin-bottom:8px;flex:0 0 auto}.month-cal .cal-week{flex:0 0 auto}.month-cal .cal-grid{flex:1 1 auto;min-height:228px;gap:3px}.month-cal .cal-empty{min-height:36px;height:100%}.month-cal .cal-legend{flex:0 0 auto;margin-top:10px}.month-day{position:relative;min-height:36px;height:100%;padding:4px 2px;flex-direction:column;justify-content:flex-start;gap:0}.month-day>span:first-of-type{display:flex;align-items:center;justify-content:center;width:30px;height:24px;border-radius:50%;font-size:13px;line-height:1;flex:0 0 auto}.month-day.today{background:#10b98124;box-shadow:none}.month-day.today>span:first-of-type{background:transparent;color:var(--fresh-deep);font-weight:700;box-shadow:none}.month-day.today:not(.muted):not(.on):hover{background:#10b9812e}.month-day.today:not(.muted):not(.on):hover>span:first-of-type{filter:none}.month-day.has-done,.month-day.has-due{color:var(--ink);font-weight:600}.month-day.today.has-done>span:first-of-type,.month-day.today.has-due>span:first-of-type{color:var(--fresh-deep)}.month-marks{display:flex;gap:3px;min-height:12px;margin-top:-2px;align-items:center;justify-content:center;flex:0 0 auto;flex-wrap:wrap}.mark{display:inline-block;width:6px;height:6px;border-radius:50%;vertical-align:middle}.mark-done{background:var(--brand)}.mark-due{background:#f0b429;box-shadow:none}.mark-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 5px;border-radius:999px;font-size:11px;font-weight:700;line-height:1}.mark-count-done{background:#10b98129;color:var(--fresh-deep)}.mark-count-due{background:#f0b42938;color:#b8860b}.cal-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 16px;margin-top:14px;font-size:11.5px;color:var(--soft)}.cal-legend span{display:inline-flex;align-items:center;gap:6px}.cal-legend-note{color:var(--faint);font-size:11px}.day-section{font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--faint);margin:4px 0 2px;text-align:left}.day-section.due-label{color:#c27e15;margin-top:14px}.candidate-due span{color:#c27e15}.interval-block{margin-top:4px;min-width:0;max-width:100%}.interval-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.interval-chip{border:1px solid var(--line);background:#fff;color:var(--soft);font:inherit;font-size:12.5px;font-weight:600;padding:7px 10px;border-radius:999px;cursor:pointer}.interval-chip.on{border-color:transparent;background:#10b98129;color:var(--fresh-deep)}.interval-custom-panel{margin-top:10px;padding:10px 6px;border-radius:12px;background:var(--line2);display:flex;flex-direction:column;gap:12px}.interval-field{display:flex;flex-direction:column;gap:8px}.interval-field+.interval-field{padding-top:12px;border-top:1px solid rgba(24,36,30,.06)}.interval-field-label{font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--faint);padding:0 2px}.interval-stepper{display:grid;grid-template-columns:48px 1fr;gap:6px;align-items:stretch}.interval-stepper input,.interval-day-row input{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:8px 4px;font:inherit;font-variant-numeric:tabular-nums;text-align:center;background:#fff;box-sizing:border-box}.unit-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.interval-chip.compact{min-width:0;padding:8px 4px;font-size:12px}.interval-mode{display:grid;grid-template-columns:1fr 1fr;gap:6px}.interval-mode-btn{border:1px solid var(--line);background:#fff;color:var(--soft);font:inherit;font-size:12.5px;font-weight:600;padding:8px 10px;border-radius:10px;cursor:pointer}.interval-mode-btn.on{border-color:transparent;background:#10b98129;color:var(--fresh-deep)}.interval-day-row{display:flex;align-items:center;gap:8px}.interval-day-row input{width:72px;flex:0 0 72px}.interval-day-row span{font-size:13px;color:var(--soft)}.nth-chips{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.nth-chips .interval-chip{min-width:0;padding:7px 2px;text-align:center}.weekday-chips{display:flex;flex-wrap:wrap;gap:6px}.weekday-chips.stacked{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:0}.weekday-chips.stacked .interval-chip{min-width:0;padding:8px 0;text-align:center}.interval-summary{margin-top:8px;font-size:12.5px;font-weight:600;color:var(--fresh-deep);line-height:1.4;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline}.interval-summary span{font-weight:500;color:var(--soft)}.confirm-ask{font-size:15px;font-weight:600;color:var(--ink);line-height:1.45;margin:10px 0 6px}.listen-hint{margin:0 0 12px}.candidate-list{display:flex;flex-direction:column;gap:0;margin:8px 0 12px}.candidate{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;max-width:100%;min-width:0;margin:0;border:none;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:12px 22px;font:inherit;font-weight:600;font-size:15px;color:var(--ink);cursor:pointer;text-align:left;box-sizing:border-box;overflow:hidden;transition:background .15s ease}.candidate:last-of-type{border-bottom:none}.candidate:hover{background:var(--hover)}.sheet .candidate{width:calc(100% + 44px);max-width:none;margin-left:-22px;margin-right:-22px}.candidate span{font-weight:500;font-size:12px;color:var(--soft);white-space:nowrap}.candidate-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:var(--ink)}.chip{display:inline-block;font-size:11px;font-weight:600;color:var(--fresh-deep);background:#10b98124;padding:5px 9px;border-radius:999px}.chip.warn{color:#d9a31a;background:#f0b4292e}.confirm,.ghost{width:100%;border:none;font-weight:600;font-size:15px;padding:15px;border-radius:15px;cursor:pointer}.confirm{background:var(--grad);color:#fff}.ghost{background:var(--line2);color:var(--soft);margin-top:8px}.ghost.danger{color:var(--danger);background:#d14a3c14}.confirm.danger-fill{background:var(--danger)}.modal-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.sheet-tip{font-size:12px;color:var(--soft);text-align:center;line-height:1.45;margin:4px 0 10px}.sheet-x{flex:0 0 36px;width:36px;height:36px;margin:-6px -4px 0 0;border:none;border-radius:12px;background:var(--line2);color:var(--soft);font-size:22px;line-height:1;cursor:pointer}.sheet-x:hover{color:var(--ink)}.modal-scrim{position:absolute;inset:0;z-index:70;background:#121c166b;display:flex;align-items:center;justify-content:center;padding:24px 18px}.modal-card{width:100%;max-width:320px;background:var(--screen);border-radius:22px;padding:18px 18px 16px;box-shadow:0 24px 48px -18px #0f281c73}.modal-card h2{font-family:var(--font-d);font-size:18px;font-weight:400;color:var(--ink);line-height:1.35}.modal-body{font-size:13px;color:var(--soft);line-height:1.45;margin:0 0 16px}.field-row{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%}.field-row input{flex:1;min-width:0;max-width:100%}.field-error{color:var(--danger);font-size:12px;margin-top:-4px}.ok-mark{color:var(--ok);font-weight:700}.reason{font-size:13px;color:var(--soft);margin:8px 0 16px;line-height:1.45}.debug{margin-top:12px;font-size:11px;color:var(--faint);text-align:left;line-height:1.5}.recog-note{margin-top:12px;font-size:12px;color:var(--faint);text-align:center;line-height:1.45}.edit-body>.recog-note{margin:16px 0 0;padding-top:12px;border-top:1px solid var(--line);text-align:left;font-size:11.5px;color:var(--faint);line-height:1.4}.toast{position:absolute;bottom:106px;left:50%;z-index:46;transform:translate(-50%);background:#17241ef0;color:#fff;font-size:13px;padding:11px 22px;border-radius:999px;max-width:calc(100% - 36px);text-align:center}.toast-x{width:32px;height:32px;border:none;background:transparent;box-shadow:none;color:var(--danger);opacity:.55;font-size:20px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}.apphead.row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px}.apphead-actions{display:flex;align-items:center;gap:6px}.icon-btn{position:relative;width:40px;height:40px;border-radius:10px;border:none;display:grid;place-items:center;color:var(--ink);text-decoration:none;background:transparent}.icon-btn svg{width:20px;height:20px;stroke:currentColor;fill:none}.badge-dot{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--danger)}.status-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 18px 12px}.status-pill{min-width:0;width:100%;justify-content:center;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 6px;cursor:pointer;font:inherit;font-size:12px;font-weight:600;color:var(--soft);display:inline-flex;align-items:center;gap:4px;box-sizing:border-box}.status-pill b{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;font-size:12px}.status-pill.late b{color:var(--danger)}.status-pill.soon b{color:#d9a31a}.status-pill.ok b{color:var(--fresh-deep)}.status-pill.on{background:var(--brand);border-color:transparent;color:#fff}.status-pill.on b{color:#fff}.list-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 0 10px;gap:10px}.list-heading{display:flex;align-items:baseline;gap:8px;padding:0;font-size:15px;font-weight:600}.list-heading .list-count{font-size:12px;font-weight:500;color:var(--soft)}.search-field{margin:0 18px 12px;padding-top:2px}.search-field input{width:100%;border:none;border-radius:12px;padding:11px 14px;background:var(--line2);font:inherit;font-size:14px;color:var(--ink);box-sizing:border-box}.search-field input::placeholder{color:var(--faint)}.search-field input:focus{outline:none;background:#fff;box-shadow:0 0 0 1.5px var(--brand)}.card-row{display:flex;align-items:center;gap:10px;width:100%}.card .memo{font-size:11.5px;color:var(--soft);margin-top:2px;line-height:1.3}.dday{flex-shrink:0;font-size:13px;font-weight:700}.dday.late{color:var(--danger)}.dday.soon{color:#d9a31a}.dday.ok{color:#888}.screen.subpage{overflow:hidden;min-width:0}.subhead{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;padding:16px 18px 8px}.subhead-title{font-family:var(--font-d);font-size:17px;font-weight:400;color:var(--ink);letter-spacing:-.01em;text-align:center;flex:1;min-width:0}.back-link{width:40px;height:40px;display:grid;place-items:center;font-size:28px;color:var(--ink);text-decoration:none;line-height:1;flex-shrink:0;border:none;background:transparent;padding:0;cursor:pointer;font-family:inherit;box-shadow:none}.back-link:hover{color:var(--brand)}.subhead-spacer{width:40px;flex-shrink:0}.subbody{padding:4px 0 28px;flex:1 1 auto;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.page-title{font-family:var(--font-d);font-size:26px;font-weight:400;margin-bottom:16px}.settings-card{background:transparent;border:none;border-radius:0;overflow:visible;margin-bottom:22px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:13px 18px;border:none;border-bottom:1px solid var(--line);background:transparent;font:inherit;font-size:14px;font-weight:500;color:var(--ink);text-align:left;text-decoration:none;cursor:pointer;box-sizing:border-box}.settings-row:hover{background:var(--hover)}.settings-card .settings-row:last-child{border-bottom:none}.settings-row.danger{color:var(--danger);font-weight:600}.settings-row.link{display:flex}.settings-meta{color:var(--soft);font-size:13px;font-weight:400}.settings-chip,.settings-select,.settings-time-btn{border:none;border-radius:999px;padding:7px 12px;background:var(--line2);font:inherit;font-size:13px;font-weight:600;color:var(--ink)}.settings-time-btn{cursor:pointer;letter-spacing:-.01em}.settings-time-btn:hover,.settings-chip:hover{background:var(--hover)}.time-scrim{position:absolute;inset:0;z-index:80;background:#12121261;display:flex;align-items:flex-end;justify-content:center;padding:0;box-sizing:border-box}.time-panel{width:100%;background:var(--screen);border-radius:22px 22px 0 0;padding:16px 18px 22px;box-shadow:0 -12px 40px -16px #00000047}.time-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:14px;font-weight:600;color:var(--ink)}.time-panel-head .sheet-x{margin:0;background:transparent;color:var(--ink);border-radius:0}.time-panel-head .sheet-x:hover{background:transparent;color:var(--brand)}.time-period{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:3px;border-radius:12px;background:#f2f2f2;margin-bottom:12px}.time-period button{border:none;background:transparent;border-radius:10px;padding:10px 0;font:inherit;font-size:14px;font-weight:600;color:var(--soft);cursor:pointer}.time-period button.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px #00000014}.time-wheels{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:4px;height:160px;margin-bottom:14px;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%)}.time-wheel-highlight{position:absolute;left:0;right:0;top:50%;height:40px;margin-top:-20px;border-radius:12px;background:#0000000d;pointer-events:none;z-index:0}.time-wheel{position:relative;z-index:1;height:160px;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none}.time-wheel::-webkit-scrollbar{display:none}.time-wheel-pad{height:60px;flex-shrink:0}.time-wheel-item{display:flex;align-items:center;justify-content:center;height:40px;width:100%;border:none;background:transparent;font:inherit;font-size:21px;font-weight:400;color:#b0b0b0;scroll-snap-align:center;cursor:pointer;padding:0}.time-wheel-item.on{color:var(--ink);font-weight:500;font-size:23px}.time-colon{position:relative;z-index:1;align-self:center;font-size:24px;font-weight:700;color:var(--ink);padding-bottom:2px}.settings-note{font-size:12px;color:var(--soft);line-height:1.45;margin:8px 18px 0}.settings-muted{font-size:13px;font-weight:500;color:var(--soft);text-align:right}.toggle{width:48px;height:28px;border-radius:999px;border:none;background:#d9d9d9;padding:2px;cursor:pointer;position:relative}.toggle.on{background:var(--brand)}.toggle-knob{display:block;width:24px;height:24px;border-radius:50%;background:#fff;transition:transform .15s ease}.toggle.on .toggle-knob{transform:translate(20px)}.inbox-list{border-top:none}.inbox-row{display:flex;align-items:center;gap:10px;width:100%;min-height:60px;padding:12px 18px;border:none;border-bottom:1px solid var(--line);background:transparent;font:inherit;text-align:left;cursor:pointer;transition:background .15s ease;box-sizing:border-box}.inbox-row:last-child{border-bottom:none}.inbox-row:hover{background:var(--hover)}.inbox-main{flex:1;min-width:0;min-height:34px;display:flex;flex-direction:column;justify-content:center}.inbox-main .name{font-weight:600;font-size:15px;line-height:1.3;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-main .memo{font-size:11.5px;font-weight:400;color:var(--soft);margin-top:2px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:8px 0 16px;text-align:left}.action-head>div:first-child{flex:1;min-width:0;text-align:left}.action-title{font-size:18px;font-weight:700;color:var(--ink);letter-spacing:-.02em;line-height:1.3}.action-memo{margin-top:4px;font-size:13px;font-weight:400;color:var(--soft);line-height:1.4}.action-sub{margin-top:4px;font-size:12px;color:var(--faint);line-height:1.35}.action-head .action-title,.action-head .action-memo,.action-head .action-sub{overflow:hidden;text-overflow:ellipsis}.notify-preview{background:#f5f5f5;border-radius:14px;padding:14px;margin-bottom:8px;text-align:left}.notify-preview-top{display:flex;justify-content:space-between;font-size:11px;color:var(--soft);margin-bottom:8px}.notify-preview .action-title{font-size:16px}.sheet-secondary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;padding-top:4px}.sheet-secondary.single{grid-template-columns:1fr}.sheet-text-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;border:none;background:transparent;color:var(--soft);font:inherit;font-size:13px;font-weight:600;padding:10px 8px;cursor:pointer;border-radius:10px}.sheet-text-btn svg{width:16px;height:16px;stroke:currentColor;flex-shrink:0}.sheet-text-btn:hover{background:var(--hover);color:var(--ink)}.sheet-text-btn.danger{color:var(--danger)}.sheet-text-btn.danger:hover{background:#d14a3c14}.text-link{border:none;background:transparent;color:var(--soft);font:inherit;font-size:14px;padding:12px;cursor:pointer;width:100%;box-sizing:border-box}.parsed textarea{width:100%;min-height:88px;border:1.5px solid var(--brand);border-radius:12px;padding:10px 12px;font:inherit;font-size:14px;line-height:1.45;resize:none;box-sizing:border-box}.edit-screen{position:absolute;inset:0;width:100%;max-width:100%;height:100%;min-width:0;min-height:0;z-index:40;background:var(--screen);display:flex;flex-direction:column;border-radius:inherit;overflow:hidden}.edit-screen .subhead{flex:0 0 auto;padding:12px 12px 4px}.edit-close{width:40px;height:40px;margin:0;flex:0 0 40px;border:none;border-radius:0;background:transparent;color:var(--ink);font-size:24px;line-height:1;box-shadow:none}.edit-close:hover{background:transparent;color:var(--brand)}.edit-body{flex:1 1 auto;min-height:0;min-width:0;max-width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:4px 18px 16px;-webkit-overflow-scrolling:touch}.edit-heard{text-align:left;margin:0 0 16px}.edit-heard .eyebrow{margin-bottom:6px}.edit-heard .quote{margin:0 0 8px;font-size:15px;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.edit-heard .reason{margin:8px 0 0}.edit-heard .recog-note{display:none}.edit-confirm-ask{margin:4px 0 0;font-size:14px;font-weight:600;line-height:1.45;color:var(--ink);text-align:left;overflow-wrap:anywhere}.edit-reject-hint{margin:0 0 14px;font-size:13px;line-height:1.45;color:var(--soft);text-align:left}.edit-body .action-head.flat{margin:0 0 8px;padding:0;text-align:left}.edit-body .sheet-secondary{margin-top:8px}.edit-body .candidate-list.edit-candidate-list{margin:0 -18px;max-width:none}.edit-body .candidate{width:100%;max-width:100%;margin:0;padding-left:18px;padding-right:18px}.edit-body .parsed{text-align:left;margin-bottom:0;gap:12px;padding:0;background:transparent;box-shadow:none;border-radius:0;min-width:0;max-width:100%}.edit-body .parsed label{font-size:12px;font-weight:600;color:var(--soft);margin:2px 0 0}.edit-body .parsed input{border:none;border-bottom:1px solid var(--line);border-radius:0;padding:8px 0 9px;font-size:15px;min-width:0;max-width:100%}.edit-body .parsed input:focus{outline:none;border-bottom-color:var(--brand)}.edit-body .parsed textarea{min-height:72px;width:100%;max-width:100%;min-width:0;border:none;border-radius:12px;background:var(--line2);padding:10px 12px;box-shadow:none}.edit-body .parsed textarea:focus{outline:none;box-shadow:0 0 0 1.5px var(--brand);background:#fff}.edit-body .date-shell{box-shadow:none;background:var(--line2);padding:10px 12px;border-radius:12px}.edit-body .interval-block{margin-top:2px;min-width:0;max-width:100%}.edit-body .interval-chips{margin-top:6px}.edit-body .interval-custom-panel{margin-top:8px;padding:8px 4px;min-width:0;max-width:100%;box-sizing:border-box}.edit-footer{flex:0 0 auto;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:12px 18px max(22px,env(safe-area-inset-bottom));background:var(--screen);display:flex;flex-direction:column;gap:8px}.edit-footer .confirm,.edit-footer .ghost{margin:0}.ghost.danger{color:var(--danger)}@media(max-width:520px){html,body,#root{overflow:hidden;height:100dvh;max-width:100%}.app-stage{padding:0;height:100dvh;max-width:100%;overflow:hidden}.phone{width:100%;max-width:100%;height:100dvh;border-radius:0;padding:0;box-shadow:none;overflow:hidden}.screen{border-radius:0}.apphead{padding-top:max(18px,env(safe-area-inset-top))}.subhead{padding-top:max(16px,env(safe-area-inset-top))}.edit-screen .subhead{padding-top:max(12px,env(safe-area-inset-top))}.composer{padding-bottom:max(26px,env(safe-area-inset-bottom))}.sheet{padding-bottom:max(30px,env(safe-area-inset-bottom))}}
