:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#242738;background:#f7f8fc;font-synthesis:none;--purple:#7154e8;--muted:#8a8d9f;--line:#eceef5}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:white;border-radius:11px;padding:10px 14px;color:inherit}button:hover{background:#f3f0ff}button:disabled{opacity:.5;cursor:wait}input{outline:none;border:1px solid #dedfea;border-radius:11px;padding:13px;width:100%;background:white}input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #7154e814}.hidden{display:none!important}.primary{background:var(--purple);color:white;border-color:transparent;font-weight:600}.primary:hover{background:#6041d6}.brand{font-weight:750;font-size:26px;color:inherit;text-decoration:none;letter-spacing:-1px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#9692b6}.login{display:grid;grid-template-columns:1.1fr 1fr;min-height:100dvh;background:white}.login-art{padding:60px 11%;background:#eee9ff;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.login-art .brand{position:absolute;top:55px}.login-art h1{font-size:clamp(40px,5vw,75px);line-height:1.05;letter-spacing:-3px;z-index:1;margin:50px 0 24px}.login-art p{line-height:1.8;color:#777089;z-index:1;font-size:15px}.orb{position:absolute;width:440px;height:440px;border-radius:50%;background:linear-gradient(135deg,#f1edff,#c8b9ff);bottom:-150px;right:-80px}.art-card{border:1px solid #ffffffaa;background:#ffffff88;backdrop-filter:blur(10px);border-radius:20px;padding:22px;display:flex;align-items:center;gap:18px;margin-top:50px;max-width:320px;font-size:35px;transform:rotate(-5deg)}.art-card span{font-size:17px;font-weight:600}.art-card small{font-size:12px;color:#898099;font-weight:400}.art-card b{margin-left:auto;color:var(--purple)}.login-form{align-self:center;max-width:420px;width:100%;padding:40px;margin:auto}.login-form h2{font-size:30px;letter-spacing:-1px;margin-bottom:10px}.login-form p{color:var(--muted);margin-bottom:30px}.login-form label{display:block;font-size:13px;font-weight:600;margin:20px 0}.login-form input{margin-top:9px}.login-form button{width:100%;display:flex;justify-content:space-between;padding:14px}.login-form small{font-size:11px;color:var(--muted)}.login-form .error{color:#bc4156;font-size:13px;margin:16px 0}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100dvh}aside{background:#fff;border-right:1px solid var(--line);padding:34px 22px;position:fixed;width:240px;height:100dvh;display:flex;flex-direction:column;z-index:5}aside .brand{margin-bottom:35px;font-size:25px}aside>.primary{padding:14px 10px;margin-bottom:30px;font-size:13px;box-shadow:0 6px 18px #7154e825}nav{display:grid;gap:6px}nav button{text-align:left;border:0;font-size:13px;color:#777c91;padding:14px 12px;white-space:nowrap}nav button span{font-size:20px;width:30px;display:inline-block;vertical-align:middle}nav button.active{background:#f0ecff;color:#7051dd;font-weight:650}.aside-bottom{margin-top:auto;font-size:12px;padding:25px 5px 0;color:#969aab}.disk-state{color:#4a9c87;margin-bottom:14px;font-size:12px}.meter{background:#f0eef8;height:5px;border-radius:5px;overflow:hidden;margin-bottom:10px}.meter i{display:block;height:100%;background:var(--purple);width:0}.aside-bottom small{display:block;line-height:1.8}.logout{border:0;padding:12px 0;background:none;font-size:12px;color:#8a8d9f;margin-top:15px}main{grid-column:2;min-width:0;display:flex;flex-direction:column}header{height:94px;display:flex;align-items:center;padding:0 46px;gap:20px;background:#ffffffb0;border-bottom:1px solid var(--line)}.search{max-width:500px;width:100%;display:flex;align-items:center;gap:12px;color:#9da1b4}.search span{font-size:30px}.search input{background:transparent;border:0;box-shadow:none;font-size:13px;padding-left:0}.round{margin-left:auto;border:0;border-radius:50%;font-size:24px;background:none;padding:5px 10px}.avatar{border-radius:50%;background:#eadfff;color:#7750b6;width:38px;height:38px;display:grid;place-items:center;font-size:14px;font-weight:600;flex-shrink:0}.mobile-brand{display:none}.content{padding:34px 46px;flex:1}.welcome{background:linear-gradient(110deg,#eeebff,#f1edff 50%,#eceeff);border-radius:22px;padding:30px 34px;display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;min-height:165px;overflow:hidden}.welcome h1{font-size:32px;letter-spacing:-1px;font-weight:650;margin:12px 0 8px}.welcome p{margin:0;color:#8b86a4;font-size:13px}.welcome-symbol{font-size:125px;line-height:1;color:#d1c5ff;transform:rotate(-20deg);margin:-30px 25px -30px 0}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0}.breadcrumbs{display:flex;flex-wrap:wrap;gap:4px;align-items:center;font-size:13px;min-width:0}.breadcrumbs button{border:0;background:none;padding:6px 3px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tools{display:flex;gap:8px;align-items:center;flex-shrink:0}.tools button,.tools select{font-size:12px;padding:9px 12px}.tools select{border:1px solid var(--line);border-radius:10px;background:white;color:#85899d}.compact{display:none}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:18px}.card{background:#fff;border:1px solid #eceef5;border-radius:16px;overflow:hidden;position:relative;transition:box-shadow .18s,transform .18s;min-width:0}.card:hover{box-shadow:0 8px 25px #282c4c0b;transform:translateY(-2px)}.card .cover{height:135px;background:#f2f4fa;display:grid;place-items:center;cursor:pointer;position:relative;overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover}.cover .file-icon{font-size:48px;color:#ab9bdd}.cover .folder-icon{font-size:64px;color:#dab965}.card .info{padding:14px 14px 17px;cursor:pointer}.filename{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:20px}.filemeta{font-size:10px;color:#a2a7b8;margin-top:8px}.menu-button{position:absolute;right:7px;bottom:37px;border:0;background:none;padding:0 5px;font-size:24px;color:#9396a6;line-height:1}.file-menu{position:absolute;right:7px;bottom:60px;z-index:3;border:1px solid var(--line);background:white;border-radius:12px;padding:5px;box-shadow:0 8px 35px #24273820;min-width:145px}.file-menu button{display:block;border:0;width:100%;text-align:left;font-size:12px;padding:9px}.file-menu .danger{color:#ca4c64}.list-mode{display:block}.list-mode .card{display:flex;align-items:center;margin-bottom:7px;overflow:visible;padding:5px 15px;min-height:62px}.list-mode .cover{height:45px;width:50px;border-radius:7px;flex-shrink:0}.list-mode .cover .file-icon,.list-mode .cover .folder-icon{font-size:28px}.list-mode .info{padding:10px 16px;flex:1;min-width:0}.list-mode .menu-button{position:static}.list-mode .file-menu{bottom:42px}.empty{text-align:center;color:#a4a5b6;padding:65px 10px}.empty>div{font-size:70px;color:#ccc4e7}.empty h2{font-size:18px;color:#73758b}.empty p{font-size:12px}.empty button{font-size:12px;margin-top:10px}.status{font-size:12px;color:#c05065;min-height:14px;margin-bottom:10px}.offline{background:#fff0dc;border:1px solid #f4dfbd;border-radius:12px;padding:16px;font-size:13px;color:#a17234;margin-bottom:14px}footer{border-top:1px solid var(--line);padding:20px 46px;display:flex;justify-content:space-between;color:#a6aabd;font-size:10px}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:50;background:#282a3d;color:white;border-radius:12px;padding:15px 25px;font-size:13px;max-width:90vw;box-shadow:0 6px 25px #20203030}.queue{position:fixed;bottom:25px;right:25px;width:355px;max-width:calc(100vw - 30px);background:white;box-shadow:0 10px 60px #30305030;border:1px solid var(--line);border-radius:17px;z-index:20;overflow:hidden}.queue-title{padding:15px 18px;display:flex;justify-content:space-between;align-items:center;font-size:13px;border-bottom:1px solid var(--line)}.queue-title button{border:0;padding:0;font-size:24px}.queue #queueItems{max-height:290px;overflow:auto}.upload-row{padding:14px 18px;border-bottom:1px solid var(--line);font-size:12px}.upload-row .filename{max-width:260px}.upload-row progress{width:100%;height:5px;accent-color:var(--purple);margin:10px 0 4px}.upload-row small{color:#9398ac;font-size:10px}.drop-zone{position:fixed;inset:12px;border:3px dashed var(--purple);background:#eeebfff5;border-radius:20px;z-index:100;display:grid;place-items:center;font-size:24px;text-align:center;padding:30px;pointer-events:none}dialog{border:0;border-radius:18px;padding:28px;max-width:calc(100vw - 24px);box-shadow:0 15px 80px #1115}dialog::backdrop{background:#202338b0;backdrop-filter:blur(5px)}#textDialog{width:420px}#textDialog h2{font-size:22px;margin-top:0}#dialogLabel{display:block;font-size:12px;color:#85899d;margin-bottom:14px}.dialog-buttons{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}#preview{background:#131621;color:white;width:1100px;height:85dvh;padding:0;max-height:95dvh}.preview-header{height:65px;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:10px;border-bottom:1px solid #ffffff15}.preview-header>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.preview-header>div{display:flex;gap:6px;align-items:center;flex-shrink:0}.preview-header button,.preview-header a{background:transparent;color:white;border:0;font-size:17px;text-decoration:none;padding:7px}.preview-header a{font-size:12px}#previewBody{height:calc(100% - 65px);display:flex;justify-content:center;align-items:center;padding:20px}#previewBody img,#previewBody video{max-width:100%;max-height:100%;object-fit:contain}#previewBody audio{max-width:100%}.trash-actions{display:flex;gap:6px;margin-top:8px}.trash-actions button{font-size:10px;padding:5px}.special-card{padding:18px}.special-card .filename{margin:0}.special-card p{font-size:11px;color:#9296aa;overflow-wrap:anywhere}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #c1b0ff;outline-offset:2px}
@media(min-width:1600px){.grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.card .cover{height:160px}}
@media(max-width:1050px){.shell{grid-template-columns:205px 1fr}aside{width:205px;padding:30px 16px}aside .brand{font-size:23px}.content{padding:26px}header{padding:0 26px}.welcome-symbol{margin-right:0}.tools select{max-width:120px}.grid{gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.welcome{padding:25px}footer{padding:20px 26px}.toolbar{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.login{display:block}.login-art{min-height:245px;padding:25px 30px}.login-art .brand{top:25px;font-size:22px}.login-art h1{font-size:36px;margin:65px 0 6px;letter-spacing:-1.5px}.login-art p{font-size:12px;margin:7px 0}.art-card{display:none}.orb{width:230px;height:230px;right:-20px;bottom:-100px}.login-form{padding:32px 28px}.login-form h2{font-size:26px}.shell{display:block;padding-bottom:70px}aside{position:fixed;bottom:0;top:auto;height:67px;width:100%;padding:4px 6px;display:block;border-right:0;border-top:1px solid var(--line)}aside .brand,aside>.primary,.aside-bottom{display:none}nav{display:flex;justify-content:space-around;gap:0;height:100%}nav button{font-size:9px;padding:5px 3px;border-radius:10px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}nav button span{font-size:20px;width:auto}nav button[data-area="uploads"]{display:none}main{display:block}header{height:65px;padding:0 18px;gap:12px}.mobile-brand{display:block;color:var(--purple);font-size:30px}.search{gap:4px}.search input{font-size:12px}.round{font-size:22px;padding:4px}.avatar{width:31px;height:31px;font-size:11px}.content{padding:20px 16px}.welcome{padding:23px 21px;min-height:135px;border-radius:17px;margin-bottom:23px}.welcome h1{font-size:26px;margin:10px 0}.welcome-symbol{font-size:82px;margin:0 -5px 0 4px}.welcome .eyebrow{font-size:8px;letter-spacing:1px}.welcome p{font-size:11px}.toolbar{margin:10px 0 17px;gap:12px}.tools{width:100%;gap:6px}.tools button,.tools select{font-size:11px;padding:8px 9px}.tools .compact{display:block;margin-left:auto}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{border-radius:12px}.card .cover{height:135px}.card .info{padding:12px 10px 14px}.filename{font-size:11px}.filemeta{font-size:9px}.menu-button{bottom:32px}.empty{padding:35px 0}footer{padding:15px 17px;font-size:9px}footer span:last-child{display:none}.queue{right:15px;bottom:82px}.toast{bottom:85px}#preview{height:90dvh}#previewBody{padding:8px}.preview-header{padding:10px}.preview-header a{font-size:10px}.drop-zone{font-size:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.folder-icon{display:inline-block!important;position:relative;width:57px;height:39px;border-radius:4px 6px 6px 6px;background:#e6c572;font-size:0!important;box-shadow:inset 0 -2px 0 #c5a24e20}.folder-icon::before{content:"";position:absolute;top:-7px;left:0;width:25px;height:10px;border-radius:5px 6px 0 0;background:#d8b65f}.list-mode .folder-icon{width:30px;height:21px}.list-mode .folder-icon::before{width:15px;height:7px;top:-5px}.avatar{border:0;padding:0}#moveDialog{width:440px}#moveDialog h2{font-size:22px}#moveDialog select{padding:10px;border:1px solid var(--line);border-radius:9px;width:100%;background:white}#movePath{font-size:12px;color:#85899d;overflow-wrap:anywhere}#moveFolders{display:grid;gap:5px;max-height:38dvh;overflow:auto}#moveFolders button{text-align:left;font-size:13px}

.connection-badge{margin-left:auto;border:0;color:#438879;background:#e9f6f0;font-size:11px;white-space:nowrap;padding:8px 11px}.connection-badge[data-state="offline"]{background:#fff0e4;color:#a66b32}header .round{margin-left:0}.account-dialog{width:520px;max-height:90dvh;overflow-y:auto;padding:28px}.account-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.account-heading h2{font-size:24px;letter-spacing:-.6px;margin:7px 0 0}.account-heading button{border:0;font-size:26px;padding:2px 10px}.account-dialog label{display:block;font-size:12px;font-weight:600;margin:17px 0}.account-dialog label input{display:block;margin-top:8px;font-weight:400;font-size:14px}.account-dialog label small{display:block;margin-top:7px;font-size:10px;color:#8b8fa2;font-weight:400}.account-divider{border-top:1px solid var(--line);padding-top:20px;margin-top:24px;font-size:13px;font-weight:650}.account-divider span{font-size:11px;color:#9599aa;font-weight:400;margin-left:8px}.account-note{font-size:11px;line-height:1.7;color:#9498aa}.account-dialog .error{font-size:12px;color:#bd4760}.account-dialog #saveAccount{width:100%;margin-top:5px}.password-field{position:relative}.password-field input{padding-right:85px}.password-field button{position:absolute;right:6px;top:6px;font-size:10px;border:0;background:transparent;padding:9px;color:#7b6bb3}.account-connections{font-size:11px;line-height:1.7;color:#85899c}.account-connections a{display:block;color:#7154e8;overflow-wrap:anywhere}.account-actions{display:grid;gap:8px;margin-top:15px}.account-actions button{text-align:left;font-size:12px}.account-actions .danger{color:#bf5266}.account-version{display:block;color:#a6aabb;font-size:10px;text-align:center;margin-top:22px}.aside-bottom .logout{display:block;margin-top:0;padding:9px 0}.copy-buffer{position:fixed;left:-10000px;top:0}.upload-cancel{float:right;border:0;background:transparent;color:#aa6c7e;font-size:10px;padding:2px 0 4px 8px}.upload-row .filename{max-width:230px}.upload-row .retrying{color:#b68840}
@media(max-width:850px){.connection-badge{max-width:130px;overflow:hidden;text-overflow:ellipsis}.search{min-width:0}}
@media(max-width:650px){.connection-badge{width:12px;height:12px;min-width:12px;border-radius:50%;padding:0;font-size:0;overflow:hidden;background:#67b397}.connection-badge[data-state="offline"]{background:#d49d59}.account-dialog{padding:21px;max-height:90dvh}.account-heading h2{font-size:22px}.account-actions button{padding:13px}.account-dialog input{font-size:16px!important}.account-dialog label{margin:16px 0}}

.welcome>div:first-child{min-width:0}.welcome .eyebrow{overflow-wrap:anywhere}.welcome-symbol{flex-shrink:0}.empty p{max-width:420px;margin-left:auto;margin-right:auto;line-height:1.7}
/* Administration and invite enrollment */
.admin-dialog{width:min(760px,94vw)}.admin-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 24px}.admin-tabs button.active{background:var(--blue,#4269f5);color:white}.admin-dialog h3{margin:24px 0 12px}.admin-card{border:1px solid #e5e9f2;border-radius:16px;padding:16px;margin:12px 0;overflow-wrap:anywhere}.admin-card p{margin:7px 0;color:#526078}.admin-card small{display:block;color:#778197}.admin-card>button{margin-top:12px}.admin-buttons{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.check{display:flex!important;align-items:center;gap:10px;font-size:14px}.check input{width:18px!important;height:18px!important;flex-shrink:0}.invite-result{padding:18px;background:#eff4ff;border:1px solid #dbe5ff;border-radius:16px;display:grid;gap:10px;margin:18px 0}.invite-result input{width:100%;min-width:0}.invite-result small{color:#5b6581}.admin-dialog select{max-width:100%}#inviteForm{display:grid;gap:12px}#registration .login-form{padding-top:32px;padding-bottom:32px}#registration label{margin-top:12px}#registerBack{margin-top:8px}#adminActionDescription{overflow-wrap:anywhere}
