@charset "UTF-8";

:root{color-scheme:dark;--bg:#101213;--surface:#171a1c;--surface-2:#1c1f21;--line:#303538;--text:#f4f5f6;--muted:#989fa8;--red:#ff3039;--red-deep:#e91620;--radius:18px;--sidebar:280px;--font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}
html{min-width:320px;min-height:100%;background:var(--bg);scrollbar-color:#41474b #151719;scrollbar-width:thin}
body{margin:0;min-height:100dvh;color:var(--text);font-family:var(--font);font-size:15px;line-height:1.5;background:radial-gradient(ellipse at 94% 7%,#2c0a0e18,transparent 45%),radial-gradient(ellipse at 38% 68%,#23292d13,transparent 50%),var(--bg);-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
button,input,textarea,select{font:inherit}
button,a,input{-webkit-tap-highlight-color:transparent}
button{color:inherit;cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.5}
a{color:inherit;text-decoration:none}
button{border:0}
svg{display:block;flex-shrink:0}
img{max-width:100%;display:block}
::selection{background:#b61a29;color:#fff}
:focus-visible{outline:2px solid #ff646b;outline-offset:4px}
.icon{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cloud-app{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100dvh}
.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100dvh;min-height:620px;padding:31px 19px 20px;border-right:1px solid #2b3033;background:linear-gradient(115deg,#1a1d1f 0%,#15181a 67%,#191c1e 100%);z-index:30}
.brand{display:flex;align-items:center;gap:13px;width:max-content;max-width:100%;margin:0 13px;color:var(--text)}
.brand-shell{width:51px;height:51px;flex:0 0 51px;filter:drop-shadow(0 0 12px #ff263c0d)}
.brand-copy{display:flex;flex-direction:column;min-width:0}
.brand-name{font-size:24px;font-weight:520;line-height:1.2;letter-spacing:.23em;margin-right:-.23em}
.brand-description{margin-top:6px;font-size:12px;letter-spacing:.015em;color:#8d9399;white-space:nowrap}
.main-nav{display:flex;flex-direction:column;gap:12px;margin-top:44px}
.nav-item{position:relative;display:flex;align-items:center;gap:22px;width:100%;min-height:52px;padding:13px 21px;border-radius:11px;background:transparent;text-align:left;font-size:15.5px;color:#d8dce1;transition:background .18s,color .18s}
.nav-item .icon{width:25px;height:25px;color:#c5ccd4}
.nav-item:hover{background:#ffffff05;color:#fff}
.nav-item.is-active,.nav-item[aria-current=page]{background:linear-gradient(90deg,#ff303911,#ff30390b);color:#fff}
.nav-item.is-active:before,.nav-item[aria-current=page]:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:4px;background:var(--red);border-radius:4px;box-shadow:0 0 15px #ff233340}
.nav-item.is-active .icon,.nav-item[aria-current=page] .icon{color:#ff8b91}
.sidebar-bottom{margin-top:auto;padding:30px 4px 0}
.storage-summary{padding:24px 0 23px;border-top:1px solid #2c3135}
.storage-track,.progress-track{height:8px;overflow:hidden;border-radius:999px;background:#30363b}
.storage-fill,.progress-fill{height:100%;width:0;background:linear-gradient(90deg,#ff282f,#ff3d44);border-radius:inherit;transition:width .25s ease;box-shadow:0 0 13px #ff273c22}
.storage-labels{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;margin-top:12px;font-size:11.5px;line-height:1.5;color:#d9dfe6;white-space:nowrap}
.storage-labels strong{font-weight:450}
.profile-row{display:flex;align-items:center;gap:5px;border-top:1px solid #2c3135;padding-top:19px}
.profile-main{display:flex;align-items:center;gap:13px;min-width:0;flex:1;padding:0;background:none;text-align:left}
.avatar{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #42484d;border-radius:50%;background:linear-gradient(130deg,#2b3033,#1b1e20);font-size:15px;font-weight:600;color:#f3f5f6}
.profile-copy{min-width:0;font-size:13px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-chevron{width:17px;height:17px;margin-left:auto;color:#9da5ac}
.icon-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;border:1px solid transparent;border-radius:10px;background:transparent;color:#c5ccd3;transition:border-color .18s,background .18s,color .18s}
.icon-button:hover{background:#ffffff07;color:#fff}
.icon-button .icon{width:23px;height:23px}
.logout-button{width:27px;height:34px;color:#8d969e}
.logout-button .icon{width:18px;height:18px}
.cloud-main{min-width:0;padding:21px 34px 0}
.topbar{display:flex;align-items:center;gap:30px;height:52px}
.search-field{display:flex;align-items:center;gap:15px;min-width:0;flex:1;height:52px;padding:0 19px;border:1px solid #303538;border-radius:14px;background:linear-gradient(110deg,#191c1e,#151719);box-shadow:inset 0 1px 0 #ffffff02}
.search-field:focus-within{border-color:#7e383e;box-shadow:0 0 0 3px #ff303908}
.search-field .icon{width:21px;height:21px;color:#bbc4cd}
.search-field input{min-width:0;flex:1;width:100%;height:100%;padding:0;border:0;outline:0!important;background:transparent;font-size:15.5px;color:#f3f5f7}
.search-field input::placeholder{color:#7f878f;opacity:1}
.search-field input::-webkit-search-cancel-button{cursor:pointer;filter:grayscale(1)}
.search-field kbd{display:grid;place-items:center;width:21px;height:23px;border:1px solid #353b3f;border-radius:5px;font:11px var(--font);color:#717a83;opacity:.65}
.topbar-actions{display:flex;align-items:center;gap:13px;padding-left:0}
.topbar-divider{height:28px;width:1px;background:#353a3e;margin:0 2px}
.mobile-menu,.sidebar-backdrop{display:none}
.page-intro{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:43px;margin-bottom:34px}
.intro-copy{min-width:0}
.page-intro h1{margin:0;font-size:clamp(29px,3vw,46px);line-height:1.18;letter-spacing:-.035em;font-weight:650;overflow-wrap:anywhere}
.page-intro p{margin:3px 0 0;color:#a1a8b0;font-size:19px;letter-spacing:.005em}
.page-actions{display:flex;align-items:center;justify-content:flex-end;gap:17px;flex-shrink:0;padding-top:3px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;max-width:100%;padding:12px 20px;border:1px solid transparent;border-radius:11px;font-size:14px;line-height:1.3;font-weight:550;white-space:nowrap;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
.button .icon{width:21px;height:21px}
.button:active:not(:disabled){transform:translateY(1px)}
.button-primary{border-color:#ff4d53;background:linear-gradient(180deg,#f5252c,#ed151e);box-shadow:0 5px 24px #fa182b25,inset 0 1px 0 #ffffff08;color:#fff}
.button-primary:hover:not(:disabled){background:linear-gradient(180deg,#ff3239,#f21d28);box-shadow:0 7px 28px #fa182b38}
.button-outline{border-color:#747b81;background:#ffffff01;color:#f2f4f6}
.button-outline:hover:not(:disabled){border-color:#b5bcc2;background:#ffffff04}
.button-quiet{border-color:transparent;background:transparent;color:#afb7c0}
.button-quiet:hover{background:#ffffff06;color:#fff}
.button-full{width:100%}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:-10px 0 28px;font-size:13px;color:#818c95}
.breadcrumb:empty{display:none}
.breadcrumb a,.breadcrumb button{border:0;background:none;padding:3px 0;color:#a4afb9}
.breadcrumb a:hover,.breadcrumb button:hover{color:#ff777e}
.breadcrumb .icon{width:15px;height:15px}
.folder-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.folder-toolbar h2{margin:0;font-size:25px;font-weight:620;letter-spacing:-.025em;line-height:1.3}
.view-tools{display:flex;align-items:center;gap:33px}
.item-count{font-size:13.5px;color:#bcc4cc;white-space:nowrap}
.view-switch{display:flex;align-items:center;gap:14px}
.view-switch .icon-button{width:39px;height:39px;border-radius:10px}
.view-switch .is-active,.view-switch [aria-pressed=true]{color:#ff3039;border-color:#69232b;background:#ec1d280a;box-shadow:inset 0 0 10px #f1222b05}
.view-switch .icon{width:25px;height:25px}
.folder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.folder-card,.file-card{position:relative;min-width:0;min-height:244px;overflow:hidden;border:1px solid #303639;border-radius:var(--radius);background:radial-gradient(ellipse at 35% 27%,#40454a14,transparent 75%),linear-gradient(135deg,#1a1d1f,#171a1c 67%,#1c1f21);box-shadow:inset 0 1px 0 #ffffff02;transition:border-color .2s,box-shadow .2s,transform .2s}
.folder-card:hover,.file-card:hover{border-color:#a82a35;box-shadow:0 0 0 1px #ff273316,inset 0 1px 0 #ffffff03}
.folder-card:focus-within,.file-card:focus-within,.folder-card.is-selected,.file-card.is-selected{border-color:#ff343c;box-shadow:0 0 0 1px #ff343c17}
.card-open{display:flex;flex-direction:column;align-items:stretch;width:100%;min-height:244px;height:100%;padding:17px 21px 18px;border:0;background:transparent;text-align:left;color:inherit}
.card-open:focus-visible{outline-offset:-4px;border-radius:inherit}
.folder-art{display:grid;place-items:center;flex:1;min-height:171px;padding:0 9px}
.folder-art img,.folder-card>img,.folder-card .folder-image,.folder-card .folder-icon{display:block;width:245px;max-width:100%;height:174px;object-fit:contain;margin:0 auto}
.card-copy{display:flex;flex-direction:column;gap:2px;min-width:0;margin-top:auto}
.card-title,.folder-card h3,.file-card h3{display:block;margin:0;font-size:17px;font-weight:550;line-height:1.35;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-meta,.folder-card .card-subtitle,.file-card .card-subtitle{display:block;margin:1px 0 0;font-size:13px;line-height:1.4;font-weight:400;color:#919ba5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-menu,.favorite-star{position:absolute;display:grid;place-items:center;z-index:2;border:1px solid transparent;border-radius:8px;background:transparent;color:#bbc3ca;transition:background .18s,color .18s,opacity .18s}
.card-menu{top:15px;right:14px;width:29px;height:32px}
.card-menu .icon{width:21px;height:21px}
.card-menu:hover{background:#ffffff0a;color:#fff}
.favorite-star{top:16px;left:16px;width:28px;height:30px;opacity:0}
.favorite-star .icon{width:19px;height:19px}
.folder-card:hover .favorite-star,.file-card:hover .favorite-star,.folder-card:focus-within .favorite-star,.file-card:focus-within .favorite-star,.favorite-star.is-active,.favorite-star[aria-pressed=true]{opacity:1}
.favorite-star:hover{background:#ffffff09;color:#ff8990}
.favorite-star.is-active,.favorite-star[aria-pressed=true]{color:#ff656e}
.favorite-star.is-active .icon,.favorite-star[aria-pressed=true] .icon{fill:#ff303917}
.file-preview{display:flex;align-items:center;justify-content:center;flex:1;min-height:171px;overflow:hidden;margin:0 0 12px;border-radius:10px;background:#111416}
.file-preview img{width:100%;height:171px;object-fit:cover}
.file-preview video{width:100%;height:171px;object-fit:cover}
.file-icon{display:block;width:57px;height:57px;fill:none;stroke:#969fa8;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}
.file-list{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#171a1c}
.file-list table{width:100%;border-collapse:collapse;text-align:left}
.file-list th{padding:15px 18px;background:#1d2022;color:#89939d;font-size:12px;font-weight:500}
.file-list td{padding:14px 18px;border-top:1px solid #2a3034;color:#dce1e6;font-size:14px}
.file-row,.list-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 140px 40px;align-items:center;gap:18px;min-height:65px;padding:12px 18px;border-top:1px solid #2b3034}
.file-row:first-child,.list-row:first-child{border-top:0}
.file-row:hover,.list-row:hover,.file-list tbody tr:hover{background:#ffffff03}
.file-row .file-icon,.list-row .file-icon{width:26px;height:26px}
.file-row .card-menu,.list-row .card-menu{position:static}
.file-name,.list-file-name{display:flex;align-items:center;gap:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.file-row .file-name button,.list-row .file-name button{min-width:0;overflow:hidden;border:0;background:transparent;text-align:left;text-overflow:ellipsis;white-space:nowrap}
.file-row .file-size,.file-row .file-date,.list-row .file-size,.list-row .file-date{color:#9aa4ae;font-size:12px}
.empty-state{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:305px;padding:45px 24px;border:1px dashed #343b40;border-radius:18px;background:#171a1c55;text-align:center;color:#919ca6}
.empty-state .icon,.empty-state>svg{width:42px;height:42px;margin-bottom:15px;stroke:#6f7b85}
.empty-state h3,.empty-state h2{margin:0 0 8px;font-size:20px;line-height:1.4;font-weight:560;color:#d6dde3}
.empty-state p{max-width:380px;margin:0;font-size:14px}
.empty-state .button{margin-top:22px}
.cloud-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:40px;padding:21px 2px 26px;border-top:1px solid #303639;color:#9ca6b0;font-size:13.5px}
.cloud-footer strong{font-weight:450}
.footer-brand{font-size:9px;letter-spacing:.26em;color:#59626a}
.skeleton-card{min-height:244px;padding:27px 21px 22px;border:1px solid #292e31;border-radius:18px;background:#181b1d;overflow:hidden}
.skeleton-card div{width:62%;height:126px;margin:8px auto 32px;border-radius:16px;background:linear-gradient(120deg,#262b2f,#202529,#262b2f);background-size:200% 100%;animation:shimmer 2s ease-in-out infinite}
.skeleton-card span{display:block;width:46%;height:12px;margin-top:9px;border-radius:4px;background:#292f33}
.skeleton-card span:last-child{width:25%;height:9px;background:#242a2e}
@keyframes shimmer{0%,100%{background-position:100% 0}50%{background-position:0 0}}

/* Login, configuração e confirmação do dispositivo */
.auth-view{position:relative;display:grid;place-items:center;min-height:100dvh;padding:48px 30px;overflow:hidden;background:radial-gradient(ellipse at 80% 17%,#86132013,transparent 38%),radial-gradient(ellipse at 20% 83%,#343b421b,transparent 50%),#101213}
.auth-view:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,#1b1f222b,transparent 40%);pointer-events:none}
.auth-shell{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:90px;width:min(100%,1080px);align-items:center}
.auth-intro{position:relative;display:flex;flex-direction:column;align-self:stretch;min-height:580px}
.brand-large{gap:17px;margin:0}
.brand-large .brand-shell{width:64px;height:64px;flex-basis:64px}
.brand-large .brand-name{font-size:28px}
.brand-large .brand-description{font-size:13px;margin-top:6px}
.auth-intro-copy{position:relative;z-index:2;margin-top:65px}
.eyebrow{display:block;margin:0 0 14px;color:#939da6;font-size:9px;line-height:1.5;font-weight:650;letter-spacing:.19em;text-transform:uppercase}
.auth-intro-copy h1{margin:0;font-size:clamp(40px,4.3vw,57px);line-height:1.09;font-weight:640;letter-spacing:-.045em}
.red-dot{color:var(--red)}
.auth-intro-copy p{margin:20px 0 0;color:#939da8;font-size:15px;line-height:1.75}
.auth-visual{position:absolute;z-index:0;right:-52px;bottom:18px;width:290px;height:230px;opacity:.9;transform:rotate(-7deg)}
.auth-visual img{position:relative;width:100%;height:100%}
.auth-halo{position:absolute;inset:25% 8% 2%;border-radius:50%;background:#db132810;filter:blur(40px)}
.auth-signature{display:flex;align-items:center;gap:9px;margin:auto 0 0;padding-top:175px;color:#737f8a;font-size:12px}
.auth-signature .icon{width:15px;height:15px;color:#848f99}
.auth-card{position:relative;width:100%;padding:35px 32px 26px;border:1px solid #333a3f;border-radius:23px;background:linear-gradient(135deg,#202426b8,#181c1ef2 55%,#171b1d);box-shadow:0 22px 80px #00000038,inset 0 1px 0 #ffffff03}
.auth-card-mark{display:grid;place-items:center;width:62px;height:62px;margin-bottom:25px;border:1px solid #5b262e;border-radius:17px;background:linear-gradient(145deg,#ae1b2715,#6a0f1a0a)}
.auth-card h2,.auth-card h1{margin:0;color:#f5f6f7;font-size:25px;line-height:1.25;font-weight:620;letter-spacing:-.03em}
.auth-description{margin:10px 0 27px;color:#9aa4ae;font-size:13.5px;line-height:1.7}
.auth-form{display:flex;flex-direction:column;gap:20px}
.form-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.form-field label{color:#c7cfd6;font-size:12px;font-weight:500;line-height:1.5}
.form-field input,.form-field textarea,.form-field select{display:block;min-width:0;width:100%;min-height:48px;padding:12px 14px;border:1px solid #3b4349;border-radius:9px;outline:0;background:#121618a8;color:#f0f3f5;font-size:14px;transition:border-color .18s,box-shadow .18s}
.form-field input::placeholder,.form-field textarea::placeholder{color:#626d77}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#bd3f49;box-shadow:0 0 0 3px #ff35420c}
.form-field input:disabled{opacity:.5}
.form-field input:-webkit-autofill{-webkit-box-shadow:0 0 0 50px #181e22 inset;-webkit-text-fill-color:#f4f6f8;caret-color:#fff}
.auth-form .button-primary{margin-top:5px;min-height:49px}
.form-error{padding:10px 12px;margin:0;border:1px solid #79323b;border-radius:9px;background:#ff30390b;color:#ffadb3;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.auth-security{display:flex;align-items:center;justify-content:center;gap:7px;margin:23px -8px 0;color:#7e8a95;font-size:10.5px;line-height:1.6;text-align:center}
.auth-security .icon{width:13px;height:13px}
.status-dot{display:block;flex:0 0 5px;width:5px;height:5px;border-radius:50%;background:#b52b3a;box-shadow:0 0 9px #df26372b}
.setup-view .auth-card{padding-top:31px}
.setup-view .auth-card>.eyebrow{color:#cb727b}
.setup-view .auth-intro-copy{margin-top:66px}
.setup-view .auth-visual{bottom:5px;right:-40px;opacity:.7}
.setup-view .auth-form{gap:16px}
.setup-view .auth-description{margin-bottom:24px}
.passkey-shell{position:relative;width:min(100%,440px)}
.passkey-shell>.brand{margin:0 auto 38px}
.passkey-card{text-align:center;padding:34px 32px 29px}
.passkey-emblem{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 25px;border:1px solid #712d38;border-radius:21px;background:radial-gradient(ellipse at 50% 20%,#ff344321,#35151a16);box-shadow:0 5px 30px #ff102414;color:#ff6b74}
.passkey-emblem .icon{width:32px;height:32px;stroke-width:1.3}
.passkey-card .eyebrow{color:#9d7e85}
.passkey-card .auth-description{margin-bottom:27px}
.passkey-card .form-error{margin-top:18px;text-align:left}

/* Janelas e ações secundárias */
.dialog{position:fixed;max-width:calc(100vw - 36px);max-height:calc(100dvh - 44px);width:460px;margin:auto;padding:27px;border:1px solid #41484e;border-radius:20px;background:linear-gradient(135deg,#202426,#171c1f);color:var(--text);box-shadow:0 24px 100px #0009;overflow:auto}
.dialog::backdrop{background:#07090cb3;backdrop-filter:blur(7px)}
.dialog[open]{animation:dialog-in .16s ease-out}
@keyframes dialog-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:26px}
.dialog-heading h2{margin:0;font-size:25px;line-height:1.25;font-weight:590;letter-spacing:-.03em;overflow-wrap:anywhere}
.dialog-heading>.icon-button{margin:-8px -8px 0 0}
.dialog-heading .eyebrow{margin-bottom:8px;font-size:8px;color:#a77c84}
.dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:27px}
.dialog-actions .button{min-height:44px;font-size:12.5px;padding:10px 16px}
.dialog-actions .button .icon{width:18px;height:18px}
.settings-dialog{width:640px;padding:30px}
.settings-dialog .dialog-heading{margin-bottom:28px}
.settings-section+.settings-section{margin-top:26px;padding-top:24px;border-top:1px solid #31393f}
.settings-section h3{margin:0;color:#e7ebef;font-size:16px;font-weight:550;letter-spacing:-.015em}
.section-description{margin:7px 0 17px;color:#909da8;font-size:12px;line-height:1.65}
.devices-list{display:flex;flex-direction:column;gap:9px}
.device-item,.device-row{display:flex;align-items:center;gap:13px;padding:13px 14px;border:1px solid #343d44;border-radius:10px;background:#12171a50}
.device-item .icon,.device-row .icon{width:20px;height:20px;color:#a7b3bd}
.device-item strong,.device-row strong{display:block;font-size:13px;font-weight:530}
.device-item small,.device-row small{display:block;margin-top:2px;color:#7e8e9b;font-size:10px;overflow-wrap:anywhere}
.device-item button,.device-row button{margin-left:auto;padding:6px;border-radius:6px;background:transparent;color:#ce8790;font-size:11px}
.device-item button:hover,.device-row button:hover{background:#ff303909}
.device-current{margin-left:auto;color:#d6a1a8;font-size:10px}
.invite-form{display:flex;align-items:flex-end;gap:12px;margin-top:17px}
.invite-form .form-field{flex:1}
.invite-form .button{min-height:48px;padding:10px 15px;font-size:12px}
.field-hint{margin:10px 0 0;color:#778995;font-size:10.5px;line-height:1.6}
.invite-result{display:block;margin-top:14px;padding:13px;border:1px solid #71353f;border-radius:9px;background:#ff34410b;color:#d9acb3;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;line-height:1.6;word-break:break-all}
.invite-result a{text-decoration:underline;text-underline-offset:3px}
.security-note{display:flex;align-items:flex-start;gap:12px;margin-top:25px;padding:16px 15px;border:1px solid #3c3840;border-radius:11px;background:#1c141c33}
.security-note>.icon{width:20px;height:20px;margin-top:2px;color:#c17783}
.security-note strong{display:block;font-size:11px;font-weight:550;color:#c6b4bd}
.security-note p{margin:4px 0 0;font-size:10.5px;line-height:1.7;color:#8f818d}
.preview-dialog{width:min(1000px,calc(100vw - 44px));padding:18px;overflow:hidden;background:#151a1d}
.preview-dialog .dialog-heading{align-items:center;margin:0 0 15px;padding:3px 4px 0 8px}
.preview-dialog .dialog-heading h2{font-size:16px;font-weight:500;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.preview-dialog .dialog-heading .icon-button{margin:0}
.preview-body{display:flex;align-items:center;justify-content:center;min-height:240px;max-height:calc(100dvh - 150px);overflow:auto;border:1px solid #262e34;border-radius:10px;background:#0a0e10}
.preview-body img,.preview-body video{display:block;max-width:100%;max-height:calc(100dvh - 165px);object-fit:contain}
.preview-body audio{width:min(100%,560px);margin:45px 24px;filter:grayscale(.6)}
.preview-body iframe{display:block;width:100%;height:70dvh;border:0;background:white}
.preview-body pre{width:100%;align-self:stretch;margin:0;padding:24px;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;color:#cdd6dd}
.preview-body .empty-state{margin:20px;background:transparent;border:0;min-height:220px}
.context-menu,.dropdown-menu{position:fixed;z-index:80;min-width:180px;padding:6px;border:1px solid #414b53;border-radius:11px;background:#22292e;box-shadow:0 14px 40px #0007}
.context-menu button,.dropdown-menu button,.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 11px;border:0;border-radius:6px;background:none;text-align:left;font-size:12px;color:#c7d1d9}
.context-menu button:hover,.dropdown-menu button:hover,.menu-item:hover{background:#ffffff08;color:white}
.context-menu .icon,.dropdown-menu .icon{width:16px;height:16px}
.context-menu .danger,.dropdown-menu .danger{color:#ff9da6}
.upload-progress{position:fixed;z-index:60;bottom:25px;right:26px;width:min(400px,calc(100vw - 32px));padding:19px 20px;border:1px solid #5f353f;border-radius:14px;background:#202529f5;box-shadow:0 12px 60px #0007;backdrop-filter:blur(16px)}
.upload-progress-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px;min-width:0}
.upload-progress-icon{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;border:1px solid #6f323e;border-radius:9px;color:#ff7883;background:#b7283912}
.upload-progress-icon .icon{width:18px;height:18px}
.upload-progress-heading>div{flex:1;min-width:0}
.upload-progress-heading strong{display:block;font-size:12px;font-weight:550}
.upload-progress-heading p{margin:3px 0 0;color:#83929e;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#upload-percent{color:#d0a4ac;font-size:12px;font-variant-numeric:tabular-nums}
.progress-track{height:4px;background:#3a4249}
.toast{position:fixed;z-index:110;left:50%;bottom:27px;width:max-content;max-width:min(560px,calc(100vw - 34px));transform:translateX(-50%);padding:13px 20px;border:1px solid #48545e;border-radius:11px;background:#263139f5;box-shadow:0 10px 40px #0007;color:#e0e8ee;font-size:12px;line-height:1.6;text-align:center;backdrop-filter:blur(16px);animation:toast-in .18s ease-out}
@keyframes toast-in{from{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%,0)}}
.toast:empty{display:none}
.toast.is-error,.toast.error{border-color:#9a4553;background:#41232bf5;color:#ffc7cf}
.is-dragging .folder-grid,.drop-active .folder-grid{outline:2px dashed #ff4a54;outline-offset:10px;border-radius:12px;background:#ff303907}
.drop-overlay{position:fixed;inset:14px;z-index:120;display:grid;place-items:center;padding:30px;border:2px dashed #e74b5b;border-radius:20px;background:#161b20f0;backdrop-filter:blur(8px);font-size:23px;color:#e8c4cb;pointer-events:none}

@media(min-width:1600px){.cloud-main{padding-left:38px;padding-right:38px}.page-intro{margin-top:47px;margin-bottom:40px}.folder-card,.file-card,.card-open,.skeleton-card{min-height:263px}.folder-art,.file-preview{min-height:183px}.folder-art img,.folder-card>img,.folder-card .folder-image,.folder-card .folder-icon{height:185px;width:260px}.card-title{font-size:18px}.card-meta{font-size:14px}.cloud-footer{margin-top:42px}.sidebar{padding-top:32px}.brand{margin-left:15px}.main-nav{margin-top:49px}}
@media(max-width:1280px){:root{--sidebar:250px}.sidebar{padding-left:16px;padding-right:16px}.brand{margin-left:8px;gap:10px}.brand-shell{width:46px;height:46px;flex-basis:46px}.brand-name{font-size:21px}.brand-description{font-size:10.5px}.nav-item{padding-left:16px;gap:17px}.cloud-main{padding-left:26px;padding-right:26px}.topbar{gap:18px}.page-intro{align-items:flex-start;gap:20px}.page-intro h1{font-size:34px}.page-intro p{font-size:16px}.page-actions{gap:10px;padding-top:0}.page-actions .button{min-height:46px;padding:10px 14px;font-size:12px;gap:9px}.page-actions .icon{width:19px;height:19px}.folder-card,.file-card,.card-open,.skeleton-card{min-height:229px}.card-open{padding:17px 17px 17px}.folder-art{min-height:154px;padding:0}.folder-art img,.folder-card>img,.folder-card .folder-image,.folder-card .folder-icon{height:156px;width:225px}.file-preview{min-height:154px}.file-preview img,.file-preview video{height:154px}.card-title{font-size:15.5px}.card-meta{font-size:12px}.folder-grid{gap:15px}.folder-toolbar h2{font-size:23px}.storage-labels{font-size:10px}.view-tools{gap:23px}.auth-shell{gap:55px;width:min(100%,1000px)}.auth-intro-copy h1{font-size:50px}}
@media(max-width:1100px){.page-intro{flex-direction:column;margin-top:32px;gap:20px;margin-bottom:30px}.page-actions{align-self:flex-start;gap:12px}.page-actions .button{min-height:44px}.folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.folder-card,.file-card,.card-open,.skeleton-card{min-height:240px}.folder-art{min-height:168px}.folder-art img,.folder-card>img,.folder-card .folder-image,.folder-card .folder-icon{height:168px;width:240px}.file-preview{min-height:165px}.file-preview img,.file-preview video{height:165px}.topbar-actions{gap:5px}.topbar-divider{margin:0 1px}.auth-shell{grid-template-columns:minmax(0,1fr) 400px;gap:40px}.auth-intro-copy h1{font-size:44px}.auth-card{padding-left:27px;padding-right:27px}.auth-visual{width:245px;right:-20px;bottom:30px}.auth-intro{min-height:560px}}
@media(max-width:900px){:root{--sidebar:280px}.cloud-app{display:block}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar);min-height:0;height:100dvh;transform:translateX(-101%);transition:transform .22s ease;box-shadow:15px 0 60px #0006}.sidebar .brand{margin-left:12px}.sidebar .brand-shell{width:51px;height:51px;flex-basis:51px}.sidebar .brand-name{font-size:24px}.sidebar .brand-description{font-size:12px}.sidebar .nav-item{min-height:53px;padding-left:20px;gap:20px}.sidebar .storage-labels{font-size:11.5px}.sidebar .main-nav{margin-top:42px}.sidebar-open .sidebar,.cloud-app.sidebar-open .sidebar,body.menu-open .sidebar{transform:translateX(0)}.sidebar-backdrop{position:fixed;z-index:29;inset:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(3px);border:0}.sidebar-open .sidebar-backdrop,body.menu-open .sidebar-backdrop{display:block}.cloud-main{padding:22px 28px 0}.mobile-menu{display:inline-flex;flex:0 0 36px;width:36px;height:40px;margin-left:-5px}.topbar{gap:12px}.search-field{height:48px;padding-left:15px;padding-right:14px;border-radius:12px}.search-field input{font-size:14px}.topbar-actions{gap:4px}.topbar-actions .icon-button{width:34px;height:37px}.topbar-divider{height:23px}.page-intro{flex-direction:row;align-items:center;margin-top:35px;margin-bottom:32px}.page-intro h1{font-size:35px}.page-intro p{font-size:16px}.page-actions{align-self:center}.page-actions .button{padding:11px 15px;min-height:45px}.folder-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.folder-card,.file-card,.card-open,.skeleton-card{min-height:227px}.folder-art{min-height:152px}.folder-art img,.folder-card>img,.folder-card .folder-image,.folder-card .folder-icon{height:154px;width:220px}.file-preview{min-height:150px}.file-preview img,.file-preview video{height:150px}.card-open{padding-left:17px;padding-right:17px}.card-menu{right:9px;top:10px}.favorite-star{left:10px;top:11px}.auth-view{padding:35px 25px}.auth-shell{width:min(100%,820px);grid-template-columns:minmax(0,1fr) 380px;gap:30px}.auth-intro{min-height:550px}.auth-intro-copy{margin-top:65px}.auth-intro-copy h1{font-size:41px}.auth-intro-copy p{font-size:13px}.auth-visual{width:240px;right:-22px;bottom:42px}.auth-intro .brand-large{gap:9px}.auth-intro .brand-large .brand-shell{width:50px;height:50px;flex-basis:50px}.auth-intro .brand-large .brand-name{font-size:23px}.auth-intro .brand-large .brand-description{font-size:11px}.auth-card h2{font-size:23px}.auth-card{padding:30px 25px 24px}}
@media(max-width:760px){.cloud-main{padding:19px 22px 0}.topbar-actions .icon-button:first-child,.topbar-divider{display:none}.topbar{height:46px;gap:10px}.search-field{height:46px;gap:11px;padding-left:13px}.search-field kbd{display:none}.topbar-actions .icon-button{width:32px}.page-intro{align-items:flex-start;flex-direction:column;gap:22px;margin-top:31px;margin-bottom:29px}.page-intro h1{font-size:34px}.page-intro p{margin-top:5px;font-size:16px}.page-actions{align-self:flex-start;gap:11px}.page-actions .button{padding:11px 17px;font-size:12px;min-height:46px}.folder-toolbar{margin-bottom:16px}.folder-toolbar h2{font-size:22px}.view-tools{gap:18px}.item-count{font-size:12px}.view-switch{gap:7px}.view-switch .icon-button{width:34px;height:34px;border-radius:9px}.view-switch .icon{width:22px;height:22px}.folder-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.folder-card,.file-card,.card-open,.skeleton-card{min-height:241px}.folder-art{min-height:166px}.folder-art img,.folder-card>img,.folder-card .folder-image,.folder-card .folder-icon{height:168px;width:245px}.file-preview{min-height:165px}.file-preview img,.file-preview video{height:165px}.card-title{font-size:16px}.card-meta{font-size:12px}.cloud-footer{margin-top:29px;padding-top:20px;font-size:12px}.auth-shell{grid-template-columns:minmax(0,1fr);gap:30px;width:min(100%,425px)}.auth-intro{min-height:0;align-items:center}.auth-intro>.brand-large{margin:0 auto}.auth-intro-copy,.auth-visual,.auth-signature{display:none}.auth-card{padding:30px 28px 25px}.auth-card h2{font-size:25px}.auth-card-mark{display:none}.auth-intro .brand-large{gap:14px}.auth-intro .brand-large .brand-shell{width:59px;height:59px;flex-basis:59px}.auth-intro .brand-large .brand-name{font-size:27px}.auth-intro .brand-large .brand-description{font-size:12px}.auth-form{gap:19px}.auth-description{margin-bottom:25px}.auth-view{padding-top:37px;padding-bottom:37px}.setup-view .auth-card>.eyebrow{font-size:9px}.passkey-shell{max-width:425px}.passkey-shell>.brand{margin-bottom:29px}.passkey-card{padding:31px 28px 26px}.file-row,.list-row{grid-template-columns:minmax(0,1fr) 72px 30px;gap:10px;padding:12px 14px}.file-row .file-date,.list-row .file-date{display:none}.file-list th,.file-list td{padding-left:13px;padding-right:13px;font-size:12px}.file-list .date-column{display:none}}
@media(max-width:450px){.cloud-main{padding:16px 16px 0}.topbar{gap:8px}.mobile-menu{flex-basis:31px;width:31px;margin-left:-3px}.mobile-menu .icon{width:21px;height:21px}.search-field{height:43px;border-radius:10px;padding-left:11px;padding-right:8px;gap:9px}.search-field .icon{width:18px;height:18px}.search-field input{font-size:12px}.topbar-actions .icon-button{width:29px;height:34px}.topbar-actions .icon-button .icon{width:21px;height:21px}.page-intro{margin-top:27px;margin-bottom:26px;gap:20px}.page-intro h1{font-size:30px}.page-intro p{font-size:14px;margin-top:5px}.page-actions{width:100%;gap:10px}.page-actions .button{min-height:43px;padding:10px 12px;gap:8px;font-size:11px}.page-actions .button .icon{width:18px;height:18px}.page-actions #new-folder-btn{flex:1}.page-actions #upload-btn{flex:1.1}.folder-toolbar{gap:10px;margin-bottom:14px}.folder-toolbar h2{font-size:20px}.view-tools{gap:9px}.item-count{font-size:10px}.view-switch{gap:4px}.view-switch .icon-button{width:31px;height:31px;border-radius:8px}.view-switch .icon{width:20px;height:20px}.folder-grid{gap:11px}.folder-card,.file-card,.card-open,.skeleton-card{min-height:187px;border-radius:13px}.card-open{padding:12px 12px 14px}.folder-art{min-height:118px;padding:0;margin:0 -7px}.folder-art img,.folder-card>img,.folder-card .folder-image,.folder-card .folder-icon{height:119px;width:174px;max-width:110%}.file-preview{min-height:118px;height:118px;margin-bottom:10px;border-radius:7px}.file-preview img,.file-preview video{height:118px}.file-icon{width:42px;height:42px}.card-title{font-size:13px;line-height:1.4}.card-meta{font-size:10px;line-height:1.6;margin-top:0}.card-menu{right:5px;top:7px;width:25px;height:27px}.card-menu .icon{width:18px;height:18px}.favorite-star{left:5px;top:7px;width:25px;height:27px}.favorite-star .icon{width:16px;height:16px}.cloud-footer{margin-top:25px;padding:18px 0 22px;font-size:11px}.footer-brand{font-size:8px;letter-spacing:.22em}.breadcrumb{margin-top:-8px;margin-bottom:20px;font-size:11px;gap:6px}.empty-state{min-height:260px;padding:35px 20px}.empty-state h3{font-size:18px}.empty-state p{font-size:12px}.skeleton-card{padding:21px 12px 17px}.skeleton-card div{height:89px;margin:3px auto 24px}.skeleton-card span{height:9px}.skeleton-card span:last-child{height:7px}.auth-view{padding:32px 18px}.auth-shell{gap:29px}.auth-card{padding:27px 23px 23px;border-radius:20px}.auth-card h2,.auth-card h1{font-size:23px}.auth-description{font-size:12px;margin-top:9px;margin-bottom:24px}.auth-form{gap:18px}.form-field{gap:7px}.form-field label{font-size:11px}.form-field input{min-height:47px;padding:11px 12px;font-size:14px}.auth-form .button-primary{font-size:12px;min-height:47px}.auth-security{font-size:9px;margin-top:20px}.auth-intro .brand-large .brand-name{font-size:25px}.auth-intro .brand-large .brand-description{font-size:11px}.auth-intro .brand-large .brand-shell{width:55px;height:55px;flex-basis:55px}.passkey-shell>.brand .brand-name{font-size:25px}.passkey-shell>.brand .brand-shell{width:55px;height:55px;flex-basis:55px}.passkey-card{padding:29px 23px 24px}.passkey-emblem{width:65px;height:65px;border-radius:19px;margin-bottom:23px}.passkey-card .button{font-size:12px;min-height:46px}.dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:23px 21px;border-radius:17px}.dialog-heading{margin-bottom:24px}.dialog-heading h2{font-size:23px}.dialog-heading .eyebrow{font-size:7px}.dialog-actions{margin-top:23px;gap:7px}.dialog-actions .button{font-size:11.5px;padding:10px 14px;min-height:43px}.settings-dialog{padding:24px 20px}.settings-dialog .dialog-heading{margin-bottom:23px}.settings-section h3{font-size:15px}.section-description{font-size:11px}.invite-form{flex-direction:column;align-items:stretch;gap:12px}.invite-form .button{min-height:43px}.invite-result{font-size:10px}.security-note{padding:14px 12px;gap:10px}.security-note p{font-size:10px}.device-item,.device-row{padding:11px 12px;gap:10px}.device-item strong,.device-row strong{font-size:12px}.device-item small,.device-row small{font-size:9px}.preview-dialog{padding:10px}.preview-dialog .dialog-heading{padding-left:5px;margin-bottom:10px}.preview-dialog .dialog-heading h2{font-size:13px}.preview-body{min-height:200px;max-height:calc(100dvh - 125px);border-radius:8px}.preview-body img,.preview-body video{max-height:calc(100dvh - 140px)}.preview-body pre{padding:16px;font-size:11px}.upload-progress{bottom:16px;right:16px;padding:16px}.upload-progress-heading strong{font-size:11px}.upload-progress-heading p{font-size:9px}.toast{bottom:18px;font-size:11px;padding:12px 16px;max-width:calc(100vw - 28px)}}
@media(max-width:350px){.folder-grid{grid-template-columns:1fr}.folder-card,.file-card,.card-open,.skeleton-card{min-height:224px}.folder-art{min-height:151px}.folder-art img,.folder-card>img,.folder-card .folder-image,.folder-card .folder-icon{height:153px;width:225px}.file-preview{height:150px;min-height:150px}.file-preview img,.file-preview video{height:150px}.card-title{font-size:15px}.card-meta{font-size:12px}.item-count{display:none}.page-intro h1{font-size:28px}.page-actions .button{font-size:10px;padding-left:10px;padding-right:10px}.auth-view{padding-left:14px;padding-right:14px}.auth-card{padding-left:20px;padding-right:20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
