/* Canonical Orynium tokens and shared controls. Product layout stays in product CSS. */
:root{--ory-space-1:4px;--ory-space-2:8px;--ory-space-3:12px;--ory-space-4:16px;--ory-space-6:24px;--ory-space-8:32px;--ory-space-12:48px;--ory-fast:120ms;--ory-motion:180ms;--ory-ease:cubic-bezier(.2,0,0,1);--ory-font:Peyda,-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,sans-serif;--ory-mono:ui-monospace,SFMono-Regular,Consolas,monospace;--ory-control-radius:6px}
html[data-ory-theme=dark],html[data-ory-product=drive][data-ory-theme=dark]{--control-line:#687487;color-scheme:dark;--bg:#101217;--panel:#191c24;--sidebar:#14171e;--sunken:#11141b;--chat-bg:#101319;--line:#303541;--text:#eef0f5;--muted:#a3adbf;--faint:#8793a8;--accent:#b9b0ff;--primary:#7361db;--primary-text:#fff;--btn:#242936;--btn-hover:#32384a;--bubble-in:#242a36;--bubble-out:#383253;--bubble-text:#f5f3ff;--selected:#2c2841;--pattern:rgba(181,172,239,.055);--danger:#ffaaa8;--ok-text:#91d6bc;--ok-bg:#172e27;--ok-line:#315548;--err-bg:#352326;--err-line:#755054;--err-text:#ffc8c4;--shadow:0 6px 24px #00000012;--radius:12px;--bubble-radius:16px;--card:var(--panel);--raise:var(--panel);--bg-raise:var(--panel);--bg-sunk:var(--sunken);--dim:var(--muted);--text-dim:var(--muted);--text-far:var(--faint);--border:var(--line);--lift:var(--accent);--accent-lift:var(--accent);--line-soft:var(--line);--accent-soft:var(--selected);--accent-line:var(--line);--ok:var(--ok-text);--bad:var(--danger);}
html[data-ory-theme=light],html[data-ory-product=drive][data-ory-theme=light]{--control-line:#858a80;color-scheme:light;--bg:#f5f4f0;--panel:#fffefa;--sidebar:#eeede7;--sunken:#f4f3ee;--chat-bg:#f7f6f2;--line:#d5d5ce;--text:#292d31;--muted:#626760;--faint:#6d716a;--accent:#514c8f;--primary:#565099;--primary-text:#fff;--btn:#e9e7df;--btn-hover:#dedbd1;--bubble-in:#ffffff;--bubble-out:#e7e1f2;--bubble-text:#322942;--selected:#ded9ed;--pattern:rgba(78,77,62,.055);--danger:#a72d34;--ok-text:#24694b;--ok-bg:#e2f0e7;--ok-line:#9eb8a9;--err-bg:#fae6e2;--err-line:#c5908a;--err-text:#842d2c;--shadow:0 2px 6px #29231b08;--radius:12px;--bubble-radius:18px;--card:var(--panel);--raise:var(--panel);--bg-raise:var(--panel);--bg-sunk:var(--sunken);--dim:var(--muted);--text-dim:var(--muted);--text-far:var(--faint);--border:var(--line);--lift:var(--accent);--accent-lift:var(--accent);--line-soft:var(--line);--accent-soft:var(--selected);--accent-line:var(--line);--ok:var(--ok-text);--bad:var(--danger);}
html[data-ory-theme=telegram],html[data-ory-product=drive][data-ory-theme=telegram]{--control-line:#5d8a80;color-scheme:dark;--bg:#102526;--panel:#183335;--sidebar:#132b2d;--sunken:#112729;--chat-bg:#0d2224;--line:#365354;--text:#e8f5ee;--muted:#a3c3bc;--faint:#95b7af;--accent:#91dbbc;--primary:#9bdbc1;--primary-text:#122c24;--btn:#234344;--btn-hover:#315756;--bubble-in:#203e40;--bubble-out:#285b4c;--bubble-text:#eafff4;--selected:#295348;--pattern:rgba(142,222,192,.06);--danger:#ffb5aa;--ok-text:#a1e7bd;--ok-bg:#163d2c;--ok-line:#427459;--err-bg:#3e2425;--err-line:#825251;--err-text:#ffd1c6;--shadow:none;--radius:16px;--bubble-radius:20px;--card:var(--panel);--raise:var(--panel);--bg-raise:var(--panel);--bg-sunk:var(--sunken);--dim:var(--muted);--text-dim:var(--muted);--text-far:var(--faint);--border:var(--line);--lift:var(--accent);--accent-lift:var(--accent);--line-soft:var(--line);--accent-soft:var(--selected);--accent-line:var(--line);--ok:var(--ok-text);--bad:var(--danger);}
html[data-ory-theme=terminal],html[data-ory-product=drive][data-ory-theme=terminal]{--control-line:#5c7b61;color-scheme:dark;--bg:#0c110e;--panel:#141d17;--sidebar:#101812;--sunken:#0b130e;--chat-bg:#0a110d;--line:#314c38;--text:#d1e7d3;--muted:#9bbca1;--faint:#8dab92;--accent:#b1e488;--primary:#b1e488;--primary-text:#132110;--btn:#1c2b20;--btn-hover:#2b3d2d;--bubble-in:#16231b;--bubble-out:#263926;--bubble-text:#e1f4d7;--selected:#253724;--pattern:rgba(169,218,163,.045);--danger:#f2aaa4;--ok-text:#b2dfa3;--ok-bg:#1a3020;--ok-line:#3e6948;--err-bg:#38201d;--err-line:#704640;--err-text:#f7c3b9;--shadow:none;--radius:4px;--bubble-radius:5px;--card:var(--panel);--raise:var(--panel);--bg-raise:var(--panel);--bg-sunk:var(--sunken);--dim:var(--muted);--text-dim:var(--muted);--text-far:var(--faint);--border:var(--line);--lift:var(--accent);--accent-lift:var(--accent);--line-soft:var(--line);--accent-soft:var(--selected);--accent-line:var(--line);--ok:var(--ok-text);--bad:var(--danger);}
html[data-ory-theme] body{background:var(--bg);color:var(--text)}
html[data-ory-theme=terminal] body{font-family:var(--ory-mono),Peyda,monospace;--ory-control-radius:3px}
html[data-ory-theme=telegram] body{--ory-control-radius:10px}
:where(body){font-family:var(--ory-font);line-height:1.6;margin:0}
:where(button,input,textarea,select){font:inherit}
:where(input,textarea,select){color:var(--text);background:var(--sunken);border:1px solid var(--line);border-radius:var(--ory-control-radius);padding:.7rem .8rem;max-width:100%}
:where(button){color:var(--text);background:var(--btn);border:1px solid var(--line);border-radius:var(--ory-control-radius);padding:.65rem .85rem;cursor:pointer}
:where(a){color:var(--accent)}
:where(h1,h2,h3){line-height:1.25;text-wrap:balance}
:where(code,pre){font-family:var(--ory-mono);unicode-bidi:isolate}
:where(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--accent);outline-offset:4px}
:where(button:disabled){cursor:not-allowed;opacity:.6}
.ory-ui-tools{display:flex;align-items:center;gap:var(--ory-space-2);flex-wrap:wrap}
.ory-ui-button{font:inherit;font-size:.85rem;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:var(--ory-control-radius);padding:.6rem .85rem;min-height:42px;cursor:pointer}
.ory-ui-button:hover{background:var(--btn-hover)}
.ory-ui-tools [hidden]{display:none!important}
.ory-ui-dialog{width:min(32rem,calc(100vw - 2rem));box-sizing:border-box;padding:1.5rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--text);font:inherit;line-height:1.8}
.ory-ui-dialog::backdrop{background:#0009}
.ory-reveal{margin-block:.5rem;font-size:.8rem}
body>.ory-ui-tools{position:relative;z-index:6;justify-content:flex-end;padding:.75rem 4vw}
.ory-explainer{display:block;max-width:100%;margin-block:1.25rem;color:var(--muted)}
.ory-explainer svg{display:block;width:100%;height:auto;max-height:180px;overflow:visible}
.ory-explainer .ory-node{fill:var(--panel);stroke:var(--line);stroke-width:1.5}
.ory-explainer .ory-path{fill:none;stroke:var(--accent);stroke-width:1.5;opacity:.6}
.ory-explainer text{fill:var(--text);font-family:var(--ory-font);font-size:13px;text-anchor:middle}
.ory-explainer .ory-flow{fill:var(--accent);offset-rotate:0deg}
.ory-explainer figcaption{font-size:.85rem;text-align:start;margin-top:.5rem}
.ory-empty{padding:var(--ory-space-8);border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);text-align:start}
.ory-state{display:inline-flex;gap:.45rem;align-items:center;border:1px solid var(--line);border-radius:var(--ory-control-radius);padding:.2rem .55rem;font-size:.8rem}
.ory-skip{position:fixed;inset-block-start:8px;inset-inline-start:8px;z-index:1000;background:var(--panel);color:var(--text);padding:.75rem;transform:translateY(-160%)}
.ory-skip:focus{transform:none}
@media(prefers-reduced-motion:no-preference){.ory-ui-button{transition:background-color var(--ory-fast),border-color var(--ory-fast)}.ory-explainer .ory-flow{animation:ory-flow 2.6s var(--ory-ease) 2}@keyframes ory-flow{0%,10%{offset-distance:0%;opacity:0}20%{opacity:1}85%{opacity:1}100%{offset-distance:100%;opacity:0}}}
@media(prefers-reduced-motion:reduce){.ory-explainer .ory-flow{display:none}.ory-explainer *{animation:none!important}}
@media(display-mode:standalone){body{padding-top:env(safe-area-inset-top)}.ory-ui-tools{padding-inline-end:max(.75rem,env(safe-area-inset-right))}}

html[data-ory-product=drive][data-ory-theme]{--ink:var(--text);--accent-ink:var(--primary-text);--bar-bg:var(--sidebar)}

[hidden]:not([hidden=until-found]){display:none!important}

html[data-ory-theme] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),textarea,select){border-color:var(--control-line)}
html[data-ory-theme] [aria-invalid=true]{border-color:var(--danger)}
.ory-ui-button{border-color:var(--control-line)}

