/* KY 1.0 — Apple-inspired light design system. No external icon/font licensing; system fonts + inline SVG. */
:root{
  --ky-bg:#f5f5f7; --ky-bg-elevated:#fbfbfd; --ky-card:rgba(255,255,255,.86); --ky-card-solid:#fff;
  --ky-ink:#1d1d1f; --ky-ink-2:#424245; --ky-muted:#6e6e73; --ky-faint:#86868b;
  --ky-line:rgba(0,0,0,.08); --ky-line-strong:rgba(0,0,0,.14);
  --ky-blue:#0071e3; --ky-blue-hover:#0077ed; --ky-blue-soft:rgba(0,113,227,.09);
  --ky-green:#1f8a5b; --ky-green-soft:rgba(31,138,91,.10);
  --ky-red:#c7362f; --ky-red-soft:rgba(199,54,47,.08);
  --ky-amber:#8a5a00; --ky-amber-soft:rgba(255,159,10,.14);
  --ky-radius-xl:22px; --ky-radius-lg:18px; --ky-radius-md:14px; --ky-radius-sm:10px; --ky-pill:980px;
  --ky-shadow-card:0 0 0 .5px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.03),0 10px 30px rgba(0,0,0,.04);
  --ky-shadow-pop:0 18px 60px rgba(0,0,0,.12);
  --ky-font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","PingFang HK","PingFang TC","Noto Sans TC","Helvetica Neue",sans-serif;
  --ky-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,monospace;
  --ky-ease:cubic-bezier(.2,.7,.2,1);
  --ky-topbar:rgba(255,255,255,.72);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.ky-body{margin:0;background:var(--ky-bg);color:var(--ky-ink);font-family:var(--ky-font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:rgba(0,113,227,.18)}
a{color:var(--ky-blue);text-decoration:none}
:focus-visible{outline:3px solid rgba(0,113,227,.45);outline-offset:2px;border-radius:6px}
.ky-wrap{max-width:1320px;margin:0 auto;padding:0 28px}
.ky-main{padding:34px 0 64px;min-height:calc(100vh - 52px)}
.ky-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* topbar */
.ky-top{position:sticky;top:0;z-index:50;background:var(--ky-topbar);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid var(--ky-line)}
.ky-nav{height:58px;display:flex;align-items:center;gap:6px}
.ky-brand{display:flex;align-items:center;gap:9px;margin-right:14px;color:var(--ky-ink);text-decoration:none;flex:none}
.ky-mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(145deg,#0a84ff,#0059b8);color:#fff;display:grid;place-items:center;font-weight:800;font-size:12px;letter-spacing:-.04em;box-shadow:0 2px 8px rgba(0,113,227,.25)}
.ky-word{font-size:16px;font-weight:700;letter-spacing:-.02em}
.ky-navlinks{display:flex;align-items:center;gap:2px;min-width:0;overflow:auto;scrollbar-width:none}
.ky-navlinks::-webkit-scrollbar{display:none}
.ky-navlink{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 11px;border-radius:var(--ky-radius-sm);color:var(--ky-muted);font-size:13px;font-weight:500;white-space:nowrap;transition:background .18s var(--ky-ease),color .18s var(--ky-ease)}
.ky-navlink:hover{background:rgba(0,0,0,.045);color:var(--ky-ink)}
.ky-navlink.active{background:rgba(0,113,227,.10);color:var(--ky-blue);font-weight:600}
.ky-navlink svg{width:15px;height:15px;opacity:.9}
.ky-nav-spacer{flex:1;min-width:12px}
.ky-user{display:flex;align-items:center;gap:8px;flex:none}
.ky-avatar{width:28px;height:28px;border-radius:50%;background:#e8e8ed;color:var(--ky-ink-2);display:grid;place-items:center;font-size:12px;font-weight:700}
.ky-username{font-size:12.5px;color:var(--ky-muted);max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ky-menu{position:relative}
.ky-menu>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;padding:5px 7px;border-radius:var(--ky-pill)}
.ky-menu>summary::-webkit-details-marker{display:none}.ky-menu>summary:hover{background:rgba(0,0,0,.045)}
.ky-menu-panel{position:absolute;right:0;top:calc(100% + 8px);min-width:190px;background:rgba(255,255,255,.96);backdrop-filter:blur(20px);border:.5px solid var(--ky-line);border-radius:var(--ky-radius-md);box-shadow:var(--ky-shadow-pop);padding:6px;z-index:60}
.ky-menu-panel a,.ky-menu-panel button{display:block;width:100%;text-align:left;border:0;background:transparent;color:var(--ky-ink);font:inherit;font-size:13px;padding:8px 10px;border-radius:8px;cursor:pointer}
.ky-menu-panel a:hover,.ky-menu-panel button:hover{background:rgba(0,0,0,.05)}

/* typography */
.ky-eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ky-muted);margin:0 0 7px}
h1.ky-h1{font-size:32px;line-height:1.14;letter-spacing:-.025em;font-weight:700;margin:0 0 7px}
h2.ky-h2{font-size:17px;line-height:1.3;letter-spacing:-.01em;font-weight:650;margin:0 0 6px}
h3.ky-h3{font-size:14px;font-weight:650;margin:0 0 4px}
.ky-sub{color:var(--ky-muted);font-size:13px;line-height:1.6;margin:0}
.ky-note{color:var(--ky-muted);font-size:11.5px;line-height:1.55}
.ky-mono{font-family:var(--ky-mono);font-size:11px;color:var(--ky-muted);word-break:break-all}
.ky-pagehead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:12px 0 24px;flex-wrap:wrap}
.ky-pagehead .ky-actions{display:flex;gap:8px;flex-wrap:wrap}
.ky-section-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--ky-muted);margin:0 0 10px}
.ky-section-label svg{width:15px;height:15px}

