:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#1e1919;background:#fff;font-size:14px;--blue:#0061fe;--border:#e6e8eb;--muted:#637282;--soft:#f7f5f2}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;border:1px solid var(--border);border-radius:4px;background:white;color:inherit;padding:9px 13px;white-space:nowrap}button:hover,a:hover{color:var(--blue);border-color:var(--blue)}button:disabled{opacity:.55;cursor:wait}input{border:1px solid var(--border);border-radius:4px;padding:10px 12px;width:100%;background:white}input:focus{outline:2px solid #c9dcff;border-color:var(--blue)}button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}[hidden]{display:none!important}h1,h2,p{margin-top:0}h1{font-size:22px;margin-bottom:4px}h2{font-size:20px}p,small,.muted{color:var(--muted)}.primary{background:var(--blue);border-color:var(--blue);color:white}.primary:hover{background:#004ccc;color:white}.full{width:100%}.brand{display:flex;align-items:center;gap:14px}.brand p{margin:4px 0 0;font-size:13px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:4px;background:var(--blue);color:white;font-size:20px;font-weight:700;flex-shrink:0}.small{width:32px;height:32px;font-size:15px}.login-screen{min-height:100vh;display:grid;place-items:center;background:var(--soft);padding:24px}.login-panel{width:min(420px,100%);padding:32px;background:white;border:1px solid var(--border);border-radius:6px;box-shadow:0 12px 32px #0f192014}.login-panel .brand{margin-bottom:28px}label{display:block;margin:16px 0;font-weight:500}label input{display:block;margin-top:8px;font-weight:400}.error{color:#b42318;white-space:pre-wrap}.error:empty{display:none}.workspace{display:grid;grid-template-columns:232px minmax(0,1fr);height:100vh}.sidebar{background:var(--soft);padding:24px 16px;border-right:1px solid var(--border)}.sidebar .brand{margin:0 8px 28px}.nav{display:block;border:0;background:transparent;text-align:left;width:100%;margin:4px 0}.nav.active{color:var(--blue);font-weight:600}.stat{background:white;border:1px solid var(--border);padding:14px;margin-top:16px;border-radius:4px}.stat strong,.stat span{display:block}.stat strong{font-size:20px}.stat span{font-size:12px;color:var(--muted);margin-top:4px}.main-panel{padding:28px 32px;display:flex;flex-direction:column;min-width:0;min-height:0}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px}.topbar p{margin:0}.account{display:flex;gap:16px;align-items:center;text-align:right}.account small{display:block;margin-top:4px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.tools{display:flex;gap:8px;flex-wrap:wrap}.tools input{width:230px;border-radius:999px;background:var(--soft)}.refresh{background:#fbbf24;border-color:#fbbf24}#breadcrumbs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:100px}#breadcrumbs button{border:0;padding:4px;background:transparent;color:var(--muted);max-width:200px;overflow:hidden;text-overflow:ellipsis}.file-content{position:relative;border:1px solid var(--border);border-radius:6px;flex:1;overflow:auto;min-height:180px}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;color:var(--muted);font-weight:500;background:white;position:sticky;top:0;z-index:1}th,td{padding:14px 16px;border-bottom:1px solid #eef0f2}td{font-size:14px}tbody tr:hover{background:#f7faff}.file-name{display:flex;align-items:center;gap:12px;background:transparent;border:0;padding:0;text-align:left;white-space:normal;overflow-wrap:anywhere}.type-icon{display:grid;place-items:center;background:#e0eeff;color:var(--blue);width:28px;height:28px;border-radius:4px;flex-shrink:0}.type-icon.folder{background:#fff4d6;color:#b07a00}.actions{display:flex;gap:4px;justify-content:flex-end}.actions button,.actions a{padding:6px 9px;font-size:12px;border:1px solid var(--border);border-radius:4px;text-decoration:none;color:inherit;background:white}.actions .danger:hover,.danger{color:#b42318}.list-status{text-align:center;padding:14px;margin:0}.load-more{display:block;margin:8px auto 16px}.drop-overlay{position:sticky;bottom:0;padding:24px;text-align:center;background:#eaf2fff5;border-top:2px dashed var(--blue);color:var(--blue);pointer-events:none}.upload-panel{margin-top:12px;border:1px solid var(--border);border-radius:6px;padding:12px;max-height:180px;overflow:auto}.upload-item{display:grid;grid-template-columns:minmax(80px,1fr) 140px minmax(70px,1fr);align-items:center;gap:12px;margin:12px 0;font-size:12px}.upload-item span{overflow-wrap:anywhere}progress{width:100%;accent-color:var(--blue)}dialog{width:min(460px,calc(100% - 32px));border:1px solid var(--border);border-radius:8px;padding:28px;box-shadow:0 16px 40px #0003}dialog::backdrop{background:#0006}dialog footer{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.notifications{position:fixed;right:20px;bottom:20px;display:flex;flex-direction:column;gap:8px;z-index:100;max-width:min(440px,calc(100% - 40px))}.toast{background:#fff;border:1px solid var(--border);border-left:4px solid var(--blue);box-shadow:0 8px 24px #0002;padding:14px 18px;border-radius:4px;overflow-wrap:anywhere}.toast.error{border-left-color:#b42318}.session-loading{padding:40px;text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1100px){.toolbar{align-items:flex-start;flex-direction:column}.tools input{width:200px}}@media(max-width:760px){.workspace{height:auto;min-height:100vh;grid-template-columns:1fr}.sidebar{padding:16px;display:flex;flex-wrap:wrap;gap:8px;border-right:0;border-bottom:1px solid var(--border)}.sidebar .brand{margin:0 12px 0 0}.nav{width:auto}.stat{display:none}.main-panel{padding:20px 14px;min-height:75vh}.topbar{align-items:flex-start}.account{flex-direction:column;align-items:flex-end;gap:8px}.tools input{width:100%}.file-content{max-height:65vh}th,td{padding:12px 10px}th:nth-child(4),td:nth-child(4){display:none}.actions{flex-wrap:wrap}.upload-item{grid-template-columns:1fr 90px}.upload-item span:last-child{grid-column:1/-1}}