.ory-switcher{position:relative;font-size:.85rem}.ory-switcher summary{cursor:pointer;padding:.6rem .8rem;border:1px solid var(--line);border-radius:6px;list-style:none}.ory-switcher nav{position:absolute;inset-inline-end:0;top:calc(100% + .5rem);width:min(18rem,85vw);padding:.5rem;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:8px;z-index:60;box-shadow:var(--shadow)}.ory-switcher nav a{display:block;padding:.6rem .75rem;text-decoration:none;color:var(--text);text-align:start}.ory-switcher nav a:hover{background:var(--selected)}

.ory-switcher:not([open]) nav{display:none}

/* Calm data-path illustration; never a layer over functional content. */
.ory-motion-canvas{display:block;width:100%;height:auto;max-width:400px;max-height:120px}.ory-motion-pause{font:inherit;font-size:12px;background:transparent;color:inherit;border:1px solid currentColor;border-radius:16px;padding:7px 12px}.ory-motion-pause:focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* Reserve illustration space before JS/font loading to prevent layout shifts. */
.ory-explainer{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:120px auto;gap:8px;min-height:180px;box-sizing:border-box;align-items:start}.ory-explainer[data-motion-density=ambient]{grid-template-rows:60px auto;min-height:120px}.ory-explainer .ory-motion-canvas{grid-column:1/-1;grid-row:1;max-height:120px;align-self:center}.ory-explainer p{margin:0;font-size:13px;line-height:1.65}.ory-motion-pause{grid-row:2;min-height:32px;align-self:start;white-space:nowrap}
