:root{color:#17332d;font-synthesis:none;--green-900:#0b4f42;--green-700:#176b55;--green-100:#dff1e9;--ink:#17332d;--muted:#6b7f79;--line:#dce5e1;--surface:#fff;--danger:#bd3c3c;background:#f3f6f3;font-family:Pretendard,Noto Sans KR,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#f3f6f3;min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}input,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fbfcfb;border-radius:14px;outline:none;padding:14px 15px}input:focus,textarea:focus{border-color:var(--green-700);box-shadow:0 0 0 3px #176b551f}textarea{resize:vertical;min-height:88px}label{color:#3d5650;gap:7px;font-size:14px;font-weight:700;display:grid}h1,h2,h3,p{margin-top:0}.app-shell{background:#f8faf8;max-width:680px;min-height:100vh;margin:0 auto}.topbar{z-index:20;height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 18px 0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f8faf8f0;border-bottom:1px solid #dce5e1cc;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;display:flex}.brand-mark{background:var(--green-900);color:#fff;border-radius:11px;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.sync-status{color:var(--green-700);background:#e8f2ee;border:0;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800}.sync-status i{background:#21a179;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.pulse{animation:1s infinite pulse}@keyframes pulse{50%{opacity:.3}}.content{padding:16px 16px calc(94px + env(safe-area-inset-bottom))}.view{display:none}.view.is-active{display:block}.hero{color:#fff;background:linear-gradient(145deg,#0b4f42,#177761);border-radius:19px;padding:16px 18px 14px;box-shadow:0 10px 24px #0b4f4229}.hero h1{letter-spacing:-.04em;margin-bottom:3px;font-size:23px}.hero>p:not(.eyebrow){color:#d9eee8;margin:0;font-size:12px}.eyebrow{color:#87a59d;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:900}.hero .eyebrow{color:#a9d9cb;margin-bottom:4px;font-size:10px}.section-heading{justify-content:space-between;align-items:center;margin:27px 3px 12px;display:flex}.section-heading h2{margin:0;font-size:18px}.section-heading span{text-align:center;min-width:27px;color:var(--muted);background:#e8eeeb;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800}.task-list,.training-list{gap:11px;display:grid}.task-card{border:1px solid var(--line);background:var(--surface);border-radius:20px;grid-template-columns:38px 1fr;gap:12px;padding:17px 16px;display:grid;position:relative;box-shadow:0 4px 14px #1f443a0a}.task-card:before{content:"";background:#397a9b;border-radius:20px 0 0 20px;width:5px;position:absolute;inset:0 auto 0 0}.tone-purple:before{background:#7657a5}.tone-amber:before{background:#c88b2e}.tone-green:before{background:#2c8d64}.task-check{color:#fff;background:#fff;border:2px solid #b7c9c3;border-radius:11px;width:32px;height:32px;padding:0}.task-check span{place-items:center;width:100%;height:100%;display:grid}.is-complete .task-check{border-color:var(--green-700);background:var(--green-700)}.task-card.is-complete{opacity:.66}.task-card.is-complete h3{text-decoration:line-through}.task-card.is-overdue{border-color:#efc5c5}.task-meta{color:var(--muted);align-items:center;gap:8px;margin-bottom:4px;font-size:11px;font-weight:800;display:flex}.task-dday{color:#31584e;background:#edf3f0;border-radius:7px;padding:3px 7px}.task-content h3{margin-bottom:5px;font-size:16px}.training-link,.adjustment,.completion{color:var(--muted);margin-bottom:0;font-size:12px;line-height:1.55}.adjustment{color:#8c611a;background:#fff7e6;border-radius:10px;margin-top:7px;padding:8px 10px}.completion{color:var(--green-700);margin-top:6px;font-weight:700}.empty-state{text-align:center;color:var(--muted);border:1px dashed #cbd8d3;border-radius:20px;padding:32px 18px}.empty-state h3{color:#466059;margin:8px 0 4px;font-size:16px}.empty-state p{margin:0;font-size:13px}.empty-icon{background:var(--green-100);width:38px;height:38px;color:var(--green-700);border-radius:50%;place-items:center;margin:auto;font-weight:900;display:grid}.page-title{justify-content:space-between;align-items:flex-end;margin:9px 3px 18px;display:flex}.page-title h1{letter-spacing:-.04em;margin:0;font-size:29px}.primary,.secondary{border:0;border-radius:14px;padding:14px 17px;font-weight:900}.primary{background:var(--green-900);color:#fff;box-shadow:0 8px 18px #0b4f4229}.secondary{color:var(--green-700);background:#fff;border:1px solid #c9d9d3}.primary.small{padding:11px 13px;font-size:13px}.training-overview{border:1px solid var(--line);background:#fff;border-radius:17px;margin-bottom:14px;overflow:hidden;box-shadow:0 4px 14px #1f443a0a}.training-overview table{table-layout:fixed;border-collapse:collapse;width:100%}.training-overview th{color:#526a63;white-space:nowrap;background:#edf4f1;height:36px;padding:7px 3px;font-size:10px;font-weight:900}.training-overview th:first-child{width:58px}.training-overview th:nth-child(n+3){width:47px}.training-overview td{text-align:center;border-top:1px solid #edf1ef;height:43px;padding:6px 4px;font-size:11px}.training-overview-date{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800}.training-overview td.training-overview-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800;overflow:hidden}.training-overview-status{color:#7d918a;background:#f0f3f2;border-radius:9px;place-items:center;width:27px;height:27px;margin:auto;font-size:10px;font-weight:900;display:grid}.training-overview-status.is-complete{color:#fff;background:var(--green-700)}.training-overview-status.is-today{color:#8a5b12;background:#fff0ce;font-size:9px}.training-overview-status.is-overdue{color:#fff;background:var(--danger);font-size:13px}.training-overview-empty{color:var(--muted)}.training-card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:19px 17px}.training-card-top{justify-content:space-between;gap:12px;display:flex}.training-card-heading{flex:1;min-width:0}.training-card-date{align-items:center;gap:8px;margin-bottom:4px;display:flex}.training-card-date p{margin:0}.training-card-date span{color:var(--green-700);background:var(--green-100);white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:900}.training-card-actions{align-items:center;gap:7px;display:flex}.training-card-actions .edit-button{height:32px;padding:0 8px;font-size:10px}.training-card-actions .icon-button{width:32px;height:32px}.edit-button{height:36px;color:var(--green-700);background:#fff;border:1px solid #c9d9d3;border-radius:12px;padding:0 11px;font-size:12px;font-weight:900}.training-card-top p{color:var(--green-700);font-size:12px;font-weight:800}.training-card-top h3{margin-bottom:0;font-size:18px}.icon-button{color:#577069;background:#eef2f0;border:0;border-radius:12px;width:36px;height:36px;padding:0;font-size:22px}.icon-button.danger{color:var(--danger)}.notes{color:var(--muted);background:#f5f7f6;border-radius:12px;margin:11px 0;padding:10px 12px;font-size:13px}.training-collapse-toggle{color:#60766f;background:#f4f7f5;border:0;border-radius:11px;justify-content:space-between;align-items:center;width:100%;margin:12px 0 3px;padding:10px 11px;font-size:11px;font-weight:800;display:flex}.training-collapse-toggle b{color:var(--green-700);font-size:11px}.mini-timeline{display:grid}.training-card>.mini-timeline{margin-top:12px}.training-card>.training-collapse-toggle+.mini-timeline{margin-top:0}.mini-timeline.is-collapsed{display:none}.mini-task{text-align:left;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #edf1ef;grid-template-columns:18px 1fr;gap:8px;padding:9px 0;display:grid}.mini-task:last-child{border-bottom:0}.mini-task.is-complete{color:#8ba098}.mini-dot{border:2px solid #8ba89f;border-radius:50%;width:10px;height:10px;margin:4px}.mini-task.is-complete .mini-dot{border-color:var(--green-700);background:var(--green-700)}.mini-task b,.mini-task small{display:block}.mini-task b{font-size:13px}.mini-task small{color:var(--muted);margin-top:3px;font-size:11px}.settings-card{border:1px solid var(--line);background:#fff;border-radius:20px;gap:13px;margin-bottom:13px;padding:18px 16px;display:grid}.settings-card h2{margin-bottom:0;font-size:17px}.settings-card>p{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.55}.settings-card .device-reference{background:#f1f5f3;border-radius:10px;padding:9px 11px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.back-button{color:var(--green-700);background:0 0;border:0;margin:3px 0 7px;padding:7px 2px;font-size:13px;font-weight:900}.count-badge{background:var(--green-100);min-width:34px;height:34px;color:var(--green-700);border-radius:999px;place-items:center;padding:0 10px;font-size:13px;font-weight:900;display:grid}.view-description{color:var(--muted);margin:-10px 3px 17px;font-size:13px;line-height:1.5}.menu-list{gap:9px;display:grid}.menu-item{border:1px solid var(--line);width:100%;height:68px;color:var(--ink);text-align:left;background:#fff;border-radius:17px;grid-template-columns:38px minmax(0,1fr) auto 15px;align-items:center;gap:10px;padding:12px 13px;display:grid;box-shadow:0 3px 11px #1f443a0a}.menu-icon{background:var(--green-100);width:38px;height:38px;color:var(--green-700);border-radius:12px;place-items:center;font-family:Segoe UI Symbol,Apple Symbols,sans-serif;font-size:19px;font-weight:900;line-height:1;display:grid}.menu-copy b,.menu-copy small{display:block}.menu-copy b{font-size:15px}.menu-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10.5px;line-height:1.25;overflow:hidden}.menu-count{min-width:25px;color:var(--muted);text-align:center;background:#edf2f0;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:900}.menu-chevron{color:#91a39d;font-size:21px;line-height:1}.inline-form{grid-template-columns:1fr 1fr;gap:8px;display:grid}.inline-form button{grid-column:1/-1}.holiday-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.holiday-list li{background:#f5f7f6;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.holiday-list b,.holiday-list small{display:block}.holiday-list b{font-size:13px}.holiday-list small{color:var(--muted);margin-top:3px;font-size:11px}.text-danger{color:var(--danger);background:0 0;border:0;font-size:12px;font-weight:800}.muted{color:var(--muted);font-size:13px}.rule-card>div{grid-template-columns:50px 1fr;align-items:center;gap:8px;display:grid}.rule-card>div b{color:var(--green-700)}.rule-card>div span{font-size:13px}.notice{background:#fff6df;border-radius:12px;padding:11px;color:#775714!important}.calendar-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:10px 8px 8px}.calendar-toolbar{grid-template-columns:38px 1fr 38px;align-items:center;margin-bottom:5px;display:grid}.calendar-toolbar h2{text-align:center;margin:0;font-size:18px}.calendar-toolbar button{height:34px;color:var(--green-700);background:#eef4f1;border:0;border-radius:11px;font-size:22px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays span{text-align:center;color:var(--muted);padding:5px 0;font-size:10px;font-weight:800}.calendar-weekdays span:first-child{color:#bd3c3c}.calendar-day{min-width:0;height:54px;color:var(--ink);text-align:center;background:0 0;border:1px solid #0000;border-radius:10px;padding:5px 2px 4px;position:relative;overflow:hidden}.calendar-day>span{font-size:12px;font-weight:800;display:block}.calendar-day>small{color:var(--danger);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:7.5px;line-height:1.1;display:block;overflow:hidden}.calendar-day.manual-workday{color:var(--green-700);background:#e8f6ef}.calendar-day.manual-workday>small{color:var(--green-700);font-weight:900}.calendar-day.outside{opacity:.32}.calendar-day.today{color:var(--green-700);background:#edf6f2}.calendar-day.selected{border-color:var(--green-700);box-shadow:inset 0 0 0 1px var(--green-700)}.calendar-day.workload-level-1{background:#f0f7f4}.calendar-day.workload-level-2{background:#e6f2ed}.calendar-day.workload-level-3{background:#d9eee6}.calendar-day.workload-level-4{background:#cbe7dc}.calendar-day.workload-level-5{background:#b9dfd1}.calendar-day.selected{background:#e4f3ed}.calendar-day.today{color:#a8241b;background:#fff1f0;border-color:#e7928b;box-shadow:inset 0 0 0 1px #c9362b1f}.calendar-day.today.workload-level-1{background:#fdeeed}.calendar-day.today.workload-level-2{background:#fde2df}.calendar-day.today.workload-level-3{background:#fad2ce}.calendar-day.today.workload-level-4{background:#f6beb9}.calendar-day.today.workload-level-5{background:#efa8a2}.calendar-day.today.selected{border-color:#c9362b;box-shadow:inset 0 0 0 1px #c9362b}.calendar-day.today .calendar-workload-count{color:#8f2018;background:#fffc}.calendar-workload-count{color:#44665c;background:#ffffffc7;border-radius:999px;place-items:center;min-width:14px;height:14px;padding:0 3px;font-size:7.5px;font-style:normal;font-weight:900;display:grid;position:absolute;top:3px;right:3px}.calendar-dots{justify-content:center;gap:2px;display:flex;position:absolute;bottom:4px;left:3px;right:3px}.calendar-dots b{background:#397a9b;border-radius:50%;width:5px;height:5px}.calendar-dots b.tone-purple{background:#7657a5}.calendar-dots b.tone-amber{background:#c88b2e}.calendar-dots b.tone-green{background:#2c8d64}.calendar-dots b.tone-event{background:#d4516f;border-radius:2px;width:7px}.calendar-dots b.tone-training-day{background:#155d4b;width:7px;height:7px;box-shadow:0 0 0 2px #d8ebe4}.workload-legend{color:var(--muted);justify-content:flex-end;align-items:center;gap:4px;margin-top:5px;display:flex}.workload-legend>span{margin-right:4px;font-size:9px;font-weight:900}.workload-legend i{border-radius:3px;width:10px;height:10px}.workload-legend i.level-1{background:#f0f7f4;border:1px solid #dce9e4}.workload-legend i.level-2{background:#e6f2ed}.workload-legend i.level-3{background:#d9eee6}.workload-legend i.level-4{background:#cbe7dc}.workload-legend i.level-5{background:#b9dfd1}.workload-legend small{font-size:8px}.section-heading.compact{margin-top:20px;margin-bottom:9px}.calendar-agenda-list{gap:10px;display:grid}.calendar-compact-empty{color:var(--muted);text-align:center;background:#fafcfb;border:1px dashed #d5dfdb;border-radius:11px;margin:0;padding:9px 11px;font-size:11px}.training-day-card{background:#f4fbf8;border:1px solid #c7dfd6;border-radius:18px;padding:15px 16px;box-shadow:0 4px 14px #1953430d}.training-day-card-top{align-items:center;gap:8px;display:flex}.training-day-card-top b{color:var(--green-700);font-size:11px}.training-day-badge{color:#fff;background:var(--green-700);border-radius:999px;padding:4px 7px;font-size:9px;font-weight:900}.training-day-card h3{margin:11px 0 0;font-size:16px}.training-day-card p{color:var(--muted);white-space:pre-wrap;margin:7px 0 0;font-size:12px;line-height:1.55}.event-list{gap:10px;display:grid}.calendar-event-card{background:#fffafb;border:1px solid #f0d8df;border-radius:18px;padding:15px 16px;box-shadow:0 4px 14px #5c25340a}.calendar-event-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.calendar-event-top>div:first-child{align-items:center;gap:8px;display:flex}.calendar-event-top b{color:#8d4a5d;font-size:11px}.event-badge{color:#9b3654;background:#f9e5eb;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:900}.calendar-event-actions{align-items:center;gap:5px;display:flex}.calendar-event-card h3{margin:11px 0 0;font-size:16px}.calendar-event-card>p{color:var(--muted);white-space:pre-wrap;margin:7px 0 0;font-size:12px;line-height:1.55}.calendar-event-card>small{color:#9caaa6;margin-top:10px;font-size:9px;display:block}.selected-date-heading{justify-content:space-between;align-items:flex-end;margin:22px 3px 12px;display:flex}.selected-date-heading h2{margin:0;font-size:19px}.selected-date-heading>span{color:var(--muted);background:#e8eeeb;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.holiday-badges{flex-wrap:wrap;gap:7px;margin:-3px 0 11px;display:flex}.holiday-badges span{color:var(--danger);background:#fff0f0;border-radius:9px;padding:6px 9px;font-size:11px;font-weight:800}.workday-badges{flex-wrap:wrap;gap:7px;margin:-3px 0 11px;display:flex}.workday-badges span{color:var(--green-700);background:#e5f5ed;border-radius:9px;padding:6px 9px;font-size:11px;font-weight:800}.board-post-list{gap:12px;display:grid}.board-post-card{border:1px solid var(--line);background:#fff;border-radius:21px;padding:18px 17px;box-shadow:0 4px 14px #1f443a0a}.board-post-card.is-pinned{border-color:#e7c36b;box-shadow:0 6px 18px #805b0e17}.board-post-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.board-post-top b,.board-post-top small{display:block}.board-post-top b{color:var(--green-700);font-size:13px}.board-post-top small{color:#91a39d;margin-top:4px;font-size:10px}.board-post-actions{gap:6px;display:flex}.board-post-card h2{overflow-wrap:anywhere;margin:17px 0 8px;font-size:18px;line-height:1.4}.board-post-card>p{color:#334c45;white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0 0;font-size:14px;line-height:1.7}.board-post-card h2+p{margin-top:0}.board-post-badges{flex-wrap:wrap;gap:6px;margin-top:13px;display:flex}.board-post-badges span{border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900}.board-post-badges .is-pinned{color:#805b0e;background:#fff1c6}.board-post-badges .needs-confirmation{color:var(--green-700);background:var(--green-100)}.post-acknowledgement{background:#f3f7f5;border-radius:13px;justify-content:space-between;align-items:center;gap:10px;margin-top:15px;padding:11px 12px;display:flex}.post-acknowledgement b,.post-acknowledgement small{display:block}.post-acknowledgement b{color:var(--green-700);font-size:11px}.post-acknowledgement small{max-width:180px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;line-height:1.35;overflow:hidden}.post-acknowledgement button{border:1px solid var(--green-700);color:var(--green-700);background:#fff;border-radius:10px;flex:none;padding:8px 10px;font-size:10px;font-weight:900}.post-acknowledgement button.is-confirmed{color:#6e817a;background:#e7eeeb;border-color:#aebdb8}.board-comment-toolbar{border-top:1px solid #edf1ef;justify-content:space-between;align-items:center;gap:8px;margin-top:15px;padding-top:11px;display:flex}.board-comment-toolbar button{color:var(--green-700);background:#eff6f3;border:0;border-radius:9px;padding:7px 9px;font-size:10px;font-weight:900}.board-comment-list{gap:8px;margin-top:10px;display:grid}.board-comment-card{background:#f5f8f7;border-radius:13px;padding:11px 12px}.board-comment-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.board-comment-top b,.board-comment-top small{display:block}.board-comment-top b{color:var(--green-700);font-size:11px}.board-comment-top small{color:#91a39d;margin-top:2px;font-size:8px}.board-comment-top>div:last-child{gap:3px;display:flex}.board-comment-top button{color:var(--muted);background:0 0;border:0;padding:4px 5px;font-size:9px;font-weight:800}.board-comment-card>p{color:#3c554e;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;font-size:12px;line-height:1.55}.board-comment-empty{color:var(--muted);text-align:center;margin:0;padding:9px;font-size:10px}.confirmation-list{gap:10px;display:grid}.confirmation-card{border:1px solid var(--line);background:#fff;border-radius:19px;padding:16px;box-shadow:0 4px 14px #1f443a0a}.confirmation-card.is-overdue{border-color:#efc5c5}.confirmation-card.is-confirmed{opacity:.72}.confirmation-card-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.confirmation-card-top span{color:var(--green-700);font-size:10px;font-weight:900}.confirmation-card.is-overdue .confirmation-card-top span{color:var(--danger)}.confirmation-card-top h2{margin:5px 0 0;font-size:16px;line-height:1.4}.confirmation-meta{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.confirmation-meta span{color:var(--muted);background:#f1f5f3;border-radius:8px;padding:4px 7px;font-size:9px;font-weight:800}.confirmation-card>p{color:var(--muted);white-space:pre-wrap;margin:11px 0 0;font-size:12px;line-height:1.55}.confirmation-card>small{color:#849791;margin-top:9px;font-size:9px;display:block}.confirmation-toggle{border-radius:11px;width:100%;margin-top:12px;padding:10px 12px;font-size:11px}.post-option-checks{gap:8px;display:grid}.option-check{border:1px solid var(--line);background:#f8faf9;border-radius:13px;align-items:center;gap:11px;padding:11px 12px;display:flex}.option-check input{width:19px;height:19px;accent-color:var(--green-700);margin:0}.option-check span,.option-check b,.option-check small{display:block}.option-check b{color:var(--ink);font-size:12px}.option-check small{color:var(--muted);margin-top:3px;font-size:9px}.trash-list{gap:10px;display:grid}.trash-card{border:1px solid var(--line);background:#fff;border-radius:17px;justify-content:space-between;align-items:center;gap:12px;padding:15px;display:flex}.trash-card span{color:var(--green-700);font-size:9px;font-weight:900}.trash-card h2{overflow-wrap:anywhere;margin:4px 0;font-size:14px;line-height:1.35}.trash-card small{color:var(--muted);font-size:9px}.trash-actions{flex:none;gap:5px;display:grid}.trash-actions button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:7px 8px;font-size:9px;font-weight:900}.danger-outline{color:var(--danger);background:#fff;border:1px solid #e1a3a3}.danger-button{background:var(--danger)}.bottom-nav{z-index:30;max-width:680px;height:calc(66px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;grid-template-columns:repeat(5,1fr);margin:auto;display:grid;position:fixed;inset:auto 0 0}.bottom-nav button{color:#83958f;background:0 0;border:0;place-content:center;place-items:center;gap:4px;font-size:11px;font-weight:800;display:grid;position:relative}.bottom-nav .tab-icon{place-items:center;width:24px;height:20px;font-family:Segoe UI Symbol,Apple Symbols,sans-serif;font-size:19px;font-style:normal;font-weight:900;line-height:1;transition:transform .16s;display:grid}.bottom-nav .tab-icon-menu{grid-template-rows:repeat(2,5px);grid-template-columns:repeat(2,5px);place-content:center;gap:3px}.bottom-nav .tab-icon-menu b{background:currentColor;border-radius:2px;width:5px;height:5px}.bottom-nav button.is-active{color:var(--green-700)}.bottom-nav button.is-active .tab-icon{transform:translateY(-1px)}.bottom-nav button.is-active:before{content:"";background:var(--green-700);border-radius:999px;width:24px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.bottom-nav .tab-count{color:#fff;background:#d94343;border:2px solid #fff;border-radius:999px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:9px;font-style:normal;font-weight:900;line-height:1;display:grid;position:absolute;top:7px;left:calc(50% + 7px)}dialog{background:#fff;border:0;border-radius:25px 25px 0 0;width:min(100% - 18px,620px);max-height:92vh;margin:auto auto 0;padding:0}dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0c201b80}dialog form{padding:9px 20px calc(24px + env(safe-area-inset-bottom));gap:15px;display:grid}dialog button:disabled{cursor:wait;opacity:.62}.dialog-handle{background:#d5dedb;border-radius:999px;width:44px;height:5px;margin:0 auto 6px}.dialog-title{justify-content:space-between;align-items:center;display:flex}.dialog-title h2{margin:0}.dialog-notice{color:#775714;background:#fff6df;border-radius:11px;margin:-3px 0 0;padding:10px 12px;font-size:11px;line-height:1.5}.connect-screen{max-width:520px;min-height:100vh;padding:calc(28px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom));background:linear-gradient(#f8fbf9,#eef5f1);flex-direction:column;justify-content:center;margin:auto;display:flex}.connect-screen h1{letter-spacing:-.06em;margin-bottom:13px;font-size:clamp(31px,9vw,45px);line-height:1.13}.connect-screen .lead{color:var(--muted);line-height:1.65}.connect-visual{gap:9px;margin-bottom:28px;display:flex}.connect-visual span{color:#fff;background:var(--green-900);border-radius:18px;place-items:center;width:58px;height:68px;font-size:22px;font-weight:900;display:grid;box-shadow:0 12px 25px #0b4f4226}.connect-visual span:nth-child(2){background:#497f70;transform:translateY(8px)}.connect-visual span:nth-child(3){background:#87aa9f;transform:translateY(16px)}.connect-form{gap:13px;margin-top:16px;display:grid}.form-error{color:var(--danger);background:#ffeded;border-radius:12px;margin:0;padding:10px 12px;font-size:12px}.undo-notice{right:16px;bottom:calc(82px + env(safe-area-inset-bottom));z-index:105;color:#fff;touch-action:pan-x;background:#17332d;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;max-width:648px;margin:auto;padding:11px 13px;transition:transform .16s,opacity .16s;display:flex;position:fixed;left:16px;box-shadow:0 10px 28px #17332d3d}.undo-notice[hidden]{display:none}.undo-notice.is-swiping{transition:none}.undo-notice span{font-size:12px;font-weight:800}.undo-notice button{color:#fff;background:0 0;border:1px solid #ffffff6b;border-radius:9px;flex:none;padding:7px 10px;font-size:11px;font-weight:900}#toast{left:50%;bottom:calc(82px + env(safe-area-inset-bottom));z-index:100;color:#fff;opacity:0;pointer-events:none;background:#17332d;border-radius:13px;width:max-content;max-width:calc(100% - 32px);padding:12px 15px;font-size:13px;font-weight:800;transition:all .2s;position:fixed;transform:translate(-50%,15px)}#toast.show{opacity:1;transform:translate(-50%)}#toast.error{background:var(--danger)}@media (width>=600px){.content{padding-inline:25px}.task-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
