:root{--red:#970000;--red2:#c00016}*{box-sizing:border-box}.menu-btn{display:none;border:0;background:transparent;font-size:1.6rem}.logout{color:#970000;text-decoration:none;font-weight:700}.camera-label{display:block;padding:12px;border:1px dashed #b8b8b8;border-radius:12px}.camera-label input{margin-top:8px}.upload-progress{height:10px;background:#eee;border-radius:99px;overflow:hidden;margin:12px 0}.upload-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--red),var(--red2));transition:width .2s}.offline-toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:#222;color:#fff;padding:12px 18px;border-radius:10px;z-index:99}.auth-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#600000,#b00000);padding:20px}.auth-card{width:min(440px,100%);background:white;border-radius:20px;padding:30px;box-shadow:0 20px 60px #0004}.auth-card h1{text-align:center}.auth-card p,.auth-card small{display:block;text-align:center}.auth-card form{display:grid;gap:16px}.auth-logo{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#a50000;color:white;font-size:2rem;margin:0 auto}.auth-card label{display:grid;gap:7px}.auth-card input{width:100%;padding:13px;border:1px solid #ccc;border-radius:10px}
@media(max-width:900px){body{overflow-x:hidden}.app-shell{display:block}.sidebar{position:fixed;left:-290px;top:0;bottom:0;width:280px;z-index:60;transition:left .25s}.menu-open .sidebar{left:0}.main{margin-left:0!important}.menu-btn{display:inline-block}.topbar{position:sticky;top:0;z-index:40;padding:12px 14px}.topbar>div:first-of-type p{display:none}.top-actions .status{display:none}.top-grid,.lower-grid,.action-grid{grid-template-columns:1fr!important}.quota-grid{grid-template-columns:1fr!important}.view{padding:14px}.card{padding:16px}.table-wrap{overflow:auto}.file-grid{grid-template-columns:1fr!important}.sidebar-card{margin-bottom:20px}}
@media(max-width:560px){.topbar h1{font-size:1.25rem}.top-actions{gap:8px}.top-actions .ghost{padding:8px}.action-grid{gap:12px}.priority-meta{font-size:.72rem}.total-usage{display:block}.total-meter{margin-top:12px}.filters{display:grid;gap:8px}.filters select{width:100%}table{min-width:720px}.primary{min-height:48px}.card-head{align-items:flex-start}}