/* cards */
.ky-card{background:var(--ky-card);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border:.5px solid var(--ky-line);border-radius:var(--ky-radius-xl);box-shadow:var(--ky-shadow-card);padding:22px}
.ky-card.flat{box-shadow:none;background:var(--ky-card-solid)}
.ky-card.compact{padding:16px;border-radius:var(--ky-radius-lg)}
.ky-card + .ky-card{margin-top:16px}
.ky-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.ky-card-head p{margin:2px 0 0}
.ky-divider{height:.5px;background:var(--ky-line);border:0;margin:18px 0}
.ky-grid{display:grid;gap:16px}
.ky-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ky-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ky-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}

/* buttons */
.ky-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:7px 14px;border-radius:var(--ky-radius-sm);border:.5px solid var(--ky-line-strong);background:rgba(255,255,255,.8);color:var(--ky-ink);font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;cursor:pointer;text-decoration:none;transition:background .18s var(--ky-ease),transform .12s var(--ky-ease),opacity .18s;white-space:nowrap}
.ky-btn:hover{background:#fff}.ky-btn:active{transform:scale(.985)}
.ky-btn:disabled,.ky-btn[aria-disabled="true"]{opacity:.42;cursor:not-allowed;transform:none}
.ky-btn.primary{background:var(--ky-blue);border-color:transparent;color:#fff;box-shadow:0 1px 2px rgba(0,113,227,.2)}
.ky-btn.primary:hover{background:var(--ky-blue-hover)}
.ky-btn.danger{color:var(--ky-red);border-color:rgba(199,54,47,.22);background:rgba(255,255,255,.7)}
.ky-btn.danger:hover{background:var(--ky-red-soft)}
.ky-btn.quiet{border-color:transparent;background:transparent;color:var(--ky-blue);padding-left:8px;padding-right:8px}
.ky-btn.quiet:hover{background:var(--ky-blue-soft)}
.ky-btn.lg{min-height:46px;padding:12px 22px;font-size:15px;border-radius:12px}
.ky-btn.sm{min-height:28px;padding:4px 10px;font-size:12px}
.ky-btn svg{width:15px;height:15px}
.ky-btn-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}

/* forms */
.ky-field{margin-bottom:15px}
.ky-label{display:block;font-size:12px;font-weight:600;color:var(--ky-ink-2);margin:0 0 6px}
.ky-input,.ky-select,.ky-textarea{width:100%;border:.5px solid var(--ky-line-strong);border-radius:var(--ky-radius-sm);background:rgba(255,255,255,.92);color:var(--ky-ink);font-family:inherit;font-size:14px;line-height:1.45;padding:10px 12px;transition:border-color .16s,box-shadow .16s,background .16s;-webkit-appearance:none;appearance:none}
.ky-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236e6e73' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px}
.ky-textarea{min-height:132px;resize:vertical;line-height:1.65}
.ky-input:focus,.ky-select:focus,.ky-textarea:focus{outline:none;border-color:var(--ky-blue);box-shadow:0 0 0 4px rgba(0,113,227,.13);background:#fff}
.ky-input::placeholder,.ky-textarea::placeholder{color:var(--ky-faint)}
.ky-formrow{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ky-help{font-size:11.5px;color:var(--ky-muted);margin-top:5px;line-height:1.5}
.ky-error-text{font-size:12px;color:var(--ky-red);margin-top:6px}
.ky-check{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ky-ink-2)}

/* badges/pills */
.ky-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;border-radius:var(--ky-pill);padding:3px 9px;background:#f1f1f3;color:var(--ky-muted);white-space:nowrap;line-height:1.35}
.ky-badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.65}
.ky-badge.ok{background:var(--ky-green-soft);color:var(--ky-green)}
.ky-badge.bad{background:var(--ky-red-soft);color:var(--ky-red)}
.ky-badge.warn{background:var(--ky-amber-soft);color:var(--ky-amber)}
.ky-badge.blue{background:var(--ky-blue-soft);color:var(--ky-blue)}
.ky-badge.plain:before{display:none}
.ky-pill{display:inline-flex;align-items:center;gap:6px;border-radius:var(--ky-pill);padding:4px 10px;background:rgba(0,0,0,.045);font-size:12px;font-weight:500;color:var(--ky-ink-2)}

/* alerts */
.ky-alert{display:flex;gap:10px;align-items:flex-start;border-radius:var(--ky-radius-md);padding:12px 14px;font-size:13px;line-height:1.55;margin:14px 0;border:.5px solid transparent}
.ky-alert svg{width:17px;height:17px;flex:none;margin-top:1px}
.ky-alert.err{border-color:rgba(199,54,47,.16);background:var(--ky-red-soft);color:#8f231e}
.ky-alert.ok{border-color:rgba(31,138,91,.16);background:var(--ky-green-soft);color:#14603e}
.ky-alert.warn{border-color:rgba(255,159,10,.22);background:var(--ky-amber-soft);color:#6b4600}
.ky-alert.info{border-color:rgba(0,113,227,.14);background:var(--ky-blue-soft);color:#0b4f9c}

/* tables */
.ky-table-wrap{overflow:auto;border-radius:var(--ky-radius-md);border:.5px solid var(--ky-line)}
table.ky-table{width:100%;border-collapse:collapse;font-size:12.5px;background:rgba(255,255,255,.6)}
.ky-table th{font-size:11px;font-weight:600;color:var(--ky-muted);text-align:left;padding:10px 12px;background:rgba(0,0,0,.025);border-bottom:.5px solid var(--ky-line);white-space:nowrap}
.ky-table td{padding:11px 12px;border-bottom:.5px solid var(--ky-line);vertical-align:top;color:var(--ky-ink-2)}
.ky-table tr:last-child td{border-bottom:0}
.ky-table tr:hover td{background:rgba(0,0,0,.018)}
.ky-table td .ky-note{margin-top:2px}

/* empty state */
.ky-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:38px 22px;border:.5px dashed var(--ky-line-strong);border-radius:var(--ky-radius-lg);background:rgba(255,255,255,.45);color:var(--ky-muted);gap:8px}
.ky-empty .ico{width:38px;height:38px;border-radius:12px;background:#f1f1f3;display:grid;place-items:center;color:var(--ky-faint);margin-bottom:2px}
.ky-empty .ico svg{width:20px;height:20px}
.ky-empty b{color:var(--ky-ink);font-size:14px;font-weight:600}
.ky-empty p{margin:0;font-size:12.5px;max-width:380px;line-height:1.55}
.ky-empty .ky-btn{margin-top:6px}

/* project cards */
.ky-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}
.ky-project{display:flex;flex-direction:column;background:var(--ky-card-solid);border:.5px solid var(--ky-line);border-radius:var(--ky-radius-xl);overflow:hidden;box-shadow:var(--ky-shadow-card);transition:transform .2s var(--ky-ease),box-shadow .2s var(--ky-ease);color:inherit}
.ky-project:hover{transform:translateY(-2px);box-shadow:0 0 0 .5px rgba(0,0,0,.05),0 16px 40px rgba(0,0,0,.08)}
.ky-project-cover{aspect-ratio:16/9;background:linear-gradient(135deg,#e9edf3,#f7f8fa);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.ky-project-cover img{width:100%;height:100%;object-fit:cover;display:block}
.ky-project-cover .ph{font-size:12px;color:var(--ky-muted);display:flex;flex-direction:column;align-items:center;gap:6px}
.ky-project-cover .ph svg{width:26px;height:26px;opacity:.55}
.ky-project-cover .top-badges{position:absolute;top:10px;left:10px;display:flex;gap:6px}
.ky-project-body{padding:15px 16px 14px;display:flex;flex-direction:column;gap:8px;flex:1}
.ky-project-title{font-size:15px;font-weight:650;letter-spacing:-.01em;margin:0;color:var(--ky-ink)}
.ky-project-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--ky-muted);font-size:11.5px}
.ky-project-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:10px;border-top:.5px solid var(--ky-line);gap:8px}
.ky-project-stats{display:flex;gap:14px;font-size:11px;color:var(--ky-muted)}
.ky-project-stats b{color:var(--ky-ink-2);font-weight:600}

/* auth */
.ky-auth{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:radial-gradient(1200px 700px at 50% -10%,#ffffff 0%,#f5f5f7 55%,#f0f1f4 100%)}
.ky-auth-card{width:min(440px,100%);background:rgba(255,255,255,.9);backdrop-filter:blur(24px);border:.5px solid var(--ky-line);border-radius:26px;box-shadow:var(--ky-shadow-pop);padding:34px 32px 28px}
.ky-auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:24px}
.ky-auth-card h1{font-size:27px;letter-spacing:-.03em;margin:0 0 6px;font-weight:700}
.ky-auth-card .ky-sub{margin-bottom:20px}
.ky-auth-foot{font-size:11.5px;color:var(--ky-faint);text-align:center;margin-top:18px;line-height:1.6}
.ky-auth-aside{display:none}
@media(min-width:900px){.ky-auth{grid-template-columns:1fr 1fr;gap:0;padding:0}.ky-auth-card{margin:auto}.ky-auth-aside{display:flex;flex-direction:column;justify-content:center;padding:8vh 7vw;gap:18px;background:linear-gradient(160deg,#fbfbfd,#eef2f7);min-height:100vh;border-right:.5px solid var(--ky-line)}.ky-auth-aside h2{font-size:34px;letter-spacing:-.035em;line-height:1.15;margin:0;max-width:420px}.ky-auth-aside p{color:var(--ky-muted);font-size:14px;max-width:380px;line-height:1.7}.ky-auth-side-list{display:flex;flex-direction:column;gap:12px;margin-top:10px}.ky-auth-side-item{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--ky-ink-2)}.ky-auth-side-item svg{width:17px;height:17px;color:var(--ky-blue);flex:none;margin-top:1px}}

/* setup steps */
.ky-steps{display:flex;gap:8px;margin:0 0 20px;flex-wrap:wrap}
.ky-step{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ky-faint)}
.ky-step .n{width:19px;height:19px;border-radius:50%;background:#f1f1f3;display:grid;place-items:center;font-size:10.5px;font-weight:700}
.ky-step.on{color:var(--ky-ink)}.ky-step.on .n{background:var(--ky-blue);color:#fff}

/* footer */
.ky-foot{border-top:.5px solid var(--ky-line);color:var(--ky-faint);font-size:11px;padding:18px 0 26px;display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap}
.ky-foot a{color:var(--ky-faint)}

/* studio overrides (loads after legacy inline styles) */
body.ky-studio{background:var(--ky-bg);background-image:none}
.ky-studio .wrap{max-width:1320px;padding:26px 28px 100px}
.ky-studio .top{display:none}
.ky-studio .card{background:var(--ky-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid var(--ky-line);border-radius:var(--ky-radius-xl);box-shadow:var(--ky-shadow-card);padding:22px;margin-bottom:0}
.ky-studio .grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(380px,.97fr);gap:16px;align-items:start}
.ky-studio .card h2{font-size:16px;font-weight:650;letter-spacing:-.01em;color:var(--ky-ink);margin:0 0 4px}
.ky-studio .card p.sub{font-size:12px;color:var(--ky-muted);line-height:1.55;margin:0 0 12px}
.ky-studio label.f{font-size:12px;font-weight:600;color:var(--ky-ink-2);margin:12px 0 6px;letter-spacing:0}
.ky-studio textarea,.ky-studio input,.ky-studio select{border:.5px solid var(--ky-line-strong);border-radius:var(--ky-radius-sm);background:rgba(255,255,255,.92);font-size:14px;padding:10px 12px}
.ky-studio textarea{min-height:168px;line-height:1.7}
.ky-studio textarea:focus,.ky-studio input:focus,.ky-studio select:focus{border-color:var(--ky-blue);box-shadow:0 0 0 4px rgba(0,113,227,.13);background:#fff}
.ky-studio .drop{border:1px dashed var(--ky-line-strong);border-radius:var(--ky-radius-md);min-height:120px;background:rgba(255,255,255,.55);transition:border-color .18s,background .18s}
.ky-studio .drop:hover{border-color:rgba(0,113,227,.5);background:rgba(0,113,227,.025)}
.ky-studio .drop .hint{font-size:12.5px;color:var(--ky-muted);padding:14px;line-height:1.6}
.ky-studio .drop img{max-height:220px;object-fit:contain;background:#f7f7f9}
.ky-studio .note{font-size:11.5px;color:var(--ky-muted);line-height:1.5}
.ky-studio .row{gap:12px}
.ky-studio .voicebox{border:.5px solid var(--ky-line);border-radius:var(--ky-radius-md);padding:10px 12px;background:rgba(0,0,0,.025);font-size:12px;line-height:1.55;margin-top:8px;color:var(--ky-ink-2)}
.ky-studio .voicebox.ok{border-color:rgba(31,138,91,.18);background:var(--ky-green-soft);color:#14603e}
.ky-studio .voicebox.bad{border-color:rgba(199,54,47,.18);background:var(--ky-red-soft);color:#8f231e}
.ky-studio .voice-actions button{border:.5px solid var(--ky-line-strong);border-radius:8px;background:#fff;font-size:12px;padding:6px 11px;font-weight:600;cursor:pointer}
.ky-studio .voice-actions button.local{border-color:rgba(0,113,227,.35);color:var(--ky-blue);background:var(--ky-blue-soft)}
.ky-studio .dirty{border:.5px solid rgba(255,159,10,.25);background:var(--ky-amber-soft);color:#6b4600;border-radius:var(--ky-radius-md);padding:11px 13px;font-size:12.5px;line-height:1.55;margin-bottom:16px}
.ky-studio .dirty b{font-weight:650}
.ky-studio .dirty button{border:.5px solid rgba(255,159,10,.35);background:#fff;border-radius:8px;padding:5px 10px;font-size:11.5px;font-weight:600;margin-left:8px;cursor:pointer;color:#6b4600}
.ky-studio .preview-box{background:linear-gradient(160deg,#0b0f14,#161d26);border-radius:var(--ky-radius-lg);min-height:260px;overflow:hidden;position:relative;box-shadow:inset 0 0 0 .5px rgba(255,255,255,.08)}
.ky-studio .preview-box video{width:100%;display:block;max-height:420px;background:#000}
.ky-studio .preview-box .empty{color:#98a6b5;font-size:12.5px;line-height:1.7;padding:36px 24px;max-width:340px}
.ky-studio .preview-label{top:10px;left:10px;background:rgba(0,0,0,.55);backdrop-filter:blur(10px);color:#f5f5f7;font-size:11px;border-radius:var(--ky-pill);padding:4px 10px;font-weight:500}
.ky-studio .result-actions{gap:8px;margin-top:12px}
.ky-studio .result-actions a{border-radius:var(--ky-radius-sm);background:var(--ky-blue);font-size:12.5px;font-weight:600;padding:8px 13px}
.ky-studio .result-actions a.ghost{background:#fff;color:var(--ky-ink);border:.5px solid var(--ky-line-strong)}
.ky-studio .result-actions button{min-height:32px;font-size:12.5px}
.ky-studio .bar{height:5px;border-radius:var(--ky-pill);background:#ececf0;margin-top:8px;overflow:hidden}
.ky-studio .bar>div{background:var(--ky-blue);border-radius:var(--ky-pill);transition:width .35s var(--ky-ease)}
.ky-studio .status-text{font-size:12px;color:var(--ky-muted);margin-top:7px}
.ky-studio .err{border:.5px solid rgba(199,54,47,.18);background:var(--ky-red-soft);color:#8f231e;border-radius:var(--ky-radius-md);padding:12px 14px;font-size:12.5px;line-height:1.6;margin-top:12px;white-space:pre-wrap}
.ky-studio .err b{font-size:13px;display:block;margin-bottom:3px}
.ky-studio .err .next button{border:.5px solid rgba(199,54,47,.2);background:#fff;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:600;cursor:pointer;color:#8f231e}
.ky-studio .primarybar{position:sticky;bottom:0;z-index:10;background:rgba(245,245,247,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:14px 0 6px;display:flex;gap:8px;align-items:center;margin-top:16px;border-top:.5px solid var(--ky-line)}
.ky-studio .primarybar .big{flex:1;font-size:15px;min-height:48px;border-radius:13px;box-shadow:0 6px 18px rgba(0,113,227,.22)}
.ky-studio .advanced{margin-top:10px;font-size:11.5px;color:var(--ky-muted)}
.ky-studio .advanced a{color:var(--ky-blue)}
.ky-studio .warnlink{border:.5px solid var(--ky-line);background:rgba(0,0,0,.025);color:var(--ky-muted);border-radius:var(--ky-radius-md);padding:9px 11px;font-size:11px;line-height:1.5;margin-top:10px}
.ky-studio .versions{gap:8px;max-height:360px;overflow:auto;padding-right:2px}
.ky-studio .vitem{border:.5px solid var(--ky-line);border-radius:var(--ky-radius-md);padding:10px 11px;background:rgba(255,255,255,.65);gap:7px;flex-wrap:wrap}
.ky-studio .vitem.active{border-color:rgba(0,113,227,.4);background:var(--ky-blue-soft)}
.ky-studio .vitem .vt{font-size:12.5px;font-weight:600;color:var(--ky-ink)}
.ky-studio .vitem .vs{font-size:10.5px;color:var(--ky-muted)}
.ky-studio .vitem button{border:.5px solid var(--ky-line-strong);border-radius:7px;background:#fff;font-size:11px;padding:4px 8px;font-weight:600;cursor:pointer}
.ky-studio .vitem button.play{color:var(--ky-blue);border-color:rgba(0,113,227,.3)}
.ky-studio .vitem button.dl{color:var(--ky-green);border-color:rgba(31,138,91,.25)}
.ky-studio .badge{background:var(--ky-green-soft);color:var(--ky-green);font-size:9.5px;padding:2px 7px}
.ky-studio .badge.old{background:#f1f1f3;color:var(--ky-muted)}
.ky-studio .diag{margin-top:6px;font-size:11px}
.ky-studio .diag summary{cursor:pointer;color:var(--ky-muted);font-weight:500}
.ky-studio .diag pre{background:#f7f7f9;border:.5px solid var(--ky-line);border-radius:8px;padding:9px;font-size:10px;max-height:180px;overflow:auto;white-space:pre-wrap}
.ky-studio .status-pill{font-size:11px;font-weight:600;border-radius:var(--ky-pill);padding:5px 10px;background:#f1f1f3;color:var(--ky-muted)}
.ky-studio .status-pill:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;margin-right:6px;vertical-align:1px;opacity:.7}
.ky-studio .status-pill.ok{background:var(--ky-green-soft);color:var(--ky-green)}
.ky-studio .status-pill.bad{background:var(--ky-red-soft);color:var(--ky-red)}
.ky-studio .status-pill.run{background:var(--ky-amber-soft);color:var(--ky-amber)}
.ky-studio .topbar-2{display:flex;align-items:center;gap:10px;margin:0 0 20px;flex-wrap:wrap}
.ky-studio .crumb{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ky-muted);min-width:0}
.ky-studio .crumb a{color:var(--ky-muted)}.ky-studio .crumb b{color:var(--ky-ink);font-weight:600;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ky-studio .studio-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 16px}
.ky-studio .studio-head h1{font-size:27px;line-height:1.18;letter-spacing:-.03em;margin:0 0 4px;color:var(--ky-ink)}
.ky-studio .studio-head .meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:6px}
.ky-studio .studio-head .meta .ky-badge{font-size:10.5px}
.ky-studio .card-section-title{display:flex;align-items:center;gap:7px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ky-faint);font-weight:600;margin:0 0 11px}
.ky-studio .card-section-title svg{width:14px;height:14px}
.ky-studio .leftcol .card,.ky-studio .rightcol .card{background:var(--ky-card)}
.ky-studio .leftcol{display:flex;flex-direction:column;gap:16px}
.ky-studio .rightcol{display:flex;flex-direction:column;gap:16px}
.ky-studio .rightcol .card + .card{margin-top:0}
.ky-studio .mode-note{font-size:11.5px;color:var(--ky-muted);line-height:1.55;margin-top:8px}
.ky-studio .ky-details{border:.5px solid var(--ky-line);border-radius:var(--ky-radius-md);padding:10px 12px;background:rgba(255,255,255,.5);margin-top:10px}
.ky-studio .ky-details summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--ky-ink-2);list-style:none}
.ky-studio .ky-details summary::-webkit-details-marker{display:none}
.ky-studio .ky-details summary:after{content:"＋";float:right;color:var(--ky-faint);font-weight:400}
.ky-studio .ky-details[open] summary:after{content:"－"}
.ky-studio .ky-details .inner{padding-top:10px}
.ky-studio .studio-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(8px);background:rgba(29,29,31,.92);color:#fff;padding:10px 16px;border-radius:var(--ky-pill);font-size:12.5px;box-shadow:var(--ky-shadow-pop);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:80}
.ky-studio .studio-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* responsive */
@media(max-width:1100px){.ky-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ky-studio .grid{grid-template-columns:1fr}.ky-studio .rightcol{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ky-studio .rightcol .preview-card{grid-column:1/-1}}
@media(max-width:820px){.ky-wrap{padding:0 18px}.ky-studio .wrap{padding:20px 18px 100px}.ky-nav{height:54px}.ky-username{display:none}.ky-navlink{padding:0 9px;font-size:12.5px}.ky-card{padding:18px;border-radius:18px}.ky-project-grid{grid-template-columns:1fr}.ky-grid.cols-2,.ky-grid.cols-3,.ky-grid.cols-4{grid-template-columns:1fr}.ky-studio .rightcol{display:flex}.ky-studio .studio-head h1{font-size:23px}.ky-formrow{grid-template-columns:1fr}.ky-auth-card{padding:26px 22px}}
@media(max-width:560px){.ky-navlinks .label{display:none}.ky-navlink{padding:0 8px}.ky-navlink svg{width:17px;height:17px}.ky-word{display:none}.ky-brand{margin-right:4px}.ky-table th,.ky-table td{padding:9px 8px;font-size:11.5px}.ky-studio .row{flex-direction:column}.ky-studio .primarybar .big{font-size:14px}.ky-studio .vitem{flex-direction:column;align-items:flex-start}.ky-studio .vitem .vm{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* studio legacy class compatibility (new shared system replaces inline styles) */
.ky-studio .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:7px 13px;border-radius:var(--ky-radius-sm);border:.5px solid var(--ky-line-strong);background:rgba(255,255,255,.8);color:var(--ky-ink);font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .18s var(--ky-ease),transform .12s}
.ky-studio .btn:hover{background:#fff}.ky-studio .btn:active{transform:scale(.985)}
.ky-studio .btn.primary{background:var(--ky-blue);border-color:transparent;color:#fff}
.ky-studio .btn.primary:hover{background:var(--ky-blue-hover)}
.ky-studio .btn:disabled{opacity:.42;cursor:not-allowed}
.ky-studio .dirty{display:none}.ky-studio .dirty.show{display:block}
.ky-studio .result-actions{display:none}.ky-studio .result-actions.show{display:flex}
.ky-studio .progress{display:none}.ky-studio .progress.show{display:block}
.ky-studio .err{display:none}.ky-studio .err.show{display:block}
.ky-studio .preview-label{display:none}.ky-studio .preview-label[style*="block"]{display:block}
.ky-studio .preview-box .empty{display:flex;flex-direction:column;align-items:center;gap:6px;max-width:360px}
.ky-studio .vitem .vm{flex:1;min-width:0}
.ky-studio .vitem .vs{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ky-studio .status-text{display:block}
.ky-studio .studio-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ky-studio .mode-chip{display:inline-flex;align-items:center;gap:6px;background:rgba(0,113,227,.08);color:#0b4f9c;border-radius:var(--ky-pill);padding:5px 10px;font-size:11.5px;font-weight:600}
.ky-studio .mode-chip:before{content:"";width:5px;height:5px;background:var(--ky-blue);border-radius:50%}
.ky-studio .studio-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--ky-faint);font-weight:600;margin:0 0 5px}
.ky-studio .voice-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}
.ky-studio .advanced{display:flex;justify-content:space-between;gap:10px;align-items:center}
.ky-studio .advanced a{font-weight:500}
.ky-studio .warnlink{display:flex;gap:7px;align-items:flex-start}
.ky-studio .warnlink svg{width:14px;height:14px;flex:none;margin-top:1px}
.ky-studio .card .ky-section-label{margin-bottom:12px}
.ky-studio .leftcol .card{padding:22px}
.ky-studio .card h2{font-size:16px}
.ky-studio .card .sub{font-size:12px;color:var(--ky-muted);line-height:1.55;margin:0 0 12px}
.ky-studio .char-count{font-size:11.5px;color:var(--ky-faint);margin-top:6px;display:flex;justify-content:space-between;gap:8px}
.ky-studio .voice-note{font-size:11.5px;color:var(--ky-muted);margin-top:5px}
.ky-studio .drop.dragover{border-color:var(--ky-blue);background:var(--ky-blue-soft)}
@media(max-width:1100px){.ky-studio .grid{grid-template-columns:1fr}.ky-studio .rightcol{display:flex}.ky-studio .primarybar{position:sticky}}
.ky-studio label.f{display:block}
.ky-studio .primarybar{position:static;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-top:0;padding-top:4px;margin-top:14px}
.ky-studio .primarybar .big{width:100%}
@media(min-width:1101px){.ky-studio .primarybar{position:sticky;bottom:12px;background:rgba(245,245,247,.85);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:.5px solid var(--ky-line);border-radius:16px;padding:10px;box-shadow:0 10px 30px rgba(0,0,0,.06)}}
.ky-studio textarea,.ky-studio input,.ky-studio select{width:100%}
.ky-studio .primarybar{position:static!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:4px 0 0!important;margin-top:14px!important}
.ky-studio .primarybar .big{width:100%}
.ky-studio .result-actions a{color:#fff;display:inline-flex;align-items:center;gap:6px;min-height:36px}
.ky-studio .result-actions a.ghost{color:var(--ky-ink);background:#fff}
.ky-studio .result-actions a svg{stroke:currentColor}
.ky-studio .vitem button{color:var(--ky-ink-2);background:#fff;border:.5px solid var(--ky-line-strong);border-radius:7px;padding:4px 9px;font-size:11px;font-weight:600;line-height:1.4;cursor:pointer}
.ky-studio .vitem button:hover{background:#f7f7f9}
.ky-studio .vitem button.play{color:var(--ky-blue);border-color:rgba(0,113,227,.3)}
.ky-studio .vitem button.dl{color:var(--ky-green);border-color:rgba(31,138,91,.3)}
.ky-studio .vitem .badge{font-size:9.5px;padding:2px 7px}
.ky-project-cover img{object-fit:contain;background:#f7f7f9}
.ky-studio .grid{grid-template-columns:minmax(0,1fr)}
.ky-studio .leftcol,.ky-studio .rightcol{min-width:0}
@media(max-width:1100px){.ky-studio .grid{grid-template-columns:minmax(0,1fr)}.ky-studio .rightcol{display:flex;min-width:0}}
@media(max-width:560px){.ky-studio .card{padding:16px}.ky-studio .studio-head h1{font-size:22px}.ky-studio .primarybar .big{width:100%}}
.ky-studio .drop img{width:100%;max-width:100%;height:auto;object-fit:contain}
@media(min-width:1101px){.ky-studio .grid{grid-template-columns:minmax(0,1.03fr) minmax(380px,.97fr)}.ky-studio .rightcol{display:flex;flex-direction:column;min-width:0}}
.ky-studio .studio-actions .btn.primary.big{min-height:44px;padding:11px 20px;font-size:14px;border-radius:12px;white-space:nowrap}
.ky-studio .rightcol .progress,.ky-studio .rightcol .err{margin:0 0 14px;background:rgba(255,255,255,.86);border:.5px solid var(--ky-line);border-radius:var(--ky-radius-lg);padding:12px 14px;box-shadow:var(--ky-shadow-card)}
.ky-studio .rightcol .err{border-color:rgba(199,54,47,.18);background:var(--ky-red-soft);color:#8f231e}
.ky-studio .rightcol .progress{display:none}.ky-studio .rightcol .progress.show{display:block}
.ky-studio .rightcol .err{display:none}.ky-studio .rightcol .err.show{display:block}
@media(max-width:560px){.ky-studio .studio-head{flex-direction:column;align-items:stretch}.ky-studio .studio-actions .btn.primary.big{width:100%}}
.ky-project-cover .top-badges{position:absolute;top:10px;left:10px;display:flex;gap:6px;z-index:3}
.ky-project-cover .top-badges .ky-badge{background:rgba(255,255,255,.86);backdrop-filter:blur(10px);box-shadow:0 1px 3px rgba(0,0,0,.06)}

/* ===== KYX high-tech layer: spatial glass + precision light ===== */
:root{
  --ky-navy:#070d18; --ky-navy-2:#0d1a2c; --ky-cyan:#63d7ff; --ky-cyan-soft:rgba(99,215,255,.14);
  --ky-aurora:radial-gradient(900px 520px at 78% -8%,rgba(0,113,227,.16),transparent 60%),radial-gradient(700px 480px at 8% 8%,rgba(99,215,255,.11),transparent 60%);
  --ky-glow:0 0 0 1px rgba(99,215,255,.18),0 0 32px rgba(0,113,227,.16);
}
body.ky-body{background-color:var(--ky-bg);background-image:var(--ky-aurora),linear-gradient(180deg,#f7f9fc 0%,#f3f5f9 52%,#eef2f7 100%);background-attachment:fixed;position:relative}
body.ky-body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.5;background-image:linear-gradient(rgba(13,26,44,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(13,26,44,.035) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.12) 55%,transparent 90%)}
.ky-main,.ky-top,.ky-foot{position:relative;z-index:1}
.ky-top{background:rgba(7,13,24,.86);border-bottom:.5px solid rgba(99,215,255,.16);box-shadow:0 12px 36px rgba(4,10,20,.16);backdrop-filter:saturate(160%) blur(24px);-webkit-backdrop-filter:saturate(160%) blur(24px)}
.ky-top:after{content:"";position:absolute;left:0;right:0;bottom:-.5px;height:1px;background:linear-gradient(90deg,transparent,rgba(99,215,255,.5),rgba(0,113,227,.55),transparent);opacity:.7}
.ky-top .ky-navlink{color:rgba(236,245,255,.68)}.ky-top .ky-navlink:hover{background:rgba(255,255,255,.07);color:#fff}.ky-top .ky-navlink.active{background:rgba(99,215,255,.12);color:#d9f4ff;box-shadow:inset 0 0 0 .5px rgba(99,215,255,.25)}
.ky-top .ky-user,.ky-top .ky-username{color:rgba(236,245,255,.72)}.ky-top .ky-avatar{background:rgba(255,255,255,.1);color:#d9f4ff;box-shadow:inset 0 0 0 .5px rgba(255,255,255,.15)}
.ky-top .ky-menu>summary:hover{background:rgba(255,255,255,.07)}.ky-top .ky-menu>summary svg{color:rgba(255,255,255,.55)}
.ky-word{color:#f4f9ff;font-weight:650;letter-spacing:.08em;font-size:13px}
.ky-mark{width:31px;height:31px;border-radius:10px;background:radial-gradient(120% 120% at 30% 20%,#2c7dff,#0047a8 70%);box-shadow:0 0 0 1px rgba(99,215,255,.35),0 0 24px rgba(0,113,227,.45),inset 0 1px 0 rgba(255,255,255,.35);position:relative;overflow:hidden}
.ky-mark:after{content:"";position:absolute;inset:3px;border-radius:7px;border:.5px solid rgba(255,255,255,.22);border-bottom-color:transparent;transform:rotate(18deg)}
.ky-menu-panel{background:rgba(8,15,27,.95);border-color:rgba(99,215,255,.16);box-shadow:0 24px 70px rgba(0,0,0,.35)}
.ky-menu-panel a,.ky-menu-panel button{color:rgba(240,248,255,.88)}.ky-menu-panel a:hover,.ky-menu-panel button:hover{background:rgba(255,255,255,.08)}
.ky-pagehead{position:relative;padding:0 0 4px}
.ky-pagehead h1.ky-h1{font-size:36px;letter-spacing:-.045em;background:linear-gradient(180deg,#0d1a2c,#1d3b5c);-webkit-background-clip:text;background-clip:text;color:transparent}
.ky-eyebrow{font-family:var(--ky-mono);font-size:10.5px;letter-spacing:.18em;color:#3b6a93}
.ky-card{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.78));border-color:rgba(35,72,110,.14);box-shadow:0 0 0 .5px rgba(6,22,44,.03),0 1px 2px rgba(6,22,44,.03),0 24px 60px rgba(10,30,60,.055),inset 0 1px 0 rgba(255,255,255,.9)}
.ky-card:before{content:"";position:absolute;left:18px;right:18px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,113,227,.5),rgba(99,215,255,.7),transparent);opacity:.55;pointer-events:none}
.ky-card:hover{border-color:rgba(0,113,227,.22)}
.ky-btn.primary{background:linear-gradient(135deg,#0077ed,#0058c7);box-shadow:0 1px 1px rgba(255,255,255,.2) inset,0 8px 24px rgba(0,90,210,.22);position:relative;overflow:hidden}
.ky-btn.primary:after{content:"";position:absolute;top:0;left:-60%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-18deg);transition:left .5s var(--ky-ease)}
.ky-btn.primary:hover:after{left:130%}
.ky-btn.primary:hover{filter:brightness(1.03)}
.ky-badge.blue{background:rgba(0,113,227,.09);box-shadow:inset 0 0 0 .5px rgba(0,113,227,.14)}
.ky-project{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.82));border-color:rgba(35,72,110,.14);box-shadow:0 0 0 .5px rgba(6,22,44,.03),0 20px 50px rgba(10,30,60,.06)}
.ky-project:hover{box-shadow:0 0 0 .5px rgba(0,113,227,.14),0 28px 70px rgba(10,30,60,.12),0 0 50px rgba(0,113,227,.08)}
.ky-project-cover:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,13,24,0) 45%,rgba(7,13,24,.18));z-index:2;pointer-events:none}
.ky-project-cover:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(99,215,255,.55),transparent);z-index:3}
.ky-empty{border-color:rgba(35,72,110,.18);background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,255,255,.35));box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.ky-empty .ico{background:linear-gradient(135deg,rgba(0,113,227,.12),rgba(99,215,255,.18));box-shadow:inset 0 0 0 .5px rgba(0,113,227,.18)}
.ky-foot{font-family:var(--ky-mono);font-size:10px;letter-spacing:.06em;color:#607a93;border-top-color:rgba(35,72,110,.12)}

/* auth becomes a launch-control scene */
.ky-auth{background:#070d18;grid-template-columns:1fr 1fr}
.ky-auth-aside{background:radial-gradient(900px 600px at 20% 20%,rgba(0,113,227,.35),transparent 55%),radial-gradient(700px 500px at 85% 80%,rgba(99,215,255,.18),transparent 55%),linear-gradient(160deg,#081222,#050a12 70%);border-right:.5px solid rgba(99,215,255,.18);position:relative;overflow:hidden}
.ky-auth-aside:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(99,215,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(99,215,255,.08) 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(ellipse at 40% 40%,#000 20%,transparent 75%);pointer-events:none}
.ky-auth-aside:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(99,215,255,.16);border-radius:50%;right:-140px;bottom:-160px;box-shadow:0 0 0 70px rgba(99,215,255,.03),0 0 0 140px rgba(0,113,227,.03);pointer-events:none}
.ky-auth-aside .ky-word{color:#dff4ff}.ky-auth-aside h2{color:#f5faff;font-size:38px;letter-spacing:-.045em}.ky-auth-aside p{color:rgba(220,238,255,.66)}.ky-auth-aside .ky-auth-side-item{color:rgba(220,238,255,.82)}.ky-auth-aside .ky-auth-side-item svg{color:var(--ky-cyan)}
.ky-auth-card{background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(250,252,255,.92));border-color:rgba(99,215,255,.22);box-shadow:0 30px 100px rgba(0,0,0,.45),0 0 80px rgba(0,113,227,.12),inset 0 1px 0 #fff}
.ky-auth-card h1{font-size:30px;letter-spacing:-.045em}.ky-auth-card .ky-mark{width:34px;height:34px}
.ky-auth-foot{color:#7f93a8}

/* KYX studio instrument styling */
.ky-studio .studio-head h1{font-size:30px;letter-spacing:-.045em}
.ky-studio .mode-chip{background:rgba(0,113,227,.08);box-shadow:inset 0 0 0 .5px rgba(0,113,227,.18)}
.ky-studio .card{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.8));border-color:rgba(35,72,110,.16);box-shadow:0 0 0 .5px rgba(6,22,44,.03),0 22px 60px rgba(10,30,60,.06),inset 0 1px 0 rgba(255,255,255,.95)}
.ky-studio .preview-box{background:radial-gradient(700px 380px at 50% 0%,rgba(0,113,227,.22),transparent 60%),linear-gradient(160deg,#050a12,#0a1525 60%,#071020);box-shadow:inset 0 0 0 .5px rgba(99,215,255,.12),0 0 60px rgba(0,90,210,.08)}
.ky-studio .preview-box .empty{color:rgba(190,220,245,.68);text-align:center}
.ky-studio .preview-box .empty:before{content:"";width:54px;height:54px;border-radius:50%;border:1px solid rgba(99,215,255,.35);box-shadow:0 0 0 12px rgba(99,215,255,.04),0 0 0 24px rgba(99,215,255,.025);margin-bottom:10px;background:radial-gradient(circle at 50% 50%,rgba(99,215,255,.22),transparent 65%)}
.ky-studio .preview-box .empty svg{display:none}
.ky-studio .preview-label{background:rgba(4,10,18,.72);border:.5px solid rgba(99,215,255,.2);color:#dff4ff}
.ky-studio .status-pill.ok{background:rgba(31,138,91,.12);box-shadow:inset 0 0 0 .5px rgba(31,138,91,.2)}
.ky-studio .status-pill.run{background:rgba(0,113,227,.12);color:#0058c7;box-shadow:0 0 18px rgba(0,113,227,.14)}
.ky-studio .bar>div{background:linear-gradient(90deg,var(--ky-blue),var(--ky-cyan));box-shadow:0 0 12px rgba(99,215,255,.55)}
.ky-studio .result-actions a{background:linear-gradient(135deg,#0077ed,#0058c7);box-shadow:0 8px 20px rgba(0,90,210,.18)}
.ky-studio .vitem.active{background:linear-gradient(180deg,rgba(0,113,227,.07),rgba(99,215,255,.045));border-color:rgba(0,113,227,.35);box-shadow:0 0 24px rgba(0,113,227,.06)}
.ky-studio .dirty{background:linear-gradient(180deg,rgba(255,159,10,.12),rgba(255,159,10,.07));border-color:rgba(255,159,10,.26)}
.ky-studio .ky-section-label{color:#4b6d8a;letter-spacing:.12em;font-family:var(--ky-mono);font-size:10px}
.ky-studio .studio-kicker{font-family:var(--ky-mono);letter-spacing:.2em;color:#3b6a93;font-size:10px}

/* telemetry rail (real values only; no fake numbers) */
.ky-telemetry{display:flex;flex-wrap:wrap;gap:0;border:.5px solid rgba(35,72,110,.16);border-radius:14px;background:rgba(255,255,255,.62);backdrop-filter:blur(16px);overflow:hidden;margin:0 0 16px}
.ky-telemetry .cell{display:flex;align-items:center;gap:7px;padding:9px 13px;border-right:.5px solid rgba(35,72,110,.1);min-width:0}
.ky-telemetry .cell:last-child{border-right:0}
.ky-telemetry i{font-style:normal;font-family:var(--ky-mono);font-size:9px;letter-spacing:.12em;color:#7089a0}
.ky-telemetry b{font-family:var(--ky-mono);font-size:10.5px;font-weight:600;color:#183d5d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
.ky-telemetry .dot{width:5px;height:5px;border-radius:50%;background:var(--ky-blue);box-shadow:0 0 10px rgba(0,113,227,.7)}
.ky-studio .ky-telemetry{margin:0 0 16px}
@media(max-width:820px){.ky-auth{grid-template-columns:1fr}.ky-auth-aside{display:none}.ky-pagehead h1.ky-h1{font-size:30px}.ky-telemetry .cell{padding:8px 10px}.ky-telemetry b{max-width:110px}}
@media(prefers-reduced-motion:reduce){.ky-btn.primary:after{display:none}}
.ky-auth-card .ky-word{color:var(--ky-ink);font-size:15px;letter-spacing:.06em}
.ky-auth-aside .ky-word{color:#e8f7ff}
