:root{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#173451;background:#f3f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit}.app-shell{max-width:1240px;min-height:100vh;margin:auto;display:grid;grid-template-columns:220px minmax(0,1fr);background:#f7faff;box-shadow:0 0 55px #244b7620}.sidebar{background:#fff;border-right:1px solid #dfebf5;padding:25px 17px;display:flex;flex-direction:column;gap:29px}.brand{display:flex;align-items:center;gap:11px;font-weight:750}.brand-mark{display:grid;place-items:center;width:41px;height:41px;border-radius:13px;background:#ddecfb;color:#2872b5;font-size:22px}.brand small{display:block;color:#8294a5;font-size:11px;font-weight:400;margin-top:2px}.nav{display:grid;gap:6px}.nav button{border:0;border-radius:12px;background:none;text-align:left;padding:12px 13px;color:#647c91;font-weight:600}.nav button.active{background:#eaf3ff;color:#236eae}.sidebar-bottom{margin-top:auto;display:grid;gap:12px;color:#778ba0;font-size:13px;padding:0 8px}.sidebar-bottom button{background:#fff;border:1px solid #d4e2f0;border-radius:10px;padding:9px;color:#3e6486;text-align:left}.content{min-width:0;padding:31px 36px 50px}.topline{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:22px}.eyebrow{color:#2473b4;font-size:12px;font-weight:700;letter-spacing:.04em;margin:0 0 5px}h1{font-size:29px;margin:0 0 5px;line-height:1.25}h2{font-size:17px;margin:0 0 11px}h3{font-size:15px;margin:0 0 10px}.muted{color:#75899e}.subtle{font-size:13px;color:#7a8d9f}.card{background:#fff;border:1px solid #dce8f3;border-radius:17px;padding:19px;box-shadow:0 3px 14px #315e8b08}.stack{display:grid;gap:12px}.today-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(245px,.85fr);gap:18px;align-items:start}.section-heading{font-size:13px;color:#7b90a4;font-weight:700;margin:21px 0 9px}.section-heading:first-child{margin-top:0}.task-card{padding:15px 17px;margin-bottom:9px}.task-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task-title{font-weight:700;font-size:15px}.task-note{font-size:12px;color:#7b8da0;margin:4px 0 0}.task-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.chip-button{border:1px solid #d2e1ef;background:#fff;color:#587792;border-radius:9px;padding:6px 9px;font-size:12px;min-height:32px;white-space:nowrap}.chip-button.selected{background:#dceffd;color:#176ca8;border-color:#87c3ed;font-weight:700}.chip-button.na.selected{background:#f0f1f3;border-color:#c7cbd0;color:#626c75}.subtasks{margin-top:14px;padding-top:12px;border-top:1px solid #ebf0f5}.subtasks .subline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0;font-size:13px}.subline span{flex:1}.subline .task-actions{flex:0 0 auto}.subline .chip-button{padding:4px 8px;min-height:29px}.warning{color:#a76216;font-size:12px;margin:9px 0 0}.progress-pill{background:#eaf3ff;border-radius:16px;padding:12px 17px;min-width:132px;text-align:right}.progress-pill strong{font-size:23px;display:block}.progress-pill small{color:#6586a7}.progress-track{height:6px;background:#d8e8f5;border-radius:10px;overflow:hidden;margin-top:9px}.progress-track i{display:block;height:100%;background:#397fc0;border-radius:10px}.focus-card{background:#eaf4ff}.focus-card .big{font-size:21px;line-height:1.45;font-weight:760;margin:7px 0}.focus-card p:last-child{font-size:13px;line-height:1.65;color:#597590}.gold-card{background:#fff6df;border-color:#f8e5ae}.gold-card strong{font-size:18px;color:#855d16}.badge-list{display:flex;gap:8px;flex-wrap:wrap}.badge{padding:7px 10px;background:#ffebbb;border-radius:20px;color:#855d16;font-size:12px}.checkline{display:flex;align-items:center;gap:9px;font-size:14px}.checkline input{width:19px;height:19px;accent-color:#2878b9}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:13px}.stat-card small{display:block;color:#758ca0}.stat-card strong{display:block;font-size:25px;margin-top:5px}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin:15px 0}.day-tile{background:#eef6fc;border-radius:10px;padding:9px 4px;text-align:center;min-width:0}.day-tile span{display:block;font-size:11px;color:#70869a}.day-tile strong{display:block;font-size:13px;margin-top:4px}.review-grid,.manage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field{display:grid;gap:6px;font-size:13px;color:#638098;font-weight:600}.field input,.field textarea,.field select,.login-card input{border:1px solid #cfdfed;border-radius:10px;background:#fff;color:#173451;padding:11px 12px;font-size:16px;width:100%;min-width:0}.field textarea{resize:vertical;min-height:82px}.field-group{display:grid;gap:12px}.primary{border:0;border-radius:11px;background:#2a74b3;color:#fff;padding:11px 16px;font-weight:700;min-height:43px}.secondary{border:1px solid #cbdfee;border-radius:11px;background:#fff;color:#2d6c9e;padding:10px 14px;font-weight:650;min-height:42px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.management-row{padding:11px 0;border-bottom:1px solid #edf1f5;display:flex;justify-content:space-between;align-items:center;gap:12px}.management-row:last-child{border-bottom:0}.management-row strong{display:block;font-size:14px}.management-row small{display:block;color:#8698a8;font-size:11px;margin-top:2px}.management-row .task-actions{flex-wrap:nowrap}.mini{font-size:12px;color:#6d8295}.sub-indent{padding-left:17px;border-left:2px solid #e2eef8}.empty{padding:30px;text-align:center;color:#8596a6}.week-nav{display:flex;align-items:center;gap:8px}.week-nav button{border:1px solid #d7e5f0;background:#fff;border-radius:10px;padding:7px 10px}.login-screen{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at top left,#d7edff,#f7faff 55%)}.login-card{width:min(100%,420px);background:#fff;border:1px solid #d9e7f2;border-radius:25px;padding:31px;box-shadow:0 18px 60px #376a961c}.login-card .brand-mark{margin-bottom:21px}.login-card h1{font-size:27px}.login-card p{line-height:1.6}.login-card form{display:grid;gap:12px;margin-top:25px}.login-card input{min-height:48px}.login-card button{min-height:48px}.error{color:#b14436;font-size:13px;min-height:20px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,120px);background:#193b56;color:white;padding:11px 17px;border-radius:11px;box-shadow:0 8px 30px #152f4a33;opacity:0;transition:.25s;z-index:10;max-width:90vw;text-align:center}.toast.show{transform:translate(-50%,0);opacity:1}.helper{font-size:12px;color:#7790a3;line-height:1.6}.inline-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.day-picks{display:flex;flex-wrap:wrap;gap:5px}.day-picks label{border:1px solid #d5e4ee;border-radius:8px;padding:6px 8px;font-size:12px;color:#536f86}.day-picks input{accent-color:#2878b9}.form-actions{display:flex;justify-content:flex-end;gap:8px}.hidden{display:none!important}:focus-visible{outline:3px solid #499ee0;outline-offset:2px}@media(max-width:870px){.app-shell{grid-template-columns:1fr}.sidebar{padding:14px 18px 10px;border-right:0;border-bottom:1px solid #dce8f3;gap:11px}.nav{display:flex;gap:5px;overflow:auto}.nav button{white-space:nowrap;text-align:center;padding:9px 13px}.sidebar-bottom{display:none}.content{padding:22px 20px 90px}.today-layout{grid-template-columns:1fr}.review-grid{grid-template-columns:1fr}}@media(max-width:580px){.content{padding:19px 15px 90px}h1{font-size:24px}.card{padding:15px}.task-card{padding:14px}.task-head{display:block}.task-actions{justify-content:flex-start;margin-top:10px}.subline{display:block!important}.subline .task-actions{margin-top:5px}.stat-grid{gap:6px}.stat-card{padding:11px}.stat-card strong{font-size:19px}.stat-card small{font-size:11px}.days-grid{gap:3px}.day-tile{padding:8px 2px}.day-tile strong{font-size:10px}.manage-grid{grid-template-columns:1fr}.management-row .task-actions{margin:0}.management-row .chip-button{white-space:normal}.topline{align-items:flex-start}.progress-pill{min-width:115px}.login-card{padding:24px}}
:root .brand-mark{display:block;object-fit:cover;background:none}
.login-card .brand-mark{width:64px;height:64px;border-radius:18px}
.management-item{border-bottom:1px solid #edf1f5;padding:7px 0}
.management-item:last-child{border-bottom:0}
.management-item .management-row{border-bottom:0;padding:4px 0}
.inline-edit,.delete-confirm{margin:9px 0 8px;padding:14px;border:1px solid #d8e7ee;border-radius:12px;background:#f7fbfc}
.delete-confirm{background:#fff8f5;border-color:#f0d6ce}
.delete-confirm p{margin:6px 0 13px}
.danger-outline{color:#ad4e3d;border-color:#efc9c0}
.primary.danger{background:#b45542}
@media(max-width:580px){.management-item .management-row{display:block}.management-item .task-actions{display:flex;width:100%;margin-top:8px;gap:6px}.management-item .chip-button{flex:1}}
