/* ==========================================================================
   NOVAFISKO — interactive API reference (docs.novafisko.com/{locale}/api/reference)
   Tokens come from novafisko.css; works in light and dark ([data-theme]).
   ========================================================================== */
.apiref{--m-get:#0284C7;--m-post:#059669;--m-put:#D97706;--m-patch:#7C3AED;--m-delete:#DC2626;font-size:14.5px;min-width:0}
[data-theme="dark"] .apiref{--m-get:#38BDF8;--m-post:#34D399;--m-put:#FBBF24;--m-patch:#A78BFA;--m-delete:#F87171}

.apiref-intro{display:grid;gap:12px;margin:0 0 20px}
.apiref-intro p{margin:0}
.apiref-note{color:var(--text-2);font-size:13.5px}
.apiref-server{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm)}
.apiref-server span{color:var(--text-2);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.apiref-server code{font-family:var(--mono);font-size:13.5px;background:none!important;border:none!important;padding:0!important}
.apiref-downloads,.apiref-actions{display:flex;flex-wrap:wrap;gap:8px}
.apiref-filter{position:sticky;top:72px;z-index:5;display:flex;align-items:center;gap:10px;height:44px;padding:0 14px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);box-shadow:var(--shadow-1)}
.apiref-filter:focus-within{border-color:var(--sky-500);box-shadow:0 0 0 3px color-mix(in srgb,var(--sky-500) 25%,transparent)}
.apiref-filter i{color:var(--text-3)}
.apiref-filter input{flex:1;min-width:0;border:0;outline:0;background:none;color:var(--text);font:inherit}
.apiref-filter-count{color:var(--text-2);font-size:12.5px;white-space:nowrap;font-variant-numeric:tabular-nums}

.apiref-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 28px}
.apiref-tags a{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:1px solid var(--border);border-radius:var(--r-full);background:var(--surface);color:var(--text-2);font-size:12.5px;font-weight:500;text-decoration:none!important}
.apiref-tags a:hover{color:var(--text);border-color:var(--border-strong)}
.apiref-tags a span{color:var(--text-3);font-variant-numeric:tabular-nums}

.apiref-tag{margin:0 0 36px}
.apiref-tag>h2{scroll-margin-top:130px}
.apiref-tag-description{color:var(--text-2);margin:0 0 14px}
.apiref-tag[hidden],.apiref-op[hidden]{display:none}

