/* Original black/blue interface language. This file styles application chrome,
   never worksheet text, paper, canvases, MathML, or export rendering. */
@font-face{font-family:EktblyAlexandria;src:url('/fonts/alexandria-300.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:EktblyAlexandria;src:url('/fonts/alexandria-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:EktblyAlexandria;src:url('/fonts/alexandria-700.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
html:root{
 --pattern-bg:#edf1f4;--pattern-surface:#f7f9fa;--pattern-elevated:#e5ebf0;
 --pattern-ink:#23364a;--pattern-muted:#596b7d;--pattern-line:#cbd5df;
 --pattern-blue:#42678f;--pattern-blue-hover:#345476;--pattern-button:#42678f;--pattern-button-hover:#345476;--pattern-blue-soft:#e0e8f1;
 --study-grid:rgba(66,103,143,.045);--study-drawing-opacity:.48;
 --bg:var(--pattern-bg);--card:var(--pattern-surface);--surface:var(--pattern-surface);
 --surface2:var(--pattern-elevated);--soft:var(--pattern-blue-soft);--text:var(--pattern-ink);
 --muted:var(--pattern-muted);--line:var(--pattern-line);--accent:var(--pattern-blue);
 --accent2:var(--pattern-blue-hover);--blue:var(--pattern-blue);--hero:var(--pattern-bg);--shadow:none;
 --brand-blue:var(--pattern-blue);--brand-blue-hover:var(--pattern-blue-hover);--brand-blue-soft:var(--pattern-blue-soft);
}
html:root[data-theme=dark]{
 --pattern-bg:#000;--pattern-surface:#141414;--pattern-elevated:#1d1d1d;
 --pattern-ink:#fff;--pattern-muted:#a6aebd;--pattern-line:#474747;
 --pattern-blue:#669aff;--pattern-blue-hover:#8bb3ff;--pattern-blue-soft:#112346;
 --pattern-button:#2563eb;--pattern-button-hover:#1d4ed8;
 --study-grid:rgba(155,180,216,.045);--study-drawing-opacity:.55;
 --bg:var(--pattern-bg);--card:var(--pattern-surface);--surface:var(--pattern-surface);
 --surface2:var(--pattern-elevated);--soft:var(--pattern-blue-soft);--text:var(--pattern-ink);
 --muted:var(--pattern-muted);--line:var(--pattern-line);--accent:var(--pattern-blue);
 --accent2:var(--pattern-blue-hover);--blue:var(--pattern-blue);--hero:var(--pattern-bg);--shadow:none;
}
html:root body{background:var(--pattern-bg);color:var(--pattern-ink);font-family:EktblyAlexandria,Cairo,Tahoma,sans-serif;line-height:1.8}
html:root body:not(.guided-tool) :is(button,input,select,textarea,label){font-family:inherit}
html:root body :is(.btn,.market-btn,.header-action,.theme-toggle,.icon-btn){border-radius:8px;box-shadow:none;font-weight:700;transition:background-color .5s,border-color .5s,color .5s,transform .5s}
html:root body :is(.btn,.market-btn){min-height:44px}
html:root body :is(.btn.primary,.market-btn.primary,.auth-card form button[type=submit]){background:var(--pattern-button);border-color:var(--pattern-blue);color:#fff;border-radius:8px;box-shadow:none}
html:root body :is(.btn.primary,.market-btn.primary,.auth-card form button[type=submit]):hover:not(:disabled){background:var(--pattern-button-hover);border-color:var(--pattern-blue-hover)}
html:root body :is(.btn,.market-btn):hover:not(:disabled){transform:translateY(-3px)}
html:root body :is(.btn,.market-btn):disabled{transform:none}
html:root body :is(.auth-card,.account,.wallet-hero-card,.wallet-panel,.wallet-stat,.wallet-history,.wallet-summary,.admin-panel,.admin-card,.topup-card,.topup-panel,.market-card,.market-filter-panel,.market-orders-panel,.market-dialog,.header-account-panel){border-radius:8px;border-color:var(--pattern-line);box-shadow:none}
html:root body :is(.auth-card,.account,.wallet-hero-card,.wallet-panel,.wallet-stat,.admin-panel,.admin-card,.topup-card,.topup-panel){background:var(--pattern-surface);color:var(--pattern-ink)}
html:root body :is(.auth-card,.account){padding:32px}
html:root body :is(.auth-card,.account,.wallet-shell,.admin-shell) h1{font-size:clamp(28px,3vw,36px);line-height:1.4}
html:root body :is(.auth-card,.account,.wallet-shell,.admin-shell,.topup-page) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea){background:var(--pattern-bg);color:var(--pattern-ink);border:1px solid var(--pattern-line);border-radius:8px;min-height:44px}
html:root body :is(a,button,input,textarea,select,summary):focus-visible{outline:2px solid var(--pattern-blue);outline-offset:3px}
html:root body .app-header.site-header{
 --header-bg:var(--pattern-bg);--header-ink:var(--pattern-ink);
 min-height:88px;padding:12px max(24px,calc((100vw - 1360px)/2));gap:24px;
 background:var(--pattern-bg);color:var(--pattern-ink);border-bottom:1px solid var(--pattern-line);
 font-family:EktblyAlexandria,Cairo,Tahoma,sans-serif;box-shadow:none;backdrop-filter:none
}
html:root body .site-header .app-brand .site-brand-logo{width:145px;transition:none;filter:brightness(0)!important}
html:root[data-theme=dark] body .site-header .app-brand .site-brand-logo{filter:brightness(0) invert(1)!important}
html:root body .site-header .app-nav{gap:4px}
html:root body .site-header .app-nav a{font:400 12px/1.8 EktblyAlexandria,Cairo,sans-serif;color:var(--pattern-muted);border-radius:8px;padding:8px 12px;box-shadow:none}
html:root body .site-header .app-nav a.active{background:var(--pattern-blue-soft);color:var(--pattern-blue);box-shadow:none}
html:root body .site-header .app-nav a:hover{background:var(--pattern-elevated);color:var(--pattern-ink);box-shadow:none}
html:root body .site-header :is(.theme-toggle,.header-action,.header-wallet-chip,.header-account-menu>summary){font-family:EktblyAlexandria,Cairo,sans-serif;border-color:var(--pattern-line);color:var(--pattern-ink);border-radius:8px;min-height:44px;background:transparent}
html:root body .site-header .header-action.primary{background:var(--pattern-button);color:#fff;border-color:var(--pattern-blue)}
html:root body .site-header .header-action.primary:hover{background:var(--pattern-blue-hover)}
html:root body .site-header .header-avatar{background:var(--pattern-blue-soft);color:var(--pattern-blue)}
html:root body .site-header :is(.header-loading,.header-account-chevron,.header-wallet-chip span){color:var(--pattern-muted)}
html:root body .site-header .header-wallet-chip b{color:var(--pattern-blue)}
html:root body .site-header .header-account-name{font-family:inherit;font-weight:400}
html:root body .site-header .header-account-panel{font-family:EktblyAlexandria,Cairo,sans-serif;background:var(--pattern-surface);color:var(--pattern-ink);box-shadow:none;border-radius:8px}
html:root body .site-header .header-account-links :is(a,button){font-family:inherit;color:var(--pattern-ink)}
html:root body .site-header .header-account-links #headerLogout{color:#e47c8b}
html:root body .site-header .site-phase-label{background:var(--pattern-blue-soft);color:var(--pattern-blue);border-color:var(--pattern-blue);border-radius:4px;font:700 8px/1.8 EktblyAlexandria,Cairo,sans-serif;bottom:-3px}
/* Catalog and checkout retain their real inventory, filters, purchase hooks and prices. */
html:root body.market-page,html:root body.market-gallery{
 --color-bg:var(--pattern-bg);--color-surface:var(--pattern-surface);--color-surface-subtle:var(--pattern-elevated);
 --color-text:var(--pattern-ink);--color-text-muted:var(--pattern-muted);--color-border:var(--pattern-line);
 --color-primary:var(--pattern-blue);--color-primary-hover:var(--pattern-blue-hover);--color-focus:var(--pattern-blue);
 --market-ink:var(--pattern-ink);--market-muted:var(--pattern-muted);--market-line:var(--pattern-line);
 --market-white:var(--pattern-surface);--market-soft:var(--pattern-elevated);--market-navy:var(--pattern-blue);
 --bg:var(--pattern-bg);--card:var(--pattern-surface);--surface:var(--pattern-surface);--surface2:var(--pattern-elevated);
 --text:var(--pattern-ink);--muted:var(--pattern-muted);--line:var(--pattern-line);--soft:var(--pattern-blue-soft);
 --blue:var(--pattern-blue);--accent:var(--pattern-blue);--accent2:var(--pattern-blue-hover);
 background:var(--pattern-bg);color:var(--pattern-ink);font-family:EktblyAlexandria,Cairo,sans-serif
}
html:root body.market-page :is(.market-card,.market-filter-panel,.market-orders,.market-dialog,.admin-order,.admin-file-card,.admin-market-metric){box-shadow:none;border-radius:8px}
html:root body.market-page :is(input,select,textarea,button){font-family:inherit}
html:root body.market-page :is(.market-btn.secondary,.admin-heading-actions .market-btn){color:var(--pattern-ink)}
html:root body.admin-market-page .market-btn.primary{background:var(--pattern-button)!important;border-color:var(--pattern-button)!important;color:#fff!important}
html:root body.admin-market-page .admin-market-tabs button[aria-selected=true]{background:var(--pattern-button);border-color:var(--pattern-button);color:#fff}
html:root body.admin-market-page .admin-market-summary button,html:root body .tool-access-panel{border-radius:8px;box-shadow:none}
html:root body.market-gallery .gallery-filters button.active{background:var(--pattern-button);color:#fff;border-radius:4px}
html:root body.market-gallery :is(.gallery-subject-chip,.gallery-thumb-fallback,.market-orders-badge){color:var(--pattern-blue);border-color:var(--pattern-line);background:var(--pattern-blue-soft)}
html:root body.market-gallery .market-card{border-color:var(--pattern-line);background:var(--pattern-surface)}
/* Workspace chrome only. Document typography, color choices and renderer are unchanged. */
html:root body.guided-tool{
 --studio-bg:var(--pattern-bg);--studio-surface:var(--pattern-surface);--studio-subtle:var(--pattern-elevated);
 --studio-text:var(--pattern-ink);--studio-muted:var(--pattern-muted);--studio-line:var(--pattern-line);
 --studio-blue:var(--pattern-blue);--studio-blue-hover:var(--pattern-blue-hover);
 --ws-canvas:var(--pattern-bg);--ws-header:var(--pattern-bg);--ws-ink:var(--pattern-ink);--ws-on-ink:var(--pattern-bg);
 --bg:var(--pattern-bg);--card:var(--pattern-surface);--surface:var(--pattern-surface);--surface2:var(--pattern-elevated);
 --text:var(--pattern-ink);--muted:var(--pattern-muted);--line:var(--pattern-line);--soft:var(--pattern-blue-soft);
 --blue:var(--pattern-blue);--accent:var(--pattern-blue);--selection-blue:#60a5fa;
 background:var(--pattern-bg);color:var(--pattern-ink)
}
html:root body.guided-tool :is(.app-shell,.studio-workspace-bar,.studio-workbench-root,.studio-commandbar,.studio-inspector,.studio-pages-rail,.studio-left-tabs,.studio-inspector-tabs,.reference-settings-card,.reference-preview-card,.ref-layout-advanced-body,.reference-extra-settings){background:var(--pattern-surface)!important;color:var(--pattern-ink);border-color:var(--pattern-line)!important;box-shadow:none!important}
html:root body.guided-tool :is(.viewer,.result-preview-stage,.studio-canvas-stage,.reference-preview-viewport){background-color:var(--pattern-bg)!important}
html:root body.guided-tool .viewer.empty{background-image:radial-gradient(var(--pattern-line) 1px,transparent 1px)}
html:root body.guided-tool :is(.sheet-editor,.source-box,.panel,.setting-block,.studio-left-tab,.studio-inspector-tab,.reference-settings-card,.reference-preview-card){border-radius:8px;box-shadow:none}
html:root body.guided-tool .studio-inspector :is(input:not([type=range]):not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea){background:var(--pattern-bg);color:var(--pattern-ink);border-color:var(--pattern-line);border-radius:8px}
html:root body.guided-tool :is(.studio-export-toggle,.studio-flow-export,.editor-primary){background:var(--pattern-button)!important;border-color:var(--pattern-blue)!important;color:#fff!important;border-radius:8px;box-shadow:none!important}
html:root body.guided-tool :is(.studio-export-toggle,.studio-flow-export,.editor-primary):hover:not(:disabled){background:var(--pattern-blue-hover)!important}
html:root body.guided-tool :is(.studio-left-tab,.studio-inspector-tab,.source-tabs button).active{color:var(--pattern-blue);background:var(--pattern-blue-soft)}
html:root body.guided-tool :is(.studio-workspace-bar,.studio-commandbar,.studio-inspector,.studio-pages-rail,.reference-settings-card,.reference-preview-card){font-family:EktblyAlexandria,Cairo,sans-serif}
html:root body.guided-tool :is(.studio-workspace-bar,.studio-commandbar,.studio-inspector,.studio-pages-rail,.reference-settings-card,.reference-preview-card) :is(button,input,select,textarea,summary){font-family:inherit}
@media(max-width:1150px){html:root body .app-header.site-header{padding-inline:20px;gap:12px}html:root body .site-header .app-nav a{padding-inline:10px;font-size:11px}}
@media(max-width:960px){html:root body .app-header.site-header{min-height:76px}html:root body .site-header .app-nav{border-color:var(--pattern-line);padding-top:8px}}
@media(max-width:620px){html:root body .app-header.site-header{padding:12px;gap:8px}html:root body .site-header .app-nav a{font-size:11px;padding-inline:12px}html:root body .site-header .app-brand .site-brand-logo{width:125px}html:root body :is(.auth-card,.account){padding:24px}.site-header .header-user{gap:8px}}
@media(max-width:420px){html:root body .site-header .header-account-name{max-width:64px}html:root body .site-header .header-account-menu>summary{gap:6px;padding-inline:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}html:root body :is(a,button,input,summary){transition:none!important}html:root body :is(.btn,.market-btn):hover{transform:none}}

/* Phase 2: floating glass navigation, shared by every user-facing page. */
html:root{--header-glass:rgba(241,245,248,.76);--header-glass-border:rgba(92,112,148,.24)}
html:root[data-theme=dark]{--header-glass:rgba(16,20,30,.68);--header-glass-border:rgba(171,190,222,.24)}
html:root body .app-header.site-header,
html:root[data-theme=dark] body .app-header.site-header{
 position:sticky!important;top:12px;z-index:100;
 width:min(1360px,calc(100% - 32px));margin:12px auto 0;padding:12px 20px;
 background:var(--header-glass);border:1px solid var(--header-glass-border);
 border-radius:26px;backdrop-filter:blur(22px) saturate(160%);
 -webkit-backdrop-filter:blur(22px) saturate(160%);box-shadow:none;
}
html:root body .site-header .app-nav{border-color:var(--header-glass-border)}
html:root body .site-header .app-nav a.active{background:color-mix(in srgb,var(--pattern-blue) 16%,transparent)}
html:root body .site-header :is(.theme-toggle,.header-action.secondary,.header-wallet-chip,.header-account-menu>summary){background:transparent;border-color:var(--header-glass-border)}
html:root body .site-header .app-brand{padding-inline:0}
html:root body .site-header .app-brand .site-brand-logo{width:136px}
html:root{scroll-padding-top:132px}
@media(max-width:960px){html:root{scroll-padding-top:192px}}
@media(max-width:620px){
 html:root body .app-header.site-header,html:root[data-theme=dark] body .app-header.site-header{top:8px;width:calc(100% - 16px);margin-top:8px;border-radius:22px;padding:10px 12px;gap:8px}
 html:root body .site-header .app-brand .site-brand-logo{width:104px;height:38px}
 html:root body .site-header .header-user{flex:1 1 auto;width:auto;gap:6px;margin-inline-start:auto;justify-content:flex-end}
 html:root body .site-header .header-account{gap:4px}
 html:root body .site-header .theme-toggle{width:36px;min-height:40px;padding:8px;flex-shrink:0}
 html:root body .site-header .theme-toggle span{display:none}
 html:root body .site-header .header-action{font-size:9px;padding:6px 8px;min-height:40px}
 html:root body .site-header .header-wallet-chip{padding:5px 6px;min-height:40px}
 html:root body .site-header .header-wallet-chip b{font-size:10px}
 html:root body .site-header .header-account-name{max-width:54px;font-size:9px}
 html:root body .site-header .header-avatar{width:24px;height:24px;font-size:9px}
 html:root body .site-header .header-account-menu>summary{min-height:40px;padding:5px 6px;gap:4px}
 html:root body .site-header .header-account-chevron{font-size:14px}
 html:root body .site-header .app-nav{justify-content:flex-start;gap:4px;padding-top:6px}
 html:root body .site-header .app-nav a{font-size:10px;min-height:40px;padding:7px 12px}
}
@media(max-width:380px){html:root body .site-header .app-brand .site-brand-logo{width:88px}html:root body .site-header .header-account-name{max-width:36px}html:root body .site-header .header-action{font-size:8px;padding-inline:6px}}
@supports not (backdrop-filter:blur(1px)){html:root body .app-header.site-header{background:var(--pattern-surface)}}

[data-tool-entry][hidden]{display:none!important}
html:root body .wallet-content-grid:has(>.wallet-cost-card[hidden]){grid-template-columns:minmax(0,1fr)}

/* Shared study-paper background: site/chrome only, never the document image. */
html:root{
 --study-grid-images:linear-gradient(var(--study-grid) 1px,transparent 1px),linear-gradient(90deg,var(--study-grid) 1px,transparent 1px);
 --study-doodle-image:url('/study-texture-tile.svg?v=study-surfaces-1');--study-doodle-size:1320px 620px;
}
html:root body,
html:root body :is(.ektbly-main>section,.ektbly-footer,.auth-card,.account,.wallet-hero-card,.wallet-panel,.wallet-history,.topup-card,.topup-panel,.market-filter-panel,.market-orders-panel,.market-orders,.admin-panel,.admin-card,.market-dialog,.file-picker-dialog),
html:root body.guided-tool :is(.app-shell,.studio-workspace-bar,.studio-commandbar,.studio-inspector,.studio-pages-rail,.reference-settings-card,.reference-preview-card,.reference-preview-viewport,.viewer,.result-preview-stage){
 background-image:var(--study-grid-images),var(--study-doodle-image)!important;
 background-size:32px 32px,32px 32px,var(--study-doodle-size);
 background-position:center top;background-repeat:repeat;
}
/* Home sections own their pattern, avoiding doubled translucent tiles. */
html:root body.ektbly-home{background-image:none!important}
@media(max-width:620px){html:root{--study-doodle-image:url('/study-texture-small.svg?v=study-surfaces-1');--study-doodle-size:420px 620px}}
.workspace-share-dialog #shareWorkspaceSubmit{background:var(--pattern-button)!important;color:#fff!important;border-color:var(--pattern-button)!important}
.workspace-share-dialog #shareWorkspaceStatus{min-height:24px;overflow-wrap:anywhere}
.workspace-share-dialog #shareWorkspaceRetry{margin-top:8px;min-height:40px}
#shareWorkspaceRetry[hidden]{display:none!important}
@media print{html:root body,html:root body *{background-image:none!important}}
