*{box-sizing:border-box}body{color:#203047;background:#f3f6fa;margin:0;font:15px/1.6 system-ui,sans-serif}header{background:#fff;border-bottom:1px solid #dbe2eb;align-items:center;gap:24px;padding:22px 5%;display:flex}header div{flex:1}h1,h2,h3{margin:0 0 12px}h1{font-size:26px}small{color:#687a91}main{max-width:1400px;margin:24px auto;padding:0 24px}.tabs{gap:8px;padding:20px 5% 0;display:flex}.auth{background:#fff;border-radius:16px;max-width:460px;margin:7vh auto;padding:32px}.panel,.card,.stats article{background:#fff;border:1px solid #dce4ef;border-radius:12px;padding:20px}.panel{margin:22px 0}.card{overflow-wrap:anywhere;margin-bottom:14px}button{color:#fff;cursor:pointer;background:#275fdf;border:0;border-radius:7px;margin:3px;padding:10px 15px}button:disabled{opacity:.5;cursor:default}.secondary{color:#24476e;background:#e8eef8}.danger{color:#a92e3a;background:#fff0f0}input,select,textarea{font:inherit;color:inherit;background:#fff;border:1px solid #bbc9dc;border-radius:6px;max-width:100%;padding:10px}label{margin:12px 0;display:block}label input,label textarea,label select{width:100%;display:block}textarea{min-height:100px}.toolbar,.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar h2{flex:1}.stats{grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0;display:grid}.stats h2{margin:6px 0;font-size:32px}.board{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.board>div{background:#e9eef6;border-radius:12px;min-width:0;padding:16px}.description{white-space:pre-wrap}progress{accent-color:#2765dc;width:130px;max-width:65%}.notice{color:#a33d28;white-space:pre-wrap}.notice:empty{display:none}.table{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%}td,th{white-space:nowrap;border-bottom:1px solid #e0e7f0;padding:12px}.overlay{background:#14243899;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:15px;width:520px;max-height:95vh;padding:25px;overflow:auto}.row{margin:12px 0}@media (width<=720px){header{flex-wrap:wrap;gap:8px}header div{flex-basis:100%}.stats{grid-template-columns:repeat(2,1fr)}.board{grid-template-columns:1fr}.tabs{white-space:nowrap;overflow:auto}main{padding:0 14px}.auth{margin:25px 14px;padding:24px}.row input{width:100%}}
