*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f4f5f7;color:#1c1e21}.container{max-width:960px;margin:0 auto;padding:16px}.topbar{background:#2b3a55;color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center}.topbar a{color:#fff;text-decoration:none;font-weight:600}.topbar button{background:transparent;border:1px solid #fff;color:#fff;border-radius:6px;padding:4px 12px;cursor:pointer}.card{background:#fff;border-radius:10px;padding:16px;margin:12px 0;box-shadow:0 1px 3px #00000014}h1{font-size:22px}h2{font-size:18px}label{display:block;margin:10px 0 4px;font-size:14px;font-weight:600}input,select{width:100%;padding:8px 10px;border:1px solid #ccd0d5;border-radius:6px;font-size:15px}button.primary{background:#2b6cb0;color:#fff;border:none;border-radius:6px;padding:10px 18px;font-size:15px;cursor:pointer;margin-top:12px}button.primary:disabled{opacity:.5;cursor:default}button.link{background:none;border:none;color:#2b6cb0;cursor:pointer;padding:0;font-size:14px}.error{color:#c53030;margin:8px 0;font-size:14px}.success{color:#2f855a;margin:8px 0;font-size:14px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:8px 6px;border-bottom:1px solid #e2e8f0;font-size:14px}.badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;background:#e2e8f0}.badge.planned{background:#c6f6d5}.badge.cancelled{background:#fed7d7}.row{display:flex;gap:12px}.row>*{flex:1}