.apiref-op{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);margin:0 0 8px;scroll-margin-top:130px;min-width:0}
.apiref-op[open]{border-color:var(--border-strong);box-shadow:var(--shadow-1)}
.apiref-op>summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;cursor:pointer;list-style:none;border-radius:var(--r-sm)}
.apiref-op>summary::-webkit-details-marker{display:none}
.apiref-op>summary:hover{background:var(--surface-2)}
.apiref-op>summary:focus-visible{outline:2px solid var(--sky-500);outline-offset:2px}
.apiref-method{flex:none;min-width:58px;height:22px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.03em;color:#fff}
.apiref-m-get{background:var(--m-get)}.apiref-m-post{background:var(--m-post)}.apiref-m-put{background:var(--m-put)}.apiref-m-patch{background:var(--m-patch)}.apiref-m-delete{background:var(--m-delete)}
[data-theme="dark"] .apiref-method{color:#0B1220}
.apiref-m-schema,.apiref-m-event{background:var(--surface-3);color:var(--text-2)!important;text-transform:uppercase}
.apiref-path{font-family:var(--mono);font-size:13px;background:none!important;border:none!important;padding:0!important;overflow-wrap:anywhere;color:var(--text)}
.apiref-path em{font-style:normal;color:var(--violet-600)}
[data-theme="dark"] .apiref-path em{color:var(--violet-500)}
.apiref-summary{color:var(--text-2);font-size:13.5px;flex:1 1 180px;min-width:0}
.apiref-badges{display:inline-flex;flex-wrap:wrap;gap:6px;margin-left:auto}
.apiref-badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:var(--r-full);background:var(--surface-2);color:var(--text-2);font-size:11.5px;font-weight:500;white-space:nowrap}
.apiref-b-write{background:var(--warning-bg);color:var(--warning)}
.apiref-b-read{background:var(--info-bg);color:var(--info)}
.apiref-b-sync{background:var(--violet-100);color:var(--violet-600)}
[data-theme="dark"] .apiref-b-sync{background:#1d1435;color:var(--violet-500)}
.apiref-b-public{background:var(--success-bg);color:var(--success)}
.apiref-b-session{background:var(--danger-bg);color:var(--danger)}

.apiref-op-body{padding:4px 16px 18px;border-top:1px solid var(--border);min-width:0}
.apiref-op-body h4{font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);margin:22px 0 8px}
.apiref-description{margin-top:14px}
.apiref-description p,.apiref-description ul{margin:0 0 10px}
.apiref-description ul{padding-left:20px}
.apiref-deprecated{margin:14px 0 0;padding:8px 12px;border-radius:var(--r-xs);background:var(--warning-bg);color:var(--warning);font-weight:500}
.apiref-opid{display:flex;align-items:center;gap:8px;color:var(--text-3);font-size:12.5px;margin:10px 0 0}
.apiref-permalink{color:var(--text-3)}
.apiref-optional{font-weight:500;text-transform:none;letter-spacing:0;color:var(--text-3)}
.apiref-content-type{margin:0 0 8px;font-size:12.5px;color:var(--text-2)}
.apiref-empty{color:var(--text-2);font-size:13.5px;margin:8px 0 0}

.apiref-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--r-xs);margin:0 0 10px}
.apiref-table{width:100%;border-collapse:collapse;font-size:13.5px;margin:0!important}
.apiref-table th{text-align:left;font-size:11.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);background:var(--surface-2);padding:8px 12px;white-space:nowrap}
.apiref-table td{padding:8px 12px;border-top:1px solid var(--border);vertical-align:top}
.apiref-table td:first-child{white-space:nowrap}
.apiref-type{font-family:var(--mono);font-size:12px;color:var(--text-2)}
.apiref-required{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--danger)}
.apiref-constraints{margin-top:4px;font-size:12.5px;color:var(--text-2)}
.apiref-enum code,.apiref-eg code{font-size:12px}
.apiref-common{margin:8px 0;font-size:12.5px;color:var(--text-2);display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.apiref-common span{font-weight:600}
.apiref-common-block{margin-bottom:28px}
.apiref-ref{font-family:var(--mono);font-size:12.5px;font-weight:600}

.apiref-responses{display:grid;gap:6px}
.apiref-response{border:1px solid var(--border);border-radius:var(--r-xs);min-width:0}
.apiref-response-shared{display:flex;align-items:baseline;gap:10px;padding:8px 12px;font-size:13px;color:var(--text-2)}
.apiref-response>summary{display:flex;align-items:baseline;gap:10px;padding:8px 12px;cursor:pointer;font-size:13.5px}
.apiref-status{flex:none;font-family:var(--mono);font-size:12px;font-weight:700;padding:1px 7px;border-radius:5px}
.apiref-r-ok .apiref-status{background:var(--success-bg);color:var(--success)}
.apiref-r-redirect .apiref-status{background:var(--info-bg);color:var(--info)}
.apiref-r-error .apiref-status{background:var(--danger-bg);color:var(--danger)}
.apiref-response-body{padding:4px 12px 12px;border-top:1px solid var(--border);min-width:0}

.apiref-schema-block,.apiref-example,.apiref-nested{margin:8px 0;min-width:0}
.apiref-schema-block>summary,.apiref-example>summary,.apiref-nested>summary{cursor:pointer;font-size:12.5px;font-weight:600;color:var(--sky-600);padding:2px 0}
.apiref-schema-ref{margin:8px 0;font-size:13.5px;color:var(--text-2)}
.apiref-schema{list-style:none;margin:6px 0 0!important;padding:0 0 0 12px!important;border-left:2px solid var(--border)}
.apiref-schema>li{padding:7px 0;border-top:1px dashed var(--border);margin:0!important}
.apiref-schema>li:first-child{border-top:0}
.apiref-prop{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.apiref-prop-name{font-family:var(--mono);font-size:13px;font-weight:600;background:none!important;border:none!important;padding:0!important;color:var(--text)}
.apiref-prop-description{font-size:13px;color:var(--text-2);margin-top:2px}

.apiref-samples{min-width:0}
.apiref-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:8px}
.apiref-tabs button{appearance:none;border:0;border-bottom:2px solid transparent;background:none;color:var(--text-2);font:inherit;font-size:13px;font-weight:500;padding:6px 12px;cursor:pointer}
.apiref-tabs button:hover{color:var(--text)}
.apiref-tabs button:focus-visible{outline:2px solid var(--sky-500);outline-offset:-2px}
.apiref[data-lang="curl"] [data-apiref-lang="curl"],.apiref[data-lang="php"] [data-apiref-lang="php"],.apiref[data-lang="js"] [data-apiref-lang="js"],.apiref[data-lang="python"] [data-apiref-lang="python"]{color:var(--text);border-bottom-color:var(--violet-600)}
.apiref-code{position:relative;min-width:0}
.apiref-code[data-apiref-sample]{display:none}
.apiref[data-lang="curl"] [data-apiref-sample="curl"],.apiref[data-lang="php"] [data-apiref-sample="php"],.apiref[data-lang="js"] [data-apiref-sample="js"],.apiref[data-lang="python"] [data-apiref-sample="python"]{display:block}
.apiref-code pre{margin:0!important;font-family:var(--mono);font-size:12.5px;line-height:1.6;background:#0F172A;color:#E2E8F0;border-radius:var(--r-sm);padding:14px 16px;overflow-x:auto;max-height:460px;tab-size:2}
[data-theme="dark"] .apiref-code pre{background:#0A1020;border:1px solid var(--border)}
.apiref-code pre code{font:inherit;background:none!important;border:none!important;padding:0!important;color:inherit;white-space:pre}
.apiref-copy{position:absolute;top:8px;right:8px;z-index:1;height:26px;padding:0 9px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(148,163,184,.35);border-radius:7px;background:rgba(15,23,42,.85);color:#CBD5E1;font:inherit;font-size:12px;cursor:pointer}
.apiref-copy:hover{background:#1E293B;color:#fff}
.apiref-copy.done{color:#34D399;border-color:rgba(52,211,153,.5)}

@media (max-width:720px){
  .apiref-filter{top:64px}
  .apiref-badges{margin-left:0;width:100%}
  .apiref-summary{flex-basis:100%}
  .apiref-op-body{padding:4px 12px 14px}
}
@media (prefers-reduced-motion:no-preference){
  .apiref-op>summary,.apiref-copy,.apiref-tabs button{transition:background-color var(--dur-1),color var(--dur-1),border-color var(--dur-1)}
}
@media print{
  .apiref-filter,.apiref-actions,.apiref-downloads,.apiref-tags,.apiref-copy,.apiref-tabs{display:none!important}
  .apiref-op{break-inside:avoid;box-shadow:none!important}
  .apiref-code[data-apiref-sample]{display:none!important}
  .apiref-code[data-apiref-sample="curl"]{display:block!important}
  .apiref-code pre{background:#f5f5f5!important;color:#111!important;border:1px solid #ccc;max-height:none;white-space:pre-wrap}
}
.apiref-b-demo{background:var(--surface-3);color:var(--text-2)}
