:root{color:#233044;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f5f6f8;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:15px}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:#bd282e}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:#1f2937}h1{letter-spacing:-.045em;font-size:2rem;line-height:1.12}h2{letter-spacing:-.03em;font-size:1.6rem}h3{margin-bottom:10px;font-size:1.12rem;line-height:1.3}p{line-height:1.5}strong{font-weight:680}input,select,textarea{color:#273142;background:#fff;border:1px solid #cfd6df;border-radius:10px;outline:none;width:100%;min-height:44px;margin-top:6px;padding:10px 12px;display:block}input:focus,select:focus,textarea:focus{border-color:#d3323b;box-shadow:0 0 0 3px #d3323b19}textarea{resize:vertical}input[type=checkbox]{accent-color:#d3323b;width:18px;height:18px;min-height:18px;margin:0}label{color:#374151;font-size:.91rem;font-weight:600;display:block}summary{cursor:pointer}:focus-visible{outline-offset:2px;outline:3px solid #e36e76}:root{--red:#cc3038;--red-dark:#a61e2a;--border:#dfe4ec;--muted:#64748b;--green:#166534;--bg:#f5f6f8}#root{min-height:100svh}.app-layout{flex-direction:column;min-height:100svh;display:flex}.site-header{border-bottom:1px solid var(--border);z-index:4;background:#fff;height:76px;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;max-width:1060px;height:100%;margin:auto;padding:0 22px;display:flex}.brand-inline{align-items:center;gap:12px;display:flex}.brand-symbol{background:var(--red);color:#fff;border-radius:13px;place-items:center;width:40px;height:40px;font-size:27px;font-weight:800;line-height:1;display:grid;box-shadow:0 5px 15px #cc303833}.brand-inline strong{color:#233044;letter-spacing:-.04em;font-size:18px;display:block}.brand-inline span{color:#87909c;letter-spacing:.12em;font-size:10px;font-weight:800;display:block}.header-side{align-items:center;gap:14px;display:flex}.env-label{letter-spacing:.08em;color:#9a3412;background:#ffedd5;border-radius:6px;padding:5px 9px;font-size:10px;font-weight:850}.main-content{flex:1;width:100%;max-width:1060px;margin:0 auto;padding:34px 22px 80px}.welcome{margin-bottom:25px}.welcome h1{margin:5px 0 7px}.welcome p{margin:0}.eyebrow{letter-spacing:.13em;color:var(--red);text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:800}.muted{color:var(--muted);font-size:.91rem}.muted.small,.small{font-size:.78rem}.center{text-align:center}.stack{flex-direction:column;gap:17px;display:flex}.stack.tight{gap:10px}.panel{border:1px solid var(--border);background:#fff;border-radius:14px;padding:21px;box-shadow:0 3px 12px #15203905}.section-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.section-heading h2,.section-heading h3{margin:0 0 5px}.section-heading p{margin:0}.section-heading>.btn{flex-shrink:0}.tabs{border-bottom:1px solid var(--border);scrollbar-width:thin;align-items:center;gap:5px;margin-bottom:24px;display:flex;overflow-x:auto}.tabs button{color:#6b7280;white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;padding:15px 19px;font-size:14px;font-weight:650}.tabs button.active{color:var(--red);border-color:var(--red)}.btn{border:1px solid var(--border);color:#334155;text-align:center;background:#fff;border-radius:10px;min-height:42px;padding:10px 16px;font-size:.9rem;font-weight:700;transition:background .15s}.btn:hover:not(:disabled){background:#f2f4f7}.btn.primary{background:var(--red);border-color:var(--red);color:#fff}.btn.primary:hover:not(:disabled){background:var(--red-dark)}.btn.outline{background:#fff;border-color:#bfc7d2}.btn.ghost{background:0 0;border-color:#0000}.btn.large{min-height:50px;padding:14px;font-size:1rem}.btn.small{min-height:34px;padding:5px 10px}.btn.tiny{min-height:34px;padding:7px 10px;font-size:.78rem}.btn.fit{align-self:flex-start}.chips{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.chip{color:#475569;white-space:nowrap;background:#eef1f5;border-radius:40px;padding:4px 9px;font-size:.72rem;font-weight:700}.chip.success{color:#137333;background:#e3f6e8}.chip.danger{color:#bd2333;background:#fff0f0}.notice{border:1px solid #0000;border-radius:9px;margin:0;padding:13px 15px;font-size:.92rem;line-height:1.5}.notice.warn{color:#814112;background:#fff6e7;border-color:#f7dfaa}.notice.error{color:#9f2430;background:#fff1f2;border-color:#f1c8cb}.notice.success{color:#166534;background:#effaf1;border-color:#c4e9ce}.empty{text-align:center;color:#657386;background:#fff;border:1px dashed #cbd5e1;border-radius:13px;padding:34px 22px;line-height:1.6}.empty strong{color:#334155}.empty p{margin:7px 0 0}.footer{text-align:center;border-top:1px solid var(--border);color:#8491a5;padding:22px;font-size:.78rem}.mini-summary{border:1px solid var(--border);color:#64748b;background:#fff;border-radius:12px;justify-content:space-between;gap:12px;padding:16px 19px;font-size:.85rem;display:flex}.mini-summary strong{color:#1f2937}.task-list{gap:12px;display:grid}.task-card{border:1px solid var(--border);background:#fff;border-radius:13px;flex-direction:column;gap:14px;padding:18px 18px 16px;display:flex}.task-main{align-items:flex-start;gap:12px;display:flex}.task-indicator{color:#fff;border:2px solid #cbd2dc;border-radius:7px;flex-shrink:0;place-items:center;width:25px;height:25px;margin-top:1px;font-weight:800;display:grid}.task-indicator.checked{background:#16a34a;border-color:#16a34a}.task-content{flex:1;min-width:0}.task-content strong{font-size:1.03rem;display:block}.task-content p{margin:4px 0 0}.task-card .btn{align-self:flex-end}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.stat{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:column;gap:8px;padding:17px;display:flex}.stat span{color:var(--muted);font-size:.75rem;font-weight:700}.stat strong{color:#243041;font-size:1.6rem}.stat small{color:#64748b;font-size:.7rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.filter-panel{gap:16px;display:grid}.inline-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-tools>input{flex:150px;margin-top:0}.metric-line{border-bottom:1px solid #eef1f5;justify-content:space-between;gap:10px;padding:10px 0;display:flex}.metric-line:last-child{border-bottom:0}.item-head{justify-content:space-between;align-items:flex-start;gap:13px;display:flex}.item-head h3{margin:0 0 5px}.item-head .btn{flex-shrink:0}.pagination{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;font-size:.81rem;display:flex}.activity-list{margin:12px 0 0}.activity-list p{margin:5px 0}.history-row{border-bottom:1px solid #eef1f5;padding:10px 0}.history-row strong{display:block}.history-row small{color:var(--muted);margin-top:3px;display:block}.weekday-row{flex-wrap:wrap;gap:9px;margin-top:10px;display:flex}.weekday-row label{border:1px solid var(--border);border-radius:7px;align-items:center;gap:6px;padding:8px 10px;font-weight:650;display:flex}.assignee-panel{background:#f8fafc;border-radius:10px;gap:9px;padding:18px;display:grid}.checkbox-line{align-items:center;gap:8px;font-weight:500;display:flex}.modal-backdrop{z-index:10;background:#0c182a8a;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialog{background:#fff;border-radius:15px;flex-direction:column;gap:14px;width:100%;max-width:470px;max-height:95svh;padding:23px;display:flex;overflow-y:auto}.dialog>p,.dialog h3{margin:0}.auth-layout{background:linear-gradient(145deg,#f9fafb,#f3eef0);flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:100svh;padding:30px 16px;display:flex}.auth-brand{text-align:center}.auth-brand .brand-symbol{border-radius:17px;width:55px;height:55px;margin:auto;font-size:37px}.auth-brand h1{margin:15px 0 4px;font-size:2rem}.auth-brand p{color:#7c8694;margin:0}.auth-card{background:#fff;border:1px solid #e4e7ec;border-radius:19px;width:100%;max-width:410px;padding:30px;box-shadow:0 14px 50px #1c283013}.auth-card h2{margin-bottom:6px}.auth-card>.muted{margin-bottom:25px}.auth-card>.muted.small{margin:22px 0 0}.auth-card .stack{gap:20px}.panel>section[style]{border-top:0!important;margin-top:0!important;padding-top:0!important}.panel>section[style]>button{border:1px solid var(--border);color:#233044;background:#fff;border-radius:9px;padding:11px 13px;font-weight:700}.panel>section[style]>button:first-of-type{background:var(--red);border-color:var(--red);color:#fff}@media (width<=640px){.site-header{height:68px}.header-inner{padding:0 16px}.main-content{padding:25px 14px 75px}.welcome h1{font-size:1.7rem}.panel{padding:16px}.form-grid{grid-template-columns:1fr;gap:13px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:13px}.section-heading{align-items:flex-start}.section-heading>.btn{padding:10px;font-size:.82rem}.tabs button{padding:13px 14px;font-size:13px}.item-head{flex-direction:column}.item-head>.btn{align-self:flex-start}.mini-summary{flex-direction:column}.auth-card{padding:24px}.header-side{gap:6px}}.responsible-line{color:#334155;overflow-wrap:anywhere;margin:9px 0 3px;font-size:.84rem;line-height:1.5}.responsible-line strong{font-weight:750}.subtask-card{border:1px solid var(--border);background:#f8fafc;border-radius:12px;gap:10px;padding:15px;display:grid}.subtask-summary,.subtask-step{justify-content:space-between;align-items:center;gap:12px;display:flex}.subtask-summary span{color:var(--muted);font-size:.8rem}.subtask-step{border-top:1px solid #e2e8f0;padding-top:11px}.subtask-label{align-items:center;gap:9px;min-width:0;display:flex}.subtask-label .task-indicator{width:20px;height:20px;font-size:.78rem}.subtask-step .btn{flex-shrink:0}.subtask-readonly{border-bottom:1px solid #e2e8f0;margin:0;padding:5px 0}.subtask-editor{border:1px solid var(--border);background:#f8fafc;border-radius:12px;gap:14px;padding:16px;display:grid}.subtask-editor-row{border-top:1px solid var(--border);align-items:end;gap:12px;padding-top:10px;display:flex}.subtask-editor-row>label:first-child{flex:1}@media (width<=640px){.subtask-step,.subtask-summary,.subtask-editor-row{flex-direction:column;align-items:stretch}.subtask-step .btn{align-self:flex-start}}
