/* v0.10: creation first; quiet account tools at the bottom. */
:root { --nav:224px; }
.sidebar.sidebar-slim {
  display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;
  width:var(--nav);height:100dvh;min-height:0;padding:0 16px max(14px,env(safe-area-inset-bottom));
  background:#111212;color:#ededeb;border:0;box-shadow:none;z-index:60;overflow-y:auto;
  scrollbar-width:thin;scrollbar-color:#343535 transparent;
}
.sidebar-slim .sidebar-brand {min-height:90px;padding:0 12px;flex-shrink:0;}
.sidebar-slim .brand-word {font-size:30px;letter-spacing:-1.6px;color:#f9f9f6;}
.sidebar-slim .brand-word span {color:inherit;}
.sidebar-slim .primary-nav {display:grid;gap:9px;margin:4px 0 0;padding:0;}
.sidebar-slim .nav-new-cover {display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:46px;margin:0;padding:12px 15px;border:1px solid #e9e9e5;border-radius:8px;background:#f0f0eb;color:#191a19;font-size:13px;font-weight:650;letter-spacing:-.02em;box-shadow:none;}
.sidebar-slim .nav-new-cover:hover {background:#fff;border-color:#fff;}
.sidebar-slim .nav-link {min-height:44px;margin:0;padding:11px 15px;gap:10px;color:#a3a6a4;border-radius:7px;font-size:13px;font-weight:500;}
.sidebar-slim .nav-link.active {background:#262827;color:#f3f3ef;}
.sidebar-slim .nav-link:hover {background:#292b2a;color:#fff;}
.sidebar-slim .nav-link svg {stroke-width:1.6;}
.sidebar-slim :is(a,button):focus-visible {outline:2px solid #dbddcf;outline-offset:3px;}
.sidebar-account {margin-top:auto;padding-top:60px;flex-shrink:0;}
.profile-anchor {position:relative;}
.profile-trigger {display:flex;align-items:center;gap:10px;width:100%;min-height:54px;border:0;padding:8px 9px;background:transparent;border-radius:7px;color:#efefea;text-align:left;}
.profile-trigger:hover,.profile-trigger[aria-expanded=true] {background:#252725;}
.sidebar-avatar {display:flex;align-items:center;justify-content:center;flex:none;width:31px;height:31px;border-radius:50%;background:#2b2e2c;color:#d7dbd6;font-size:12px;font-weight:550;}
.profile-identity {display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;}
.profile-name {font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.profile-chevron {display:flex;align-items:center;color:#8d9389;}
.profile-trigger[aria-expanded=true] .profile-chevron {transform:rotate(180deg);}
.profile-menu {position:absolute;z-index:70;bottom:calc(100% + 8px);left:0;right:0;padding:6px;background:#242624;border:1px solid #3c403b;border-radius:10px;box-shadow:0 10px 36px #0004;max-height:calc(100dvh - 160px);overflow-y:auto;}
.profile-menu[hidden] {display:none!important;}
.profile-menu [role=menuitem] {display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:40px;width:100%;border:0;background:none;color:#d8dbd5;border-radius:5px;padding:10px;font-size:12px;text-align:left;text-decoration:none;line-height:1.4;}
.profile-menu [role=menuitem]:is(:hover,:focus-visible) {color:#fff;background:#343833;outline:none;}
.profile-menu [role=menuitem] svg {color:#a2aa9d;flex:none;}
.profile-menu-divider {height:1px;background:#3b3f39;margin:5px 6px;}
.sidebar-slim .menu-top-close {display:none;color:#a9aea5;}
.upgrade-comparison {display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin:22px 0;}
.upgrade-comparison>div {border:1px solid #e3e5df;border-radius:9px;padding:18px 14px;min-width:0;}
.upgrade-comparison span {display:block;font-size:11px;color:#868b7e;margin-bottom:9px;}
.upgrade-comparison strong {display:block;font-size:20px;font-weight:600;}
.upgrade-comparison p {font-size:11px;margin:7px 0 0;color:#696e62;}
.upgrade-comparison .upgrade-destination {background:#f4f6ef;border-color:#b3bca6;}
@media(min-width:701px) and (max-width:1100px) {
 :root {--nav:208px;}
 .sidebar.sidebar-slim {padding-right:12px;padding-left:12px;}
}
@media(max-width:700px) {
 :root {--nav:0px;}
 .sidebar.sidebar-slim {width:260px;max-width:calc(100vw - 48px);padding:env(safe-area-inset-top,0px) 16px max(14px,env(safe-area-inset-bottom));visibility:hidden;transform:translateX(-100%);}
 .nav-open .sidebar.sidebar-slim {visibility:visible;transform:translateX(0);}
 .sidebar-slim .sidebar-brand {min-height:76px;}
 .sidebar-slim .menu-top-close {display:flex;min-width:36px;min-height:40px;}
 .sidebar-slim .nav-new-cover,.sidebar-slim .nav-link {min-height:46px;font-size:14px;}
 .profile-trigger {min-height:58px;}
 .profile-name {font-size:13px;}
 .profile-menu [role=menuitem] {min-height:44px;font-size:13px;}

 .upgrade-comparison {gap:8px;}
 .upgrade-comparison>div {padding:14px 10px;}
}
@media(max-height:520px) {
 .sidebar-account {padding-top:20px;}
 .sidebar-slim .sidebar-brand {min-height:60px;}
 .profile-menu {bottom:calc(100% + 4px);}
}
@media(prefers-reduced-motion:reduce) { .sidebar-slim,.sidebar-slim .sidebar-brand,.profile-chevron,.app-shell>.content {transition:none!important;} }

/* Preserve the local app-shell boundary used by the authentication guard. */
.app-shell{--nav:224px;min-height:100dvh;background:#111212}
.app-shell>.content{margin-left:var(--nav);min-height:100dvh;background:#fff;border-radius:0;overflow:clip}
.sidebar-slim .sidebar-brand{display:flex;align-items:center;justify-content:space-between;padding-top:env(safe-area-inset-top,0px)}
.sidebar-slim .brand{padding:0}
.sidebar-slim .nav-link{display:flex;align-items:center}
.sidebar-slim .nav-link.active:before{display:none}
.menu-backdrop{display:none}
@media(min-width:701px) and (max-width:1100px){.app-shell{--nav:208px}}
@media(max-width:700px){
 .app-shell{--nav:0px}.app-shell>.content{margin-left:0}
 .nav-open{overflow:hidden}
 .nav-open .menu-backdrop{display:block;position:fixed;inset:0;z-index:50;background:#0005}
 .sidebar-slim .menu-top-close{position:static}
 .sidebar-slim .sidebar-brand{padding-top:0}
 .pagebar,.editor-bar{padding-top:env(safe-area-inset-top,0px)}
}

/* Restore the desktop icon rail without changing the mobile drawer. */
.sidebar-slim .brand-mark {display:none;font:700 30px/1 Georgia,serif;}
.sidebar-slim .sidebar-toggle {color:#a3a6a4;width:32px;min-height:36px;flex-shrink:0;}
.sidebar-slim .sidebar-toggle:hover {background:#262827;color:#fff;}
.sidebar-slim .sidebar-toggle:focus-visible {outline:none;}
@media(min-width:701px) {
 .sidebar.sidebar-slim {transition:width .22s ease,padding-left .22s ease,padding-right .22s ease;}
 .app-shell>.content {transition:margin-left .22s ease;}
 /* Keep intrinsic label/icon sizes stable while the rail width interpolates. */
 .sidebar-slim :is(.brand,.nav-new-cover,.nav-link,.profile-trigger) {overflow:hidden;}
 .sidebar-slim :is(.brand-word,.primary-nav span) {white-space:nowrap;}
 .sidebar-slim .brand {min-width:0;}
 .sidebar-slim .sidebar-brand {transition:padding-left .22s ease,padding-right .22s ease;}
 .sidebar-slim :is(.primary-nav,.profile-trigger) svg {flex-shrink:0;}
 .sidebar-slim .primary-nav span {flex-shrink:0;}
 .sidebar-slim .profile-chevron {flex-shrink:0;}
 body:not(.sidebar-folded) .sidebar-slim :is(.brand,.primary-nav span,.profile-identity,.profile-chevron) {animation:sidebar-label-reveal .22s ease both;}
 .sidebar-folded .app-shell {--nav:60px;}
 .sidebar-folded .sidebar.sidebar-slim {padding-left:8px;padding-right:8px;}
 .sidebar-folded .sidebar-brand {flex-direction:column;justify-content:center;gap:8px;padding-left:0;padding-right:0;}
 .sidebar-folded .sidebar-brand .brand {display:none;}
 .sidebar-folded .brand-word,.sidebar-folded .primary-nav :is(a,button)>span,
 .sidebar-folded .profile-identity,
 .sidebar-folded .profile-chevron {display:none;}
 .sidebar-folded .nav-new-cover,.sidebar-folded .nav-link {justify-content:center;padding:12px 0;}
 .sidebar-folded .profile-trigger {justify-content:center;padding:8px 0;}
 .sidebar-folded .profile-menu {position:fixed;left:64px;right:auto;bottom:max(14px,env(safe-area-inset-bottom));width:208px;}
}
@media(max-width:700px) {.sidebar-slim .sidebar-toggle {display:none;}}

@keyframes sidebar-label-reveal {0%,65% {opacity:0;}100% {opacity:1;}}
@media(prefers-reduced-motion:reduce) {
 body:not(.sidebar-folded) .sidebar-slim :is(.brand,.primary-nav span,.profile-identity,.profile-chevron) {animation:none;}
}

/* Usage stays in the workspace; subscription details live in the account menu. */
.profile-menu-summary {display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:10px 10px 12px;margin-bottom:4px;border-bottom:1px solid #3b3f39;color:#a6aba5;font-size:11px;}
.profile-menu-summary strong {margin-left:auto;color:#e5e8e2;font-size:11px;font-weight:500;}
.profile-menu-summary small {flex-basis:100%;font-size:10px;line-height:1.5;}
/* Account identity above a single credit and upgrade card. */
.profile-identity {flex-direction:column;align-items:flex-start;gap:3px;}
.profile-name {max-width:100%;font-size:12px;font-weight:550;}
.profile-plan {font-size:10px;line-height:1.4;padding:0;border:0;background:none;color:#939a93;}
.sidebar-wallet {display:flex;align-items:center;gap:10px;margin-top:8px;padding:8px;border:1px solid #2c2e2c;border-radius:12px;background:#1b1d1b;min-height:52px;}
.sidebar-credits {display:flex;align-items:center;gap:3px;flex:1;min-width:0;min-height:34px;color:#a2aaa1;text-decoration:none;font-size:11px;white-space:nowrap;}
.sidebar-credits>svg {margin-right:3px;flex:none;color:#899288;}
.sidebar-credits strong {font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;color:#f1f3ee;}
.sidebar-upgrade {position:relative;display:flex;align-items:center;justify-content:center;gap:6px;flex:none;min-height:34px;padding:7px 8px;border:0;border-radius:8px;background:#2a2d29;color:#e1e6dc;font-size:10px;text-decoration:none;white-space:nowrap;}
.sidebar-upgrade:before {content:"";position:absolute;left:-6px;top:8px;bottom:8px;width:1px;background:#383c35;}
.sidebar-upgrade:hover {background:#363b32;color:#fff;}
@media(min-width:701px){.sidebar-folded .sidebar-wallet{justify-content:center;margin-top:3px;padding:0;border:0;background:none;min-height:30px;}.sidebar-folded .sidebar-upgrade,.sidebar-folded .sidebar-credits>svg{display:none;}.sidebar-folded .sidebar-credits{justify-content:center;max-width:44px;overflow:hidden;}.sidebar-folded .sidebar-credits strong{font-size:10px;}}
@media(max-width:700px){.sidebar-wallet{padding:9px;}.sidebar-credits,.sidebar-upgrade{min-height:40px;}.sidebar-upgrade{font-size:11px;padding-inline:12px;}.profile-name{font-size:13px;}.profile-plan{font-size:11px;}}
