.auth-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);max-width:1000px;min-height:590px;margin:18px auto;background:#fff;border:1px solid #e3e6ed;border-radius:16px;overflow:hidden;box-shadow:0 16px 50px rgba(39,48,83,.12)}
.auth-side{position:relative;overflow:hidden;padding:56px;background:linear-gradient(145deg,#0d1b3e,#173c8f 55%,#3874ff);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.auth-side:before,.auth-side:after{content:"";position:absolute;border-radius:50%;background:#ffffff12}.auth-side:before{width:300px;height:300px;right:-130px;top:-100px}.auth-side:after{width:220px;height:220px;left:-110px;bottom:-90px}.auth-side>*{position:relative;z-index:1}.auth-side h1,.auth-side h2{color:#fff}.auth-side .muted{color:#d6e2ff}
.auth-points{display:grid;gap:18px;margin:30px 0}.auth-point{display:flex;gap:13px;align-items:flex-start}.auth-point-icon{width:36px;height:36px;flex:0 0 36px;border-radius:9px;background:#ffffff18;border:1px solid #ffffff29;display:grid;place-items:center}.auth-point strong{display:block;color:#fff;margin-bottom:3px}.auth-form{padding:52px;display:flex;flex-direction:column;justify-content:center}.auth-form-inner{width:100%;max-width:390px;margin:auto}.auth-footer{font-size:12px;color:#9db5ea}
.dashboard-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.7fr);gap:20px;align-items:start}.stack{display:grid;gap:20px}.storage-bar{height:8px;background:#e9edf5;border-radius:20px;overflow:hidden;margin-top:12px}.storage-bar span{display:block;height:100%;background:linear-gradient(90deg,#3874ff,#7c4dff);border-radius:20px}.file-card{padding:0;overflow:hidden}.file-card-header{padding:22px 24px;border-bottom:1px solid #e3e6ed;display:flex;justify-content:space-between;align-items:center}.action-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.empty-state{text-align:center;padding:55px 20px;color:#6e7891}.upload-zone{border:2px dashed #cbd8f5;border-radius:10px;background:#f8faff;padding:25px;text-align:center}.sidebar form{margin:0}.sidebar button.nav-link{color:#525b75!important;cursor:pointer}.sidebar button.nav-link:hover{color:#1f5de8!important;background:#edf2ff!important}
@media(max-width:850px){.auth-shell{grid-template-columns:1fr;min-height:0;margin:0}.auth-side{padding:32px}.auth-side .auth-points{grid-template-columns:1fr 1fr}.auth-form{padding:34px 25px}.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:560px){.auth-side{padding:26px 22px}.auth-side .auth-points{grid-template-columns:1fr}.auth-form{padding:30px 20px}.dashboard-head{display:block}.auth-shell{border-radius:11px}}

/* Stable application shell: sidebar never overlaps dashboard content. */
.sidebar{width:245px;height:calc(100vh - 64px);overflow-y:auto;overflow-x:hidden}
.main-auth{margin-left:245px;width:calc(100% - 245px);min-width:0;overflow-x:hidden}
.main-auth>.wrap{width:100%;min-width:0}
.dashboard-grid,.dashboard-grid>*{min-width:0}
.file-card,.table-wrap{max-width:100%;min-width:0}
@media(max-width:1180px){.dashboard-grid{grid-template-columns:1fr}.stack{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1024px){.sidebar{display:none}.main-auth{margin-left:0;width:100%}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e3e6ed;z-index:40;justify-content:space-around;padding:8px}.wrap{padding-bottom:88px}}
@media(max-width:680px){.stack{grid-template-columns:1fr}.dashboard-head{display:block}.dashboard-head .badge{margin-top:10px}.file-card-header{padding:18px}.main-auth .wrap{padding-left:14px;padding-right:14px}}
