*{box-sizing:border-box}body{margin:0;font:15px system-ui,sans-serif;background:#f2f5f8;color:#162b3c}aside{position:fixed;width:230px;inset:0 auto 0 0;background:#112b3b;color:white;padding:24px 16px;overflow:auto}aside a{display:block;color:#cce0e7;text-decoration:none;padding:10px;border-radius:8px}aside a:hover{background:#21495c}aside h2{font-size:22px;color:#5de0bd}main{margin-left:230px;padding:30px;max-width:1500px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}h1{font-size:26px}a{color:#087e75}button,.button{background:#087e75;color:white;padding:11px 17px;border:0;border-radius:7px;cursor:pointer;text-decoration:none;display:inline-block}input,select,textarea{font:inherit;border:1px solid #b8c7ce;border-radius:6px;padding:10px;width:100%;background:white}label{display:block;margin:16px 0 6px}form.card{max-width:750px}.card{background:white;border:1px solid #dae3e8;border-radius:12px;padding:24px;margin:16px 0;overflow:auto}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.stat{font-size:30px;font-weight:700}table{width:100%;border-collapse:collapse}th,td{padding:13px;text-align:left;border-bottom:1px solid #e4ebef}small{color:#5d7280}.error{background:#ffe3df;padding:16px;border-radius:8px}.login{margin:7vh auto;max-width:470px}.login main{margin:0;padding:20px}nav{display:flex;gap:10px;flex-wrap:wrap}.search{display:flex;gap:10px;margin-bottom:18px}:focus-visible{outline:3px solid #de9d00;outline-offset:3px}.dark{background:#101c25;color:#e1edf3}.dark .card{background:#1b2e3a;border-color:#37505f}.dark input,.dark select,.dark textarea{background:#142733;color:white}.dark th,.dark td{border-color:#37505f}.kanban{display:grid;grid-template-columns:repeat(4,minmax(200px,1fr));gap:14px;overflow:auto}.column{background:#e1eaf0;padding:12px;border-radius:10px}.column .card{padding:14px;cursor:grab}.dark .column{background:#213947}@media(max-width:760px){aside{position:static;width:auto;display:flex;flex-wrap:wrap;padding:10px}aside h2{width:100%}aside a{padding:7px}main{margin:0;padding:16px}header{gap:10px;flex-wrap:wrap}}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:8px;overflow:auto}.calendar-grid .card{margin:0;padding:12px;min-height:140px}textarea{resize:vertical}#messages{max-height:55vh;overflow:auto;white-space:pre-wrap}input[type=checkbox]{width:auto}.dark a{color:#65dbca}@media(max-width:760px){.calendar-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}}

.gantt-track{min-width:350px}.gantt-bar{height:25px;accent-color:#087e75}.gantt-bar.late{accent-color:#c84e36}
.file-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.file-grid h2,.file-grid nav{grid-column:1/-1}.drop-active{outline:3px dashed var(--accent,#087e75)}

.fullpage main{margin-left:auto;margin-right:auto}dd{white-space:pre-wrap;overflow-wrap:anywhere}dt{font-weight:600;margin-top:.8rem}
.work-photo{width:100%;max-height:360px;object-fit:contain}.tv .stat{font-size:48px}.tv header h1{font-size:36px}
