:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#18354b;background:#f4f8fc}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px max(18px,calc((100vw - 1160px)/2));background:#fff;box-shadow:0 2px 18px #203c5412;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#18354b}.brand img{height:64px;width:64px;object-fit:contain}.brand span{display:grid;gap:2px}.brand small{font-size:11px;letter-spacing:.05em}nav{display:flex;align-items:center;flex-wrap:wrap;gap:13px}a{color:#236c9a}nav a{text-decoration:none;font-weight:600;font-size:14px}main{max-width:1140px;margin:30px auto;padding:0 18px;min-height:70vh}h1{font-size:clamp(26px,4vw,38px);letter-spacing:-.03em;margin-bottom:14px}h2{font-size:21px}h3{margin:0 0 9px}.lead{font-size:17px;color:#52697a}.card,form{background:#fff;border:1px solid #dfeaf1;border-radius:15px;padding:20px;margin:15px 0;box-shadow:0 3px 14px #203c5408}.card form{box-shadow:none;padding:10px;border:0;border-top:1px solid #eee;border-radius:0}label{display:block;font-weight:600;margin:12px 0;color:#2b4a5f;font-size:14px}input,select,textarea{display:block;width:100%;border:1px solid #c9d8e4;border-radius:9px;padding:11px;margin-top:7px;font:inherit;color:#18354b;background:#fff}textarea{min-height:80px}.check input{display:inline;width:auto}button,.btn{background:#2e759f;color:white;border:0;border-radius:9px;padding:11px 16px;cursor:pointer;font:600 14px inherit;text-decoration:none;display:inline-block}button:hover,.btn:hover{filter:brightness(.94)}button.danger{background:#a9484a}.btn.secondary{background:#e5f0f7;color:#255777}.alert{background:#fff0ef;border:1px solid #e9b7b4;color:#8c2c27;padding:15px;border-radius:9px}.success{background:#e9f8ee;border:1px solid #b2e5c0;padding:15px;border-radius:9px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:25px 0 12px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;background:#fff;padding:14px;border:1px solid #dfeaf1;border-radius:15px}.weekday{text-align:center;font-weight:700;color:#638096;padding:10px 0}.day{background:#f4f8fb;color:#17374d;min-height:83px;border:1px solid #e5edf3;text-align:left;display:flex;flex-direction:column;justify-content:space-between;align-items:start}.day.occupied{background:#e0eff8}.day.selected{outline:3px solid #3d8abb}.day small{font-size:11px;color:#276e96}.pill{background:#dceef9;color:#276e96;border-radius:99px;padding:5px 10px;font-size:12px;font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stats .card h2{margin-bottom:0}.payment{background:#f3f8fc;padding:12px;margin:10px 0;border-radius:10px}table{width:100%;border-collapse:collapse;background:white}td,th{text-align:left;padding:12px;border-bottom:1px solid #e3eaf0}.actions{display:flex;flex-wrap:wrap;gap:6px}footer{text-align:center;padding:30px;color:#718493;font-size:13px}.muted{color:#75899b;font-size:13px}@media(max-width:700px){header{padding:10px 15px}.brand img{width:48px;height:48px}nav{gap:9px}.calendar{padding:5px;gap:3px}.weekday{font-size:10px}.day{min-height:54px;padding:5px}.day small{font-size:9px}.stats{grid-template-columns:repeat(2,1fr)}.toolbar h2{font-size:17px}}
