/* V34: shared responsive liquid-glass surfaces and reliable dashboard navigation */
:root{--v34-glass:rgba(255,255,255,.76);--v34-line:rgba(100,116,139,.18);--v34-shadow:0 18px 48px rgba(15,23,42,.09);--v34-radius:20px}
html,body{max-width:100%;overflow-x:clip}*,*:before,*:after{box-sizing:border-box}
.main-content{min-width:0;width:auto;max-width:100%;overflow-x:clip}
.sidebar{position:fixed!important;top:0!important;bottom:0!important;height:100vh;height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;z-index:500!important;width:260px!important;min-height:0!important;transform:none;}
.sidebar-logo{flex:0 0 auto!important;position:relative;z-index:2}
.sidebar-nav{display:block!important;flex:1 1 auto!important;min-height:0!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;padding-bottom:max(22px,env(safe-area-inset-bottom))!important;scrollbar-width:thin;scrollbar-color:rgba(100,116,139,.45) transparent}
.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(100,116,139,.38);border-radius:20px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}
/* Preserve the existing right-side navigation rail on desktop */
.sidebar{left:auto!important;right:0!important}.main-content{margin-left:0!important;margin-right:260px!important}
.sidebar-nav a{min-height:42px;display:flex;align-items:center;gap:10px;white-space:normal;line-height:1.3}
.sidebar-nav .nav-section{position:sticky;top:0;z-index:1;background:var(--sidebar-bg);padding-top:13px;padding-bottom:7px}
.sidebar-backdrop{z-index:490!important;position:fixed;inset:0;background:rgba(15,23,42,.46);backdrop-filter:blur(3px)}
.topbar,.glass-card,.stat-card,.admin-card,.tool-card,.table-card{backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2)}
.glass-card,.stat-card,.admin-card,.tool-card,.table-card{border:1px solid var(--v34-line);border-radius:var(--v34-radius);box-shadow:var(--v34-shadow)}
img,video,iframe,canvas,svg{max-width:100%}.content-area,.page-content,.main-content>*{min-width:0}
input,select,textarea,button{max-width:100%}.table-responsive,.table-wrapper{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:1024px){.sidebar{right:0!important;left:auto!important;transform:translateX(105%)!important;width:min(86vw,310px)!important;border-radius:22px 0 0 22px!important}.sidebar.open{transform:translateX(0)!important}.main-content{margin:0!important}.sidebar-nav{overscroll-behavior:contain}.topbar-menu-button{display:inline-flex!important}}
@media(min-width:1025px){.sidebar{transform:none!important}.sidebar-backdrop{display:none!important}}
@media(max-width:700px){.main-content{width:100%;margin:0!important}.topbar{padding-inline:clamp(12px,3vw,20px)}.content-area,.page-content{padding-inline:clamp(12px,3vw,20px)}.stats-grid,.grid-2col,.grid-3col,.plans-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important}.form-control{width:100%;min-width:0}.glass-card,.stat-card,.admin-card,.tool-card{border-radius:17px}}
@media(max-width:420px){.topbar-left h1{font-size:clamp(13px,4vw,17px);max-width:45vw}.topbar-right{gap:5px}.topbar-username{display:none}.content-area,.page-content{padding-inline:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* V2 refinement: viewport-safe dashboard rails and shared design tokens */
:root{--v34-font:Inter,system-ui,sans-serif;--v34-body-size:14px;--v34-heading-size:1rem;--v34-line-height:1.55;--v34-letter-spacing:0px;--v34-shadow-alpha:.10;--v34-motion-duration:220ms}
body{font-family:var(--v34-font)!important;font-size:var(--v34-body-size);line-height:var(--v34-line-height);letter-spacing:var(--v34-letter-spacing);}
h1,h2,h3,h4,.page-title,.topbar-left h1{color:var(--heading-color,var(--text-primary));}
.sidebar{height:100vh!important;height:100dvh!important;max-height:100dvh!important;min-height:0!important;overflow:hidden!important;overscroll-behavior:contain;}
.sidebar-logo{min-height:66px;}
.sidebar-nav{height:0!important;min-height:0!important;flex:1 1 0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior-y:contain!important;touch-action:pan-y!important;scrollbar-gutter:stable;}
.sidebar-nav a{overflow:visible!important;min-height:42px;}
.sidebar-nav .nav-section{background:var(--sidebar-bg);}
.main-content{min-width:0;}
.content-area{min-width:0;}
.topbar{min-width:0;gap:8px;}
.topbar-left{min-width:0;}
.topbar-right{min-width:0;flex-wrap:nowrap;}
.v34-announcement{margin:12px clamp(10px,2vw,24px);}
.glass-card,.stat-card,.admin-card,.tool-card,.table-card,.modal-content{border-radius:var(--v34-radius,20px);box-shadow:0 14px 36px rgba(15,23,42,var(--v34-shadow-alpha));}
.glass-card,.stat-card,.admin-card,.tool-card,.table-card,.topbar,.sidebar{backdrop-filter:blur(var(--v34-blur,16px)) saturate(1.18);-webkit-backdrop-filter:blur(var(--v34-blur,16px)) saturate(1.18);}
button,a,.glass-card,.stat-card,.tool-card{transition-duration:var(--v34-motion-duration);}
@media(max-width:1024px){
 .sidebar{width:min(86vw,320px)!important;right:0!important;left:auto!important;top:0!important;bottom:0!important;height:100dvh!important;transform:translate3d(105%,0,0)!important;border-radius:20px 0 0 20px!important;z-index:1100!important;}
 .sidebar.open{transform:translate3d(0,0,0)!important;}
 .sidebar-backdrop{z-index:1090!important;display:none;}
 .sidebar-backdrop.active{display:block!important;}
 .main-content{margin:0!important;width:100%!important;}
 .topbar-menu-button{display:inline-flex!important;}
 body.sidebar-drawer-open{overflow:hidden!important;}
}
@media(min-width:1025px){.sidebar{right:0!important;left:auto!important;transform:none!important}.main-content{margin-left:0!important;margin-right:260px!important}.sidebar-backdrop{display:none!important}}
@media(max-width:640px){
 .topbar{padding:10px 12px;}
 .topbar-right{gap:7px;}
 .content-area{padding:14px 12px;}
 .stats-grid,.grid-2col,.grid-3col,.plans-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr))!important;}
 .table-responsive,.table-wrapper{overflow-x:auto!important;}
 .modal,.modal-overlay,.modal-backdrop{padding:10px!important;}
 .modal-content{width:min(100%,560px)!important;max-width:100%!important;max-height:calc(100dvh - 20px)!important;overflow:auto!important;}
}
@media(prefers-reduced-motion:reduce){:root{--v34-motion-duration:0ms}}

