
    @import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Inter:wght@400;500;600;700;800&family=Space+Mono:wght@400;700&display=swap');

    .fc-root {
      --bg: #17140F;
      --bg-raised: #201B14;
      --bg-card: #221D16;
      --paper: #F4EEE1;
      --paper-dim: #C9C0AC;
      --line: #3A331F;
      --gold: #E3A23B;
      --gold-dim: #8A6A2E;
      --green: #6FA687;
      --green-bg: rgba(111,166,135,0.12);
      --rust: #C1583D;
      --rust-bg: rgba(193,88,61,0.12);
      --blue: #7E9CB5;
      font-family: 'Inter', sans-serif;
      background: var(--bg);
      color: var(--paper);
      min-height: 100%;
      width: 100%;
    }
    .fc-root * { box-sizing: border-box; }
    .fc-display { font-family: 'Archivo Black', sans-serif; letter-spacing: 0.01em; }
    .fc-mono { font-family: 'Space Mono', monospace; }

    .fc-scrollbar::-webkit-scrollbar { width: 8px; height: 8px; }
    .fc-scrollbar::-webkit-scrollbar-thumb { background: var(--line); border-radius: 4px; }
    .fc-scrollbar::-webkit-scrollbar-track { background: transparent; }

    .fc-btn {
      display:inline-flex; align-items:center; gap:6px;
      background: var(--gold); color: #1C1710; border:none;
      padding: 9px 16px; border-radius: 3px; font-weight:700; font-size: 13px;
      cursor:pointer; transition: transform .12s ease, background .15s ease;
      letter-spacing: 0.02em;
    }
    .fc-btn:hover { background: #F0B052; transform: translateY(-1px); }
    .fc-btn:active { transform: translateY(0); }
    .fc-btn-ghost {
      background: transparent; color: var(--paper); border: 1px solid var(--line);
    }
    .fc-btn-ghost:hover { background: var(--bg-raised); border-color: var(--gold-dim); }
    .fc-btn-danger { background: var(--rust); color: var(--paper); }
    .fc-btn-danger:hover { background: #D3684C; }
    .fc-btn:disabled { opacity: 0.4; cursor: not-allowed; transform:none; }

    .fc-input, .fc-select, .fc-textarea {
      width:100%; background: var(--bg); border: 1px solid var(--line); color: var(--paper);
      padding: 9px 11px; border-radius: 3px; font-size: 13px; font-family: 'Inter', sans-serif;
      outline:none; transition: border-color .15s ease;
    }
    .fc-input:focus, .fc-select:focus, .fc-textarea:focus { border-color: var(--gold); }
    .fc-input::placeholder { color: var(--paper-dim); }
    .fc-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--paper-dim); margin-bottom: 6px; display:block; font-weight:600; }

    .fc-card { background: var(--bg-card); border: 1px solid var(--line); border-radius: 6px; }
    .fc-tab-btn {
      display:flex; align-items:center; gap:10px; padding: 11px 14px; border-radius: 4px;
      cursor:pointer; color: var(--paper-dim); font-weight:600; font-size: 13.5px; transition: all .15s ease;
      border: 1px solid transparent;
    }
    .fc-tab-btn:hover { color: var(--paper); background: rgba(255,255,255,0.03); }
    .fc-tab-btn.active { color: var(--gold); background: rgba(227,162,59,0.09); border-color: rgba(227,162,59,0.25); }

    .fc-table { width:100%; border-collapse: collapse; font-size: 13px; }
    .fc-table th {
      text-align:left; padding: 10px 12px; font-size: 10.5px; text-transform:uppercase;
      letter-spacing: 0.07em; color: var(--paper-dim); border-bottom: 1px solid var(--line);
      font-weight: 700; white-space:nowrap; position: sticky; top:0; background: var(--bg-card); z-index:1;
    }
    .fc-table td { padding: 11px 12px; border-bottom: 1px solid rgba(58,51,31,0.5); vertical-align: middle; }
    .fc-table tr:hover td { background: rgba(255,255,255,0.02); }

    .fc-badge {
      display:inline-flex; align-items:center; gap:4px; padding: 3px 9px; border-radius: 20px;
      font-size: 11px; font-weight:700; letter-spacing:0.02em;
    }
    .fc-modal-overlay {
      position:fixed; inset:0; background: rgba(10,8,5,0.7); backdrop-filter: blur(2px);
      display:flex; align-items:center; justify-content:center; z-index:50; padding: 20px;
      animation: fcFadeIn .15s ease;
    }
    @keyframes fcFadeIn { from{opacity:0} to{opacity:1} }
    .fc-modal {
      background: var(--bg-raised); border:1px solid var(--line); border-radius: 8px;
      width: 100%; max-width: 620px; max-height: 88vh; overflow-y:auto;
      box-shadow: 0 20px 60px rgba(0,0,0,0.5);
      animation: fcSlideUp .18s ease;
    }
    @keyframes fcSlideUp { from{opacity:0; transform: translateY(12px)} to{opacity:1; transform:translateY(0)} }

    .fc-stub { position:relative; overflow:hidden; }
    .fc-stub::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background: var(--gold); }

    .fc-event-card {
      background: var(--bg-card); border: 1px solid var(--line); border-radius: 8px; padding: 18px;
      cursor:pointer; transition: border-color .15s ease, transform .12s ease; position:relative; overflow:hidden;
    }
    .fc-event-card:hover { border-color: var(--gold-dim); transform: translateY(-2px); }
    .fc-event-card::after {
      content:''; position:absolute; right:-30px; top:-30px; width:90px; height:90px; border-radius:50%;
      background: radial-gradient(circle, rgba(227,162,59,0.14), transparent 70%);
    }

    input[type="date"]::-webkit-calendar-picker-indicator,
    input[type="month"]::-webkit-calendar-picker-indicator { filter: invert(0.7); cursor:pointer; }
    ::selection { background: var(--gold); color: #1C1710; }
  
html, body {
  margin: 0;
  padding: 0;
  background: #17140F;
  min-height: 100vh;
  font-family: 'Inter', sans-serif;
}
#root {
  min-height: 100vh;
  padding: 20px;
  box-sizing: border-box;
  max-width: 1400px;
  margin: 0 auto;
}
