.gcp-card{border:1px solid #e5e7eb;border-radius:16px;padding:14px;font-family:system-ui;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.06)}
.gcp-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.gcp-title{font-weight:700;font-size:16px}
.gcp-sub{font-size:12px;color:#6b7280;text-transform:capitalize}
.gcp-row{display:flex;gap:8px;align-items:center}
.gcp-select{border:1px solid #e5e7eb;border-radius:10px;padding:8px 10px;font-size:14px;background:#fff}
.gcp-btn{border:1px solid #e5e7eb;border-radius:10px;padding:8px 10px;background:#fff;cursor:pointer}
.gcp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.gcp-dow{font-size:12px;color:#6b7280;text-align:center;padding:6px 0}
.gcp-day{border:1px solid #f3f4f6;border-radius:12px;min-height:42px;display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;background:#fff}
.gcp-day.is-muted{opacity:.35;cursor:default}
.gcp-day.is-today{border-color:#93c5fd}
.gcp-dot{width:7px;height:7px;border-radius:999px;position:absolute;bottom:6px;left:50%;transform:translateX(-50%)}
.gcp-events{margin-top:12px;border-top:1px solid #f3f4f6;padding-top:10px}
.gcp-ev{display:flex;gap:10px;align-items:flex-start;padding:8px;border-radius:12px}
.gcp-badge{width:10px;height:10px;border-radius:999px;margin-top:4px}
.gcp-ev-title{font-weight:600;font-size:14px}
.gcp-ev-meta{font-size:12px;color:#6b7280;margin-top:2px}
.gcp-empty{font-size:13px;color:#6b7280;padding:8px}