 :root { font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, 'Helvetica Neue', Arial, 'Noto Sans', 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; }
    body { margin: 0; padding: 24px; background: #0b1220; color: #e9edf6; }
    h1, h2 { margin: 16px 0 8px; }
    a { color: #9fd0ff; }
    .card { background: #131c2e; border: 1px solid #233150; padding: 16px; border-radius: 14px; box-shadow: 0 8px 24px rgba(0,0,0,0.25); margin-bottom: 18px; }
    .grid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
    .btn { padding: 10px 16px; border-radius: 10px; border: 0; background: #2b78ff; color: white; font-weight: 600; cursor: pointer; }
    .btn[disabled] { background: #3f4b6a; cursor: not-allowed; }
    input, select, textarea { width: 100%; padding: 10px 12px; border-radius: 10px; border: 1px solid #223055; background: #0f1728; color: #e9edf6; }
    label { display:block; margin-bottom:6px; }
    .row { display: flex; align-items: center; gap: 12px; }
    .menu { list-style: none; padding: 0; margin: 0; }
    .menu > li { padding: 10px 12px; border-radius: 10px; cursor: pointer; }
    .menu > li:hover { background: #1a2742; }
    .chip { display:inline-block; padding: 4px 10px; border-radius: 999px; background: #1b2a46; border: 1px solid #2b3b61; }
    .visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

    table { border-collapse: collapse; width: 100%; }
    th, td { border: 1px solid #223055; padding: 8px 10px; text-align: left; }
    thead { background: #111a2c; }

    .modal-backdrop { position: fixed; inset: 0; display: none; align-items: center; justify-content: center; background: rgba(2, 8, 23, 0.6); }
    .modal { width: min(520px, 92vw); background: #0f1728; border: 1px solid #2b3b61; border-radius: 16px; padding: 16px; }
    .modal[open] ~ .modal-backdrop { display: flex; }

    .tag { padding: 4px 8px; border: 1px dashed #2b3b61; border-radius: 6px; }
    .btn-secondary { background: #1a2742; }

    .panel { border: 1px dashed #2b3b61; padding: 12px; border-radius: 12px; }
    .hidden { display:none; }