*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Apple SD Gothic Neo,Malgun Gothic,sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline-offset:5px;outline:3px solid #799543}.shell{grid-template-columns:246px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#ecefe5;flex-direction:column;padding:42px 28px;display:flex}.brand{letter-spacing:-1.5px;align-items:center;font-size:32px;font-weight:700;display:flex}.brand-mark{margin-right:10px;font-size:37px;font-weight:400}.brand-dot{color:#809747}.sidebar-caption{letter-spacing:1.6px;margin:20px 0 44px;font-size:9px}.sidebar nav{gap:8px;display:grid}.sidebar nav a{border-radius:10px;justify-content:space-between;padding:16px 14px;font-size:14px;display:flex}.sidebar nav a:hover{background:#dce3d2}.sidebar small{letter-spacing:2px;color:var(--muted);margin-top:auto;padding-top:36px;font-size:9px}main{width:100%;max-width:1500px;margin:auto;padding:40px clamp(24px,5vw,80px) 60px}.page-header{justify-content:space-between;align-items:center;display:flex}.eyebrow{letter-spacing:2px;font-size:10px;font-weight:700}.tag{border:1px solid #ccd3c4;border-radius:30px;padding:8px 12px;font-size:11px}.intro{padding:42px 0 38px}.intro h1{letter-spacing:-2px;margin:0 0 20px;font-size:clamp(34px,4.2vw,62px);font-weight:600;line-height:1.23}.intro p{color:var(--muted);margin:0;font-size:14px;line-height:1.9}.dashboard{grid-template-columns:minmax(0,1.65fr) minmax(230px,1fr);gap:24px;display:grid}.card{border:1px solid var(--line);background:#fffefa;border-radius:18px;overflow:hidden}.card h2{margin:0;font-size:16px}.card-heading{justify-content:space-between;align-items:center;gap:16px;padding:24px;display:flex}.muted{color:var(--muted);font-size:12px;line-height:1.8}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:286px;padding:30px;display:flex}.clock-art{color:#91a279;font-size:64px;line-height:1}.empty-state h3{margin:20px 0 8px;font-size:18px;font-weight:500}.empty-state p{color:var(--muted);font-size:13px;line-height:1.9}.card-footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);padding:17px;font-size:11px}.side-cards{gap:20px;display:grid}.quote-card{background:var(--green);color:#f3f4e9;border-radius:18px;min-height:196px;padding:27px;position:relative;overflow:hidden}.quote-card .eyebrow{color:#c5d1b7;font-size:9px}.quote-card p{margin:22px 0 0;font-size:24px;line-height:1.55}.quote-card>span:last-child{color:#c1d397;opacity:.8;font-size:85px;position:absolute;bottom:6px;right:19px}.setup-card{padding:25px}.setup-card p{color:var(--muted);font-size:12px;line-height:1.9}.text-link{justify-content:space-between;margin-top:24px;font-size:12px;font-weight:700;display:flex}button{font:inherit;background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:9px;padding:13px 20px;font-size:14px}button:disabled{opacity:.6;cursor:wait}.skip-link{z-index:10;background:#fff;padding:12px;position:absolute;top:-80px;left:20px}.skip-link:focus{top:10px}@media (max-width:900px){.shell{grid-template-columns:190px 1fr}.sidebar{padding:30px 20px}.dashboard{grid-template-columns:1fr}.side-cards{grid-template-columns:1fr 1fr}.quote-card p{font-size:20px}}@media (max-width:620px){.shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center;padding:16px 22px}.brand{font-size:25px}.brand-mark{font-size:29px}.sidebar-caption,.sidebar small{display:none}.sidebar nav{gap:2px;display:flex}.sidebar nav a{padding:10px;font-size:12px}.sidebar nav a span{display:none}main{padding:25px 22px 40px}.intro{padding:34px 0 28px}.intro h1{font-size:40px}.side-cards{grid-template-columns:1fr}.card-heading{padding:20px}.empty-state{min-height:250px}.quote-card{min-height:180px}}.startup-screen{background:radial-gradient(ellipse at 50% 30%,#e6edda 0,transparent 58%),var(--paper);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:48px 24px;display:flex}.startup-orbit{background:#f6f5ef99;border:1px solid #c5d1b7;border-radius:50%;place-items:center;width:116px;height:116px;margin-bottom:28px;display:grid;box-shadow:0 0 0 16px #e3e9da66}.startup-orbit span{color:var(--green);font-size:72px;line-height:1}.startup-brand{letter-spacing:-3px;font-size:56px;font-weight:700}.startup-brand>span{color:#809747}.startup-tagline{color:var(--muted);margin:14px 0 32px;font-size:14px}.startup-card{border:1px solid var(--line);background:#fffefa;border-radius:22px;width:100%;max-width:420px;padding:30px;box-shadow:0 12px 48px #25382d08}.startup-card h1{letter-spacing:-.6px;overflow-wrap:anywhere;outline:none;margin:0 0 18px;font-size:23px}.startup-card p{color:var(--muted);overflow-wrap:anywhere;font-size:14px;line-height:1.85}.startup-card .startup-release{color:var(--green);background:#edf2e6;border-radius:30px;margin:0;padding:5px 18px;font-size:13px;display:inline-block}.startup-release span{padding:0 12px}.startup-actions{gap:10px;margin-top:26px;display:flex}.startup-actions>*{flex:1}.startup-primary{background:var(--green);color:#fff;border-radius:9px;padding:13px 20px;font-size:14px;display:inline-block}.startup-secondary{color:var(--green);background:#edf0e6}.startup-notice{white-space:pre-wrap;text-align:left;max-height:35vh;overflow:auto}.startup-version{color:var(--muted);letter-spacing:1px;margin-top:36px;font-size:11px}.startup-loading{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.startup-spinner{border:2px solid #dce3d2;border-top-color:var(--green);border-radius:50%;width:16px;height:16px;animation:1s linear infinite startup-spin}@keyframes startup-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.startup-spinner{animation:none}}@media (max-width:400px){.startup-card{padding:24px 20px}.startup-actions{flex-direction:column}}
.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell{grid-template-columns:220px minmax(0,1fr)}.sidebar{background:#edf0e6;height:100vh;padding:36px 24px;position:sticky;top:0}.sidebar nav a[aria-current=page]{background:#dce5d2;font-weight:700}.shell>main{max-width:1600px;margin:0 auto;padding:34px clamp(24px,3.4vw,58px) 40px}.planner-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.local-label{color:#586c55;align-items:center;gap:7px;font-size:11px;display:flex}.local-label i{background:#7e9864;border-radius:50%;width:6px;height:6px}.planner-intro{justify-content:space-between;align-items:center;gap:24px;padding:38px 0 30px;display:flex}.planner-intro h1{letter-spacing:-1.8px;margin:12px 0;font-size:clamp(28px,3vw,43px);font-weight:600}.planner-intro p{color:var(--muted);margin:0;font-size:13px;line-height:1.8}.planner-intro .planner-date{color:#596b52;font-size:12px}.planner-intro>button{white-space:nowrap;box-shadow:0 4px 12px #314d3c14}.planner-stats{border:1px solid var(--line);background:#fffefa;border-radius:16px;grid-template-columns:repeat(3,1fr);margin-bottom:28px;padding:22px 0;display:grid}.planner-stats>div{border-right:1px solid var(--line);flex-direction:column;gap:10px;padding:0 25px;display:flex}.planner-stats>div:last-child{border:0}.planner-stats span{color:var(--muted);font-size:12px}.planner-stats strong{letter-spacing:-1px;font-size:29px;font-weight:500}.planner-stats em{color:var(--muted);margin-left:5px;font-size:14px;font-style:normal}.planner-stats small{color:var(--muted);font-size:11px}.planner-stats progress{accent-color:#839b67;width:100%;height:5px;margin-top:7px}.planner-workspace{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.planner-board{border:1px solid var(--line);background:#fffefa;border-radius:18px;overflow:hidden}.planner-toolbar{justify-content:space-between;align-items:center;gap:10px;padding:20px 24px;display:flex}.date-tools{align-items:center;gap:5px;display:flex}.date-tools button{color:var(--ink);background:0 0;padding:7px 10px;font-size:16px}.date-tools button:last-child{border:1px solid var(--line);margin-left:5px;font-size:11px}.date-tools input{color:var(--ink);font:inherit;background:0 0;border:0;max-width:142px;font-size:13px}.week-strip{border-bottom:1px solid var(--line);grid-template-columns:repeat(7,1fr);gap:8px;padding:0 24px 22px;display:grid}.week-strip button{color:var(--ink);background:0 0;border-radius:12px;flex-direction:column;align-items:center;gap:10px;padding:13px 5px 18px;display:flex;position:relative}.week-strip button span{color:var(--muted);font-size:11px}.week-strip button strong{font-size:19px;font-weight:500}.week-strip button[aria-pressed=true]{background:var(--green);color:#fffefa}.week-strip button[aria-pressed=true] span{color:#dce5d2}.week-strip i{background:#a7bc82;border-radius:100%;width:4px;height:4px;position:absolute;bottom:7px}.timeline-heading{justify-content:space-between;align-items:center;gap:12px;padding:26px 24px 20px;display:flex}.timeline-heading h2{margin:0;font-size:15px}.timeline-heading h2 span{color:#7e916e;margin-left:6px;font-size:12px}.plan-filters{gap:3px;display:flex}.plan-filters button{color:var(--muted);background:0 0;border-radius:6px;padding:6px 9px;font-size:11px}.plan-filters button[aria-pressed=true]{color:var(--green);background:#edf0e6}.plan-list{min-height:300px;padding:0 24px}.plan-row{grid-template-columns:45px 16px minmax(0,1fr) 30px;gap:12px;min-height:115px;display:grid}.plan-time{flex-direction:column;gap:8px;padding-top:14px;font-size:12px;display:flex}.plan-time strong{font-weight:500}.plan-time span{color:var(--muted);font-size:11px}.plan-track{justify-content:center;display:flex;position:relative}.plan-track:after{content:"";background:var(--line);width:1px;position:absolute;top:27px;bottom:-18px}.plan-row:last-child .plan-track:after{display:none}.plan-track i{z-index:1;background:var(--tone);border-radius:50%;width:8px;height:8px;margin-top:18px}.tone-0{--tone:#7e9667;--tint:#edf2e6}.tone-1{--tone:#9b89b0;--tint:#f1edf5}.tone-2{--tone:#cb9970;--tint:#faf0e5}.tone-3{--tone:#7e9aab;--tint:#edf3f6}.tone-4{--tone:#c6887b;--tint:#faeee9}.plan-detail{color:var(--ink);text-align:left;background:0 0;border-radius:5px;min-width:0;padding:10px 0 25px}.category{color:#4c5f43;background:var(--tint);border-radius:4px;padding:3px 7px;font-size:10px}.plan-detail h3{overflow-wrap:anywhere;margin:10px 0 8px;font-size:15px;font-weight:500}.plan-detail p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:11px;line-height:1.6}.plan-check{color:#8b9983;background:0 0;align-self:start;margin-top:25px;padding:5px;font-size:23px}.plan-check[aria-pressed=true]{color:#54783f}.is-done .plan-detail h3{color:var(--muted);text-decoration:line-through}.planner-empty{text-align:center;padding:36px 10px 48px}.planner-empty>div{color:#94a57c;font-size:59px}.planner-empty h3{margin:16px 0;font-size:17px;font-weight:500}.planner-empty p{color:var(--muted);white-space:pre-line;font-size:12px;line-height:1.9}.soft-button{color:#405d35;background:#edf2e6;margin-top:10px;font-size:12px}.timeline-footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);padding:18px;font-size:11px;line-height:1.7}.planner-panel{gap:20px;display:grid}.planner-reflection{background:#e7eddb;border-radius:18px;padding:28px;position:relative;overflow:hidden}.planner-reflection .eyebrow{color:#647d51;font-size:9px}.planner-reflection h2{letter-spacing:-.7px;margin:24px 0 16px;font-size:25px;font-weight:500;line-height:1.55}.planner-reflection p{color:#65715c;font-size:12px;line-height:1.9}.sun-art{color:#a5b980;margin-top:22px;font-size:67px;line-height:1}.category-summary,.plan-editor{border:1px solid var(--line);background:#fffefa;border-radius:18px;padding:25px}.category-summary h2{margin:0;font-size:15px}.summary-empty{color:var(--muted);padding:10px 0;font-size:12px;line-height:1.9}.category-total{align-items:center;gap:9px;padding:12px 0;font-size:11px;display:flex}.category-total meter{flex:1;width:65px;height:7px}.category-total strong{font-weight:400}.local-footnote{color:var(--muted);margin:0 5px;font-size:10px;line-height:1.8}.editor-heading{justify-content:space-between;align-items:center;display:flex}.plain-button{color:var(--muted);background:0 0;padding:0 5px;font-size:23px}.plan-editor h2{margin:18px 0 8px;font-size:23px;font-weight:500}.plan-editor label{color:#52604b;margin:20px 0;font-size:12px;display:block}.plan-editor input,.plan-editor select,.plan-editor textarea{width:100%;color:var(--ink);font:inherit;background:#fbfcf8;border:1px solid #dce1d3;border-radius:8px;min-width:0;margin-top:9px;padding:11px 9px;font-size:13px}.plan-editor textarea{resize:vertical}.plan-editor input:focus,.plan-editor textarea:focus,.plan-editor select:focus{outline-offset:2px;outline:2px solid #829868}.time-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.time-fields label{margin:0}.save-plan{width:100%;margin-top:4px}.delete-plan{color:#9d6153;background:0 0;width:100%;margin-top:10px;font-size:12px}.form-error{color:#a34232;font-size:12px;line-height:1.7}.planner-feedback{color:#53674b;margin-top:16px;font-size:12px;line-height:1.7}.planner-feedback button{margin-left:12px}.planner button:hover:not(:disabled){filter:brightness(.96)}@media (min-width:1600px){.planner-workspace{grid-template-columns:minmax(0,1fr) 330px}}@media (max-width:1150px){.shell{grid-template-columns:180px minmax(0,1fr)}.sidebar{padding:30px 18px}.planner-workspace{grid-template-columns:minmax(0,1fr) 260px;gap:16px}.planner-toolbar{flex-wrap:wrap}.plan-editor{padding:20px}.planner-stats>div{padding:0 18px}}@media (max-width:950px){.planner-workspace{grid-template-columns:1fr}.planner-panel{grid-template-columns:1fr 1fr}.plan-editor,.local-footnote{grid-column:1/-1}.planner-reflection{padding:24px}.sun-art{display:none}.planner-intro{align-items:flex-start}.planner-intro>button{padding:12px;font-size:12px}.planner-top{flex-wrap:wrap}}@media (max-width:620px){.sidebar{height:auto;padding:16px 22px;position:static}.shell{display:block}.shell>main{padding:25px 18px}.planner-intro{flex-direction:column;gap:16px;padding:28px 0}.planner-intro h1{font-size:29px}.planner-stats{padding:18px 0}.planner-stats>div{padding:0 12px}.planner-stats strong{font-size:22px}.planner-stats small{display:none}.planner-stats span{font-size:10px}.planner-stats em{font-size:11px}.planner-panel{grid-template-columns:1fr}.planner-toolbar,.timeline-heading{padding:20px 16px}.week-strip{gap:3px;padding:0 16px 18px}.plan-list{padding:0 16px}.plan-row{gap:8px}.local-label{font-size:10px}}.timeline-instructions{color:var(--muted);margin:0;padding:0 24px 18px;font-size:12px;line-height:1.8}.week-timeline-scroll{overscroll-behavior:contain;max-height:760px;padding-bottom:16px;overflow:auto}.week-timeline{min-width:850px;padding:0 16px 12px 8px}.week-grid-header,.week-grid-body{grid-template-columns:58px repeat(7,minmax(0,1fr));display:grid}.week-grid-header{z-index:3;background:var(--card,#fffefa);border-bottom:1px solid var(--line);position:sticky;top:0}.week-grid-header>span{color:var(--muted);padding:16px 4px;font-size:11px}.week-grid-header button{color:var(--ink);background:0 0;border-radius:8px;flex-direction:column;gap:5px;padding:10px;font-size:12px;display:flex}.week-grid-header button[aria-current=date]{background:var(--green);color:#fff}.week-grid-header button strong{font-size:18px}.hour-labels,.day-lane{min-width:0;position:relative}.hour-labels span{color:var(--muted);font-size:10px;position:absolute;left:2px;transform:translateY(-50%)}.hour-labels span:first-child{transform:none}.day-lane{border-left:1px solid var(--line)}.day-lane.selected-day{background:#82986808}.hour-rule{border-top:1px solid var(--line);pointer-events:none;width:100%;position:absolute}.schedule-block{cursor:grab;box-sizing:border-box;z-index:1;background:#edf4d9;border:1px solid #82986844;border-radius:7px;display:flex;position:absolute;left:3px;right:3px;overflow:hidden}.schedule-block.tone-1{background:#e7edf7}.schedule-block.tone-2{background:#f9e8d3}.schedule-block.tone-3{background:#f3e7ee}.schedule-block.tone-4{background:#e0f0e9}.schedule-block.is-done{opacity:.6}.schedule-block.is-done strong{text-decoration:line-through}.schedule-block .block-edit{color:var(--ink);text-align:left;background:0 0;border-radius:0;flex-direction:column;flex:1;gap:4px;min-width:0;padding:5px;font-size:11px;display:flex;overflow:hidden}.block-edit strong,.block-edit span{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:10px;display:block;overflow:hidden}.schedule-block .block-done{color:var(--ink);background:0 0;align-self:flex-start;padding:1px 3px;font-size:12px}.short-block .block-edit{justify-content:center;padding:0 3px}.short-block .block-edit span{display:none}.early-plans{padding:16px 24px}.early-plans h3{font-size:12px}.early-plans button{margin:4px;padding:8px;font-size:12px}.week-picker{cursor:pointer;align-items:center;min-height:36px;padding:0 10px;font-size:13px;display:inline-flex;position:relative}.date-tools .week-picker input{opacity:0;cursor:pointer;width:100%;max-width:none;height:100%;position:absolute;inset:0}.week-picker:focus-within{outline:2px solid var(--green);outline-offset:2px;border-radius:6px}.current-time-marker{border-top:2px solid var(--action);z-index:2;pointer-events:none;position:absolute;left:0;right:0}.current-time-marker:before{content:"";background:var(--action);border-radius:50%;width:8px;height:8px;position:absolute;top:-5px;left:-4px}.current-time-marker time{background:var(--card);color:var(--action);white-space:nowrap;padding:1px 4px;font-size:10px;line-height:1.4;position:absolute;bottom:3px;right:4px}.navigation-group-title{padding:16px 14px;font-size:14px}.navigation-submenu{gap:4px;padding-left:14px;display:grid}@media (max-width:620px){.navigation-group-title{padding:10px;font-size:12px}.navigation-submenu{padding-left:6px}}.todo-box h2{margin-top:0}.todo-list{gap:12px;max-height:360px;margin:18px 0 0;padding:0;list-style:none;display:grid;overflow:auto}.todo-list li{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:8px;gap:8px;padding:12px;display:grid}.todo-list li[draggable=true]{cursor:grab}.todo-actions{flex-wrap:wrap;gap:6px;display:flex}.todo-actions button{padding:7px 9px;font-size:11px}.planner-panel>.plan-editor:not(.todo-box){order:-1}.tone-5{--tone:var(--action);--tint:var(--selected)}.schedule-block.tone-5{background:var(--tint)}.category-management-list{max-height:none}.category-management-row label{margin-top:0}.dashboard-heading{flex-wrap:wrap;align-items:baseline;column-gap:14px;display:flex}.dashboard-heading time{color:var(--muted);white-space:nowrap;font-size:13px}.category-color-form{align-items:center;gap:12px;display:flex}.category-color-form label{align-items:center;gap:10px;display:flex}.plan-editor input[type=color]{cursor:pointer;width:44px;height:34px;margin:0;padding:3px}.category-color-form button{font-size:12px}.category-add .category-color-picker{flex:none}.planner-timeline-layout{grid-template-columns:280px minmax(0,1fr);grid-template-areas:"details timeline"}.planner-timeline-layout .planner-block-library{min-width:0}.planner-timeline-layout>.planner-board{grid-area:timeline;min-width:0}.planner-timeline-layout>.planner-panel{grid-area:details;grid-template-columns:minmax(0,1fr);min-width:0}.planner-block-library .todo-list{grid-template-columns:minmax(0,1fr);max-height:460px}.planner-block-library .todo-box>form{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.planner-block-library .todo-box>form>label{margin:0}.planner-block-library .save-plan{width:100%;margin:0}.planner-block-library .todo-list li{align-content:start}@media (max-width:950px){.planner-timeline-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"details""timeline"}.planner-block-library .todo-list{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));max-height:250px}}.dashboard-plan-actions{justify-content:flex-end}.recurring-weekdays{border:0;min-width:0;margin:20px 0;padding:0}.recurring-weekday-presets,.recurring-weekday-buttons{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.recurring-weekdays button{border:1px solid var(--line);background:var(--card);color:var(--muted);border-radius:12px;min-height:42px;padding:8px 16px}.recurring-weekday-buttons button{min-width:42px;padding:8px 12px}.recurring-weekdays button[aria-pressed=true]{background:var(--primary);border-color:var(--action);color:var(--ink);box-shadow:0 0 0 2px var(--soft);font-weight:700}.recurring-weekdays button:focus-visible{outline:2px solid var(--action);outline-offset:3px}.ten-minute-slot{box-sizing:border-box;position:absolute;left:0;right:0}.ten-minute-slot.minor-slot{border-top:1px dotted color-mix(in srgb,var(--line) 55%,transparent)}.ten-minute-slot:hover{background:var(--selected)}.day-lane .ten-minute-slot{color:inherit;background:0 0;border-bottom:0;border-left:0;border-right:0;border-radius:0;padding:0}.day-lane .ten-minute-slot:not(.minor-slot){border-top:0}.day-lane .ten-minute-slot:hover:not(:disabled){background:var(--selected)}.day-lane .ten-minute-slot:focus-visible{outline:2px solid var(--action);outline-offset:-2px}.schedule-editor-dialog{box-sizing:border-box;width:min(540px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--ink);overflow:auto}.schedule-editor-dialog::backdrop{background:#00000059}.schedule-editor-dialog .schedule-assignment{align-items:center;gap:8px;display:flex}.schedule-editor-dialog .schedule-assignment input{width:auto;margin:0}.todo-box .todo-edit{color:var(--ink);text-align:left;overflow-wrap:anywhere;background:0 0;padding:0}.schedule-editor-actions{gap:10px;margin-top:20px;display:grid}.schedule-editor-secondary-actions{gap:10px;display:flex}.schedule-editor-dialog .schedule-editor-actions button{min-width:0;margin:0}.schedule-editor-secondary-actions>button{flex:1;width:auto}
@font-face{font-family:ChronoSans;src:url(/fonts/NotoSansKR.ttf)format("truetype");font-weight:100 900;font-style:normal;font-display:swap}body{font-family:ChronoSans,Apple SD Gothic Neo,Malgun Gothic,sans-serif}.login-page{flex-direction:column;width:100%;max-width:1440px;min-height:100svh;margin:0 auto;padding:38px 64px 24px;display:flex}.login-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.login-wordmark{flex-direction:column;align-items:center;gap:8px;display:flex}.login-wordmark span{letter-spacing:-1px;font-size:28px;font-weight:650;line-height:1.2}.login-wordmark img,.login-welcome img{filter:grayscale()}.login-header-note{color:var(--muted);font-size:12px}.login-layout{flex:1;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:center;gap:clamp(60px,8vw,130px);padding:60px 40px 66px;display:grid}.login-eyebrow{letter-spacing:1.5px;color:var(--muted);font-size:10px;font-weight:500}.login-story h1{letter-spacing:-1.5px;margin:24px 0 22px;font-size:clamp(32px,3.2vw,44px);font-weight:600;line-height:1.5}.login-story h1>span{color:var(--action)}.login-story>p{color:var(--muted);font-size:14px;line-height:1.9}.login-illustration{border:1px solid var(--line);background:var(--card);border-radius:10px;max-width:470px;margin-top:32px;padding:24px}.illustration-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;font-size:12px;font-weight:600;display:flex}.illustration-heading span:last-child{color:var(--muted);font-size:10px;font-weight:400}.illustration-row{grid-template-columns:40px 6px 1fr 20px;align-items:center;gap:12px;margin-bottom:14px;display:grid}.illustration-row time{color:var(--muted);font-variant-numeric:tabular-nums;align-self:start;margin-top:14px;font-size:10px}.illustration-row>i{background:var(--muted);border-radius:50%;width:5px;height:5px}.illustration-row>div{border:1px solid var(--line);background:var(--card);border-radius:6px;flex-direction:column;gap:5px;padding:12px;display:flex}.illustration-row strong{font-size:13px;font-weight:500}.illustration-row div>span:last-child{color:var(--muted);font-size:10px;line-height:1.8}.illustration-category{letter-spacing:1px;color:var(--muted);font-size:9px;font-weight:500}.illustration-row>b{color:var(--action);font-size:16px;font-weight:400}.illustration-row.pause>div{background:var(--selected)}.illustration-caption{text-align:center;border-top:1px solid var(--line);color:var(--muted);margin-top:20px;padding-top:16px;font-size:10px}.illustration-caption>span{color:var(--ink)}.login-story .login-philosophy{margin-top:20px;font-size:11px}.login-form-area{justify-self:center;width:100%;max-width:360px}.login-welcome{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:23px;display:flex}.login-welcome span{letter-spacing:1.5px;color:var(--muted);font-size:9px}.login-form-area h2{letter-spacing:-.8px;margin:0 0 14px;font-size:26px;font-weight:600;line-height:1.6}.login-description{color:var(--muted);margin:0 0 28px;font-size:13px;line-height:1.8}.social-buttons{gap:10px;display:grid}.social-button{border:1px solid #0000;border-radius:6px;grid-template-columns:24px 1fr 24px;align-items:center;gap:10px;height:50px;padding:0 18px;font-size:13px;font-weight:500;transition:filter .15s;display:grid}.social-button.apple{color:#fff;background:#000}.social-button.google{color:#191919;border-color:var(--line);background:#fff}.social-button.kakao{color:#191919;background:#fee500}.social-button:hover:not(:disabled){filter:brightness(.96)}.social-button:disabled,.login-development>button:disabled,.test-member-banner button:disabled{opacity:.55;cursor:wait}.login-page button:focus-visible,.test-member-banner button:focus-visible{outline:2px solid var(--action);outline-offset:3px}.social-support{text-align:center;color:var(--muted);margin:18px 0 0;font-size:11px;line-height:1.8}.login-development{border-top:1px solid var(--line);margin-top:26px;padding-top:20px}.login-development>span{color:var(--muted);font-size:10px}.login-development>button{background:var(--card);border:1px solid var(--line);width:100%;color:var(--action);border-radius:6px;justify-content:space-between;align-items:center;margin:10px 0;padding:12px 14px;font-size:12px;font-weight:500;display:flex}.login-development>button:hover:not(:disabled){background:var(--selected)}.login-development>p{color:var(--muted);margin:0;font-size:10px;line-height:1.8}.login-feedback{border:1px solid var(--line);background:var(--selected);border-radius:6px;margin-top:18px;padding:14px;font-size:12px;line-height:1.8}.login-feedback[role=alert]{border-color:var(--danger);background:var(--card);color:var(--danger)}.login-feedback strong{font-weight:550}.login-feedback p{color:var(--muted);margin:6px 0 12px}.login-feedback button{border:1px solid var(--action);background:var(--action);color:#fff;border-radius:6px;padding:7px 14px;font-size:12px}.login-feedback button:hover{background:var(--ink);border-color:var(--ink)}.login-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:16px;padding-top:20px;font-size:10px;display:flex}.test-member-banner{border-bottom:1px solid var(--line);background:var(--card);color:var(--muted);justify-content:center;align-items:center;gap:20px;padding:10px 18px;font-size:11px;display:flex}.test-member-banner button{border:1px solid var(--line);background:var(--card);color:var(--action);border-radius:6px;padding:6px 10px;font-size:11px}.test-member-banner button:hover:not(:disabled){background:var(--selected)}.test-member-banner.account-banner{justify-content:flex-start}.account-banner-identity{overflow-wrap:anywhere;min-width:0}.account-banner-identity strong{color:var(--ink);font-weight:600}.account-banner [role=alert]{color:var(--danger)}.account-banner .account-banner-logout{flex-shrink:0;margin-left:auto}@media (min-width:1500px){.login-page{padding-top:50px}.login-layout{padding-top:75px;padding-bottom:85px}}@media (max-width:1000px){.login-page{padding:30px 36px 24px}.login-layout{gap:48px;padding:50px 0}.login-story h1{font-size:32px}.login-illustration{padding:20px}.illustration-row{gap:8px}.illustration-heading span:last-child{display:none}.login-form-area h2{font-size:24px}}@media (max-width:760px){.login-page{padding:28px 24px 22px}.login-header-note{font-size:10px}.login-layout{padding:52px 0 44px;display:block}.login-story{display:none}.login-form-area{max-width:380px;margin:auto}.login-form-area h2{font-size:27px}.login-welcome{margin-bottom:20px}.login-welcome img{display:none}.login-footer{font-size:9px}.test-member-banner{flex-wrap:wrap;gap:8px}.social-button{height:52px}}@media (prefers-reduced-motion:reduce){.social-button{transition:none}}
:root{--paper:#fff;--card:#fff;--cream:#fafbfc;--ink:#303640;--muted:#6d7580;--line:#e4e7eb;--primary:#edf0f3;--soft:#f3f5f7;--selected:#f3f5f7;--accent:#485465;--action:#485465;--green:#485465;--mint:#e4e7eb;--mint-light:#f3f5f7;--mint-deep:#596574;--success:#3c7358;--success-tint:#edf5f0;--danger:#a9473d;--art:#89929e}body{background:var(--paper);color:var(--ink)}a:focus-visible,button:focus-visible{outline:2px solid var(--action);outline-offset:3px}button{background:var(--ink);color:#fff;border-radius:6px}.tag{border-color:var(--line);color:var(--muted);border-radius:6px}.card,.planner-board,.planner-stats,.category-summary,.plan-editor{background:var(--card);border-radius:10px}.clock-art,.sun-art,.planner-empty>div{color:var(--art)}.quote-card,.planner-reflection{background:var(--selected);color:var(--ink);border-radius:10px}.quote-card .eyebrow,.planner-reflection .eyebrow{color:var(--muted)}.quote-card>span:last-child{color:var(--line)}.form-error{color:var(--danger)}.local-label,.planner-date,.planner-reflection p,.planner-feedback,.plan-editor label{color:var(--muted)}.local-label i{background:var(--muted)}.planner-intro>button{box-shadow:none}.planner-intro>button,.save-plan{background:var(--ink);color:#fff}.week-strip button[aria-pressed=true]{background:var(--selected);color:var(--ink)}.week-strip button[aria-pressed=true] span{color:var(--action)}.week-strip i{background:var(--action)}.planner-stats progress,.category-total meter{accent-color:var(--action)}.timeline-heading h2 span{color:var(--muted)}.plan-filters button[aria-pressed=true],.soft-button{background:var(--selected);color:var(--action)}.plan-check{color:var(--muted)}.plan-check[aria-pressed=true]{color:var(--success)}.plan-editor input,.plan-editor select,.plan-editor textarea{background:var(--paper);border-color:var(--line);border-radius:6px}.plan-editor input:focus,.plan-editor textarea:focus,.plan-editor select:focus,.week-picker:focus-within{outline-color:var(--action)}.delete-plan{color:var(--danger)}.category{color:var(--ink)}.schedule-editor-dialog{border-radius:10px}.schedule-editor-dialog .schedule-editor-secondary-actions>button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:6px}.schedule-editor-dialog .schedule-editor-secondary-actions>.delete-plan{color:var(--danger)}.start-time-picker>legend,.duration-fields>legend{color:var(--muted);font-size:12px}.duration-fields .duration-inputs{margin-top:8px}.plan-editor .duration-inputs label{margin:0}.start-time-picker .start-time-picker-trigger{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:6px;padding:10px 12px;font-size:13px}.start-time-picker .start-time-picker-panel{border:1px solid var(--line);background:var(--card);border-radius:6px;padding:12px}.start-time-picker .start-time-picker-actions .soft-button{border:1px solid var(--line);background:var(--card);color:var(--ink)}.startup-screen{background:var(--paper)}.startup-orbit{width:72px;height:72px;box-shadow:none;background:0 0;border:0;margin-bottom:12px}.startup-orbit span{color:var(--action);font-size:60px}.startup-brand{letter-spacing:-2px;font-size:44px}.startup-brand>span{color:var(--action)}.startup-tagline{margin:12px 0 28px;font-size:13px}.startup-card{background:var(--card);box-shadow:none;border-radius:10px;padding:28px}.startup-card h1{font-size:21px;font-weight:600}.startup-card .startup-release{background:var(--selected);color:var(--action);border-radius:6px;padding:5px 12px;font-size:12px}.startup-primary{background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:6px}.startup-secondary{background:var(--card);color:var(--action);border:1px solid var(--line);border-radius:6px}.startup-spinner{border-color:var(--line);border-top-color:var(--action)}@media (max-width:400px){.startup-card{padding:24px 20px}}.tone-0{--tone:#7a5e00;--tint:#fff1b8}.tone-1{--tone:#6e5c94;--tint:#efe9f7}.tone-2{--tone:#a85a47;--tint:#fbe9e2}.tone-3{--tone:#45708c;--tint:#e6f1f7}.tone-4{--tone:#3e7d5c;--tint:#cdeedc}
.shell{grid-template-rows:64px minmax(0,1fr)}.topbar{background:var(--card);border-bottom:1px solid var(--line);grid-column:1/-1;align-items:center;gap:22px;min-height:64px;padding:0 28px;display:flex}.topbar .brand{letter-spacing:-1.2px;color:var(--ink);font-size:25px;line-height:1}.topbar .brand-mark{color:var(--action);margin-right:8px;font-size:29px}.brand-dot{color:var(--action)}.topbar-caption{letter-spacing:1.4px;color:var(--muted);margin:0;padding-top:5px;font-size:9px}.sidebar{background:var(--cream);border-color:var(--line);align-self:start;height:calc(100svh - 64px);padding:24px 14px}.sidebar nav{gap:8px}.sidebar nav a{color:var(--muted);border-radius:6px;min-width:0;padding:11px 12px;font-size:13px;font-weight:400}.sidebar nav a:hover{background:var(--primary);color:var(--ink)}.sidebar nav a[aria-current=page]{background:var(--primary);color:var(--ink);font-weight:600}.sidebar nav a>span{display:none}.navigation-group{margin:10px 0}.navigation-group-title{letter-spacing:.5px;color:var(--muted);padding:8px 12px 10px;font-size:10px;font-weight:500}.navigation-submenu{gap:4px;padding-left:0}.sidebar small{letter-spacing:1.2px;padding:28px 12px 0;font-size:9px}.shell>main{min-width:0}.test-member-banner{z-index:6;max-width:calc(100% - 460px);min-height:64px;color:var(--muted);background:0 0;border:0;flex-wrap:nowrap;justify-content:flex-end;gap:12px;padding:12px 28px;font-size:12px;position:absolute;top:0;right:0}.test-member-banner.account-banner{justify-content:flex-end}.test-member-banner>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.account-banner-identity strong{color:var(--ink);font-weight:600}.test-member-banner button,.account-banner .account-banner-logout{background:var(--card);border:1px solid var(--line);color:var(--action);border-radius:6px;flex-shrink:0;margin-left:0;padding:7px 12px;font-size:11px;font-weight:500}.test-member-banner button:hover:not(:disabled){background:var(--selected)}.test-member-banner:has([role=alert]){border-bottom:1px solid var(--line);flex-wrap:wrap;max-width:none;min-height:0;padding:10px 28px;position:static}.test-member-banner [role=alert]{color:var(--danger);overflow-wrap:anywhere;min-width:0}.intro{padding:20px 0 24px}.intro h1{letter-spacing:-.8px;margin:0 0 8px;font-size:28px;font-weight:600;line-height:1.4}.intro p{font-size:13px;line-height:1.8}.page-header{color:var(--muted);margin-top:4px}.eyebrow{letter-spacing:1px;font-weight:500}@media (max-width:1100px){.topbar-caption{display:none}.test-member-banner{max-width:calc(100% - 220px)}}@media (max-width:760px){.shell{display:block}.topbar{min-height:58px;padding:0 18px}.topbar .brand{font-size:23px}.topbar .brand-mark{font-size:27px}:is(.test-member-banner,.test-member-banner:has([role=alert])){background:var(--card);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;max-width:none;min-height:0;padding:8px 18px;font-size:11px;position:static}.test-member-banner.account-banner{justify-content:space-between}.test-member-banner>span:first-child{white-space:normal;overflow-wrap:anywhere}.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;padding:8px 14px 2px;display:block;position:static}.sidebar nav{align-items:center;gap:4px;width:100%;padding:2px 0 6px;display:flex;overflow-x:auto}.sidebar nav a{white-space:nowrap;flex-shrink:0;padding:10px 12px;font-size:12px}.navigation-group{flex-shrink:0;margin:0;display:flex}.navigation-group-title{display:none}.navigation-submenu{gap:4px;padding:0;display:flex}.sidebar small{display:none}.shell>main{padding:24px 18px 40px}.intro{padding:18px 0 20px}.intro h1{font-size:24px}}
.timeline-page{color:var(--ink)}.timeline-page .planner-intro{align-items:center;gap:16px;padding:20px 0 24px}.timeline-page .planner-intro h1{letter-spacing:-.8px;margin:0;font-size:28px;font-weight:600;line-height:1.4}.timeline-page .planner-intro>button{background:var(--ink);color:#fff;box-shadow:none;border-radius:6px;flex:none;padding:10px 16px;font-size:12px}.timeline-page .planner-timeline-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:20px}.timeline-page .planner-board,.timeline-page .category-summary,.timeline-page .todo-box{border:1px solid var(--line);background:var(--card);box-shadow:none;border-radius:10px}.timeline-page .planner-board{min-width:0;padding:0}.timeline-page .planner-toolbar{border-bottom:1px solid var(--line);gap:12px;padding:16px 20px 12px}.timeline-page .planner-toolbar>.muted{font-size:11px}.timeline-page .date-tools{gap:4px}.timeline-page .date-tools button{min-width:28px;min-height:28px;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:5px;place-items:center;padding:4px 8px;font-size:16px;display:grid}.timeline-page .date-tools button:hover:not(:disabled){background:var(--selected)}.timeline-page .date-tools button:last-child{border-color:var(--line);margin-left:6px;font-size:11px}.timeline-page .week-picker{min-height:30px;padding:0 8px;font-size:13px;font-weight:500}.timeline-page .week-picker:focus-within{outline-color:var(--action)}.timeline-page .timeline-heading{flex-wrap:wrap;gap:12px;padding:18px 20px 10px}.timeline-page .timeline-heading h2{font-size:15px;font-weight:600}.timeline-page .timeline-heading h2 span{color:var(--muted);font-size:11px;font-weight:400}.timeline-page .plan-filters{gap:3px}.timeline-page .plan-filters button{color:var(--muted);border:1px solid #0000;border-radius:5px;padding:5px 9px;font-size:11px}.timeline-page .plan-filters button[aria-pressed=true]{background:var(--selected);border-color:var(--line);color:var(--ink)}.timeline-page .timeline-instructions{color:var(--muted);margin:0;padding:0 20px 14px;font-size:11px;line-height:1.6}.timeline-page .timeline-footer{text-align:left;border-top:0;padding:14px 20px;font-size:11px;line-height:1.6}.timeline-page .week-timeline-scroll{border:1px solid var(--line);background:var(--card);scrollbar-width:thin;scrollbar-color:#c7cbd1 transparent;border-radius:8px;max-height:clamp(380px,60vh,600px);margin:0 20px;padding:0;overflow:auto}.timeline-page .week-timeline-scroll:focus-visible{outline:2px solid var(--action);outline-offset:3px}.timeline-page .week-timeline{background:var(--card);min-width:850px;padding:0}.timeline-page .week-grid-header,.timeline-page .week-grid-body{grid-template-columns:60px repeat(7,minmax(0,1fr));gap:0;display:grid}.timeline-page .week-grid-header{z-index:4;background:var(--card);border-bottom:1px solid var(--line);padding:0;position:sticky;top:0}.timeline-page .week-grid-header>span{color:var(--muted);justify-content:center;align-items:center;padding:0;font-size:10px;display:flex}.timeline-page .week-grid-header button{border:0;border-left:1px solid var(--line);min-height:78px;color:var(--muted);letter-spacing:0;background:0 0;border-radius:0;justify-content:center;align-items:flex-start;gap:4px;padding:12px;font-size:11px;font-weight:400;transition:none;position:relative}.timeline-page .week-grid-header button strong{font-variant-numeric:tabular-nums;width:auto;height:auto;color:var(--ink);box-shadow:none;background:0 0;border:0;font-size:18px;font-weight:600;line-height:1.4;display:block}.timeline-page .week-grid-header button:hover{background:var(--selected)}.timeline-page .week-grid-header button[aria-pressed=true]{background:var(--selected);box-shadow:inset 0 -2px var(--ink);color:var(--ink)}.timeline-page .week-grid-header button[aria-current=date]:after{content:"오늘";color:var(--ink);font-size:10px;font-weight:600;line-height:1.4;position:absolute;top:12px;right:10px}.timeline-page .week-grid-header button:focus-visible{outline:2px solid var(--action);outline-offset:-2px}.timeline-page .week-grid-body{margin:16px 0}.timeline-page .hour-labels span{color:var(--muted);font-variant-numeric:tabular-nums;background:0 0;border-radius:0;padding:0;font-size:10px;font-weight:400;line-height:1.3;left:auto;right:10px;transform:translateY(-50%)}.timeline-page .day-lane{border-left:1px solid var(--line);background:0 0}.timeline-page .day-lane.selected-day{background:#fafbfc}.timeline-page .hour-rule{border-top:1px solid #eceff2}.timeline-page .ten-minute-slot.minor-slot{border-top:1px dotted #f0f2f4}.timeline-page .ten-minute-slot:hover:not(:disabled){background:#edf0f4}.timeline-page .ten-minute-slot:disabled{cursor:default}.timeline-page .current-time-marker{border-top:1px solid var(--danger);z-index:2;pointer-events:none}.timeline-page .current-time-marker:before{background:var(--danger);width:5px;height:5px;top:-3px;left:-3px}.timeline-page .current-time-marker time{color:var(--danger);font-size:10px}.timeline-page .schedule-block{border:1px solid var(--line);border-left:3px solid var(--tone);background:color-mix(in srgb,var(--tone) 5%,white);box-shadow:none;border-radius:5px;flex-direction:column;padding:8px;transition:none;display:flex;left:3px;right:3px}.timeline-page .schedule-block:hover,.timeline-page .schedule-block:focus-within{border-color:var(--tone);box-shadow:none;z-index:3;transform:none}.timeline-page .schedule-block[draggable=false]{cursor:default}.timeline-page .schedule-block .block-edit{min-width:0;min-height:0;color:var(--ink);cursor:inherit;background:0 0;flex:1;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title title""category state";align-content:start;align-items:center;gap:4px 6px;padding:0;display:grid}.timeline-page .block-edit strong{width:auto;color:var(--ink);grid-area:title;font-size:12px;font-weight:500;line-height:17px}.timeline-page .schedule-block .block-edit span{width:auto;min-width:0;color:var(--muted);font-size:10px;line-height:12px;display:block}.timeline-page .block-category{grid-area:category}.timeline-page .block-state{grid-area:state}.timeline-page .schedule-block[data-size=md] .block-edit strong{-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box}.timeline-page .schedule-block[data-status=pending]{border-color:color-mix(in srgb,var(--tone) 40%,var(--line));border-left-color:var(--tone);background:color-mix(in srgb,var(--tone) 10%,white)}.timeline-page .schedule-block[data-status=pending] strong,.timeline-page .schedule-block[data-status=pending] .block-state{color:var(--ink);font-weight:600}.timeline-page .schedule-block.is-done{opacity:1;border-left-color:var(--tone);background:color-mix(in srgb,var(--tone) 3%,white)}.timeline-page .schedule-block.is-done strong{color:var(--muted);text-decoration:none}.timeline-page .schedule-block.is-done .block-state:before{content:"✓ ";font-size:9px}.timeline-page .schedule-block button:focus-visible{outline:2px solid var(--action);outline-offset:-2px}.timeline-page .schedule-block[data-size=sm]{padding:3px 6px}.timeline-page .schedule-block[data-size=sm] .block-edit{gap:1px 4px}.timeline-page .schedule-block[data-size=sm] .block-edit strong{font-size:11px;line-height:14px}.timeline-page .schedule-block[data-size=sm] .block-category,.timeline-page .schedule-block[data-size=sm] .block-state{line-height:11px}.timeline-page .schedule-block[data-size=xs]{padding:1px 4px}.timeline-page .schedule-block[data-size=xs] .block-edit{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title state""category category";align-content:center;gap:1px 4px}.timeline-page .schedule-block[data-size=xs] .block-edit strong{font-size:11px;line-height:12px}.timeline-page .schedule-block[data-size=xs] .block-state{text-align:right}.timeline-page .schedule-block[data-short]{padding:0 3px}.timeline-page .schedule-block[data-short] .block-edit{grid-template-columns:minmax(0,1fr) minmax(0,.9fr) auto;grid-template-areas:"title category state";gap:3px}.timeline-page .schedule-block[data-short] .block-edit strong,.timeline-page .schedule-block[data-short] .block-edit span{font-size:10px;line-height:12px}.timeline-page .early-plans{border:1px solid var(--line);background:var(--card);border-radius:6px;margin:14px 20px 0;padding:12px}.timeline-page .early-plans h3{margin:0 0 6px;font-size:12px;font-weight:500}.timeline-page .early-plans button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:5px;padding:6px 9px;font-size:11px}.timeline-page .early-plans button[data-status]{border-left:3px solid var(--tone,var(--muted))}.timeline-page .early-plans button[data-status=pending]{background:color-mix(in srgb,var(--tone,var(--ink)) 8%,white);font-weight:600}.timeline-page .planner-panel{gap:16px}.timeline-page .todo-box,.timeline-page .category-summary{padding:18px}.timeline-page .todo-box h2,.timeline-page .category-summary h2{margin:0;font-size:15px;font-weight:600;line-height:1.4}.timeline-page .todo-box>.muted,.timeline-page .category-summary>.muted{margin:10px 0 0;font-size:11px;line-height:1.7}.timeline-page .todo-list{scrollbar-width:thin;gap:8px;max-height:440px;margin-top:14px;padding-right:2px}.timeline-page .todo-list li{border:1px solid var(--line);background:var(--card);border-radius:6px;gap:7px;padding:10px}.timeline-page .todo-edit strong{font-size:12px;font-weight:500;line-height:1.5}.timeline-page .todo-list .muted{font-size:10px;line-height:1.5}.timeline-page .todo-actions{justify-content:space-between;gap:6px}.timeline-page .todo-actions button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:4px;padding:6px 8px;font-size:10px}.timeline-page .todo-actions button:hover:not(:disabled){background:var(--selected)}.timeline-page .todo-actions button:last-child{color:var(--muted)}.timeline-page .category-total{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:10px 0;display:grid}.timeline-page .category-total span{overflow-wrap:anywhere}.timeline-page .category-total strong{white-space:nowrap;color:var(--muted);grid-area:1/2}.timeline-page .category-total meter{accent-color:#929ba7;grid-area:2/1/auto/-1;width:100%;height:5px}.timeline-page .category-total meter::-webkit-meter-bar{background:#eef0f3;border:0}.timeline-page .category-total meter::-webkit-meter-optimum-value{background:#929ba7}.timeline-page .category-total meter::-moz-meter-bar{background:#929ba7}.timeline-page .summary-empty{margin:12px 0 0;padding:0;font-size:11px;line-height:1.6}.timeline-page .local-footnote{margin:0;font-size:11px;line-height:1.6}.timeline-page .planner-feedback{color:var(--muted);margin-top:14px}.timeline-page .schedule-editor-dialog{background:var(--card);border-color:var(--line);border-radius:10px;padding:24px}.timeline-page .schedule-editor-dialog .editor-heading{margin-bottom:16px}.timeline-page .schedule-editor-dialog h2{margin:0;font-size:20px;font-weight:600;line-height:1.5}.timeline-page .schedule-editor-dialog .plain-button{color:var(--muted);background:0 0}.timeline-page .schedule-editor-dialog label,.timeline-page .schedule-editor-dialog legend{color:var(--muted);font-size:12px}.timeline-page .schedule-editor-dialog label{margin:16px 0}.timeline-page .schedule-editor-dialog input,.timeline-page .schedule-editor-dialog select,.timeline-page .schedule-editor-dialog textarea{border-color:var(--line);background:var(--card);border-radius:6px;padding:10px;font-size:13px}.timeline-page .schedule-editor-dialog input:focus,.timeline-page .schedule-editor-dialog select:focus,.timeline-page .schedule-editor-dialog textarea:focus{outline-color:var(--action)}.timeline-page .schedule-editor-dialog .time-fields{gap:12px}.timeline-page .schedule-editor-dialog .time-fields>label{margin:0}.timeline-page .schedule-editor-dialog .duration-fields{margin-top:16px}.timeline-page .schedule-editor-dialog .duration-inputs{margin-top:8px}.timeline-page .schedule-editor-dialog .duration-inputs label,.timeline-page .schedule-editor-dialog .start-time-picker-columns label{margin:0}.timeline-page .schedule-editor-dialog .start-time-picker-trigger{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:6px;padding:10px;font-size:13px}.timeline-page .schedule-editor-dialog .start-time-picker-columns select{padding:4px}.timeline-page .schedule-editor-dialog .start-time-picker-actions button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:5px}.timeline-page .schedule-editor-dialog .start-time-picker-actions button:last-child{background:var(--ink);color:#fff}.timeline-page .schedule-editor-actions{border-top:1px solid var(--line);gap:10px;padding-top:16px}.timeline-page .schedule-editor-actions>.save-plan{background:var(--ink);color:#fff;border-radius:6px;padding:11px;font-size:12px}.timeline-page .schedule-editor-secondary-actions button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:6px;padding:10px;font-size:12px}.timeline-page .schedule-editor-secondary-actions .delete-plan{color:var(--danger)}.timeline-page .schedule-category-field{align-items:flex-end;gap:10px;display:flex}.timeline-page .schedule-category-field>label{flex:1;min-width:0}.timeline-page .schedule-category-field>button{border:1px solid var(--line);background:var(--card);color:var(--ink);flex:none;margin:0 0 16px;padding:10px 12px;font-size:12px}.timeline-page .schedule-category-add{border:1px solid var(--line);border-radius:6px;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px;display:grid}.timeline-page .schedule-category-add label{min-width:0;margin:0}.timeline-page .schedule-category-add input[type=color]{width:44px;height:40px;margin-top:9px;padding:4px;display:block}.timeline-page .schedule-category-add-actions{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.timeline-page .schedule-category-add-actions button{margin:0;padding:8px 12px;font-size:12px}.timeline-page .schedule-category-add-actions .soft-button{border:1px solid var(--line);background:var(--card);color:var(--ink)}.timeline-page .schedule-category-add>.muted{grid-column:1/-1;margin:0;font-size:11px}@media (max-width:1100px){.timeline-page .planner-timeline-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"timeline""details"}.timeline-page .planner-timeline-layout>.planner-panel{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.timeline-page .local-footnote{grid-column:1/-1}}@media (max-width:620px){.timeline-page .planner-intro{flex-direction:row;align-items:center;padding:18px 0 20px}.timeline-page .planner-intro h1{font-size:21px}.timeline-page .planner-intro>button{padding:9px 12px}.timeline-page .planner-toolbar{padding:12px}.timeline-page .timeline-heading{padding:14px 12px 10px}.timeline-page .timeline-instructions{padding:0 12px 12px}.timeline-page .week-timeline-scroll{max-height:460px;margin:0 12px}.timeline-page .timeline-footer{padding:12px}.timeline-page .planner-timeline-layout>.planner-panel{grid-template-columns:minmax(0,1fr)}.timeline-page .schedule-editor-dialog{padding:18px}}
.dash-stats{border:1px solid var(--line);background:var(--card);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0 0 24px;padding:18px 0;display:grid}.dash-stat{border-right:1px solid var(--line);flex-direction:column;gap:10px;min-width:0;padding:0 24px;display:flex}.dash-stat:last-child{border-right:0}.dash-stat-label{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.dash-dot{display:none}.dash-stat strong{letter-spacing:-.6px;color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:26px;font-weight:600;line-height:1.25}.dash-stat em{color:var(--muted);letter-spacing:0;margin-left:4px;font-size:12px;font-style:normal;font-weight:400}.dash-stat small{color:var(--muted);font-size:11px;line-height:1.6}.dash-progress{align-items:center;gap:10px;margin-top:2px;display:flex}.dash-progress progress{appearance:none;background:var(--mint-light);height:6px;accent-color:var(--mint-deep);border:0;border-radius:999px;flex:1;overflow:hidden}.dash-progress progress::-webkit-progress-bar{background:var(--mint-light);border-radius:999px}.dash-progress progress::-webkit-progress-value{background:var(--mint-deep);border-radius:999px}.dash-progress progress::-moz-progress-bar{background:var(--mint-deep);border-radius:999px}.dash-progress span{color:var(--mint-deep);text-align:right;min-width:32px;font-size:11px;font-weight:600}.dash-today{border:1px solid var(--line);background:var(--card);border-radius:10px;padding:22px 24px 26px}.dash-today-heading{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;display:flex}.dash-today-heading h2{margin:0;font-size:16px;font-weight:600}.dash-today-done{color:var(--muted);padding:3px 0;font-size:11px;font-weight:400}.dash-today-link{color:var(--action);background:var(--selected);border-radius:6px;margin-left:auto;padding:6px 10px;font-size:12px;font-weight:400}.dash-today-link:hover{background:var(--soft)}.dash-timeline{margin:0;padding:0;list-style:none}.dash-item{grid-template-columns:52px 18px minmax(0,1fr);gap:12px;display:grid}.dash-time{text-align:right;flex-direction:column;gap:4px;padding-top:12px;font-size:12px;display:flex}.dash-time time{color:var(--ink);font-weight:600}.dash-time span{color:var(--muted);font-size:11px}.dash-track{justify-content:center;display:flex;position:relative}.dash-track:after{content:"";background:var(--line);border-radius:2px;width:2px;position:absolute;top:22px;bottom:-10px}.dash-item:last-child .dash-track:after{display:none}.dash-track i{z-index:1;background:var(--tone);border-radius:50%;width:8px;height:8px;margin-top:14px}.dash-card{background:var(--card);border:1px solid var(--line);border-left:2px solid var(--tone);border-radius:6px;min-width:0;margin:0 0 12px;padding:12px 14px 13px}.dash-card-top{align-items:center;gap:8px;display:flex}.dash-chip{color:var(--muted);font-size:10px;font-weight:400}.dash-state{color:var(--muted);margin-left:auto;font-size:10px;font-weight:600}.dash-item.is-done .dash-state{color:var(--success)}.dash-item.is-done .dash-state:before{content:"✓ "}.dash-title{color:var(--ink);overflow-wrap:anywhere;margin:7px 0 4px;font-size:14px;font-weight:600}.dash-meta{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:11px}.dash-item.is-done .dash-card{border-left-style:dotted}.dash-item.is-done .dash-title{color:var(--muted);text-decoration:line-through}.dash-empty{text-align:center;padding:34px 10px 38px}.dash-empty>div{color:var(--art);font-size:54px;line-height:1}.dash-empty .muted{color:var(--ink);margin:14px 0 4px;font-size:14px}.dash-empty-hint{color:var(--muted);margin:0;font-size:12px}@media (max-width:620px){.dash-stats{grid-template-columns:1fr;padding:0}.dash-stat{border-right:0;border-bottom:1px solid var(--line);padding:16px 18px}.dash-stat:last-child{border-bottom:0}.dash-today{padding:16px 14px 20px}.dash-item{grid-template-columns:44px 16px minmax(0,1fr);gap:8px}}.dashboard-page{color:var(--ink)}.dashboard-page .planner-intro{padding:20px 0 24px}.dashboard-page .dashboard-heading{justify-content:space-between;align-items:center;gap:10px 24px;width:100%}.dashboard-page .dashboard-heading h1{letter-spacing:-.8px;margin:0;font-size:28px;font-weight:600;line-height:1.4}.dashboard-page .dashboard-heading time{font-size:12px}.dashboard-page .dash-stats{border:1px solid var(--line);background:var(--card);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:28px;padding:18px 0}.dashboard-page .dash-stat{border:0;border-right:1px solid var(--line);background:0 0;border-radius:0;grid-column:auto;gap:10px;padding:0 24px}.dashboard-page .dash-stat:last-child{border-right:0}.dashboard-page .dash-stat strong{letter-spacing:-.6px;font-variant-numeric:tabular-nums;font-size:26px;line-height:1.25}.dashboard-page .dash-stat em{font-size:12px}.dashboard-page .dash-stat small{line-height:1.6}.dashboard-page .dash-progress{margin-top:auto}.dashboard-page .dash-progress progress{accent-color:#6d7580;background:#edf0f3;height:3px}.dashboard-page .dash-progress progress::-webkit-progress-bar{background:#edf0f3}.dashboard-page .dash-progress progress::-webkit-progress-value{background:#6d7580}.dashboard-page .dash-progress progress::-moz-progress-bar{background:#6d7580}.dashboard-page .dash-progress span{color:var(--muted);font-weight:400}.dashboard-page .dashboard-week{border:1px solid var(--line);border-radius:10px;padding:20px}.dashboard-page .dash-today-heading{margin-bottom:14px}.dashboard-page .dash-today-heading h2{font-size:15px}.dashboard-page .dash-today-link{color:var(--muted);background:0 0;border-radius:0;padding:4px 0;font-weight:400}.dashboard-page .dash-today-link:hover{color:var(--ink);text-decoration:underline}.dashboard-page .schedule-editor-dialog{border-radius:10px}.dashboard-page .schedule-editor-dialog .dash-today{border:0;border-top:1px solid var(--line);border-radius:0;padding:16px 0 0}.dashboard-page .dash-card{background:var(--card);border:1px solid var(--line);border-left:2px solid var(--tone);border-radius:6px}.dashboard-page .dash-chip{color:var(--muted);background:0 0;border-radius:0;padding:0;font-weight:400}.dashboard-page .dash-track i{width:8px;height:8px;box-shadow:none;border:0}.dashboard-page .dash-item.is-done .dash-card{opacity:1}.dashboard-page .dashboard-plan-actions button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:5px}.dashboard-page .dashboard-plan-actions button:hover:not(:disabled){background:var(--selected)}@media (max-width:620px){.dashboard-page .planner-intro{padding:18px 0 20px}.dashboard-page .dashboard-heading h1{font-size:24px}.dashboard-page .dash-stats{grid-template-columns:1fr;margin-bottom:20px;padding:0}.dashboard-page .dash-stat{border-right:0;border-bottom:1px solid var(--line);padding:16px 18px}.dashboard-page .dash-stat:last-child{border-bottom:0}.dashboard-page .dashboard-week{padding:16px 12px}}
.dashboard-timetable-help{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:4px 16px;margin:-4px 0 16px;font-size:11px;line-height:1.6;display:flex}.dashboard-timetable-help p{margin:0}.dashboard-timetable-scroll{border:1px solid var(--line);background:var(--card);scrollbar-width:thin;scrollbar-color:#c7cbd1 transparent;border-radius:8px;max-height:clamp(380px,60vh,600px);overflow:auto}.dashboard-timetable-scroll:focus-visible{outline:2px solid var(--action);outline-offset:3px}.dashboard-timetable{background:var(--card);min-width:900px}.dashboard-timetable-header,.dashboard-timetable-body{grid-template-columns:60px repeat(7,minmax(0,1fr));display:grid}.dashboard-timetable-header{z-index:4;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0}.dashboard-timetable-header>span{color:var(--muted);justify-content:center;align-items:center;font-size:10px;display:flex}.dashboard-timetable-header>div{border-left:1px solid var(--line);grid-template-columns:1fr auto;grid-template-areas:"day today""date date""count count";align-content:start;gap:4px;min-width:0;padding:12px;display:grid}.dashboard-timetable-header h3{color:var(--muted);grid-area:day;margin:0;font-size:11px;font-weight:400;line-height:1.5}.dashboard-timetable-header time{font-variant-numeric:tabular-nums;color:var(--ink);grid-area:date;font-size:18px;font-weight:600;line-height:1.4}.dashboard-timetable-header .dashboard-day-count{color:var(--muted);grid-area:count;font-size:10px;line-height:1.5}.dashboard-timetable-header>div>span:not(.dashboard-day-count){color:var(--ink);grid-area:today;font-size:10px;font-weight:600;line-height:1.5}.dashboard-timetable-header [aria-current=date]{box-shadow:inset 0 -2px var(--ink)}.dashboard-timetable-header p{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dashboard-timetable-body{margin:16px 0}.dashboard-hour-labels,.dashboard-date-lane{min-width:0;position:relative}.dashboard-hour-labels>span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px;line-height:1.3;position:absolute;right:10px;transform:translateY(-50%)}.dashboard-date-lane{border-left:1px solid var(--line)}.dashboard-hour-rule{border-top:1px solid #eff0f2;position:absolute;left:0;right:0}.dashboard-now-line{border-top:1px solid var(--danger);z-index:2;pointer-events:none;height:0;position:absolute;left:0;right:0}.dashboard-now-line:before{content:"";background:var(--danger);border-radius:50%;width:5px;height:5px;position:absolute;top:-3px;left:-3px}.dashboard-now-line time{background:var(--card);color:var(--danger);font-variant-numeric:tabular-nums;white-space:nowrap;padding:1px 4px;font-size:10px;line-height:1.4;position:absolute;top:0;right:4px;transform:translateY(-50%)}.dashboard-time-block{box-sizing:border-box;border:1px solid var(--line);border-left:2px solid var(--tone);background:color-mix(in srgb,var(--tone) 5%,white);color:var(--ink);text-align:left;border-radius:5px;flex-direction:column;gap:6px;padding:8px;display:flex;position:absolute;left:3px;right:3px;overflow:hidden}.dashboard-time-block:hover,.dashboard-time-block:focus-within{border-color:var(--tone);z-index:3}.dashboard-time-open{min-width:0;min-height:0;color:inherit;text-align:left;font:inherit;background:0 0;border-radius:0;flex-direction:column;flex:1;justify-content:flex-start;align-items:stretch;gap:4px;padding:0;display:flex;overflow:hidden}.dashboard-block-title{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:500;line-height:17px;display:block;overflow:hidden}.dashboard-block-state{color:var(--muted);font-size:10px;line-height:12px}.dashboard-time-block[data-size=md] .dashboard-block-title{-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box}.dashboard-time-block.is-done{background:#f7f8f9;border-left-color:#b4bac2}.dashboard-time-block.is-done .dashboard-block-title{color:var(--muted);text-decoration:line-through}.dashboard-quick-actions{flex:none;justify-content:flex-end;align-items:center;gap:4px;display:flex}.dashboard-quick-actions button{background:var(--card);width:22px;height:22px;color:var(--ink);border:1px solid #d8dce1;border-radius:4px;flex:none;place-items:center;margin:0;padding:0;font-size:11px;line-height:1;display:grid}.dashboard-quick-actions button:hover:not(:disabled){background:#e9ecf0}.dashboard-quick-actions button:disabled{opacity:.4;cursor:not-allowed}.dashboard-time-block button:focus-visible{outline:2px solid var(--action);outline-offset:-2px}.dashboard-time-block[data-size=sm]{gap:3px;padding:3px 6px}.dashboard-time-block[data-size=sm] .dashboard-quick-actions button{width:20px;height:20px}.dashboard-time-block[data-size=sm] .dashboard-block-state,.dashboard-time-block[data-size=xs] .dashboard-block-state{display:none}.dashboard-time-block[data-size=xs]{flex-direction:row;align-items:center;gap:4px;padding:0 4px}.dashboard-time-block[data-size=xs] .dashboard-time-open{justify-content:center;height:100%}.dashboard-time-block[data-size=xs] .dashboard-block-title{font-size:11px;line-height:14px}.dashboard-time-block[data-size=xs] .dashboard-quick-actions button{width:20px;height:20px}.dashboard-time-block[data-short] .dashboard-quick-actions{gap:2px}.dashboard-time-block[data-short] .dashboard-quick-actions button{background:0 0;border:0;border-radius:2px;width:12px;height:12px;font-size:9px}.dashboard-time-block[data-short] .dashboard-block-title{line-height:12px}.dashboard-time-block[data-status=in-progress] .dashboard-block-state{white-space:nowrap;flex:none;display:block}.dashboard-time-block[data-status=in-progress] .dashboard-block-title{white-space:nowrap;display:block}.dashboard-time-block[data-size=sm][data-status=in-progress]{flex-direction:row;align-items:center;gap:4px}.dashboard-time-block[data-size=sm][data-status=in-progress] .dashboard-time-open,.dashboard-time-block[data-size=xs][data-status=in-progress] .dashboard-time-open{justify-content:center;gap:2px}.dashboard-time-block[data-short][data-status=in-progress] .dashboard-time-open{flex-direction:row;justify-content:space-between;align-items:center;gap:3px}.dashboard-time-block[data-short][data-status=in-progress] .dashboard-block-title{flex:1;min-width:0}.dashboard-time-block[data-short][data-status=in-progress] .dashboard-block-state{font-size:9px}@media (max-width:620px){.dashboard-timetable-help{font-size:10px}.dashboard-timetable-scroll{max-height:460px}}
.category-management-list{gap:10px;margin:20px 0 16px;padding:0;list-style:none;display:grid}.category-management-list .category-management-row{border:1px solid var(--line);background:var(--card);border-radius:6px;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"color main""color meta";align-items:center;gap:2px 14px;padding:12px 14px;display:grid}.category-view,.category-edit{grid-area:main}.category-color-form{flex-direction:column;grid-area:color;align-self:start;align-items:center;gap:8px;margin:0;padding-top:6px;display:flex}.category-management-list .category-management-row.is-editing{border-color:var(--action);box-shadow:none}.category-view,.category-edit{align-items:center;gap:12px;min-width:0;min-height:34px;display:flex}.category-name{color:var(--ink);overflow-wrap:anywhere;align-items:center;gap:10px;min-width:0;font-size:14px;font-weight:500;display:flex}.tone-custom{--tone:var(--action);--tint:var(--soft)}.category-actions{flex-shrink:0;gap:6px;margin-left:auto;display:flex}.category-actions button{border:1px solid var(--line);background:var(--card);color:var(--ink);box-shadow:none;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:500;line-height:1.2}.category-actions button:hover:not(:disabled){background:var(--selected)}.category-actions button:disabled{opacity:.45;cursor:not-allowed}.category-edit .category-actions button:not(.category-cancel){background:var(--action);border-color:var(--action);color:#fff}.category-edit .category-actions button:not(.category-cancel):hover:not(:disabled){background:var(--ink);border-color:var(--ink)}.category-actions .category-delete{background:var(--card);border:1px solid var(--line);color:var(--danger)}.category-actions .category-delete:hover:not(:disabled){background:#fff5f3}.category-actions .category-cancel{background:var(--card);border:1px solid var(--line);color:var(--muted)}.plan-editor .category-edit input{border:1px solid var(--line);background:var(--card);min-width:0;color:var(--ink);border-radius:6px;flex:1;margin:0;padding:9px 11px;font-size:14px}.category-edit input:focus{outline:2px solid var(--action);outline-offset:2px}.category-edit input:disabled{background:var(--selected);color:var(--muted);cursor:not-allowed}.category-meta{color:var(--muted);grid-area:meta;margin:4px 0 0;font-size:12px;line-height:1.6}.category-add{border-bottom:1px solid var(--line);align-items:flex-end;gap:10px;padding-bottom:20px;display:flex}.plan-editor .category-add label{min-width:0;color:var(--muted);flex:1;margin:0;font-size:12px}.plan-editor .category-add input:not([type=color]){border-color:var(--line);background:var(--card);border-radius:6px;margin-top:6px;padding:10px 12px}.category-add button{border:1px solid var(--action);background:var(--action);color:#fff;white-space:nowrap;box-shadow:none;border-radius:6px;padding:10px 16px;font-size:13px;line-height:1.5}.category-add button:hover:not(:disabled){background:var(--ink);border-color:var(--ink)}.category-add button:disabled,.category-color-form button:disabled{opacity:.5;cursor:not-allowed}.category-actions button:focus-visible,.category-add button:focus-visible,.category-color-form button:focus-visible{outline:2px solid var(--action);outline-offset:3px}.plan-editor input[type=color].category-color-dot,.category-color-dot{appearance:none;border:1px solid var(--line);cursor:pointer;width:24px;height:24px;box-shadow:none;background:0 0;border-radius:4px;margin:0;padding:0;transition:border-color .12s;overflow:hidden}.category-color-dot::-webkit-color-swatch-wrapper{padding:0}.category-color-dot::-webkit-color-swatch{border:0;border-radius:3px}.category-color-dot::-moz-color-swatch{border:0;border-radius:3px}.category-color-dot:hover:not(:disabled){border-color:var(--action)}.category-color-dot:focus-visible{outline:2px solid var(--action);outline-offset:3px}.category-color-dot:disabled{cursor:not-allowed;opacity:.6}.category-color-form .category-color-apply{border:1px solid var(--action);background:var(--action);color:#fff;white-space:nowrap;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:500;line-height:1.2}.category-color-form .category-color-apply:hover:not(:disabled){background:var(--ink);border-color:var(--ink)}.plan-editor .category-add input[type=color].category-color-picker{flex:none;width:34px;height:34px;margin-bottom:4px}@media (max-width:620px){.category-management-list .category-management-row{column-gap:10px;padding:12px}.category-view,.category-edit{flex-wrap:wrap}.category-actions{justify-content:flex-end;width:100%;margin-left:0}.category-add{flex-wrap:wrap;align-items:flex-end}.plan-editor .category-add label{flex-basis:100%}.category-add button{margin-left:auto}.category-add .category-color-picker{margin-bottom:4px}}
.hist-filter{border:1px solid var(--line);background:var(--card);border-radius:10px;margin-bottom:20px;padding:22px 24px}.hist-filter-heading{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:18px;display:flex}.hist-filter-heading h2{color:var(--ink);margin:0;font-size:16px;font-weight:600}.hist-periods{background:0 0;border-radius:0;flex-wrap:wrap;gap:4px;padding:0;display:flex}.hist-periods button{color:var(--muted);box-shadow:none;background:0 0;border:1px solid #0000;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:400;line-height:1.2}.hist-periods button:hover:not(:disabled){background:var(--selected);color:var(--ink)}.hist-periods button[aria-pressed=true]{background:var(--selected);border-color:var(--line);color:var(--ink);font-weight:600}.hist-refresh{background:var(--card);border:1px solid var(--line);color:var(--ink);box-shadow:none;border-radius:6px;margin-left:auto;padding:8px 12px;font-size:12px;font-weight:500;line-height:1.2}.hist-refresh:hover:not(:disabled){background:var(--selected)}.hist-periods button:focus-visible,.hist-refresh:focus-visible,.hist-pager button:focus-visible{outline:2px solid var(--action);outline-offset:3px}.hist-periods button:disabled,.hist-refresh:disabled{opacity:.5;cursor:not-allowed}.hist-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.hist-fields label{color:var(--muted);gap:6px;min-width:0;margin:0;font-size:12px;display:grid}.hist-fields input,.hist-fields select,.hist-fields textarea{width:100%;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:6px;min-width:0;margin:0;padding:10px 12px;font-size:13px}.hist-fields input:focus,.hist-fields select:focus,.hist-fields textarea:focus{outline:2px solid var(--action);outline-offset:2px}.hist-fields .hist-search{grid-column:1/-1}.hist-help{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.7}.hist-status{color:var(--muted);padding:20px 4px;font-size:13px}.hist-stats{margin:0 0 20px}.hist-stats+.hist-help{margin:0 0 16px}.hist-day{border:1px solid var(--line);background:var(--card);border-radius:10px;margin-bottom:16px;padding:20px 22px}.hist-day-heading{align-items:center;gap:10px;margin-bottom:16px;display:flex}.hist-day-heading h2{color:var(--ink);margin:0;font-size:14px;font-weight:600}.hist-day-count{color:var(--muted);background:0 0;border-radius:0;padding:0;font-size:12px;font-weight:400}.hist-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.hist-row{border:1px solid var(--line);border-left:2px solid var(--tone,var(--action));background:var(--card);border-radius:6px;grid-template-columns:52px minmax(0,1fr);gap:14px;padding:12px 14px;display:grid}.hist-row.mode-unrecorded{background:var(--card);border-left-style:dotted}.hist-time{text-align:right;font-variant-numeric:tabular-nums;flex-direction:column;gap:4px;padding-top:2px;font-size:12px;display:flex}.hist-time time{color:var(--ink);font-weight:600}.hist-time span{color:var(--muted);font-size:11px}.hist-body{gap:6px;min-width:0;display:grid}.hist-body-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hist-chip{color:var(--muted);overflow-wrap:anywhere;background:0 0;border-radius:0;padding:0;font-size:11px;font-weight:400}.hist-title{color:var(--ink);overflow-wrap:anywhere;min-width:0;font-size:14px;font-weight:600}.hist-mode{white-space:nowrap;border-radius:4px;margin-left:auto;padding:3px 6px;font-size:10px;font-weight:500}.hist-mode.tracked{background:var(--mint-light);color:var(--mint-deep)}.hist-mode.planned{background:var(--selected);color:var(--action)}.hist-mode.unrecorded{background:var(--selected);color:var(--muted)}.hist-durations{color:var(--muted);flex-wrap:wrap;gap:6px;margin:0;font-size:12px;display:flex}.hist-worked{color:var(--mint-deep);font-weight:500}.hist-worked-none{color:var(--muted)}.hist-stamp,.hist-note{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.6}.hist-note{color:var(--ink)}.hist-note:before{content:"메모 · ";color:var(--muted)}.hist-pager{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:8px 0 16px;font-size:12px;display:flex}.hist-pager button{border:1px solid var(--line);background:var(--card);color:var(--ink);box-shadow:none;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:500;line-height:1.2}.hist-pager button:hover:not(:disabled){background:var(--selected)}.hist-pager button:disabled{opacity:.45;cursor:not-allowed}.hist-empty{text-align:center;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:36px 16px}.hist-empty>div{color:var(--muted);font-size:28px;line-height:1}.hist-empty .muted{color:var(--ink);margin:14px 0 4px;font-size:14px;line-height:1.6}.hist-empty-hint{color:var(--muted);margin:0;font-size:12px;line-height:1.7}@media (max-width:1150px){.hist-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.hist-filter,.hist-day{padding:18px 16px}.hist-fields{grid-template-columns:1fr}.hist-refresh{margin-left:0}.hist-row{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:12px 10px}.hist-mode{margin-left:0}.hist-periods{gap:2px}.hist-periods button{padding:8px 10px}}
.recurring-add-card,.recurring-list-card{border:1px solid var(--line);background:var(--card);border-radius:10px;max-width:860px;padding:22px 24px}.recurring-add-card h2,.recurring-list-card h2{color:var(--ink);margin:0;font-size:16px;font-weight:600}.recurring-add-heading{margin-bottom:22px}.recurring-add-heading .recurring-help{margin-top:6px}.recurring-help{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.7}.recurring-status{color:var(--muted);padding:12px 4px;font-size:13px}.recurring-notice{border:1px solid var(--line);background:var(--mint-light);color:var(--mint-deep);border-radius:6px;margin:16px 0 0;padding:10px 12px;font-size:12px;line-height:1.6}.recurring-add-card .form-error{margin:14px 0 0}.recurring-fieldset{border:0;gap:20px;min-width:0;margin:0;padding:0;display:grid}.recurring-group{background:0 0;border:0;gap:12px;min-width:0;padding:0;display:grid}.recurring-group+.recurring-group{border-top:1px solid var(--line);padding-top:20px}.recurring-group-title{letter-spacing:0;color:var(--ink);font-size:12px;font-weight:600}.recurring-fields{gap:14px;display:grid}.recurring-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.recurring-form label{color:var(--muted);gap:6px;min-width:0;margin:0;font-size:12px;display:grid}.recurring-form input,.recurring-form select,.recurring-form textarea{width:100%;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:6px;min-width:0;margin:0;padding:10px 12px;font-size:13px}.recurring-form input:focus,.recurring-form select:focus,.recurring-form textarea:focus{outline:2px solid var(--action);outline-offset:2px}.recurring-form input:disabled,.recurring-form select:disabled,.recurring-form textarea:disabled{background:var(--selected);color:var(--muted);cursor:not-allowed}.recurring-form textarea{resize:vertical}.recurring-ends{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:12px;display:flex}.recurring-ends-tag{background:var(--selected);color:var(--ink);border-radius:4px;padding:3px 7px;font-weight:500}.recurring-submit{border:1px solid var(--action);background:var(--action);color:#fff;width:100%;box-shadow:none;border-radius:6px;margin-top:2px;padding:12px 16px;font-size:13px;font-weight:600}.recurring-submit:hover:not(:disabled){background:var(--ink);border-color:var(--ink)}.recurring-submit:focus-visible{outline:2px solid var(--action);outline-offset:3px}.recurring-submit:disabled{opacity:.5;cursor:not-allowed}.recurring-weekdays{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.recurring-weekdays legend{color:var(--muted);margin-bottom:2px;padding:0;font-size:12px}.recurring-weekday-presets{flex-wrap:wrap;gap:6px;margin:0;display:flex}.recurring-weekdays .recurring-weekday-presets button{border:1px solid var(--line);background:var(--card);min-height:32px;color:var(--muted);box-shadow:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:400}.recurring-weekdays .recurring-weekday-presets button:hover:not(:disabled){background:var(--selected);color:var(--ink)}.recurring-weekdays .recurring-weekday-presets button[aria-pressed=true]{background:var(--selected);border-color:var(--action);color:var(--ink);box-shadow:none;font-weight:600}.recurring-weekday-buttons{flex-wrap:wrap;gap:8px;margin:4px 0 0;display:flex}.recurring-weekdays .recurring-weekday-buttons button{border:1px solid var(--line);background:var(--card);width:40px;min-width:0;height:40px;min-height:0;color:var(--ink);box-shadow:none;border-radius:6px;padding:0;font-size:13px;font-weight:500;transition:background .12s,border-color .12s}.recurring-weekdays .recurring-weekday-buttons button:first-child{color:#a85a47}.recurring-weekdays .recurring-weekday-buttons button:last-child{color:#45708c}.recurring-weekdays .recurring-weekday-buttons button:hover:not(:disabled){background:var(--selected)}.recurring-weekdays .recurring-weekday-buttons button[aria-pressed=true]{background:var(--action);border-color:var(--action);color:#fff;box-shadow:none}.recurring-weekdays button:focus-visible{outline:2px solid var(--action);outline-offset:3px}.recurring-weekdays button:disabled{opacity:.5;cursor:not-allowed}.recurring-list-card{margin-top:20px}.recurring-list-heading{margin-bottom:16px}.recurring-count{color:var(--muted);margin-left:2px;font-size:12px;font-weight:400}.recurring-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.recurring-rule{border:1px solid var(--line);border-left:2px solid var(--tone,var(--action));background:var(--card);border-radius:6px;gap:8px;min-width:0;padding:14px 16px;display:grid}.recurring-rule-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.recurring-chip{color:var(--muted);overflow-wrap:anywhere;background:0 0;border-radius:0;padding:0;font-size:11px;font-weight:400}.recurring-title{color:var(--ink);overflow-wrap:anywhere;min-width:0;font-size:14px;font-weight:600}.recurring-time{color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums;background:0 0;border-radius:0;margin-left:auto;padding:0;font-size:12px;font-weight:500}.recurring-rule-days{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.recurring-day-dots{gap:4px;display:inline-flex}.recurring-day-dots i{width:22px;height:22px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:4px;place-items:center;font-size:10px;font-style:normal;display:grid}.recurring-day-dots i.on{background:var(--selected);border-color:var(--line);color:var(--ink);font-weight:600}.recurring-rule-meta{color:var(--muted);font-size:12px}.recurring-period{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:11px;display:flex}.recurring-period-arrow{color:var(--muted)}.recurring-skipped{margin:0;font-size:11px}.recurring-note-text{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.6}.recurring-note-text:before{content:"메모 · ";color:var(--muted)}.recurring-empty{text-align:center;padding:26px 10px 30px}.recurring-empty>div{color:var(--muted);font-size:28px;line-height:1}.recurring-empty .muted{margin:10px 0 0;font-size:13px;line-height:1.7}@media (max-width:620px){.recurring-add-card,.recurring-list-card{padding:18px 16px}.recurring-fields.two{grid-template-columns:1fr}.recurring-time{margin-left:0}.recurring-rule{padding:12px}.recurring-weekday-buttons{gap:6px}.recurring-weekdays .recurring-weekday-buttons button{width:36px;height:38px}}
