*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;background:#f4f7fb;color:#1b2638}.topbar{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;background:#0b2d5c;color:#fff}.brand{font-size:22px;font-weight:800}.brand span{font-weight:500;color:#bfe4ff}.topbar nav a{color:#fff;text-decoration:none;margin-left:16px}.container{max-width:1200px;margin:24px auto;padding:0 18px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:18px}.button,button{display:inline-block;border:0;border-radius:9px;padding:10px 15px;background:#0878db;color:#fff;text-decoration:none;cursor:pointer;font-weight:700}.secondary{background:#677489}.danger{background:#c73737}.smallbtn{padding:6px 10px}.alert{padding:12px 14px;border-radius:9px;margin:0 0 16px}.ok{background:#dff7e7;color:#145d2c}.err{background:#ffe1e1;color:#8a1f1f}.search-grid,.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.search-grid{grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;padding:16px;border-radius:14px;margin-bottom:20px}.form-card{background:#fff;padding:20px;border-radius:14px;box-shadow:0 3px 16px #0000000c}.form-card label,.login-card label{display:flex;flex-direction:column;gap:6px;font-weight:700}.wide{grid-column:1/-1}input,select,textarea{width:100%;padding:10px 11px;border:1px solid #ccd5df;border-radius:8px;background:#fff}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.doc-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 2px 12px #00000010}.thumb{height:170px;display:flex;align-items:center;justify-content:center;background:#eaf1f8}.thumb img{width:100%;height:100%;object-fit:cover}.pdf-icon{font-size:44px;font-weight:900;color:#d23535}.doc-body{padding:14px}.doc-body h3{margin:6px 0}.doc-body h3 a{text-decoration:none;color:#16243a}.meta,.small{font-size:12px;color:#657188}.tags{margin-top:8px;color:#0878db}.viewer{background:#fff;border-radius:14px;padding:12px;margin-bottom:18px}.viewer iframe{width:100%;height:70vh;border:0}.viewer img{max-width:100%;display:block;margin:auto}.detail{width:100%;border-collapse:collapse;background:#fff;margin:16px 0}.detail th,.detail td{padding:11px;border-bottom:1px solid #e6ebf0;text-align:left}.detail th{width:180px;background:#f7f9fc}.login-card{max-width:420px;margin:70px auto;background:#fff;padding:28px;border-radius:16px;box-shadow:0 5px 24px #00000015}.login-card form{display:grid;gap:14px}.inline-form{display:flex;gap:8px;background:#fff;padding:14px;border-radius:12px}.empty{text-align:center;background:#fff;padding:40px;border-radius:14px;color:#6e7785}footer{text-align:center;color:#7c8795;padding:30px}@media(max-width:760px){.topbar{align-items:flex-start;flex-direction:column;gap:10px}.topbar nav a{margin:0 10px 0 0}.search-grid,.grid2{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.detail th{width:120px}.viewer iframe{height:60vh}}
.user-summary{font-size:12px;color:#d8ecff;margin-left:auto;margin-right:14px}
.info-box{background:#eaf4ff;border-left:4px solid #0878db;padding:14px 16px;border-radius:8px;margin:0 0 18px}
.user-edit-card{margin:0 0 16px}
.checkbox-label{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important}
.checkbox-label input{width:auto}
@media(max-width:900px){.user-summary{margin:0}}

.table-wrap{overflow-x:auto}.table-wrap .detail{min-width:820px}

.field-help{display:block;font-size:12px;color:#667085;margin-top:5px;line-height:1.5}

.brand{display:flex;align-items:center;gap:10px}
.brand-logo{width:42px;height:42px;object-fit:cover;border-radius:10px;box-shadow:0 2px 8px #0003}
.login-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:18px}
.login-brand img{width:70px;height:70px;object-fit:cover;border-radius:16px;box-shadow:0 4px 16px #0002}
.login-brand div{display:flex;flex-direction:column;line-height:1.1}
.login-brand strong{font-size:24px;color:#0b2d5c}
.login-brand span{font-size:14px;color:#0878db;font-weight:700;margin-top:5px}

.button-group{display:flex;gap:8px;flex-wrap:wrap}
.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.summary-card{background:#fff;border-radius:12px;padding:18px;text-align:center;box-shadow:0 2px 12px #00000010}
.summary-card strong{display:block;font-size:28px;color:#0b2d5c}
.summary-card span{display:block;font-size:12px;color:#667085;margin-top:5px}
@media(max-width:760px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.storage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}
.storage-card{background:#fff;border-radius:14px;padding:20px;box-shadow:0 2px 12px #00000010}
.storage-card h2{margin-top:0}
.storage-number{font-size:34px;font-weight:800;color:#0b2d5c}
.storage-sub{font-size:13px;color:#667085;margin:4px 0 14px}
.progress{height:12px;background:#e8edf3;border-radius:999px;overflow:hidden;margin:12px 0}
.progress-bar{height:100%;border-radius:999px}
.progress-bar.ok{background:#27a65c}
.progress-bar.warn{background:#e0a21a}
.progress-bar.danger{background:#d65a3a}
.progress-bar.critical{background:#b3261e}
.storage-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #edf0f3}
.storage-status{display:inline-block;margin-top:12px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}
.storage-status.ok{background:#dff7e7;color:#145d2c}
.storage-status.warn{background:#fff3c8;color:#7a5400}
.storage-status.danger{background:#ffe2d9;color:#8e321c}
.storage-status.critical{background:#ffd9d9;color:#811313}
@media(max-width:900px){.storage-grid{grid-template-columns:1fr}}

.breadcrumb{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;padding:12px 14px;border-radius:10px;margin-bottom:16px}
.breadcrumb a{text-decoration:none;color:#0878db;font-weight:700}
.folder-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;padding:14px 16px;border-radius:12px;margin-bottom:16px}
.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-bottom:20px}
.folder-card{display:flex;align-items:center;gap:12px;background:#fff;padding:16px;border-radius:12px;text-decoration:none;color:#1b2638;box-shadow:0 2px 10px #0000000d}
.folder-card:hover{transform:translateY(-1px)}
.folder-icon{font-size:34px}
@media(max-width:760px){.folder-toolbar{align-items:flex-start;flex-direction:column}}

.explorer-breadcrumb{margin-bottom:14px}
.explorer-section{margin-top:20px}
.explorer-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.explorer-section-title h2{margin:0 0 12px}
.explorer-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.explorer-folder-card{display:flex;align-items:center;gap:14px;background:#fff;padding:16px 18px;border-radius:14px;text-decoration:none;color:#1b2638;box-shadow:0 2px 12px #00000010;border:1px solid #eef1f5;transition:.15s ease}
.explorer-folder-card:hover{transform:translateY(-2px);box-shadow:0 5px 18px #00000018;border-color:#cfe4f8}
.explorer-folder-icon{font-size:44px;line-height:1}
.explorer-folder-info{min-width:0;flex:1}
.explorer-folder-info strong{display:block;font-size:17px;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.explorer-folder-arrow{font-size:30px;color:#8090a5}
.scope-badge{display:inline-block;padding:5px 9px;border-radius:999px;background:#dfeeff;color:#0b5daa;font-size:12px;font-weight:800}
.search-all-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;background:#f7f9fc;border:1px solid #ccd5df;border-radius:8px;padding:10px 11px;font-weight:700!important}
.search-all-check input{width:auto}
.doc-actions{margin-top:12px}
@media(max-width:760px){
  .explorer-folder-grid{grid-template-columns:1fr}
}

.form-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.form-actions button,.form-actions .button{min-width:120px;text-align:center}
@media(max-width:600px){
  .form-actions{flex-direction:column;align-items:stretch}
  .form-actions button,.form-actions .button{width:100%}
}
