/* @spec spec://modules/interface/FEAT-002-istanbul-cloudline#themes */
/* Istanbul — Retro Orbit Editorial. One token source for Paper Day / Graphite Night. */
:root, html[data-theme="light"] {
  color-scheme: light;
  --violet: #b9a6f2; --violet-2: #8d71cb; --sage: #9eb58f; --sage-2: #6f8a65;
  --ink: #121018; --ink-2: #17131d; --cream: #f5f0e6; --paper: #f3ead8; --paper-2: #efe8d8;
  --bg-page: var(--paper); --bg-page-alt: var(--paper-2); --surface-1: #faf5eb; --surface-2: #efe6d5; --surface-3: #e5dac5;
  --text-primary: var(--ink); --text-secondary: #4c4550; --text-muted: #665d54;
  --border: #d1c5b2; --border-strong: #8c779b;
  --accent-primary: #72509f; --accent-primary-strong: #644592; --accent-primary-soft: #e8dff4;
  --accent-secondary: #644592; --accent-secondary-strong: #56367e; --accent-secondary-soft: #e8dff4;
  --success: #405b37; --success-soft: #e1e8d7; --warning: #77520e; --warning-soft: #f3e5bd;
  --danger: #9b3947; --danger-soft: #f6dfe0; --button-danger-bg: #9b3947; --button-danger-text: #ffffff;
  --brand-color: var(--violet-2); --poster-surface: #c3b1ee; --poster-ink: #2c203e; --poster-line: #786197;
  --focus-ring: #8d71cb33; --shadow-sm: 0 3px 10px #65543b0b; --shadow-md: 0 14px 36px #65543b14;
  --button-primary-bg: linear-gradient(115deg, var(--violet) 0%, var(--sage) 30%, #c7b9f6 58%, #b8caa8 82%, var(--violet) 100%);
  --button-primary-bg-hover: linear-gradient(115deg, #cfc2ff 0%, #bdd0b0 28%, #d9cffd 55%, #c5d8bb 78%, #cfc2ff 100%); --button-primary-text: var(--ink);
  --page-atmosphere: var(--bg-page);
  --hero-atmosphere: radial-gradient(ellipse at 80% 25%, #b9a6f226, transparent 65%);
  --header-bg: var(--bg-page); --backdrop: #12101870;
  --radius-xl: 8px; --duration-base: 240ms; --duration-slow: 400ms; --ease-standard: cubic-bezier(.2,.7,.2,1);
  --radius-sm: 3px; --radius-md: 4px; --radius-lg: 6px; --radius-pill: 999px;
  --duration-fast: 180ms;
}
html[data-theme="dark"] {
  color-scheme: dark;
  --bg-page: var(--ink); --bg-page-alt: var(--ink-2); --surface-1: var(--ink-2); --surface-2: #211b2a; --surface-3: #2d2637;
  --text-primary: var(--cream); --text-secondary: #d4cbd9; --text-muted: #b4a8bf;
  --border: #42364c; --border-strong: #8d71cb;
  --accent-primary: var(--violet); --accent-primary-strong: #cdbdf9; --accent-primary-soft: #31253f;
  --accent-secondary: var(--violet); --accent-secondary-strong: #cdbdf9; --accent-secondary-soft: #31253f;
  --success: #b8cda7; --success-soft: #24311f; --warning: #ebc777; --warning-soft: #352b19;
  --danger: #f0a0a9; --danger-soft: #392128; --button-danger-bg: #f0a0a9; --button-danger-text: var(--ink);
  --brand-color: var(--violet); --poster-surface: #514272; --poster-ink: var(--cream); --poster-line: #a78dce;
  --focus-ring: #b9a6f242; --shadow-sm: none; --shadow-md: 0 14px 36px #00000033;
  --hero-atmosphere: radial-gradient(ellipse at 80% 25%, #8d71cb26, transparent 65%); --backdrop: #08060c94;
}

/* @spec spec://modules/interface/FEAT-003-control-console#unified */
@font-face{font-family:Onest;src:url("/static/fonts/Onest-variable.ttf") format("truetype");font-weight:100 900;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("/static/fonts/JetBrainsMono-variable.ttf") format("truetype");font-weight:100 800;font-display:swap}
/* @spec spec://modules/interface/FEAT-002-istanbul-cloudline#brand */
.brand-mark{display:block;width:76px;height:52px;flex:0 0 76px;background:var(--brand-color);mask:url("/static/istanbul-orbit.png") center / 90px 90px no-repeat;-webkit-mask:url("/static/istanbul-orbit.png") center / 90px 90px no-repeat;mask-mode:alpha}
button.primary,.button-primary{border-radius:0!important;min-height:52px;background-size:160% 100%;color:var(--button-primary-text);transform:none}
button.primary:hover:not(:disabled),.button-primary:hover:not(:disabled){transform:none;box-shadow:none;background-position:100% 0}
.eyebrow,.mono-label{font-family:"JetBrains Mono",monospace}
/* @spec spec://modules/interface/FEAT-002-istanbul-cloudline#accessibility */
.auth-intro h1,.istanbul-page-heading h1{font-size:clamp(42px,5.8vw,82px);line-height:1.06;font-style:italic;font-weight:800;letter-spacing:-.045em;text-transform:uppercase}
.page-shell h2{font-weight:700}
.istanbul-header .brand{color:var(--brand-color)}
.istanbul-header .theme-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:600px){.istanbul-header .brand-mark{width:58px;height:40px;flex-basis:58px;mask-size:72px 72px;-webkit-mask-size:72px 72px}.auth-intro h1,.istanbul-page-heading h1{font-size:clamp(36px,9.6vw,54px);line-height:1.06}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.istanbul-header{position:sticky;top:0;z-index:30;background:var(--bg-page);}
.istanbul-header-inner{width:min(100% - 64px,1240px);margin:0 auto;display:flex;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--border);}
.istanbul-header .brand{display:flex;align-items:center;gap:12px;background:none;border:0;padding:0;min-height:48px;flex-shrink:0;text-decoration:none;color:var(--text-primary);}
.istanbul-header .brand img{display:block;width:58px;height:34px;object-fit:contain;flex:0 0 58px;}
.istanbul-header .brand-copy{display:flex;flex-direction:column;gap:0;}
.istanbul-header .brand-title,.istanbul-header .brand-copy strong{font-size:23px;line-height:1.3;letter-spacing:-.035em;font-weight:700;color:var(--text-primary);}
.istanbul-header .brand-subtitle,.istanbul-header .brand-copy small{font-size:11px;line-height:1.4;color:var(--text-muted);font-weight:400;letter-spacing:0;}
.istanbul-nav{display:flex;gap:4px;margin-left:auto;align-items:center;}
.istanbul-nav button,.istanbul-nav a{display:flex;align-items:center;justify-content:center;min-height:44px;gap:6px;padding:10px 12px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font:500 13px/1.35 Onest,system-ui;text-decoration:none;white-space:nowrap;}
.istanbul-nav :is(button,a):hover{border-color:var(--border-strong);background:var(--surface-2);}
.istanbul-nav [aria-current=page]{color:var(--accent-primary-strong);background:var(--accent-primary-soft);border-color:var(--border-strong);}
.istanbul-header .theme-toggle{width:44px;height:44px;min-height:44px;min-width:44px;padding:10px;flex:0 0 44px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-1);color:var(--text-secondary);}
.istanbul-header .logout-form{margin:0;}
.istanbul-header .logout-form button,.istanbul-header .shell-logout{width:40px;min-width:40px;height:44px;min-height:44px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-secondary);}
.istanbul-header .logout-form button svg{width:20px;height:20px;}
.istanbul-header .theme-icon-sun{display:none}.istanbul-header .theme-icon-moon{display:block}
html[data-theme=dark] .istanbul-header .theme-icon-sun{display:block}html[data-theme=dark] .istanbul-header .theme-icon-moon{display:none}
html[data-theme=dark] .istanbul-header .brand img{filter:brightness(0) saturate(100%) invert(84%) sepia(19%) saturate(835%) hue-rotate(174deg);}
@media(max-width:1100px){.istanbul-header-inner{gap:12px;flex-wrap:wrap}.istanbul-nav{order:4;flex:0 0 100%;justify-content:flex-start}.istanbul-header .theme-toggle{margin-left:auto}}
@media(max-width:800px){.istanbul-header .brand-subtitle,.istanbul-header .brand-copy small{display:none}}
@media(max-width:600px){.istanbul-header-inner{width:calc(100% - 32px);padding:12px 0;gap:10px}.istanbul-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.istanbul-nav button,.istanbul-nav a{font-size:12px;white-space:normal;text-align:center;padding:8px 6px}.istanbul-header .brand-subtitle,.istanbul-header .brand-copy small{font-size:10px}.istanbul-header .brand img{width:48px;flex-basis:48px}.istanbul-header .brand-copy strong,.istanbul-header .brand-title{font-size:22px}}

.page-shell .container{width:min(100% - 64px,1240px);max-width:none;margin-inline:auto;padding-inline:0}
.page-shell h2{font-size:24px;line-height:1.3;letter-spacing:-.025em;font-weight:600}
.istanbul-page-heading{padding-top:44px}.istanbul-page-heading>.container{display:flex;align-items:center;justify-content:space-between;gap:24px}.istanbul-page-heading h1{font-size:44px;letter-spacing:-.04em;line-height:1.12;margin:12px 0 14px}.istanbul-page-heading .lead{font-size:16px;max-width:68ch}.migration-start{display:flex;flex-direction:column;gap:16px;padding:28px}.migration-start p{margin-bottom:0}.migration-picker{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap}.migration-picker label{flex:1;min-width:220px}.page-shell .section-alt{background:transparent}.page-shell .section-block{padding-top:24px;padding-bottom:24px}
@media(max-width:600px){.page-shell .container{width:calc(100% - 32px)}.istanbul-page-heading{padding-top:24px}.istanbul-page-heading>.container{flex-direction:column;align-items:flex-start}.istanbul-page-heading h1{font-size:32px}.migration-start{padding:20px}.migration-picker label{min-width:0;flex-basis:100%}}
