:root{--color-bg: #f7f8fa;--color-card: #ffffff;--color-primary: #1d6fe0;--color-primary-dark: #174fa0;--color-text: #1a1c22;--color-muted: #6b7280;--color-border: #e5e7eb;--color-danger: #dc2626;--color-success: #16a34a;--radius: 10px;--shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--color-bg);color:var(--color-text);font-size:15px;-webkit-text-size-adjust:100%}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1040px;margin:0 auto;padding:24px 16px}.card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}button,.btn{background:var(--color-primary);color:#fff;border:none;border-radius:8px;padding:12px 18px;font-size:15px;cursor:pointer;font-weight:600;min-height:44px}button:hover,.btn:hover{background:var(--color-primary-dark)}button:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#fff;color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:#f3f4f6}.btn-danger{background:var(--color-danger)}label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:#374151}input,select,textarea{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:8px;font-size:16px;font-family:inherit;background:#fff;min-height:44px}textarea{min-height:96px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1d6fe026}.field{margin-bottom:14px}.row{display:grid;gap:12px}.row-2{grid-template-columns:1fr 1fr}.row-3{grid-template-columns:2fr 1fr 1fr}.muted{color:var(--color-muted);font-size:13px}.error{color:var(--color-danger);font-size:13px;margin-top:6px}.success{color:var(--color-success);font-size:13px;margin-top:6px}header.topbar{background:#fff;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:12px 24px;flex-wrap:wrap;gap:8px;position:sticky;top:0;z-index:10}header.topbar .brand{font-weight:700;font-size:18px;color:var(--color-primary)}header.topbar nav{display:flex;flex-wrap:wrap;gap:14px}header.topbar nav a{color:var(--color-text);font-weight:500}header.topbar nav a.active{color:var(--color-primary)}.stars{color:#f59e0b;letter-spacing:2px}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;background:#eef2ff;color:#4338ca}.badge-pendente{background:#fef3c7;color:#92400e}.badge-confirmado{background:#dcfce7;color:#166534}.badge-concluido{background:#e0e7ff;color:#3730a3}.badge-cancelado{background:#fee2e2;color:#991b1b}@media (max-width: 640px){body{font-size:14px}.container{padding:16px 12px}.card{padding:16px;border-radius:8px}.row-2,.row-3{grid-template-columns:1fr}button,.btn{width:100%}button+button,.btn+.btn{margin-left:0!important;margin-top:8px}header.topbar{padding:10px 14px;flex-direction:column;align-items:stretch}header.topbar nav{justify-content:flex-start;gap:10px 16px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch}header.topbar nav a{margin-left:0;white-space:nowrap}}
