:root{--bg-color:#090a0f;--card-bg:#12141c;--border-color:#222634;--text-main:#f1f5f9;--text-muted:#94a3b8;--accent:#f97316;--accent-dim:rgba(249,115,22,0.15);--accent-border:rgba(249,115,22,0.35);--danger:#ef4444;--success:#22c55e}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background-color:var(--bg-color);color:var(--text-main);font-family:Inter,sans-serif;min-height:100vh;display:flex;flex-direction:column;padding:24px}a{color:inherit;text-decoration:none}button{cursor:pointer}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--card-bg)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--accent-border)}.site-wrapper{max-width:960px;width:100%;margin:0 auto;flex:1 1;display:flex;flex-direction:column}.site-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:16px;margin-bottom:0}.logo{font-family:JetBrains Mono,monospace;font-weight:700;font-size:1.25rem;letter-spacing:-.5px;color:var(--text-main)}.logo-slash{color:var(--accent)}nav{display:flex;gap:8px;flex-wrap:wrap}.nav-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-muted);font-size:.82rem;font-family:JetBrains Mono,monospace;padding:5px 13px;border-radius:4px;transition:all .18s ease}.nav-btn:hover{color:var(--text-main)}.nav-btn.active,.nav-btn:hover{border-color:var(--accent-border)}.nav-btn.active{background:var(--accent-dim);color:var(--accent)}main{flex:1 1;padding:40px 0 24px}.view-section{display:none}.view-section.active{display:block}.status-badge{display:inline-flex;align-items:center;gap:8px;background:var(--accent-dim);border:1px solid var(--accent-border);padding:4px 12px;border-radius:4px;font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--accent);margin-bottom:16px;letter-spacing:.05em}.status-dot{width:6px;height:6px;background-color:var(--accent);border-radius:50%;box-shadow:0 0 8px var(--accent);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}h1{font-size:2.4rem;font-weight:600;letter-spacing:-1px;margin-bottom:10px;font-family:JetBrains Mono,monospace}.subtitle{color:var(--text-muted);font-size:1rem;line-height:1.6;max-width:580px;margin-bottom:28px}.card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:28px;margin-top:16px;box-shadow:0 8px 24px rgba(0,0,0,.5)}.card-title{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px;display:flex;align-items:center;gap:8px}.card-title:before{content:"";display:block;width:3px;height:14px;background:var(--accent);border-radius:2px}.storage-section{gap:20px}.storage-item,.storage-section{display:flex;flex-direction:column}.storage-item{gap:8px}.storage-label{justify-content:space-between}.storage-label,.storage-name{display:flex;align-items:center}.storage-name{font-size:.85rem;color:var(--text-main);gap:8px}.storage-name,.storage-tag{font-family:JetBrains Mono,monospace}.storage-tag{font-size:.7rem;padding:2px 7px;border-radius:3px;letter-spacing:.05em}.storage-tag.r2{background:rgba(249,115,22,.1);border:1px solid var(--accent-border);color:var(--accent)}.storage-tag.blob{background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.3);color:#818cf8}.storage-numbers{font-family:JetBrains Mono,monospace;font-size:.82rem;color:var(--text-muted);white-space:nowrap}.storage-bar-track{height:8px;background:rgba(255,255,255,.05);border-radius:4px;overflow:hidden;border:1px solid var(--border-color)}.storage-bar-fill{height:100%;border-radius:4px;transition:width .6s ease;position:relative;overflow:hidden}.storage-bar-fill:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:shimmer 2.5s infinite}@keyframes shimmer{to{left:100%}}.storage-bar-fill.r2{background:linear-gradient(90deg,#f97316,#fb923c)}.storage-bar-fill.blob{background:linear-gradient(90deg,#6366f1,#818cf8)}.storage-bar-fill.warning{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.storage-bar-fill.danger{background:linear-gradient(90deg,#ef4444,#f87171)}.btn{display:inline-flex;align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:.82rem;font-weight:700;padding:8px 16px;border-radius:4px;border:1px solid;transition:all .18s;letter-spacing:.03em}.btn-primary{background:var(--accent-dim);border-color:var(--accent-border);color:var(--accent)}.btn-primary:hover{background:var(--accent);color:#fff}.btn-danger{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn-ghost{background:transparent;border-color:var(--border-color);color:var(--text-muted)}.btn-ghost:hover{border-color:var(--accent-border);color:var(--text-main)}.btn:disabled{opacity:.4;cursor:not-allowed}.input{width:100%;background:#0d0f17;border:1px solid var(--border-color);padding:10px 14px;color:var(--text-main);border-radius:4px;font-family:Inter,sans-serif;font-size:.95rem;outline:none;transition:border-color .18s}.input:focus{border-color:var(--accent-border)}.input::placeholder{color:var(--text-muted)}.file-grid{display:grid;grid-template-columns:1fr;gap:8px;margin-top:16px}.file-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:rgba(255,255,255,.02);border:1px solid var(--border-color);border-radius:6px;transition:border-color .15s}.file-row:hover{border-color:var(--accent-border)}.file-icon{font-size:1.3rem;flex-shrink:0}.file-info{flex:1 1;min-width:0}.file-name{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-main)}.file-meta,.file-name{font-family:JetBrains Mono,monospace}.file-meta{font-size:.75rem;color:var(--text-muted);margin-top:2px}.file-actions{display:flex;gap:6px;flex-shrink:0}.upload-zone{border:2px dashed var(--border-color);border-radius:8px;padding:40px;text-align:center;cursor:pointer;transition:all .2s;position:relative}.upload-zone.drag-over,.upload-zone:hover{border-color:var(--accent-border);background:var(--accent-dim)}.upload-zone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-icon{font-size:2.5rem;margin-bottom:12px;opacity:.5}.upload-text{font-family:JetBrains Mono,monospace;font-size:.9rem;color:var(--text-muted)}.upload-hint{font-size:.75rem;color:var(--text-muted);margin-top:6px;opacity:.6}.chat-messages{height:320px;overflow-y:auto;background:#0d0f17;border:1px solid var(--border-color);border-radius:6px;padding:14px;display:flex;flex-direction:column;gap:8px}.chat-msg{padding:8px 12px;background:rgba(255,255,255,.025);border-left:3px solid var(--accent);border-radius:0 4px 4px 0;font-family:JetBrains Mono,monospace;font-size:.85rem;animation:fadeIn .2s ease}.chat-msg.own{border-left-color:#6366f1}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.msg-author{font-size:.75rem;color:var(--accent);font-weight:700;margin-bottom:3px}.chat-msg.own .msg-author{color:#818cf8}.msg-time{font-size:.7rem;color:var(--text-muted);margin-left:8px;opacity:.6}.msg-text{color:var(--text-main);line-height:1.4;word-break:break-word;font-family:Inter,sans-serif;font-size:.88rem}.chat-input-row{display:flex;gap:8px;margin-top:12px}.chat-input-row .input{flex:1 1}.online-count{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--success);display:flex;align-items:center;gap:5px;margin-bottom:10px}.online-dot{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 6px var(--success)}.limits-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width:600px){.limits-grid{grid-template-columns:1fr}h1{font-size:1.8rem}nav{gap:4px}.nav-btn{font-size:.75rem;padding:4px 10px}}.limit-card{background:rgba(255,255,255,.02);border:1px solid var(--border-color);border-radius:6px;padding:18px}.limit-value{font-family:JetBrains Mono,monospace;font-size:1.5rem;font-weight:700;color:var(--accent);margin:8px 0 4px}.limit-desc{font-size:.78rem;line-height:1.5}.limit-desc,footer{color:var(--text-muted)}footer{border-top:1px solid var(--border-color);padding-top:14px;display:flex;justify-content:space-between;font-size:.75rem;font-family:JetBrains Mono,monospace}.inner-tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:1px solid var(--border-color);padding-bottom:0}.inner-tab{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.82rem;padding:6px 14px;transition:all .18s;margin-bottom:-1px}.inner-tab:hover{color:var(--text-main)}.inner-tab.active{border-bottom-color:var(--accent);color:var(--accent)}.notice{font-family:JetBrains Mono,monospace;font-size:.82rem;padding:10px 14px;border-radius:4px;margin-bottom:14px}.notice.info{background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.25);color:#a5b4fc}.notice.warning{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.25);color:#fcd34d}.notice.error{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);color:#fca5a5}.progress-text{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text-muted);text-align:right;margin-top:4px}.spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.nick-box{text-align:center;padding:32px 0}.nick-box p{font-family:JetBrains Mono,monospace;font-size:.85rem;color:var(--text-muted);margin-bottom:16px}.nick-row{gap:8px;max-width:360px;margin:0 auto}.auth-wrapper,.nick-row{display:flex;justify-content:center}.auth-wrapper{min-height:80vh;align-items:center;padding:20px}.auth-card{width:100%;max-width:420px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:32px;box-shadow:0 16px 40px rgba(0,0,0,.7)}.auth-header{text-align:center;margin-bottom:24px}.auth-title{font-family:JetBrains Mono,monospace;font-size:1.5rem;font-weight:700;letter-spacing:-.5px;margin-bottom:6px}.auth-subtitle{font-size:.82rem;color:var(--text-muted)}.auth-tabs{display:flex;background:#0d0f17;border:1px solid var(--border-color);border-radius:6px;padding:3px;margin-bottom:20px}.auth-tab-btn{flex:1 1;background:transparent;border:none;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.8rem;padding:8px;border-radius:4px;transition:all .2s}.auth-tab-btn.active{background:var(--accent-dim);color:var(--accent);font-weight:700}.auth-form{gap:14px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:6px}.form-label{font-size:.75rem;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase}.form-label,.user-profile{font-family:JetBrains Mono,monospace}.user-profile{display:flex;align-items:center;gap:12px;font-size:.8rem}.user-badge{padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:700;letter-spacing:.05em}.user-badge.admin{background:rgba(249,115,22,.15);border:1px solid var(--accent-border);color:var(--accent)}.user-badge.user{background:rgba(255,255,255,.05);border:1px solid var(--border-color);color:var(--text-muted)}.admin-table-wrapper{overflow-x:auto;margin-top:16px}.admin-table{width:100%;border-collapse:collapse;font-family:JetBrains Mono,monospace;font-size:.82rem;text-align:left}.admin-table th{background:rgba(255,255,255,.02);color:var(--text-muted);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.admin-table td,.admin-table th{padding:12px 14px;border-bottom:1px solid var(--border-color)}.admin-table td{color:var(--text-main)}.admin-table tr:hover td{background:rgba(255,255,255,.015)}