@layer app {
  :root { --cy-bg:#080c0a; --cy-bg-raised:#101612; --cy-text:#e7eee9; --cy-text-muted:#8d9c93; --cy-text-dim:#75877b; --cy-stroke:#26372c; --cy-glass:#0e1510; --cy-primary:#78f7a0; --cy-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
  [hidden] { display:none!important; }
  body.cy-app { background:var(--cy-bg); font-size:14px; }
  .cy-app::before { display:none; }
  a { text-decoration:none; }
  button,a,input,select { -webkit-tap-highlight-color:transparent; }
  button { cursor:pointer; }
  :focus-visible { outline:2px solid var(--cy-primary); outline-offset:4px; }
  .cy-card { border:1px solid var(--cy-stroke); background:var(--cy-glass); border-radius:6px; box-shadow:none; padding:0; }
  .cy-btn { min-height:44px; font-size:12px; gap:10px; }
  .cy-btn--primary { background:var(--cy-primary); color:var(--cy-bg); border-color:var(--cy-primary); box-shadow:none; }
  .cy-input,.cy-select { min-height:46px; font-size:14px; background:var(--cy-bg); }
  .cy-input::placeholder { color:var(--cy-text-dim); }
  .accent { color:var(--cy-primary); }
  .mono,.micro,.eyebrow,.section-code,.live-label { font-family:var(--cy-font-mono); }
  .micro,.eyebrow,.section-code { font-size:10px; letter-spacing:.13em; color:var(--cy-text-muted); }
  .eyebrow { display:block; margin-bottom:12px; }
  .wordmark { display:flex; align-items:center; font-size:27px; font-weight:760; letter-spacing:-1.3px; color:var(--cy-text); white-space:nowrap; }
  .wordmark>span { color:var(--cy-primary); }
  .wordmark small { font:9px var(--cy-font-mono); letter-spacing:1.4px; border:1px solid var(--cy-stroke); padding:4px 6px; margin-left:12px; border-radius:3px; color:var(--cy-text-muted); }
  .boot { min-height:100dvh; display:grid; place-content:center; gap:18px; }
  .skip { position:fixed; top:-100px; left:20px; z-index:100; background:var(--cy-primary); padding:12px; color:var(--cy-bg); }
  .skip:focus { top:10px; }
  .sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  .connection { padding:10px 20px; background:var(--cy-warning); color:var(--cy-bg); text-align:center; }
  .login-layout { min-height:100dvh; display:flex; flex-direction:column; max-width:1600px; margin:auto; }
  .login-header,.login-footer { display:flex; justify-content:space-between; align-items:center; padding:34px 6vw; }
  .login-main { flex:1; display:grid; grid-template-columns:1fr 430px; align-items:center; gap:9vw; max-width:1200px; width:100%; margin:auto; padding:70px 5vw; }
  .login-intro .eyebrow { color:var(--cy-primary); }
  .login-intro h1 { font:500 clamp(42px,4.8vw,68px)/1.09 var(--cy-font); letter-spacing:-3px; margin:28px 0; }
  .login-intro p { color:var(--cy-text-muted); font-size:16px; line-height:1.8; }
  .intro-line { display:flex; align-items:center; gap:14px; margin-top:50px; color:var(--cy-text-muted); }
  .intro-line>span { width:32px; height:1px; background:var(--cy-primary); }
  .login-card { padding:34px; }
  .login-icon { color:var(--cy-primary); background:var(--cy-glass-soft); width:44px; height:44px; display:grid; place-items:center; border:1px solid var(--cy-stroke); border-radius:4px; margin-bottom:28px; }
  .login-card h2 { font-family:var(--cy-font); font-size:28px; margin:8px 0; letter-spacing:-.8px; }
  .login-card>p { color:var(--cy-text-muted); margin:0 0 30px; }
  .login-card form { display:grid; gap:19px; }
  .cy-field { display:grid; gap:9px; }
  .cy-label { font-family:var(--cy-font); font-size:12px; }
  .show-password { color:var(--cy-text-muted); display:flex; align-items:center; gap:9px; font-size:12px; min-height:44px; }
  .show-password input { accent-color:var(--cy-primary); }
  .login-submit { justify-content:space-between; width:100%; padding:13px 18px; }
  .login-note { display:flex; gap:8px; align-items:center; font-size:10px; color:var(--cy-text-muted); border-top:1px solid var(--cy-stroke); margin-top:25px; padding-top:22px; }
  .login-note svg { width:14px; flex-shrink:0; }
  .form-error { color:var(--cy-danger); font-size:12px; margin:0; }
  .form-error:empty { display:none; }
  .login-footer { font:10px var(--cy-font-mono); color:var(--cy-text-dim); }
  .shell { --sidebar-width:240px; min-height:100dvh; }
  .sidebar { position:fixed; inset:0 auto 0 0; width:var(--sidebar-width); display:flex; flex-direction:column; background:var(--cy-glass); border-right:1px solid var(--cy-stroke); z-index:30; transition:width .18s; }
  .sidebar-brand { min-height:84px; display:flex; align-items:center; padding:0 25px; }
  .nav-caption { color:var(--cy-text-dim); font:9px var(--cy-font-mono); letter-spacing:.15em; padding:32px 27px 15px; }
  .sidebar nav { padding:0 14px; display:grid; gap:6px; }
  .sidebar nav a { display:flex; align-items:center; gap:13px; min-height:48px; padding:12px; color:var(--cy-text-muted); border:1px solid transparent; border-radius:4px; font-size:13px; }
  .sidebar nav a>svg:last-child { width:14px; margin-left:auto; opacity:0; }
  .sidebar nav a[aria-current="page"] { background:var(--cy-glass-soft); color:var(--cy-primary); border-color:var(--cy-stroke); }
  .sidebar nav a[aria-current="page"]>svg:last-child { opacity:1; }
  .sidebar nav a:hover { color:var(--cy-primary); background:var(--cy-glass-soft); }
  .sidebar-bottom { margin-top:auto; padding:20px; }
  .workspace-label { display:flex; gap:10px; align-items:center; border:1px solid var(--cy-stroke); border-radius:4px; padding:12px; font-size:12px; }
  .workspace-label>div { flex:1; }
  .workspace-label small { display:block; font-size:10px; color:var(--cy-text-muted); margin-top:4px; }
  .workspace-mark { display:grid; place-items:center; border:1px solid var(--cy-stroke); width:30px; height:30px; font-family:var(--cy-font-mono); color:var(--cy-primary); }
  .sidebar-version { display:flex; justify-content:space-between; color:var(--cy-text-dim); font:9px var(--cy-font-mono); margin:20px 0 0; letter-spacing:.05em; }
  .workspace { margin-left:var(--sidebar-width); display:flex; flex-direction:column; min-height:100dvh; transition:margin-left .18s; }
  .topbar { min-height:84px; padding:16px 32px; border-bottom:1px solid var(--cy-stroke); display:flex; align-items:center; justify-content:space-between; gap:12px; }
  .topbar-left,.topbar-actions { display:flex; align-items:center; gap:18px; }
  .icon-button { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; border:1px solid transparent; color:var(--cy-text-muted); border-radius:4px; background:transparent; }
  .icon-button:hover { background:var(--cy-glass-soft); color:var(--cy-primary); border-color:var(--cy-stroke); }
  .breadcrumb { color:var(--cy-text-muted); font-size:12px; display:flex; gap:16px; }
  .breadcrumb>span { color:var(--cy-text-dim); }
  .breadcrumb strong { font-weight:500; color:var(--cy-text); }
  .topbar-divider { height:24px; width:1px; background:var(--cy-stroke); }
  .admin-avatar,.avatar { display:grid; place-items:center; width:34px; height:34px; border:1px solid var(--cy-stroke); color:var(--cy-primary); background:var(--cy-glass-soft); border-radius:4px; font:11px var(--cy-font-mono); flex-shrink:0; }
  .workspace main { padding:42px 38px; width:100%; max-width:1640px; margin:0 auto; flex:1; outline:none; min-width:0; }
  .page-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:32px; }
  .page-heading h1 { font:500 34px/1.25 var(--cy-font); letter-spacing:-1.1px; margin:0 0 10px; }
  .page-heading p { color:var(--cy-text-muted); font-size:13px; margin:0; }
  .live-label { font-size:9px; letter-spacing:.08em; color:var(--cy-text-muted); display:flex; align-items:center; gap:8px; }
  .live-label>span { width:6px; height:6px; background:var(--cy-primary); border-radius:50%; }
  .stats-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:30px; }
  .stat-card { padding:22px; position:relative; overflow:hidden; color:var(--cy-text); }
  .stat-card:hover { border-color:var(--cy-stroke-strong); }
  .stat-label { display:flex; justify-content:space-between; gap:12px; font-size:12px; color:var(--cy-text-muted); }
  .stat-label svg { width:17px; color:var(--cy-primary); }
  .stat-card>strong { font:400 clamp(28px,2.8vw,40px) var(--cy-font-mono); display:block; margin:25px 0; letter-spacing:-2px; }
  .stat-note { display:flex; align-items:center; justify-content:space-between; font-size:10px; color:var(--cy-text-muted); gap:8px; }
  .stat-note svg { width:14px; flex-shrink:0; }
  .stat-index { position:absolute; right:22px; bottom:54px; font:9px var(--cy-font-mono); color:var(--cy-text-dim); }
  .panel-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:25px; }
  .panel-heading .eyebrow { font-size:9px; margin-bottom:8px; }
  .panel-heading h2,.next-panel h2 { font:500 17px var(--cy-font); margin:0; letter-spacing:-.3px; }
  .text-link { display:flex; align-items:center; gap:10px; color:var(--cy-primary); font-size:11px; min-height:44px; }
  .text-link svg { width:16px; }
  .table-scroll { overflow-x:auto; width:100%; }
  table { width:100%; text-align:left; white-space:nowrap; }
  th { font:9px var(--cy-font-mono); letter-spacing:.08em; text-transform:uppercase; color:var(--cy-text-muted); background:var(--cy-bg); }
  td,th { padding:17px 25px; border-top:1px solid var(--cy-stroke); }
  td { font-size:12px; }
  td strong { font-weight:500; display:block; max-width:310px; overflow:hidden; text-overflow:ellipsis; }
  td small { display:block; color:var(--cy-text-muted); font-size:10px; margin-top:5px; }
  td.mono { font-size:11px; }
  tr:hover td { background:var(--cy-glass-soft); }
  .date-cell { color:var(--cy-text-muted); font-size:11px; }
  .amount { font-family:var(--cy-font-mono); text-align:right; }
  .badge { display:inline-flex; align-items:center; gap:6px; font-size:10px; color:var(--cy-text-muted); padding:5px 8px; border:1px solid var(--cy-stroke); border-radius:3px; white-space:nowrap; }
  .badge>span { font-size:7px; }
  .badge.good { color:var(--cy-primary); }
  .badge.warning { color:var(--cy-warning); }
  .dashboard-bottom { display:grid; grid-template-columns:1fr auto; gap:30px; margin-top:24px; align-items:center; }
  .next-panel { display:flex; padding:25px; align-items:center; gap:20px; border-style:dashed; }
  .next-panel .eyebrow { font-size:8px; margin-bottom:8px; }
  .next-panel h2 { font-size:14px; }
  .next-panel p { color:var(--cy-text-muted); font-size:11px; margin:8px 0 0; }
  .next-panel .badge { margin-left:auto; }
  .module-symbol { color:var(--cy-text-dim); }
  .sync-note { display:flex; align-items:center; gap:12px; color:var(--cy-text-muted); font-size:10px; line-height:1.9; }
  .sync-note svg { width:14px; }
  .sync-note strong { font-weight:400; color:var(--cy-text); }
  .app-footer { padding:20px 38px; display:flex; justify-content:space-between; color:var(--cy-text-dim); font:9px var(--cy-font-mono); border-top:1px solid var(--cy-stroke); }
  .filters { display:flex; align-items:center; gap:12px; padding:22px 25px; }
  .search-box { flex:1; position:relative; }
  .search-box>svg { position:absolute; left:14px; top:14px; width:17px; color:var(--cy-text-muted); }
  .search-box input { padding-left:42px; width:100%; }
  .filters select { min-width:155px; }
  .reset-link { color:var(--cy-primary); font-size:12px; padding:12px; }
  .result-count { display:flex; justify-content:space-between; padding:0 25px 18px; color:var(--cy-text-muted); font-size:11px; }
  .result-count>span { font:9px var(--cy-font-mono); }
  .pagination { padding:18px 25px; display:flex; justify-content:space-between; gap:16px; align-items:center; border-top:1px solid var(--cy-stroke); color:var(--cy-text-muted); font-size:11px; }
  .pagination>div { display:flex; gap:8px; }
  .identity { display:flex; align-items:center; gap:12px; }
  .footnote { color:var(--cy-text-muted); font-size:11px; margin-top:18px; }
  .trading-summary { display:flex; flex-wrap:wrap; align-items:center; gap:16px; color:var(--cy-text-muted); font-size:11px; margin-bottom:22px; }
  #trading-feedback:not(:empty) { padding:12px 0; color:var(--cy-primary); }
  .title-dialog { width:min(600px,calc(100% - 32px)); max-height:calc(100dvh - 32px); padding:0; margin:auto; border:1px solid var(--cy-stroke); border-radius:6px; background:var(--cy-bg-raised); color:var(--cy-text); overflow:auto; }
  .title-dialog::backdrop { background:rgb(0 0 0 / 75%); }
  .title-dialog h2 { font-size:22px; }
  .title-fields { display:grid; gap:20px; padding:0 26px 26px; }
  .title-fields small { color:var(--cy-text-muted); font-size:10px; }
  .title-fields input[readonly] { color:var(--cy-text-muted); border-style:dashed; }
  .title-field-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
  .title-field-grid>* { min-width:0; }
  .title-dialog-footer { display:flex; justify-content:flex-end; gap:10px; padding:20px 26px; border-top:1px solid var(--cy-stroke); }
  .empty { padding:65px 24px; text-align:center; color:var(--cy-text-muted); border-top:1px solid var(--cy-stroke); }
  .empty>svg { margin:0 auto 18px; color:var(--cy-primary); }
  .empty h3 { color:var(--cy-text); font:500 16px var(--cy-font); }
  .empty p { font-size:12px; }
  .loading { padding:60px 24px; color:var(--cy-text-muted); text-align:center; }
  .error-box { padding:28px; }
  .error-box h2 { font-size:20px; }
  #shell-message:not(:empty) { padding:16px 38px; color:var(--cy-danger); }
  .backdrop,.mobile-close { display:none; }
  @media(min-width:801px) {
    .collapsed { --sidebar-width:76px; }
    .collapsed .sidebar-brand { padding:0 12px; }
    .collapsed .wordmark { font-size:19px; letter-spacing:-1px; }
    .collapsed .wordmark small,.collapsed .nav-caption,.collapsed .sidebar nav a>span,.collapsed .sidebar nav a>svg:last-child,.collapsed .sidebar-bottom { display:none; }
    .collapsed .sidebar nav { padding:47px 12px 0; }
    .collapsed .sidebar nav a { justify-content:center; padding:12px; }
  }
  @media(max-width:1150px) {
    .shell { --sidebar-width:215px; }
    .workspace main { padding:32px 24px; }
    .stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .dashboard-bottom { grid-template-columns:1fr; gap:18px; }
    .login-main { gap:5vw; grid-template-columns:1fr 400px; }
  }
  @media(max-width:800px) {
    .sidebar { width:260px; transform:translateX(-100%); transition:transform .18s; }
    .drawer-open .sidebar { transform:translateX(0); }
    .drawer-open .backdrop { display:block; position:fixed; inset:0; z-index:25; border:0; background:rgb(0 0 0 / 65%); width:100%; height:100%; }
    .workspace { margin-left:0; }
    .sidebar-brand { padding:0 18px; justify-content:space-between; }
    .mobile-close { display:grid; }
    .topbar { padding:12px 16px; min-height:70px; }
    .topbar-left,.topbar-actions { gap:8px; }
    .breadcrumb { font-size:11px; gap:8px; }
    .page-heading { margin-bottom:24px; }
    .live-label,.section-code { display:none; }
    .login-main { grid-template-columns:1fr; max-width:500px; padding:25px 22px 45px; }
    .login-intro { display:none; }
    .login-header { padding:28px 24px; }
    .login-header .micro { display:none; }
    .login-footer { padding:24px; gap:20px; }
    .login-footer>span:last-child { display:none; }
    .filters { flex-wrap:wrap; padding:18px; }
    .search-box { flex-basis:100%; }
    .filters>label:nth-child(2) { flex:1; }
    .filters select { width:100%; }
  }
  @media(max-width:480px) {
    .title-field-grid { grid-template-columns:1fr; }
    .page-heading { flex-wrap:wrap; }
    .title-fields { padding:0 18px 20px; }
    .workspace main { padding:30px 16px; }
    .page-heading h1 { font-size:29px; }
    .page-heading p { line-height:1.6; }
    .stats-grid { gap:10px; }
    .stat-card { padding:17px 14px; }
    .stat-label { font-size:10px; gap:4px; }
    .stat-label svg { width:14px; }
    .stat-card>strong { font-size:32px; }
    .stat-note { font-size:9px; align-items:flex-start; }
    .stat-note svg { display:none; }
    .panel-heading { padding:20px 18px; flex-wrap:wrap; gap:8px; }
    .panel-heading h2 { font-size:16px; }
    .panel-heading .text-link { font-size:10px; }
    .next-panel { padding:20px 18px; flex-wrap:wrap; gap:14px; }
    .next-panel .module-symbol { display:none; }
    .next-panel .badge { margin-left:0; }
    .app-footer { padding:20px 16px; font-size:8px; }
    .topbar-actions .admin-avatar,.topbar-divider { display:none; }
    .breadcrumb-root,.breadcrumb-separator { display:none; }
    .topbar-actions { gap:0; }
    #install { padding:10px; }
    #install span { display:none; }
    .pagination { flex-wrap:wrap; padding:18px; }
    .result-count { padding:0 18px 16px; }
    .result-count>span { font-size:8px; }
    .login-card { padding:26px; }
  }
  @media(prefers-reduced-motion:reduce) { *,*::before,*::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; } }
}
