/* NIKRAD Stage 3 — Product Workspace Layer
 * Visual productization only: does not alter RAG/API contracts.
 */
:root{
 --nk-max:1320px;--nk-content:1120px;--nk-focus:0 0 0 3px color-mix(in srgb,var(--nk-accent) 22%,transparent);
 --nk-ease:cubic-bezier(.22,.8,.2,1);--nk-duration:.22s;
}
html{scroll-behavior:smooth}
body{min-height:100dvh;overflow-x:hidden}
body.nk-stage3{background:radial-gradient(circle at 15% -10%,color-mix(in srgb,var(--nk-accent) 7%,transparent),transparent 32%),var(--nk-bg)!important}
body.nk-stage3 :where(a,button,input,textarea,select):focus-visible{outline:none;box-shadow:var(--nk-focus)}
body.nk-stage3 .nk-header-inner{max-width:var(--nk-max)!important;margin:auto}
body.nk-stage3 .nk-brand{display:flex;align-items:center;gap:8px;text-decoration:none}
body.nk-stage3 .nk-brand span{letter-spacing:.02em}
body.nk-stage3 .nk-sidebar{width:min(390px,94vw)!important}
body.nk-stage3 .nk-side-head{background:color-mix(in srgb,var(--nk-surface) 96%,transparent);position:sticky;top:0;z-index:2}
body.nk-stage3 .nk-side-body{scrollbar-width:thin}
body.nk-stage3 .nk-nav a,.nk-nav .nk-conv{transition:background var(--nk-duration) var(--nk-ease),transform var(--nk-duration) var(--nk-ease),color var(--nk-duration) var(--nk-ease)}
body.nk-stage3 .nk-nav a:hover,.nk-nav .nk-conv:hover{transform:translateX(-2px)}
body.nk-stage3 .nk-page,
body.nk-stage3 .dashboard-page,
body.nk-stage3 .kb-page,
body.nk-stage3 .profile-page,
body.nk-stage3 .settings-page,
body.nk-stage3 .community-page,
body.nk-stage3 .bookmarks-page,
body.nk-stage3 .podcast-page,
body.nk-stage3 .admin-page{width:min(100%,var(--nk-content));margin-inline:auto}
body.nk-stage3 .nk-page{padding-top:42px!important}
body.nk-stage3 :where(.hero,.nk-hero){max-width:var(--nk-content);margin-inline:auto}
body.nk-stage3 :where(.hero h1,.nk-title,h1){letter-spacing:-.035em}
body.nk-stage3 :where(.card,.panel,.surface,.stat-card,.nk-card,.nk-stat-card){transition:transform var(--nk-duration) var(--nk-ease),box-shadow var(--nk-duration) var(--nk-ease),border-color var(--nk-duration) var(--nk-ease)}
body.nk-stage3 :where(.card,.panel,.surface,.stat-card,.nk-card,.nk-stat-card):hover{border-color:color-mix(in srgb,var(--nk-accent) 22%,var(--nk-line))!important;box-shadow:0 14px 38px rgba(0,0,0,.07)!important}
html[data-theme=dark] body.nk-stage3 :where(.card,.panel,.surface,.stat-card,.nk-card,.nk-stat-card):hover{box-shadow:0 18px 48px rgba(0,0,0,.22)!important}
/* unified page sections */
body.nk-stage3 :where(.section,.section-card,.content-card,.feature-card){border-color:var(--nk-line)!important;background:var(--nk-surface)!important;border-radius:var(--nk-radius)!important}
body.nk-stage3 :where(table){border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--nk-line);border-radius:16px;background:var(--nk-surface)}
body.nk-stage3 :where(th){background:var(--nk-surface-2);color:var(--nk-text);font-weight:700}
body.nk-stage3 :where(td,th){border-bottom:1px solid var(--nk-line);padding:11px 12px}
body.nk-stage3 :where(tr:last-child td){border-bottom:0}
/* forms */
body.nk-stage3 :where(input,textarea,select){min-height:44px;padding:10px 12px;transition:border-color var(--nk-duration),box-shadow var(--nk-duration)}
body.nk-stage3 textarea{min-height:110px}
body.nk-stage3 :where(label){color:var(--nk-text)}
/* command palette */
.nk-command-backdrop{position:fixed;inset:0;z-index:10250;background:rgba(0,0,0,.42);backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:.18s}
.nk-command-backdrop.open{opacity:1;visibility:visible}
.nk-command{position:fixed;top:9vh;left:50%;transform:translate(-50%,-10px) scale(.985);width:min(680px,calc(100vw - 24px));max-height:78dvh;overflow:auto;z-index:10260;background:var(--nk-surface);border:1px solid var(--nk-line);border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.22);opacity:0;visibility:hidden;transition:.2s var(--nk-ease)}
.nk-command.open{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1)}
.nk-command-head{display:flex;align-items:center;gap:10px;padding:14px;border-bottom:1px solid var(--nk-line);position:sticky;top:0;background:var(--nk-surface);z-index:2}
.nk-command-head input{flex:1;border:0!important;outline:0;background:transparent!important;box-shadow:none!important;color:var(--nk-text);font-size:14px;min-height:42px}
.nk-command-kbd{font:11px system-ui;color:var(--nk-muted);border:1px solid var(--nk-line);padding:4px 7px;border-radius:7px}
.nk-command-list{padding:8px}
.nk-command-item{width:100%;min-height:48px;border:0;background:transparent;color:var(--nk-text);display:flex;align-items:center;gap:10px;text-align:right;border-radius:12px;padding:9px 11px;cursor:pointer}
.nk-command-item:hover,.nk-command-item.active{background:var(--nk-surface-2)}
.nk-command-item small{margin-right:auto;color:var(--nk-muted)}
/* toast */
.nk-toast-stack{position:fixed;left:18px;bottom:18px;z-index:10300;display:grid;gap:8px;width:min(360px,calc(100vw - 36px));pointer-events:none}
.nk-toast{pointer-events:auto;padding:11px 13px;border:1px solid var(--nk-line);border-radius:13px;background:var(--nk-surface);color:var(--nk-text);box-shadow:0 14px 40px rgba(0,0,0,.12);font-size:12px;animation:nkToastIn .25s var(--nk-ease)}
@keyframes nkToastIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* top page command hint */
.nk-shortcut-hint{display:inline-flex;align-items:center;gap:7px;color:var(--nk-muted);font-size:10px;border:1px solid var(--nk-line);background:var(--nk-surface);padding:7px 9px;border-radius:10px;cursor:pointer}
.nk-shortcut-hint kbd{border:1px solid var(--nk-line);border-radius:5px;padding:1px 5px;font-size:9px}
/* mobile application chrome */
@media(max-width:760px){
 body.nk-stage3 .nk-page{padding-top:26px!important}
 .nk-command{top:3vh;max-height:88dvh;border-radius:17px}
 .nk-toast-stack{left:10px;right:10px;bottom:calc(var(--nk-bottom) + 10px);width:auto}
 .nk-shortcut-hint{display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nk-command,.nk-toast,.nk-nav a{transition:none!important;animation:none!important}}