.sidebar-close-button{display:none;width:34px;height:34px;flex:0 0 34px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:10px;background:var(--input-bg);color:var(--text-primary);cursor:pointer;margin-left:auto}
@media(max-width:1024px){.sidebar-logo{display:flex;align-items:center;gap:8px}.sidebar-close-button{display:inline-flex}}
.btn-primary{background:var(--v34-button-bg,var(--neon-green))!important;color:var(--v34-button-text,#fff)!important}
body[data-page-decoration="flat"] .glass-card,body[data-page-decoration="flat"] .stat-card,body[data-page-decoration="flat"] .admin-card,body[data-page-decoration="flat"] .tool-card{backdrop-filter:none!important;box-shadow:none!important}
body[data-page-decoration="soft"] .glass-card,body[data-page-decoration="soft"] .stat-card,body[data-page-decoration="soft"] .admin-card,body[data-page-decoration="soft"] .tool-card{backdrop-filter:none!important;box-shadow:0 8px 24px rgba(15,23,42,.07)!important}
body[data-page-decoration="gradient"] .glass-card,body[data-page-decoration="gradient"] .stat-card,body[data-page-decoration="gradient"] .admin-card,body[data-page-decoration="gradient"] .tool-card{background:linear-gradient(135deg,var(--v34-page-surface,var(--bg-card)),color-mix(in srgb,var(--v34-page-accent,var(--neon-green)) 7%,var(--v34-page-surface,var(--bg-card))))!important}
body[data-page-layout="compact"] .content-area{max-width:1120px;margin-inline:auto}
body[data-page-layout="wide"] .content-area{max-width:none;width:100%}
body[data-v34-animation="none"] *,body[data-page-animation="none"] *{animation:none!important;transition:none!important}
body[data-page-animation="float"] .glass-card,body[data-page-animation="float"] .stat-card{animation:v34Float 5s ease-in-out infinite}
@keyframes v34Float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

body .glass-card,body .stat-card,body .admin-card,body .tool-card,body .table-card{background:var(--v34-page-surface,var(--bg-card));border-color:var(--v34-page-border,var(--border));}
body .btn-primary,body .sidebar-nav a.active{--neon-green:var(--v34-page-accent,var(--neon-green));}
body[data-v34-animation="float"] .glass-card,body[data-v34-animation="float"] .stat-card{animation:v34Float 6s ease-in-out infinite}

.topbar{background:var(--v34-nav-bg,var(--topbar-bg));color:var(--v34-nav-text,var(--text-primary))}
.sidebar{color:var(--v34-sidebar-text,var(--text-primary))}
.sidebar-logo span,.sidebar-nav a{color:var(--v34-sidebar-text,var(--text-secondary))}
.sidebar-nav a.active,.sidebar-nav a:hover{color:var(--neon-green)}

/* V35 shared interaction layer */
@media(prefers-reduced-motion:no-preference){
 [data-v35-reveal]{opacity:0;transform:translate3d(0,16px,0);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1)}
 [data-v35-reveal].v35-visible{opacity:1;transform:none}
 .glass-card,.stat-card,.tool-card,.admin-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
}
@media(prefers-reduced-motion:reduce){[data-v35-reveal]{opacity:1!important;transform:none!important;transition:none!important}}
@media(max-width:760px),(hover:none){.v35-tilt{transform:none!important}}
