:root{--ink:#17211c;--muted:#69736d;--paper:#f4f1e9;--card:#fffdf8;--line:#dedbd1;--green:#1f6b4f;--green-dark:#174b39;--gold:#c7903d;--red:#a64444;--shadow:0 18px 55px rgba(28,40,33,.09)}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 10% 10%,#e1ebdf 0,transparent 28%),var(--paper);color:var(--ink);font-family:Tahoma,Arial,sans-serif;min-height:100vh}.shell{width:min(1180px,calc(100% - 32px));margin:auto;padding:48px 0}.hidden{display:none!important}.login-card{width:min(440px,100%);margin:6vh auto;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:42px;box-shadow:var(--shadow)}.brand-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:var(--green);color:white;font:700 26px Georgia;margin-bottom:24px}.eyebrow{color:var(--green);font-size:12px;font-weight:700;letter-spacing:1.5px;margin:0 0 8px}h1{font-size:clamp(28px,4vw,44px);margin:0 0 10px;line-height:1.15}h2{margin:0}.muted{color:var(--muted);line-height:1.7}form label{display:grid;gap:8px;font-weight:700;margin:18px 0}input{font:inherit;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:white;outline:none}input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(31,107,79,.12)}button{font:inherit;font-weight:700;border:0;border-radius:10px;padding:11px 17px;cursor:pointer;transition:.15s}button:disabled{opacity:.55;cursor:not-allowed}.primary{background:var(--green);color:white}.primary:hover{background:var(--green-dark)}.secondary{background:#e4ece7;color:var(--green-dark)}.ghost{background:transparent;border:1px solid var(--line)}.error{color:var(--red);min-height:20px}.dashboard header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.header-actions{display:flex;gap:10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}.stats article{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;align-items:center;justify-content:space-between}.stats span{color:var(--muted)}.stats strong{font:700 30px Georgia;color:var(--green)}.filters{display:flex;gap:8px;overflow:auto;padding-bottom:12px}.filter{white-space:nowrap;background:transparent;border:1px solid var(--line);color:var(--muted)}.filter.active{background:var(--ink);color:white;border-color:var(--ink)}.message{min-height:24px;color:var(--green)}.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.booking{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 8px 30px rgba(28,40,33,.04)}.booking-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.request-id{font:700 14px Georgia;color:var(--muted)}.status{font-size:12px;font-weight:700;padding:6px 9px;border-radius:99px}.status.pending{background:#fff0d7;color:#855819}.status.confirmed{background:#dff1e7;color:var(--green)}.status.declined{background:#f7dfdf;color:var(--red)}.details{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.detail span{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.detail strong{word-break:break-word}.notes{background:#f3f1eb;border-radius:10px;padding:12px;color:var(--muted);line-height:1.6}.card-actions{display:flex;gap:9px;margin-top:18px}.confirm{background:var(--green);color:white;flex:1}.decline{background:#f5e3e3;color:var(--red);flex:1}.notification{font-size:12px;color:var(--muted);margin-top:14px}.empty{text-align:center;padding:70px 20px;color:var(--muted)}.empty div{margin:auto auto 14px;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#dff1e7;color:var(--green);font-size:26px}dialog{border:1px solid var(--line);border-radius:18px;padding:28px;width:min(440px,calc(100% - 32px));box-shadow:var(--shadow);background:var(--card)}dialog::backdrop{background:rgba(23,33,28,.46)}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}@media(max-width:760px){.shell{padding:24px 0}.login-card{padding:28px}.dashboard header{align-items:flex-start}.stats{grid-template-columns:1fr}.booking-grid{grid-template-columns:1fr}.details{grid-template-columns:1fr}.header-actions{flex-direction:column}.card-actions{position:sticky;bottom:8px}}
