@import "https://cdn.jsdelivr.net/fontsource/fonts/inter@latest/latin-400-normal.css";@import "https://cdn.jsdelivr.net/fontsource/fonts/inter@latest/latin-500-normal.css";@import "https://cdn.jsdelivr.net/fontsource/fonts/inter@latest/latin-600-normal.css";@import "https://cdn.jsdelivr.net/fontsource/fonts/inter@latest/latin-700-normal.css";html,body{margin:0;padding:0;overflow-x:hidden}.dashboard-explorer{--cb-bg:#f2f4f9;--cb-surface:#fff;--cb-surface2:#f6f7fb;--cb-border:#e5e8f0;--cb-text:#161c2e;--cb-muted:#69728c;--cb-accent:#5457e6;--cb-accent2:#8a54f0;--cb-accent-soft:#5457e61a;--cb-sidebar:#fff;--cb-sidebar-border:#e9ebf3;--cb-hover:#f1f3fa;--cb-track:#e9ebf3;--cb-shadow:0 1px 2px #141a2b0f;--cb-shadow-lg:0 14px 34px -14px #141a2b38;--cb-danger:#e5484d}html.dark .dashboard-explorer,html.dark-mode .dashboard-explorer,body.dark .dashboard-explorer,body.dark-mode .dashboard-explorer,html[data-theme=dark] .dashboard-explorer,html[data-mode=dark] .dashboard-explorer,html[data-bs-theme=dark] .dashboard-explorer,.dashboard-explorer[data-theme=dark]{--cb-bg:#131315;--cb-surface:#1b1b1e;--cb-surface2:#232327;--cb-border:#2d2d33;--cb-text:#f2f2f4;--cb-muted:#9a9aa4;--cb-accent:#4f7dff;--cb-accent2:#38bdf8;--cb-accent-soft:#4f7dff29;--cb-sidebar:#17171a;--cb-sidebar-border:#26262c;--cb-hover:#232327;--cb-track:#2a2a30;--cb-shadow:0 1px 2px #0006;--cb-shadow-lg:0 18px 44px -16px #0009;--cb-danger:#f2555a}.dashboard-explorer,.dashboard-explorer *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}.dashboard-explorer{background:var(--cb-bg);width:100vw;max-width:none;height:100%;min-height:100dvh;color:var(--cb-text);flex:1;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.45;display:flex}.dashboard-explorer h1,.dashboard-explorer h2,.dashboard-explorer h3,.dashboard-explorer p{margin:0}.dashboard-explorer button{font:inherit;color:inherit}.dashboard-explorer button:focus:not(:focus-visible),.dashboard-explorer a:focus:not(:focus-visible){outline:none}.cb-sidebar{background:var(--cb-sidebar);border-right:1px solid var(--cb-sidebar-border);scrollbar-width:thin;z-index:50;flex-direction:column;flex:0 0 260px;width:260px;height:100dvh;display:flex;position:sticky;top:0;overflow-y:auto}.cb-logo{align-items:center;gap:11px;padding:20px 18px 16px;display:flex}.cb-logo-icon{color:#fff;background:linear-gradient(135deg,var(--cb-accent),var(--cb-accent2));width:42px;height:42px;box-shadow:0 6px 16px -6px var(--cb-accent);border-radius:12px;flex:0 0 42px;justify-content:center;align-items:center;font-size:20px;display:flex}.cb-logo-text{flex-direction:column;min-width:0;display:flex}.cb-logo-title{letter-spacing:-.01em;font-size:16px;font-weight:700}.cb-logo-sub{color:var(--cb-muted);font-size:11px}.cb-sidebar-close{width:30px;height:30px;color:var(--cb-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;margin-left:auto;font-size:20px;display:none}.cb-sidebar-close:hover{background:var(--cb-hover);color:var(--cb-text)}.cb-nav{flex-direction:column;gap:2px;padding:6px 14px 14px;display:flex}.cb-nav-section{letter-spacing:.09em;text-transform:uppercase;color:var(--cb-muted);padding:12px 10px 6px;font-size:10.5px;font-weight:700}.cb-nav-section.spaced{margin-top:8px}.cb-nav-item{width:100%;color:var(--cb-text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:11px;padding:9px 11px;font-size:13.5px;font-weight:500;transition:background .15s;display:flex}@media (hover:hover) and (pointer:fine){.cb-nav-item:hover:not(:disabled){background:var(--cb-hover)}}.cb-nav-item:disabled{opacity:.42;cursor:default}.cb-nav-item.active{background:var(--cb-accent-soft);color:var(--cb-accent);font-weight:600}.cb-nav-icon{text-align:center;flex:0 0 20px;width:20px;font-size:15px}.cb-nav-badge{text-align:center;background:var(--cb-surface2);border:1px solid var(--cb-border);min-width:22px;color:var(--cb-muted);border-radius:999px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:600}.cb-nav-item.active .cb-nav-badge{border-color:var(--cb-accent);color:var(--cb-accent);background:0 0}.cb-storage{border-top:1px solid var(--cb-sidebar-border);margin-top:auto;padding:16px 18px 18px}.cb-storage-box{background:var(--cb-surface2);border:1px solid var(--cb-border);border-radius:14px;padding:13px 14px}.cb-storage-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:9px;display:flex}.cb-storage-head span{color:var(--cb-muted);font-size:12px;font-weight:600}.cb-storage-head strong{font-size:12.5px;font-weight:700}.cb-storage-bar{background:var(--cb-track);border-radius:999px;height:8px;overflow:hidden}.cb-storage-fill{background:linear-gradient(90deg,var(--cb-accent),var(--cb-accent2));border-radius:999px;height:100%;transition:width .5s}.cb-storage-caption{color:var(--cb-muted);margin-top:8px;font-size:11px}.cb-main{flex-direction:column;flex:auto;width:100%;min-width:0;display:flex}.cb-topbar{z-index:30;background:var(--cb-bg);border-bottom:1px solid var(--cb-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:10px 26px;display:flex;position:sticky;top:0}.cb-left-section{align-items:center;gap:1px;display:flex}.cb-ham{border:1px solid var(--cb-border);background:var(--cb-surface);width:38px;height:38px;color:var(--cb-text);cursor:pointer;border-radius:10px;flex:0 0 38px;font-size:16px;display:none}.cb-search{flex:1;min-width:200px;max-width:560px;position:relative}.cb-search input,.cb-search input[type=text],.cb-search input[type=text]{border:1px solid var(--cb-border);background:var(--cb-surface);width:100%;color:var(--cb-text);font:inherit;border-radius:12px;outline:none;padding:10px 14px;font-size:13.5px;transition:border-color .15s,box-shadow .15s}.cb-search input::placeholder{color:var(--cb-muted)}.cb-search input:focus{border-color:var(--cb-accent);box-shadow:0 0 0 3px var(--cb-accent-soft)}.cb-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.cb-toolbar-2{flex-wrap:wrap;align-items:center;gap:10px;margin-right:auto;display:flex}.cb-toolbar button{cursor:pointer;border:1px solid var(--cb-border);background:var(--cb-surface);color:var(--cb-text);border-radius:11px;padding:9px 15px;font-size:13px;font-weight:600}.cb-toolbar>form:first-child button{background:linear-gradient(135deg,var(--cb-accent),var(--cb-accent2));color:#fff;box-shadow:0 8px 18px -8px var(--cb-accent);border:none}.cb-pathbar{align-items:center;gap:12px;padding:10px 26px 4px;display:flex}.cb-back{border:1px solid var(--cb-border);background:var(--cb-surface);width:34px;height:34px;color:var(--cb-text);cursor:pointer;box-shadow:var(--cb-shadow);border-radius:10px;flex:0 0 34px;justify-content:center;align-items:center;font-size:15px;display:flex}.cb-back:disabled{opacity:.4;cursor:default}.cb-crumbs{flex-wrap:wrap;align-items:center;gap:2px;min-width:0;display:flex}.cb-crumbs button{color:var(--cb-muted);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;border-radius:8px;max-width:200px;padding:5px 8px;font-size:13px;overflow:hidden}@media (hover:hover) and (pointer:fine){.cb-crumbs button:hover{background:var(--cb-hover);color:var(--cb-text)}}.cb-crumbs button.current{color:var(--cb-accent);font-weight:650}.cb-crumbs span.current{color:var(--cb-accent);padding:5px 8px;font-size:13px;font-weight:650}.cb-chev{color:var(--cb-muted);opacity:.7;padding:0 1px}.cb-content{flex:1;width:100%;min-width:0;padding:10px 26px 48px}.cb-page-head{margin:2px 0 20px}.cb-page-head h1{letter-spacing:-.02em;word-break:break-word;font-size:21px;font-weight:700}.cb-page-head p{color:var(--cb-muted);margin-top:3px;font-size:12.5px}.cb-grid{grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:14px;display:grid}@keyframes cb-fadein{0%{opacity:0}to{opacity:1}}.cb-card{background:var(--cb-surface);border:1px solid var(--cb-border);box-shadow:var(--cb-shadow);-webkit-user-select:none;user-select:none;touch-action:manipulation;border-radius:15px;padding:20px 14px 16px;animation:.35s backwards cb-fadein;position:relative}.dashboard-explorer .cb-card,.dashboard-explorer .cb-card:hover,.dashboard-explorer .cb-card:focus,.dashboard-explorer .cb-card:focus-within,.dashboard-explorer .cb-card:active{background:var(--cb-surface)!important;border-color:var(--cb-border)!important;box-shadow:var(--cb-shadow)!important;filter:none!important;transform:none!important}.dashboard-explorer .cb-card-main,.dashboard-explorer .cb-card-main:hover,.dashboard-explorer .cb-card-main:focus,.dashboard-explorer .cb-card-main:active{color:inherit!important;background:0 0!important;outline:none!important}.dashboard-explorer .cb-card-main:focus-visible{outline-offset:4px;outline:2px solid var(--cb-accent)!important}.dashboard-explorer .cb-card .cb-folder-ico,.dashboard-explorer .cb-card .cb-file-ico,.dashboard-explorer .cb-card .cb-item-name,.dashboard-explorer .cb-card .cb-item-meta,.dashboard-explorer .cb-card .cb-item-expiry{filter:none!important}.cb-card.amber{--fc:#f59e0b;--fc-soft:#f59e0b24}.cb-card.blue{--fc:#3b82f6;--fc-soft:#3b82f624}.cb-card.green{--fc:#10b981;--fc-soft:#10b98124}.cb-card.rose{--fc:#f43f5e;--fc-soft:#f43f5e24}.cb-card.violet{--fc:#8b5cf6;--fc-soft:#8b5cf624}.cb-card.img{--fc:#059669;--fc-soft:#05966924}.cb-card.pdf{--fc:#ef4444;--fc-soft:#ef444424}.cb-card.doc{--fc:#3b82f6;--fc-soft:#3b82f624}.cb-card.zip{--fc:#f59e0b;--fc-soft:#f59e0b24}.cb-card.video{--fc:#8b5cf6;--fc-soft:#8b5cf624}.cb-card.code{--fc:#06b6d4;--fc-soft:#06b6d424}.cb-card-main{cursor:pointer;text-align:center;background:0 0;border:none;flex-direction:column;align-items:center;gap:0;width:100%;padding:0;display:flex}.cb-folder-ico{pointer-events:none;width:54px;height:42px;margin:2px 0 13px;position:relative}.cb-folder-ico .tab{background:var(--fc);opacity:.8;border-radius:5px 7px 0 0;width:23px;height:13px;position:absolute;top:0;left:3px}.cb-folder-ico .body{background:var(--fc);border-radius:7px;position:absolute;inset:8px 0 0;overflow:hidden}.cb-folder-ico .body:after{content:"";background:#ffffff38;position:absolute;inset:0 0 55%}.cb-file-ico{background:var(--fc-soft);width:50px;height:50px;color:var(--fc);pointer-events:none;border-radius:13px;justify-content:center;align-items:center;margin:0 0 13px;font-size:23px;display:flex}.cb-item-name{word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:19px;font-size:13.5px;font-weight:600;display:-webkit-box;overflow:hidden}.cb-item-meta{color:var(--cb-muted);margin-top:4px;font-size:11.5px}.cb-item-expiry{background:var(--fc-soft);color:var(--fc);border-radius:999px;margin-top:8px;padding:3px 9px;font-size:10.5px;font-weight:600}.cb-actions{z-index:2;opacity:0;gap:4px;transition:opacity .16s,transform .16s;display:flex;position:absolute;top:8px;right:8px;transform:translateY(-4px)}@media (hover:hover) and (pointer:fine){.cb-card:hover .cb-actions{opacity:1;transform:none}}.cb-card:focus-within .cb-actions{opacity:1;transform:none}.cb-actions button,.cb-actions a{cursor:pointer;border:1px solid var(--cb-border);background:var(--cb-surface);width:27px;height:27px;color:var(--cb-muted);border-radius:8px;justify-content:center;align-items:center;font-size:12.5px;text-decoration:none;transition:background .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s;display:flex}@media (hover:hover) and (pointer:fine){.cb-actions button:hover,.cb-actions a:hover{background:var(--cb-hover);color:var(--cb-accent);border-color:var(--cb-accent);transform:translateY(-1px);box-shadow:0 3px 8px #00000014}.cb-actions button:active,.cb-actions a:active{box-shadow:none;transform:translateY(0)}.cb-actions button.delete:hover{color:var(--cb-danger);border-color:var(--cb-danger);background:#e5484d1a}}@media (hover:none),(pointer:coarse){.cb-actions{opacity:1;transform:none}}.cb-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:70px 20px;display:flex}.cb-empty-ico{background:var(--cb-surface);border:1px dashed var(--cb-border);width:76px;height:76px;color:var(--cb-muted);border-radius:22px;justify-content:center;align-items:center;margin-bottom:16px;font-size:32px;display:flex}.cb-empty h3{font-size:16px;font-weight:700}.cb-empty p{color:var(--cb-muted);max-width:320px;margin-top:5px;font-size:13px}@keyframes cb-spin{to{transform:rotate(360deg)}}.cb-spinner{border:3px solid var(--cb-track);border-top-color:var(--cb-accent);border-radius:50%;width:36px;height:36px;margin-bottom:16px;animation:.8s linear infinite cb-spin}.cb-overlay{z-index:45;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080a1280;animation:.2s cb-fade;position:fixed;inset:0}@keyframes cb-fade{0%{opacity:0}to{opacity:1}}@media (width<=960px){.cb-sidebar{height:auto;box-shadow:var(--cb-shadow-lg);transition:transform .26s;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%)}.cb-sidebar.sidebar-open{transform:translate(0)}.cb-sidebar-close,.cb-ham{justify-content:center;align-items:center;display:flex}.cb-topbar{padding:12px 16px}.cb-pathbar{padding:12px 16px 2px}.cb-content{padding:12px 16px 40px}.cb-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:11px}}:root,[data-theme=light]{--bg:#f5f6fa;--card:#fff;--border:#e1e4e8;--text:#1f2430;--muted:#6b7280;--accent:#3b6fed;--accent-dark:#2c56c4;--danger:#e5484d;--success:#22a35c}[data-theme=dark]{--bg:#14161c;--card:#1d2029;--border:#2b2f3a;--text:#eef0f5;--muted:#9aa1b1;--accent:#5b8cff;--accent-dark:#7ba0ff;--danger:#ff6b6f;--success:#33c17a}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background .2s,color .2s}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--card);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 45px;display:flex}.brand{color:var(--text);font-size:1.1rem;font-weight:700;text-decoration:none}.topbar nav{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.topbar nav a{color:var(--accent);text-decoration:none}.who{color:var(--muted);font-size:.9rem}.badge{background:var(--accent);color:#fff;border-radius:10px;margin-left:6px;padding:2px 6px;font-size:.7rem}.theme-toggle{border:1px solid var(--border);background:0 0;border-radius:8px;padding:6px 10px;font-size:1rem}.theme-toggle:hover{background:var(--bg)}main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:24px}.footer{border-top:1px solid var(--border);background:var(--card);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:20px;padding:8px 45px;font-size:.8rem;display:flex}.footer-left,.footer-right{min-width:200px}.footer-right{text-align:right}.footer p{margin:2px 0}.footer-brand{color:var(--text);margin-bottom:4px;font-weight:700}.footer a{color:var(--accent);text-decoration:none}.footer a:hover{text-decoration:underline}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-bottom:8px;display:flex}.terms-page{max-width:640px;margin:0 auto}.terms-page .legal-box{background:0 0;border:none;max-height:none;margin-top:12px;padding:0;overflow:visible}.profile{flex-direction:column;gap:20px;max-width:480px;margin:0 auto;display:flex}.profile-details{grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:.9rem;display:grid}.profile-details dt{color:var(--muted)}.profile-details dd{margin:0}.password-form{flex-direction:column;gap:12px;margin-top:8px;display:flex}.password-form label{color:var(--muted);flex-direction:column;gap:6px;font-size:.9rem;display:flex}.password-form input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;padding:10px 12px;font-size:1rem}.centered{text-align:center;color:var(--muted);padding:40px 0}.meta{color:var(--muted);font-size:.85rem}.home{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:32px;display:flex}.hero{max-width:480px}.hero h1{margin-bottom:4px;font-size:2rem}.tagline{color:var(--text);line-height:1.5}.how-it-works ol{padding-left:20px;line-height:1.8}.legal-box{background:var(--card);border:1px solid var(--border);border-radius:10px;max-height:280px;margin-top:16px;padding:16px 18px;overflow-y:auto}.legal-box h3{margin-top:0}.legal-box h3:not(:first-child){margin-top:16px}.legal-box p,.legal-box ul{color:var(--muted);font-size:.85rem}.legal-box ul{padding-left:20px}.guest-notice{background:var(--bg);border:1px dashed var(--border);border-radius:10px;margin-top:16px;padding:12px}.guest-notice p{margin:4px 0}.guest-notice code{background:var(--card);border-radius:4px;padding:2px 6px}.guest-notice button{width:100%;margin-top:8px}.auth-card{background:var(--card);border:1px solid var(--border);border-radius:12px;width:100%;max-width:380px;padding:28px}.auth-card.register-card{max-width:460px}.auth-card h1,.auth-card h2{margin-top:0;font-size:1.3rem}.auth-card form{flex-direction:column;gap:12px;display:flex}.auth-card label{color:var(--muted);flex-direction:column;gap:6px;font-size:.9rem;display:flex}.checkbox-row{align-items:center;flex-direction:row!important;gap:8px!important}.agreement-row{font-size:.85rem;line-height:1.4}.auth-card input:not([type=checkbox]){border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;padding:10px 12px;font-size:1rem}.password-rules{color:var(--muted);margin:-4px 0 4px;font-size:.78rem}.form-links{text-align:right;font-size:.85rem}.form-links a{color:var(--accent)}.dev-box{background:var(--bg);border:1px dashed var(--border);word-break:break-all;border-radius:8px;margin:10px 0;padding:10px;font-size:.85rem}input,button,select{font-family:inherit}button{cursor:pointer;background:var(--accent);color:#fff;border:none;border-radius:8px;padding:10px 16px;font-size:.95rem}button:hover{background:var(--accent-dark)}button:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--bg);color:var(--text);border:1px solid var(--border);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.btn-secondary:hover{background:var(--border)}.btn-danger{background:var(--danger)}.btn-danger:hover{filter:brightness(.9)}.link-btn{color:var(--accent);font-size:inherit;background:0 0;border:none;padding:0}.link-btn:hover{background:0 0;text-decoration:underline}.link-btn.small{align-self:flex-start;margin-bottom:-4px;font-size:.8rem}.error{color:var(--danger);font-size:.9rem}.dashboard-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.breadcrumbs{color:var(--muted)}.storage-line{margin:4px 0 16px}.search-bar{gap:6px;display:flex}.search-bar input{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:8px;min-width:200px;padding:8px 12px}.toolbar{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;gap:20px;margin-bottom:20px;padding:16px;display:flex}.upload-zone{border:2px dashed #0000;border-radius:10px;flex:1;min-width:260px;padding:6px;transition:border-color .15s,background .15s}.upload-zone.drag-active{border-color:var(--accent);background:var(--bg)}.upload-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dropzone-hint{color:var(--muted);margin:6px 0 0;font-size:.8rem}.expiry-select{color:var(--muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.expiry-select select{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:6px;padding:6px 8px}.upload-queue{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.upload-queue li{align-items:center;gap:8px;font-size:.8rem;display:flex}.q-name{text-overflow:ellipsis;white-space:nowrap;flex:0 0 120px;overflow:hidden}.q-status{flex:0 0 30px}.new-folder-form{align-items:center;gap:8px;display:flex}.new-folder-form input{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:8px;padding:8px 10px}.progress-bar{background:var(--border);border-radius:4px;width:160px;height:6px;overflow:hidden}.progress-bar.small{flex:1;width:80px;height:5px}.progress-fill{background:var(--accent);height:100%;transition:width .2s}.progress-fill.error{background:var(--danger)}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}.empty{color:var(--muted);grid-column:1/-1}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:2px;padding:4px;display:flex}.card-main{color:var(--text);text-align:center;background:0 0;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:16px 8px 8px;text-decoration:none;display:flex}.card-main:hover{background:var(--bg)}.card .icon{font-size:2rem}.card .icon.big{font-size:3.5rem}.card .name{word-break:break-word;font-size:.85rem}.card .meta.expiry{font-size:.7rem}.card-actions{justify-content:center;gap:4px;padding:4px 0 6px;display:flex}.card-actions button,.card-actions a{color:var(--muted);background:0 0;padding:4px 6px;font-size:.9rem;text-decoration:none}.card-actions button:hover,.card-actions a:hover{background:var(--bg);color:var(--text)}.modal-backdrop{z-index:50;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--card);border:1px solid var(--border);border-radius:12px;width:100%;max-width:420px;padding:24px}.modal-large{max-width:640px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.share-link-row{gap:8px;display:flex}.share-link-row input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;flex:1;padding:8px 10px}.share-buttons{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.share-buttons a,.share-buttons button{padding:8px 12px;font-size:.85rem}.preview-area{text-align:center;max-height:60vh;overflow:auto}.preview-area img{border-radius:8px;max-width:100%}.preview-area iframe{border:none;width:100%;height:60vh}.public-share-card{text-align:center}.public-file-preview{padding:20px 0}.public-file-preview .name{margin:8px 0 2px;font-weight:600}.download-btn{background:var(--accent);color:#fff;border-radius:8px;margin:12px 0;padding:12px 20px;font-weight:600;text-decoration:none;display:inline-block}.toast-stack{z-index:100;flex-direction:column;gap:8px;max-width:320px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:12px 16px;font-size:.9rem;box-shadow:0 4px 12px #00000026}.toast-success{border-left:4px solid var(--success)}.toast-error{border-left:4px solid var(--danger)}.toast-info{border-left:4px solid var(--accent)}.admin section{margin-bottom:24px}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.admin-header h1{margin:0}.cleanup-btn{font-weight:600}.stats-card{background:var(--card);border:1px solid var(--border);border-radius:12px;margin-bottom:20px;padding:20px}.admin-tabs{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.admin-tabs button{background:var(--card);color:var(--text);border:1px solid var(--border)}.admin-tabs button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.row-actions{white-space:nowrap;flex-wrap:wrap;gap:10px;display:flex}.danger-link{color:var(--danger)}.deactivated{color:var(--danger);font-weight:600}.badge-super{background:var(--danger);color:#fff;border-radius:10px;margin-left:6px;padding:2px 6px;font-size:.65rem}.admin-browse{flex-direction:column;gap:14px;display:flex}.browse-user-select{color:var(--muted);align-items:center;gap:8px;font-size:.9rem;display:flex}.browse-user-select select{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:8px;padding:8px 10px}table{border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:12px;width:100%;font-size:.85rem;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--border);padding:10px 14px}th{color:var(--muted);background:var(--bg);font-weight:600}tr:last-child td{border-bottom:none}@media (width<=640px){main{width:100%;max-width:100%;margin:0 auto;padding:16px}.home{flex-direction:column;align-items:center}.topbar{padding:10px 12px}.grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}table{font-size:.75rem}th,td{padding:8px}.q-name{flex-basis:80px}.footer{flex-direction:column}.footer-right{text-align:left}.footer-links{justify-content:flex-start}}
