:root{--accent:#247bff;--border:#e7ebf2;--muted:#7f8aa0;color:#182235;font-size:14px}body{background:#edf2f9;background-image:radial-gradient(ellipse at 60% 0,#e2eaf5,transparent 65%);height:calc(100dvh / var(--zoom, 1))}button,input,textarea{font:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #2784ff66;outline-offset:3px}.app-header{position:relative;z-index:40;height:84px;padding:14px 32px;display:flex;align-items:center;gap:15px}.brand-mark{width:40px;height:28px;color:#7b8aa3}.header-spacer{flex:1}#app-switch{padding:12px 18px;border:1px solid #dce5f2;background:#f7faffa8;border-radius:28px;font-size:20px;font-weight:600;gap:14px}#app-switch svg{width:17px;color:#7b8ca5}#app-menu{position:absolute;left:80px;top:73px;width:220px;background:#fafcff;border:1px solid #d9e2ef;box-shadow:0 14px 35px #243b6526;border-radius:17px;padding:8px;animation:appear .13s ease-out}#app-menu button{width:100%;justify-content:flex-start;padding:14px;border-radius:10px;gap:12px;font-size:16px}#app-menu button:hover{background:#eaf2ff}#app-menu svg{color:#247bff;width:25px;height:25px}#user-button{padding:4px}.avatar{display:inline-flex;width:52px;height:52px;border-radius:50%;align-items:center;justify-content:center;background:#7ea3bd;color:white;font-size:23px;font-weight:600;flex-shrink:0}.avatar[data-color=sage]{background:#7c9b89}.avatar[data-color=blue]{background:#6e9bc9}.avatar[data-color=rose]{background:#b87f98}.avatar[data-color=sand]{background:#b79c73}.avatar[data-color=violet]{background:#9383ba}.avatar[data-color=slate]{background:#78899a}#user-button .avatar{width:38px;height:38px;font-size:17px}main#app{position:absolute;inset:84px 20px 18px 0;max-width:none;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;display:flex;overflow:hidden}.sidebar{position:static;transform:none;width:224px;padding:95px 18px 20px;gap:14px;box-shadow:none;border:0;background:transparent;flex-shrink:0}.nav{min-height:53px;padding:15px 18px;font-size:15px;gap:14px;border-radius:16px;color:#536078}.nav svg{width:23px;height:23px}.nav.active{background:#dfeafe;color:#1d64c8}.nav:hover{background:#e3ebf7}.workspace{background:#ffffffd9;border-radius:26px;overflow:hidden}.toolbar{height:84px;padding:15px 27px;gap:13px;background:transparent;border:0}.icon-button{width:38px;height:38px;border-radius:12px}.icon-button:hover:not(:disabled){background:#eaf0f9}.history .icon-button{width:34px}.history svg{width:21px}#breadcrumbs button{font-size:14px;color:#72809b}#breadcrumbs button:last-child{color:#24324a}.view-switch{border-radius:14px;background:#f1f4f9;gap:0}.view-switch .active{background:#e6ebf3;box-shadow:none}.search{width:210px;border:1px solid #e9edf4;background:#f2f5fa;border-radius:18px;padding:10px 12px;color:#8390a7}.search input{font-size:13px}.search kbd{display:none}.actionbar{padding:5px 29px 20px}.actionbar h1{font-size:21px;letter-spacing:-.4px}.actions{gap:8px}.primary-button,.quiet-button{border-radius:13px;min-height:40px;padding:9px 14px;font-size:13px}.primary-button{background:#287eff;box-shadow:0 3px 12px #287eff18}.primary-button:hover:not(:disabled){background:#166de9}.quiet-button{background:#f3f6fa;border-color:#e5eaf2;color:#66738b}.quiet-button:hover:not(:disabled){background:#e8eff8}#touch-select{display:none}#file-area{padding:0 25px 25px;scrollbar-color:#cad3e2 transparent}#entries.grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:18px 13px}.grid .file{padding:16px 10px 13px;min-height:166px;align-items:flex-start;gap:7px;border-radius:13px}.file:hover{background:#f0f5fc}.file.selected{background:#e5efff}.file.selected .filename{color:#125ec2;background:transparent}.file-icon{width:100%;height:94px;justify-content:flex-start;padding-left:5px}.folder-art{width:108px;height:90px;filter:drop-shadow(0 3px 3px #459ae815)}.document-art{height:89px;width:72px;border-radius:7px 20px 7px 7px;border-color:#dbe2ee;color:#3587ef;background:#f5f7fb;box-shadow:0 3px 5px #30476608}.document-art:before{width:20px;height:20px;background:#e7ecf4}.document-art svg{width:33px;height:33px}.document-art span{font-size:9px;bottom:8px}.document-art.pdf{color:#ed4b53}.document-art.audio{color:#aa70ce}.document-art.text{color:#3182ed}.thumbnail{max-width:120px;max-height:94px;border:0;box-shadow:none;border-radius:11px}.filename{font-size:14px;line-height:20px;text-align:left;padding:0 5px;font-weight:450}.grid .file-meta{display:block;padding-left:5px;font-size:12px;color:#8893a6}.grid .date-meta{display:none}.file-check{color:#247bff;font-size:14px}.file.drop-target{outline:2px solid #247bff;background:#e2eeff}.list .file{grid-template-columns:38px 1fr 90px 140px;min-height:52px}.list .file:nth-child(even){background:#f5f8fc}.list .file.selected{background:#e2edff}.list .file-icon{padding:0}.list-heading{grid-template-columns:46px 1fr 90px 140px;color:#8390a7}.statusbar{background:transparent;color:#8793a8;border-color:#e8edf5;font-size:11px;height:36px}.status-hint{display:none}#empty h2,#empty p{color:#8592a8}#empty .empty-icon svg{color:#a9c5e3}#context-menu{background:#fafcff;border-color:#dce4ef;border-radius:15px;padding:7px;box-shadow:0 12px 35px #23345229;z-index:100}#context-menu button{padding:11px 13px;font-size:14px;border-radius:9px}#context-menu button:hover{background:#e6efff}dialog{background:#fcfdff;border-color:#e0e7f0;border-radius:21px;color:#27344b;padding:26px;max-height:calc(90dvh / var(--zoom, 1))}dialog::backdrop{background:#2133493b;backdrop-filter:none}dialog p{color:#77869e}dialog input:not([type=checkbox]){width:100%;padding:11px;border:1px solid #dce4f0;border-radius:9px;margin:10px 0;background:white}dialog label{display:block;margin:8px 0}#preview{border-radius:20px;height:calc(85dvh / var(--zoom, 1))}#preview-body{background:#fbfcff}#preview header{height:58px}#preview-body{height:calc(100% - 58px)}.text-editor{height:100%;width:100%;display:flex;flex-direction:column;gap:12px}.text-editor textarea{flex:1;resize:none;min-height:0;width:100%;border:1px solid #dce4ee;border-radius:10px;padding:18px;background:#fff;font:14px/1.65 ui-monospace,SFMono-Regular,monospace;color:#26364e;tab-size:4}.editor-actions{display:flex;align-items:center;justify-content:space-between;color:#8290a5;font-size:12px}.archive-view{width:100%;height:100%;align-self:flex-start}.archive-view>button{margin:15px 0}.archive-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #e7edf5}.archive-row span{flex:1;overflow-wrap:anywhere}.archive-row small{color:#8390a4}#trash-section{overflow:auto;padding:24px 30px;flex:1}#trash-section>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.trash-row{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #e7edf5}.trash-info{flex:1;min-width:0}.trash-info strong,.trash-info small{display:block;overflow-wrap:anywhere}.trash-info small{color:#8994a6;margin-top:5px;font-size:12px}.trash-row button{font-size:12px;color:#287eff}.trash-empty{text-align:center;padding:90px 20px;color:#8592a8}#settings-app{position:absolute;inset:84px 20px 18px 0;display:flex}.settings-nav{width:224px;flex-shrink:0;padding:40px 18px;display:flex;flex-direction:column;gap:12px}.settings-nav button{padding:15px 17px;border-radius:14px;justify-content:flex-start;color:#64718b;min-height:48px}.settings-nav button.active{background:#dfeafe;color:#226cd3}.settings-page{flex:1;overflow:auto;background:#ffffffdf;border-radius:26px;padding:40px max(28px,calc((100% - 770px)/2));}.settings-page h1{font-size:27px;margin:0 0 25px}.settings-page h2{font-size:18px;margin:26px 0 18px}.settings-page label{display:block;font-size:13px;color:#77849a;margin:14px 0}.settings-page input:not([type=checkbox]){display:block;width:100%;max-width:410px;padding:11px 13px;margin-top:7px;border:1px solid #dce5f0;background:white;border-radius:11px;color:#28364a}.settings-page input[type=checkbox]{width:18px;height:18px;vertical-align:middle;accent-color:#287eff}.settings-page hr{border:0;border-top:1px solid #e7edf5;margin:28px 0}.settings-page p{line-height:1.65;font-size:13px;color:#8692a6;margin:17px 0}.account-hero{display:flex;align-items:center;gap:18px;margin-bottom:24px}.account-hero strong,.account-hero span:not(.avatar){display:block}.account-hero div span{color:#8793a5;font-size:12px;margin-top:6px}.avatar-options{display:flex;gap:8px;margin:15px 0}.avatar-options button{border:2px solid transparent;border-radius:50%;padding:3px}.avatar-options .avatar{width:32px;height:32px;font-size:14px}.avatar-options button.chosen{border-color:#287eff}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.user-row{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #e8edf4}.user-row .avatar{width:42px;height:42px;font-size:19px}.user-description{flex:1}.user-description strong,.user-description small{display:block}.user-description small{font-size:12px;color:#8a95a6;margin-top:5px}.about-page{text-align:center;padding-top:60px}.about-mark svg{width:190px;height:160px;stroke-width:2;stroke:#7392b6;fill:#e4f0ff}.about-page h1{font-size:36px;margin:20px 0 0}.about-page dl{display:grid;grid-template-columns:1fr 1.5fr;gap:14px;max-width:520px;margin:35px auto;text-align:left;font-size:15px}.about-page dt{text-align:right;color:#8190a5}.about-page dd{margin:0}.locked .app-header,.locked #app,.locked #settings-app{display:none!important}#login-screen{position:fixed;inset:0;background:#edf2f9;display:flex;align-items:center;justify-content:center}#user-picker h1{text-align:center;color:#52617a;font-size:22px;font-weight:500;margin-bottom:34px}.user-choices{display:flex;gap:25px;flex-wrap:wrap;justify-content:center;max-width:calc(80vw / var(--zoom, 1))}.user-choices button{display:flex;flex-direction:column;gap:13px;padding:18px;border-radius:18px;min-width:120px}.user-choices button:hover{background:#fff8}.user-choices .avatar,#login-avatar{width:76px;height:76px;font-size:32px}#login-form{width:350px;padding:25px}#login-form h1{font-size:24px;margin:20px 0 25px}.password-wrap{border-color:#dce4ef;background:white;border-radius:13px;padding:6px}.password-wrap input{font-size:16px}#login-back{font-size:13px;color:#7284a0}.form-error{color:#c44d50!important}.onboarding-form p{margin:15px 0}#transfers{bottom:25px;right:30px;background:#fcfdff;border-color:#dde6f2;z-index:90}#toast{bottom:25px;background:#293e5b;z-index:110}#drop-overlay{inset:0;background:#e7f1ffed;border-color:#73a9ef;color:#3b83dd;z-index:95}
@media(min-width:1500px){main#app{inset:90px 28px 25px 0}.app-header{height:90px}.sidebar,.settings-nav{width:260px}#entries.grid{grid-template-columns:repeat(auto-fill,minmax(175px,1fr))}.grid .file{min-height:190px}.file-icon{height:115px}.folder-art{width:128px;height:107px}.thumbnail{max-width:150px;max-height:115px}.filename{font-size:16px}.grid .file-meta{font-size:13px}}
@media(max-width:1000px) and (min-width:651px){.sidebar,.settings-nav{width:175px;padding-left:12px;padding-right:12px}.nav{padding:13px 10px;font-size:13px}.toolbar{padding:15px;gap:6px}.search{width:145px}#entries.grid{grid-template-columns:repeat(auto-fill,minmax(122px,1fr))}.folder-art{width:94px}.thumbnail{max-width:100px}.settings-page{padding:30px}}
@media(max-width:650px){.app-header{height:calc(76px + env(safe-area-inset-top));padding:calc(12px + env(safe-area-inset-top)) 17px 12px;gap:11px}.brand-mark{width:29px}#app-switch{font-size:20px;padding:10px 14px}#app-menu{left:16px;top:calc(69px + env(safe-area-inset-top));width:225px}#app-menu button{min-height:50px}main#app{inset:calc(76px + env(safe-area-inset-top)) 0 0;display:flex;flex-direction:column}.sidebar{position:static;transform:none;width:100%;padding:8px 12px 12px;display:flex;flex-direction:row;gap:6px;flex-shrink:0;overflow:auto;box-shadow:none;background:transparent}.nav{min-width:max-content;min-height:44px;width:auto;padding:11px 14px;font-size:13px;border-radius:18px;gap:6px}.nav svg{width:17px;height:17px}.workspace{border-radius:22px 22px 0 0;min-height:0}.toolbar{min-height:110px;height:auto;padding:12px 14px 8px;gap:5px;flex-wrap:wrap}.history .icon-button{width:33px;min-height:44px}#breadcrumbs button{font-size:13px;max-width:130px;min-height:44px}.view-switch{margin-left:auto}.view-switch .icon-button{width:36px;min-height:40px}.search{order:5;width:100%;margin-top:0;padding:9px 12px}.search input{font-size:16px}.actionbar{padding:8px 14px 12px;gap:5px}.actionbar h1{font-size:18px}.actions{gap:4px}#touch-select{display:inline-flex;font-size:12px;min-height:44px;padding:6px}#new-folder{font-size:0;padding:8px;min-height:44px}#upload-folder{display:none}.actions .primary-button{font-size:12px;min-height:44px;padding:8px 10px}.actions .icon-button{width:32px;min-height:44px}#file-area{padding:0 10px 16px}#entries.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 3px}.grid .file{min-height:142px;padding:10px 5px;gap:5px}.file-icon{width:100%;height:75px;padding:0;justify-content:center}.folder-art{width:85px;height:73px}.thumbnail{max-width:100%;max-height:75px;border-radius:8px}.document-art{width:56px;height:72px}.filename{font-size:12px;line-height:17px;padding:0 2px}.grid .file-meta{font-size:10px;padding-left:2px}.list .file{grid-template-columns:30px 1fr 65px;min-height:52px}.list .date-meta,.list-heading{display:none}.statusbar{height:calc(34px + env(safe-area-inset-bottom));padding:0 14px env(safe-area-inset-bottom);font-size:10px}.settings-nav{width:100%;padding:8px 13px 12px;flex-direction:row;gap:5px;overflow:auto}.settings-nav button{font-size:12px;padding:12px;min-height:44px}.settings-nav button svg{width:17px}#settings-app{inset:calc(76px + env(safe-area-inset-top)) 0 0;flex-direction:column}.settings-page{padding:25px 22px calc(25px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;min-height:0}.settings-page input:not([type=checkbox]){font-size:16px;min-height:44px}.settings-page .quiet-button,.settings-page .primary-button{min-height:44px}.about-page dl{font-size:13px;grid-template-columns:1fr 1.7fr;gap:12px}.about-mark svg{width:155px;height:135px}#trash-section{padding:20px 16px}.trash-row{flex-wrap:wrap;gap:10px}.trash-info{min-width:65%}.trash-row button{min-height:44px;padding:9px}#preview{width:100%;max-width:100%;height:calc(100dvh / var(--zoom, 1));max-height:calc(100dvh / var(--zoom, 1));border:0;border-radius:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}#preview header .icon-button{min-height:44px}#preview-body{padding:12px}.text-editor textarea{font-size:16px}#context-menu button{min-height:44px}#transfers{bottom:calc(45px + env(safe-area-inset-bottom));right:12px}#toast{bottom:calc(42px + env(safe-area-inset-bottom))}dialog input{font-size:16px}.user-choices{gap:12px}.user-choices button{min-width:110px}.status-hint{display:none}}
:root .viewer-content{height:100%;width:100%;display:flex;align-items:center;justify-content:center;min-height:0}
.cooling-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 16px}.cooling-metric{display:flex;flex-direction:column;gap:5px;padding:14px 16px;border:1px solid #e2e9f2;border-radius:13px;background:#f8faff}.cooling-metric span{color:#8290a4;font-size:12px}.cooling-metric strong{font-size:18px;font-weight:600}.settings-page .cooling-note{margin:0 0 16px;color:#b54545}.management-page .management-header{position:relative;display:flex;align-items:center;justify-content:center;margin:0 0 25px}.management-page .management-header h1{margin:0}.management-page .status-toggle{position:absolute;right:0;top:50%;transform:translateY(-50%);border:1px solid #e4eaf2;border-radius:999px;padding:9px 16px;font-size:13px;font-weight:600;color:#1f2733;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #edf1f6,inset 0 1px 0 #ffffff;transition:transform .07s ease,box-shadow .07s ease,background .15s ease}.management-page .status-toggle:hover{background:linear-gradient(#ffffff,#eef3fa)}.management-page .status-toggle.open,.management-page .status-toggle:active{transform:translateY(-50%) translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}.management-page .status-popup{position:absolute;right:0;top:calc(100% + 16px);width:260px;background:#fafcff;border:1px solid #e0e7f1;box-shadow:0 10px 26px #243b651d;border-radius:20px;padding:16px;z-index:30;opacity:0;visibility:hidden;pointer-events:none;transform:scale(.8);transform-origin:right top;transition:opacity .16s ease,transform .18s cubic-bezier(.35,.84,.4,1.02),visibility 0s linear .18s}.management-page .status-popup.open{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1);transition:opacity .12s ease,transform .16s cubic-bezier(.3,.78,.4,1),visibility 0s}.management-page .status-popup hr{border:0;border-top:1px solid #e7edf5;margin:14px 0}.management-page .status-metric{display:flex;justify-content:space-between;align-items:baseline;padding:5px 0;font-size:13px;color:#77849a}.management-page .status-metric strong{color:#182235;font-size:15px;font-variant-numeric:tabular-nums}.management-page .status-note{margin:10px 0 0;color:#b54545;font-size:12px;line-height:1.5}.management-page .status-reboot{width:100%;border:1px solid #e0e6f0;background:#f8faff;border-radius:11px;padding:10px;font-size:13px;font-weight:600;color:#28364a}.management-actions{display:flex;flex-direction:column;gap:10px;max-width:420px;margin:0 auto;width:100%}.press-key{border:1px solid #e4eaf2;border-radius:999px;padding:9px 18px;font-size:13px;font-weight:500;color:#1f2733;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff;transition:transform .07s ease,box-shadow .07s ease,background .15s ease}.press-key:hover{background:linear-gradient(#ffffff,#eef3fa)}.press-key:active{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
@media(max-width:650px){.cooling-metrics{gap:5px}.cooling-metric{padding:10px 8px}.cooling-metric span{font-size:11px}.cooling-metric strong{font-size:14px}}
.disk-page-header{position:relative;display:flex;align-items:center;justify-content:center;margin:0 0 25px}.disk-page-header .disk-back{position:absolute;left:0;top:50%;transform:translateY(-50%)}.disk-page-header .disk-back:active{transform:translateY(-50%) translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}.disk-page-heading{text-align:center;margin:0}.disk-page-heading h1{margin:0}.disk-list{max-width:680px;margin:0 auto;width:100%}.disk-card{padding:20px 0;border-top:1px solid #e5ebf3}.disk-heading{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.disk-heading strong{font-size:17px}.disk-heading span{color:#8190a4;white-space:nowrap}.disk-card p{margin:9px 0 15px}.disk-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.disk-actions select{min-height:40px;border:1px solid #dce5f0;border-radius:11px;background:#fff;padding:8px 12px;color:#27344b;font:inherit}@media(max-width:650px){.disk-actions select{width:100%;min-height:44px}}
.storage-view{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;text-align:center}.storage-view h1{margin:0 0 32px}.storage-content{display:contents}.storage-card{width:min(100%,640px)}.storage-bar{height:12px;margin:0 0 14px;border-radius:999px;background:#e9eef5;overflow:hidden}.storage-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#62a5fb,#247cff);transition:width .25s ease}.settings-page .storage-card p{margin:0;color:#8995a8;font-size:16px;font-weight:600}@media(max-width:650px){.storage-view h1{margin-bottom:26px}.settings-page .storage-card p{font-size:14px}}
@media(min-width:1000px){
  .app-header{gap:14px}
  .app-header>.brand-mark,.app-header>#app-switch,.app-header>#user-button{flex-shrink:0}
  .app-header>.toolbar{flex:1;min-width:0;height:auto;min-height:0;padding:0 0 0 12px;gap:12px;flex-wrap:nowrap}
  .app-header .history,.app-header .view-switch{flex-shrink:0}
  .app-header #breadcrumbs{min-width:60px}
  .app-header .search{flex:0 1 250px;min-width:140px;width:250px;margin:0}
  body[data-app=files] .header-spacer{display:none}
  body[data-app=settings] .app-header>.toolbar{display:none}
  .sidebar{padding-top:24px}
  .actionbar{padding-top:24px}
}
.users-content{max-width:420px;margin:0 auto;width:100%}.users-group,.sheet-group{background:#fff;border:1px solid #e3e9f2;border-radius:16px;overflow:hidden}.users-group .user-row{width:100%;text-align:left;padding:12px 16px;border:0;border-bottom:1px solid #edf1f6;border-radius:0;background:none;gap:13px;justify-content:flex-start;color:inherit;font:inherit}.users-group .user-row:last-child{border-bottom:0}.users-group button.user-row{cursor:pointer;transition:background .12s ease}.users-group button.user-row:hover{background:#f5f8fd}.users-group button.user-row:active{background:#edf2fa}.user-you{color:#8a95a6;font-weight:400}.user-chevron{color:#b3bdca;font-size:22px;line-height:1;padding-left:6px}.users-actions{display:flex;justify-content:flex-end;margin-top:14px}
dialog.user-sheet{width:min(420px,calc(calc(100vw / var(--zoom, 1)) - 32px));padding:24px;border-radius:20px;background:#f6f8fc;animation:sheet-in .18s cubic-bezier(.3,.78,.4,1)}dialog.user-sheet.closing{animation:sheet-out .14s ease forwards}@keyframes sheet-in{from{opacity:0;transform:scale(.92)}}@keyframes sheet-out{to{opacity:0;transform:scale(.92)}}dialog.user-sheet h2{margin:0 0 16px;font-size:19px;text-align:center}.sheet-hero{text-align:center;margin-bottom:6px}.sheet-hero .avatar{width:76px;height:76px;font-size:32px}.sheet-hero h2{margin:12px 0 4px!important}.sheet-hero p{margin:0;font-size:13px;color:#8190a5}.sheet-caption{font-size:12px;color:#8190a5;margin:18px 6px 7px!important}.sheet-row{display:flex!important;align-items:center;gap:12px;padding:11px 14px;margin:0!important;border-bottom:1px solid #edf1f6;font-size:14px;color:#27344b}.sheet-row:last-child{border-bottom:0}.sheet-row>span{flex-shrink:0}.user-sheet .sheet-row input[type=text]{flex:1;min-width:0;border:0;margin:0;padding:0;text-align:right;background:transparent;font-size:14px;color:#28364a;outline:none;box-shadow:none}.sheet-storage{flex-direction:column;align-items:stretch!important}.sheet-storage .storage-bar{height:8px;margin:4px 0 2px}.sheet-hint{font-size:12px!important;color:#8a95a6!important;margin:8px 6px 0!important;line-height:1.5}.sheet-actions{justify-content:space-between!important;margin-top:22px}
.round-key{width:40px;height:40px;padding:0!important;border-radius:50%!important;display:inline-flex;align-items:center;justify-content:center}.round-key svg{width:19px;height:19px}.disk-page-header .disk-action{position:absolute;right:0;top:50%;transform:translateY(-50%)}.disk-page-header .disk-action:active{transform:translateY(-50%) translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
dialog.user-sheet.compact-sheet{width:fit-content;min-width:0;max-width:calc(calc(100vw / var(--zoom, 1)) - 32px);padding:22px}.compact-sheet form{display:flex;flex-direction:column;align-items:center}.user-sheet .pill-input{display:block;max-width:calc(calc(100vw / var(--zoom, 1)) - 80px);transition:width .12s ease;margin:0;padding:12px 18px;border:1px solid #e4eaf2;border-radius:999px;background:#fff;text-align:center;font-size:16px;color:#1f2733;box-shadow:inset 0 1px 2px #e6ecf4;outline:none}.user-sheet .pill-input:focus{border-color:#9dbcf0;box-shadow:0 0 0 3px #287eff22}.compact-sheet .form-error{text-align:center;margin:8px 0 0;font-size:12px}.compact-sheet .form-error:empty{display:none}.sheet-round-actions{display:flex;justify-content:center;gap:14px;margin-top:16px}
dialog.user-sheet.profile-sheet{width:min(270px,calc(calc(100vw / var(--zoom, 1)) - 32px))}.profile-sheet .sheet-hero h2{margin:12px 0 0!important}.sheet-usage{margin-top:18px;text-align:center}.sheet-usage .storage-bar{height:8px;margin:0 0 8px}.sheet-usage p{margin:0;font-size:12px;color:#8190a5}dialog.user-sheet h2.sheet-question{margin:2px 0 0;font-size:18px;text-align:center}.compact-sheet{text-align:center}.danger-key svg{color:#e0403c;stroke:#e0403c}
.users-list{display:flex;flex-direction:column;gap:10px}.press-key.user-key{display:flex;align-items:center;justify-content:flex-start;gap:12px;width:100%;padding:7px 20px 7px 8px;font-size:14px;text-align:left}.user-key .avatar,.user-key .key-icon{width:32px;height:32px;font-size:14px}.user-key .key-icon svg{width:19px;height:19px}
.key-icon{width:40px;height:40px;border-radius:50%;color:#1f2733;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.key-icon svg{width:22px;height:22px}
.status-popup .status-reboot-key{display:block;margin:0 auto}
.user-key .key-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-key .key-value{color:#8190a5;font-size:13px;white-space:nowrap}.sheet-mark{width:64px;height:64px;margin:0 auto}.sheet-mark svg{width:34px;height:34px}.profile-sheet .sheet-hero p{margin-top:4px}.compact-sheet .sheet-question{margin-bottom:14px!important}.compact-sheet form .sheet-question{margin-bottom:14px!important}.profile-sheet .users-list .press-key.user-key{padding:6px 16px 6px 6px;font-size:14px}.profile-sheet .users-list .avatar,.profile-sheet .users-list .key-icon{width:34px;height:34px;font-size:15px}
.press-key.answer-key{min-width:64px;height:40px;padding:0 18px;border-radius:999px;font-size:14px}.press-key.answer-key.danger-key{color:#e0403c}
.account-center{display:flex;flex-direction:column;align-items:center;margin:4px 0 26px}.account-center h2{margin:12px 0 0!important;font-size:21px}.avatar-button{padding:0;border:0;background:none;border-radius:50%;cursor:pointer;transition:transform .1s ease}.avatar-button:active{transform:scale(.96)}.avatar-button .avatar{width:96px;height:96px;font-size:40px}.account-actions{max-width:420px;margin:0 auto;width:100%}.color-row{display:flex;gap:10px;justify-content:center}.color-choice{padding:3px;border:2px solid transparent;border-radius:50%;background:none}.color-choice.chosen{border-color:#287eff}.color-choice .avatar{width:38px;height:38px;font-size:16px}.compact-sheet form>.pill-input+.pill-input{margin-top:10px}.user-popup{position:absolute;right:28px;top:calc(100% - 4px);background:#fafcff;border:1px solid #e0e7f1;box-shadow:0 10px 26px #243b651d;border-radius:20px;padding:12px;z-index:60;opacity:0;visibility:hidden;pointer-events:none;transform:scale(.8);transform-origin:right top;transition:opacity .16s ease,transform .18s cubic-bezier(.35,.84,.4,1.02),visibility 0s linear .18s}.user-popup.open{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1);transition:opacity .12s ease,transform .16s cubic-bezier(.3,.78,.4,1),visibility 0s}.user-popup .press-key{white-space:nowrap}
#login-screen .user-choices button{border:0;background:none;box-shadow:none;transition:transform .1s ease}#login-screen .user-choices button:hover{background:none}#login-screen .user-choices button:active{transform:scale(.96)}#login-form{display:flex;flex-direction:column;align-items:center;width:auto}#login-form h1{text-align:center}#login-form .pill-input{display:block;width:240px;max-width:calc(calc(100vw / var(--zoom, 1)) - 48px);margin:0;padding:12px 18px;border:1px solid #e4eaf2;border-radius:999px;background:#fff;text-align:center;font-size:16px;color:#1f2733;box-shadow:inset 0 1px 2px #eef2f7;outline:none}#login-form .pill-input:focus{border-color:#9dbcf0;box-shadow:0 0 0 3px #287eff22}#login-error{margin:8px 0 0;text-align:center;font-size:12px;color:#c44d50}#login-error:empty{display:none}
.about-page{padding-top:48px}.about-page .about-mark svg{width:200px;height:156px;fill:none;stroke:none}.about-screen{fill:#fff;stroke:#dfe6f0;stroke-width:1.5}.about-glass{fill:#e8f2ff}.about-logo{fill:none;stroke:#297dff;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.about-stand{fill:#e4eaf2}.about-page h1{font-size:30px;margin:18px 0 6px;letter-spacing:-.5px}.about-page .about-version{margin:0 0 30px;font-size:13px;color:#8190a5}.about-facts{max-width:420px;margin:0 auto;display:flex;flex-direction:column;gap:10px;text-align:left}.about-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 20px;border:1px solid #e4eaf2;border-radius:22px;background:linear-gradient(#ffffff,#f7f9fd)}.about-row span{color:#8190a5;font-size:13px;white-space:nowrap}.about-row strong{font-size:14px;font-weight:500;text-align:right}.about-disk{flex-direction:column;align-items:stretch}.about-line{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.about-disk .storage-bar{height:6px;margin:10px 0 2px}
.scale-row{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}.press-key.scale-key{width:64px;height:64px;padding:0;border-radius:50%;font-weight:500}.press-key.scale-key.chosen{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
@media(min-width:651px){main#app,#settings-app{left:20px;justify-content:center;gap:16px}.sidebar,.settings-nav{width:auto;min-width:0;height:auto;align-self:flex-start;padding:12px;gap:4px;background:#ffffffd9;border-radius:26px}.sidebar .nav,.settings-nav button{white-space:nowrap}.settings-page{flex:0 1 720px;min-width:0;padding:40px}.workspace{flex:0 1 1200px;min-width:0}}
.settings-page>.users-list{max-width:420px;margin:0 auto;width:100%}
/* Боковые вкладки, переключатель приложения и аватар — такие же нажимные клавиши; активная остаётся нажатой. */
.sidebar .nav,.settings-nav button,#app-switch,#user-button{border:1px solid #e4eaf2;color:#1f2733;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff;transition:transform .07s ease,box-shadow .07s ease,background .15s ease}.sidebar .nav,.settings-nav button{border-radius:999px;font-weight:500}.sidebar .nav:hover,.settings-nav button:hover,#app-switch:hover,#user-button:hover{background:linear-gradient(#ffffff,#eef3fa)}.sidebar .nav:active,.sidebar .nav.active,.settings-nav button:active,.settings-nav button.active,#app-switch:active,#app-switch[aria-expanded=true],#user-button:active,#user-button[aria-expanded=true]{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef;color:#1f2733}.sidebar .nav svg,.settings-nav button svg{color:#1f2733}#user-button{border-radius:50%;padding:3px}
@media(min-width:651px){.sidebar .nav,.settings-nav button{min-height:48px;padding:15px 17px;font-size:14px;gap:10px}.sidebar .nav svg,.settings-nav button svg{width:19px;height:19px}.sidebar,.settings-nav{gap:9px}}
#user-button,#user-button:hover,#user-button:active,#user-button[aria-expanded=true]{border:0;padding:0;background:none;box-shadow:none}#user-button{transition:transform .12s ease}#user-button:active,#user-button[aria-expanded=true]{transform:scale(.92)}#user-button .avatar{transition:box-shadow .12s ease}#user-button:active .avatar,#user-button[aria-expanded=true] .avatar{box-shadow:inset 0 2px 5px #00000033}
@media(min-width:651px){#settings-app{display:grid;grid-template-columns:auto minmax(0,720px);grid-template-rows:fit-content(100%);justify-content:center;align-content:start;align-items:stretch}.settings-nav{align-self:start}.settings-page{min-height:0}.settings-page.management-page{overflow:visible}}
@media(min-width:651px){.settings-page{min-height:min(592px,calc(100dvh / var(--zoom, 1) - 102px))}}
/* Раскладка компьютера: [переключатель | полоска] над [боковая панель | область]. */
.switch-slot,.top-strip{display:none}
@media(min-width:651px){
.app-header{display:none}
main#app,#settings-app{top:20px;left:20px;display:grid;grid-template-columns:210px minmax(0,1200px);grid-template-rows:52px minmax(0,1fr);justify-content:center;align-content:start;gap:16px}
#settings-app{grid-template-columns:210px minmax(0,720px);grid-template-rows:52px fit-content(calc(100% - 68px))}
.switch-slot{display:block;position:relative;grid-column:1;grid-row:1}
.sidebar,.settings-nav{grid-column:1;grid-row:2;width:auto!important;align-self:start}
.top-strip{display:flex;align-items:center;gap:10px;grid-column:2;grid-row:1;position:relative;z-index:30;min-width:0;padding:0 8px 0 10px;background:#ffffffd9;border-radius:26px}
.workspace,.settings-page{grid-column:2;grid-row:2}
.settings-page{min-height:min(592px,calc(100dvh / var(--zoom, 1) - 104px))}
#app-switch{width:100%;height:52px;justify-content:space-between;padding:0 18px;font-size:18px;border-radius:26px}
#app-menu{left:0;top:calc(100% + 8px);width:100%;z-index:60}
.top-strip .toolbar{display:flex!important;flex:1;min-width:0;height:auto;min-height:0;padding:0;gap:10px;background:none;border:0}
.top-strip .history{display:flex;gap:6px}
.top-strip .history .icon-button,.top-strip .view-switch .icon-button{width:36px;height:36px;border-radius:50%;border:1px solid #e4eaf2;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff;transition:transform .07s ease,box-shadow .07s ease,background .15s ease}
.top-strip .history .icon-button:active:not(:disabled),.top-strip .view-switch .icon-button:active,.top-strip .view-switch .icon-button.active{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
.top-strip .history .icon-button:disabled{opacity:.45}
.top-strip .history svg,.top-strip .view-switch svg{width:18px;height:18px;color:#1f2733}
.top-strip .view-switch{display:flex;gap:6px;padding:0;background:none;border-radius:0;flex-shrink:0}
.top-strip #breadcrumbs{flex:1;min-width:60px}
.top-strip .search{flex:0 1 230px;min-width:120px;width:auto;margin:0;padding:8px 14px;border:1px solid #e4eaf2;border-radius:999px;background:#fff;box-shadow:inset 0 1px 2px #eef2f7;color:#8190a5}
.top-strip .search:focus-within{border-color:#9dbcf0;box-shadow:0 0 0 3px #287eff22}
.top-strip #user-button{flex-shrink:0;margin-left:auto}
.top-strip #user-button .avatar{width:36px;height:36px;font-size:15px}
.top-strip .user-popup{right:4px;top:calc(100% + 10px)}
.strip-title{flex:1;min-width:0;display:flex;align-items:center}
.strip-title>*{flex:1;margin:0!important}
.strip-title h1{font-size:19px;margin:0!important}
.strip-title .disk-page-header{min-height:40px}
.settings-page{padding-top:32px}
}
@media(max-width:650px){#settings-app .top-strip{display:flex;align-items:center;order:1;margin:0 12px 10px;padding:6px 8px;background:#ffffffd9;border-radius:22px;position:relative;z-index:30}#settings-app .settings-page{order:2}.strip-title{flex:1;min-width:0;display:flex}.strip-title>*{flex:1;margin:0!important}.strip-title h1{font-size:17px;margin:0!important}}
/* Меню «Файлы / Настройки» — как остальные всплывающие окна, пункты — нажимные клавиши. */
#app-menu{background:#fafcff;border:1px solid #e0e7f1;box-shadow:0 10px 26px #243b651d;border-radius:20px;padding:10px;display:flex;flex-direction:column;gap:8px;transform-origin:left top;animation:menu-in .16s cubic-bezier(.3,.78,.4,1)}#app-menu[hidden]{display:none}@keyframes menu-in{from{opacity:0;transform:scale(.8)}}
#app-menu button{min-height:44px;padding:0 16px;gap:10px;font-size:14px;font-weight:500;justify-content:flex-start;color:#1f2733;border:1px solid #e4eaf2;border-radius:999px;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff;transition:transform .07s ease,box-shadow .07s ease,background .15s ease}#app-menu button:hover{background:linear-gradient(#ffffff,#eef3fa)}#app-menu svg{width:19px;height:19px;color:#1f2733}
#app-menu button:active,body[data-app=files] #app-menu button[data-app=files],body[data-app=settings] #app-menu button[data-app=settings]{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
/* Контекстное меню файлов — такое же всплывающее окно с нажимными клавишами. */
#context-menu{background:#fafcff;border:1px solid #e0e7f1;box-shadow:0 10px 26px #243b651d;border-radius:20px;padding:10px;display:flex;flex-direction:column;gap:6px;min-width:220px;transform-origin:left top;animation:menu-in .14s cubic-bezier(.3,.78,.4,1)}#context-menu[hidden]{display:none}
#context-menu button{min-height:40px;padding:0 16px;gap:10px;font-size:14px;font-weight:500;justify-content:flex-start;color:#1f2733;border:1px solid #e4eaf2;border-radius:999px;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff;transition:transform .07s ease,box-shadow .07s ease,background .15s ease}
#context-menu button:hover{background:linear-gradient(#ffffff,#eef3fa)}#context-menu button:active{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
#context-menu svg{width:18px;height:18px;color:#1f2733}#context-menu hr{margin:2px 6px;border:0;border-top:1px solid #e7edf5}#context-menu .delete-action,#context-menu .delete-action svg{color:#e0403c}
/* Окна действий с файлами и просмотр — в общем стиле. */
#dialog{width:fit-content;min-width:0;padding:22px;border-radius:20px;background:#f6f8fc;text-align:center;animation:sheet-in .18s cubic-bezier(.3,.78,.4,1)}
#dialog h2{font-size:18px;margin:2px 0 14px}
#dialog-description{display:none}
#dialog[data-mode=browse] #dialog-description{display:block;margin:0 0 10px;font-size:12px;color:#8190a5}
#dialog #dialog-input{display:block;width:260px;max-width:calc(100vw / var(--zoom, 1) - 80px);margin:0 auto;padding:12px 18px;border:1px solid #e4eaf2;border-radius:999px;background:#fff;text-align:center;font-size:16px;color:#1f2733;box-shadow:inset 0 1px 2px #eef2f7;outline:none}
#dialog #dialog-input:focus{border-color:#9dbcf0;box-shadow:0 0 0 3px #287eff22}
#dialog #dialog-input[hidden]{display:none}
#dialog-error{text-align:center;margin:8px 0 0;font-size:12px}#dialog-error:empty{display:none}
#dialog .dialog-actions{justify-content:center;gap:14px;margin-top:16px}
#dialog[data-mode=confirm] .dialog-actions{margin-top:4px}
#destination-browser{display:flex;flex-direction:column;gap:6px;width:320px;max-width:calc(100vw / var(--zoom, 1) - 80px);max-height:calc(50dvh / var(--zoom, 1));overflow:auto;padding:2px;text-align:left}
#destination-browser[hidden]{display:none}
#destination-browser button,#preview .quiet-button,#preview .primary-button{min-height:40px;padding:0 16px;gap:10px;font-size:14px;font-weight:500;justify-content:flex-start;color:#1f2733;border:1px solid #e4eaf2;border-radius:999px;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff;transition:transform .07s ease,box-shadow .07s ease,background .15s ease}
#destination-browser button:active,#destination-browser button.chosen,#preview .quiet-button:active,#preview .primary-button:active{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
#preview .quiet-button,#preview .primary-button{justify-content:center}
#preview header{padding:0 12px 0 22px;border-bottom:1px solid #edf1f6;gap:12px}
#preview-title{font-size:15px;font-weight:500}
#preview header>div{gap:10px}
#preview header .icon-button{width:38px;height:38px;border-radius:50%;border:1px solid #e4eaf2;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff;transition:transform .07s ease,box-shadow .07s ease}
#preview header .icon-button:active{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
#preview header .icon-button svg{width:18px;height:18px;color:#1f2733}
#preview[open]{animation:sheet-in .18s cubic-bezier(.3,.78,.4,1)}
/* Кнопки раздела «Файлы», Корзины и окна загрузок — нажимные клавиши. */
#app .actions .quiet-button,#app .actions .primary-button,#app .actions .icon-button,#empty-upload,#load-more,#empty-trash,.trash-row button,#transfers button{min-height:40px;padding:0 16px;gap:8px;font-size:13px;font-weight:500;color:#1f2733;border:1px solid #e4eaf2;border-radius:999px;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff;transition:transform .07s ease,box-shadow .07s ease,background .15s ease}
#app .actions .quiet-button:hover,#app .actions .primary-button:hover:not(:disabled),#app .actions .icon-button:hover:not(:disabled),#empty-upload:hover,#load-more:hover,#empty-trash:hover,.trash-row button:hover,#transfers button:hover{background:linear-gradient(#ffffff,#eef3fa)}
#app .actions .quiet-button:active,#app .actions .primary-button:active,#app .actions .icon-button:active:not(:disabled),#app .actions .icon-button[aria-expanded=true],#empty-upload:active,#load-more:active,#empty-trash:active,.trash-row button:active,#transfers button:active{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
#app .actions svg,#empty-upload svg,#transfers button svg{color:#1f2733;width:17px;height:17px}
#app .actions #upload-folder,#app .actions .icon-button{width:40px;padding:0;border-radius:50%}
#app .actions .icon-button:disabled{opacity:.45}
#app .actions{gap:10px;align-items:center}
.trash-row button{min-height:36px;font-size:12px}
#transfers{border:1px solid #e0e7f1;border-radius:20px;background:#fafcff;box-shadow:0 10px 26px #243b651d;padding:12px 16px}
#transfers>header{border-bottom-color:#e7edf5}#transfers>header strong{font-size:13px;font-weight:500}
.transfer{border-bottom-color:#edf1f6}.transfer>div{font-size:12px}.transfer small{font-size:11px;color:#8190a5}
.transfer progress{accent-color:#287eff}
/* «Файлы»: заголовок папки — по центру верхней полоски; поиск — круглое поле. */
#app .actions #new-folder{display:none}
@media(min-width:651px){
.top-strip #breadcrumbs{display:none}
#app .top-strip{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px}.strip-side{display:flex;align-items:center;gap:10px;min-width:0}.strip-end{justify-content:flex-end}.workspace>.toolbar{display:none}.top-strip #folder-title{margin:0;max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:19px;letter-spacing:0;text-align:center}
.top-strip .toolbar{justify-content:flex-start}

.top-strip .search{flex:0 1 200px;min-width:110px;padding:9px 16px;gap:0;border:1px solid #e4eaf2;border-radius:999px;background:#fff;box-shadow:inset 0 1px 2px #eef2f7}
.top-strip .search>span{display:none}
.top-strip .search input{text-align:center;font-size:14px;color:#1f2733}
.top-strip #user-button{margin-left:0}
#trash-section>header h1{visibility:hidden}
.actionbar{justify-content:flex-end}
}
@media(min-width:651px) and (max-width:1100px){.top-strip .search{flex-basis:130px;min-width:80px;padding:9px 10px}.top-strip #folder-title{font-size:16px}}
/* Над файлами одна круглая кнопка «+» (загрузка); папка и действия — через правую кнопку мыши. */
#app .actions #selection-menu{display:none}
#app .actions #upload{width:40px;padding:0;border-radius:50%;font-size:0;gap:0}
#app .actions #upload svg{width:19px;height:19px}
/* Подсказка при наведении на круглые кнопки загрузки. */
#app .actions [data-tip]{position:relative}
#app .actions [data-tip]::after{content:attr(data-tip);position:absolute;top:calc(100% + 8px);right:0;z-index:50;white-space:nowrap;padding:6px 12px;font-size:12px;font-weight:500;color:#1f2733;background:#fafcff;border:1px solid #e0e7f1;border-radius:999px;box-shadow:0 6px 16px #243b651a;opacity:0;transform:translateY(-3px);transition:opacity .12s ease,transform .12s ease;pointer-events:none}
@media(hover:hover){#app .actions [data-tip]:hover::after{opacity:1;transform:none;transition-delay:.35s}}
/* «Файлы» и «Чат» — тех же размеров, что «Настройки». */
@media(min-width:651px){main#app{grid-template-columns:210px minmax(0,720px);grid-template-rows:52px min(592px,calc(100dvh / var(--zoom, 1) - 104px))}}
/* Уголок для изменения размера области. */
.resize-grip{display:none}
@media(min-width:651px){
main#app{grid-template-columns:210px minmax(0,var(--files-w,720px));grid-template-rows:52px min(var(--files-h,592px),calc(100dvh / var(--zoom, 1) - 104px))}
#chat-app{grid-template-columns:210px minmax(0,var(--chat-w,720px))!important;grid-template-rows:52px min(var(--chat-h,592px),calc(100dvh / var(--zoom, 1) - 104px))!important}
.workspace,#chat-app .chat-content{position:relative}
.resize-grip{display:block;position:absolute;right:6px;bottom:6px;width:18px;height:18px;z-index:5;cursor:nwse-resize;touch-action:none;border-radius:0 0 14px 0;background:linear-gradient(135deg,transparent 45%,#c3cddb 46%,#c3cddb 52%,transparent 53%,transparent 65%,#c3cddb 66%,#c3cddb 72%,transparent 73%);opacity:.7;transition:opacity .15s ease}
.resize-grip:hover{opacity:1}
}
/* «Файлы»: без квадратной рамки у поиска; загрузка — только через меню; заголовок — по центру между стрелками и кнопками вида. */
.top-strip .search input:focus,.top-strip .search input:focus-visible{outline:none;box-shadow:none}
@media(min-width:651px){
#app .actions #upload,#app .actions #upload-folder{display:none}
#files-section .actionbar{display:none}
#app .top-strip{display:flex}
#app .top-strip #folder-title{flex:1;min-width:0;max-width:none}
}
/* Фото профиля в аватаре и окно обрезки. */
.avatar{position:relative;overflow:hidden}
.avatar>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.photo-upload-key{display:block;margin:0 auto 14px;min-height:40px}
.crop-sheet .crop-canvas{display:block;width:240px;height:240px;border-radius:50%;cursor:grab;touch-action:none;box-shadow:0 0 0 1px #e4eaf2,0 8px 24px #243b651a}
.crop-sheet .crop-canvas:active{cursor:grabbing}
.crop-zoom{display:block;width:200px;margin:18px auto 0;accent-color:#287eff}
/* Вид файлов в духе Finder (компьютер). */
@media(min-width:651px){
#entries.grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px 6px;padding:4px 2px}
#entries.grid .file{min-height:0;padding:6px 4px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;border-radius:12px;background:none;outline:none}
#entries.grid .file:hover{background:none}
#entries.grid .file-icon{width:88px;height:74px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:12px;transition:background .12s ease}
#entries.grid .file:hover .file-icon{background:#f1f4f8}
#entries.grid .file.selected .file-icon{background:#e4e9f0}
#entries.grid .folder-art{width:72px;height:59px;filter:drop-shadow(0 1px 1px #1f5fb01f)}
#entries.grid .document-art{width:50px;height:64px;border-radius:5px 15px 5px 5px;background:#fff;border:1px solid #dfe5ee;box-shadow:0 1px 3px #1f27330f}
#entries.grid .document-art svg{width:24px;height:24px}
#entries.grid .document-art span{font-size:8px;bottom:6px;color:#8190a5;font-weight:600;letter-spacing:.3px}
#entries.grid .thumbnail{max-width:84px;max-height:68px;border-radius:5px;box-shadow:0 1px 3px #1f273329,0 0 0 1px #1f27330d}
#entries.grid .filename{max-width:100%;padding:1px 6px;border-radius:6px;font-size:13px;line-height:17px;font-weight:450;text-align:center;color:#1f2733;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
#entries.grid .file.selected .filename{background:#287eff;color:#fff}
#entries.grid .file-meta{display:none}
#entries.grid .file-check{display:none}
#entries.list{display:flex;flex-direction:column;gap:0;padding:0 2px}
#entries.list .list-heading{display:grid;grid-template-columns:22px minmax(0,1fr) 90px 150px;gap:10px;align-items:center;padding:0 12px 6px;margin-bottom:4px;border-bottom:1px solid #edf1f6;font-size:11px;font-weight:500;color:#8190a5}
#entries.list .file{display:grid;grid-template-columns:22px minmax(0,1fr) 90px 150px;gap:10px;align-items:center;min-height:32px;padding:0 12px;border-radius:8px;background:none}
#entries.list .file:nth-child(odd){background:#f5f7fa}
#entries.list .file:hover{background:#eef2f7}
#entries.list .file.selected{background:#287eff}
#entries.list .file-icon{width:22px;height:22px;padding:0;display:flex;align-items:center;justify-content:center}
#entries.list .folder-art{width:22px;height:18px;filter:none}
#entries.list .document-art{width:16px;height:20px;border-radius:2px 5px 2px 2px;background:#fff;border:1px solid #d7dee8;box-shadow:none}
#entries.list .document-art svg{width:10px;height:10px}
#entries.list .document-art span,#entries.list .document-art:before{display:none}
#entries.list .thumbnail{width:22px;height:22px;max-width:none;max-height:none;object-fit:cover;border-radius:4px}
#entries.list .filename{font-size:13px;line-height:18px;text-align:left;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1f2733;background:none}
#entries.list .file-meta{display:block;font-size:12px;color:#8190a5;padding:0;white-space:nowrap}
#entries.list .file.selected .filename,#entries.list .file.selected .file-meta{color:#fff}
#entries.list .file-check{display:none}
}
/* Отступ сверху у области файлов. */
@media(min-width:651px){#file-area{padding-top:18px}}
/* Просмотр по размеру содержимого (как Quick Look): фото, видео и аудио; текст, PDF и архивы — большим окном. */
#preview:has(.viewer-content>img),#preview:has(.viewer-content>video),#preview:has(.viewer-content>audio){width:fit-content;height:fit-content;min-width:320px;max-width:calc(95vw / var(--zoom, 1))}
#preview:has(.viewer-content>img) #preview-body,#preview:has(.viewer-content>video) #preview-body,#preview:has(.viewer-content>audio) #preview-body{height:auto;padding:0;background:#fff}
#preview .viewer-content>img,#preview .viewer-content>video{display:block;max-width:min(calc(95vw / var(--zoom, 1)),1600px);max-height:calc(85dvh / var(--zoom, 1) - 58px);width:auto;height:auto;object-fit:contain}
#preview:has(.viewer-content>audio) #preview-body{padding:22px}
#preview .viewer-content>audio{width:380px;max-width:100%}
#preview:has(.viewer-content>img) .viewer-content,#preview:has(.viewer-content>video) .viewer-content{display:block}
/* Рамка выделения файлов. */
#file-area{position:relative}
.select-box{position:absolute;z-index:6;pointer-events:none;border:1px solid #287eff8c;background:#287eff1a;border-radius:4px}
/* Пустые состояния: логотип по центру; Корзина — «Пусто» по центру области. */
#empty .empty-icon .empty-logo{width:96px;height:52px;fill:none;stroke:#297dff;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}
#empty h2{color:#1f2733;font-size:18px;font-weight:600;margin-top:6px}
#empty p{color:#8190a5;font-size:13px}
#trash-section:not([hidden]){display:flex;flex-direction:column}
#trash-section .trash-list{flex:1;display:flex;flex-direction:column}
#trash-section .trash-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:0;font-size:15px;color:#8190a5}
#trash-section>header[hidden]{display:none}
/* Телефон: без логотипа слева, переключатель разделов по центру вверху. */
@media(max-width:650px){
.app-header .brand-mark{display:none}
.app-header #app-switch{position:absolute;left:50%;transform:translateX(-50%)}
.app-header #app-switch:active,.app-header #app-switch[aria-expanded=true]{transform:translateX(-50%) translateY(1px)}
#app-menu{left:calc(50% - 112px);transform-origin:center top}
}
/* Телефон, Файлы: снизу вверх — вкладки разделов, поиск, стрелки и вид; всё в нашем стиле. */
@media(max-width:650px){
main#app{display:flex;flex-direction:column}
main#app>.workspace{order:1;flex:1;min-height:0;display:flex;flex-direction:column;border-radius:22px;margin:0 10px}
main#app>.sidebar{order:2;padding:10px 12px calc(10px + env(safe-area-inset-bottom));justify-content:space-between;gap:6px;overflow-x:auto}
main#app>.sidebar .nav{flex:1;justify-content:center;min-height:42px;padding:0 10px;font-size:12px}
main#app>.sidebar .nav svg{width:17px;height:17px}
.workspace>.toolbar{order:3;flex:none;min-height:0;padding:10px 12px 12px;gap:8px;border-top:1px solid #edf1f6;background:none}
.workspace>#files-section,.workspace>#trash-section{order:1;flex:1;min-height:0}
.workspace>.toolbar #breadcrumbs{flex:1;min-width:0}
.workspace>.toolbar .history{display:flex;gap:8px}
.workspace>.toolbar .history .icon-button,.workspace>.toolbar .view-switch .icon-button{width:40px;height:40px;min-height:40px;border-radius:50%;border:1px solid #e4eaf2;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff}
.workspace>.toolbar .history .icon-button:active:not(:disabled),.workspace>.toolbar .view-switch .icon-button:active,.workspace>.toolbar .view-switch .icon-button.active{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
.workspace>.toolbar .history .icon-button:disabled{opacity:.45}
.workspace>.toolbar .history svg,.workspace>.toolbar .view-switch svg{width:18px;height:18px;color:#1f2733}
.workspace>.toolbar .view-switch{display:flex;gap:8px;padding:0;background:none;border-radius:0}
.workspace>.toolbar .search{order:5;width:100%;margin:2px 0 0;padding:10px 16px;border:1px solid #e4eaf2;border-radius:999px;background:#fff;box-shadow:inset 0 1px 2px #eef2f7;color:#8190a5}
.workspace>.toolbar .search>span{display:none}
.workspace>.toolbar .search input{text-align:center;font-size:16px;color:#1f2733}
.workspace>.toolbar .search input:focus,.workspace>.toolbar .search input:focus-visible{outline:none;box-shadow:none}
.workspace>.toolbar #breadcrumbs button{min-height:40px;font-size:14px;color:#1f2733;background:none;border:0;box-shadow:none}
}
@media(max-width:650px){main#app>.sidebar{overflow:visible}main#app>.sidebar .nav{min-width:0;flex:1 1 0;flex-direction:column;gap:3px;min-height:52px;padding:6px 2px;font-size:11px;border-radius:18px;white-space:nowrap}main#app>.sidebar .nav svg{width:19px;height:19px}}
/* Без строки «N элементов» внизу. */
#files-section .statusbar{display:none}
/* Телефон: лупа, раскрывающаяся в поле поиска. */
.search-close{display:none}
@media(max-width:650px){
.workspace>.toolbar{flex-wrap:nowrap;align-items:center;gap:0}
.workspace>.toolbar>*{margin-right:8px}
.workspace>.toolbar>:last-child{margin-right:0}
.workspace>.toolbar .history,.workspace>.toolbar #breadcrumbs,.workspace>.toolbar .view-switch{max-width:240px;opacity:1;transition:max-width .32s cubic-bezier(.3,.78,.4,1),opacity .18s ease,margin .32s ease}
.workspace>.toolbar #breadcrumbs{flex:1 1 auto}
.workspace>.toolbar .search{order:0;flex:0 0 40px;width:auto;height:40px;margin:0 0 0 0;padding:0;justify-content:center;gap:0;overflow:hidden;transition:flex-basis .32s cubic-bezier(.3,.78,.4,1),padding .32s ease}
.workspace>.toolbar .search>span{display:flex;flex:none}
.workspace>.toolbar .search svg{width:18px;height:18px;color:#1f2733}
.workspace>.toolbar .search input{width:0;flex:0 0 0;opacity:0;padding:0;text-align:left;transition:opacity .2s ease}
.workspace>.toolbar .search-close{display:inline-flex;flex:0 0 0;width:0;height:40px;min-height:40px;padding:0;margin-right:0;opacity:0;overflow:hidden;border-radius:50%;pointer-events:none;transition:flex-basis .32s cubic-bezier(.3,.78,.4,1),opacity .2s ease,margin .32s ease}
.workspace>.toolbar .search-close svg{width:16px;height:16px;color:#1f2733}
.workspace>.toolbar.searching .history,.workspace>.toolbar.searching #breadcrumbs,.workspace>.toolbar.searching .view-switch{max-width:0;opacity:0;margin-right:0;overflow:hidden;pointer-events:none;flex:0 0 0}
.workspace>.toolbar.searching .search{flex:1 1 auto;padding:0 14px;justify-content:flex-start;margin-right:8px}
.workspace>.toolbar.searching .search input{flex:1 1 auto;width:100%;opacity:1;margin-left:8px}
.workspace>.toolbar.searching .search-close{flex-basis:40px;width:40px;opacity:1;pointer-events:auto}
}
/* Телефон: кнопка «⋯» с окошком вида вместо двух кнопок. */
.view-more{display:none}
@media(max-width:650px){
.workspace>.toolbar .view-switch{display:none}
.workspace>.toolbar .view-more{display:block;position:relative;flex:none;max-width:60px;transition:max-width .32s cubic-bezier(.3,.78,.4,1),opacity .18s ease,margin .32s ease}
.view-more>.press-key{width:40px;height:40px;min-height:40px;padding:0}
.view-more>.press-key svg{width:20px;height:20px;color:#1f2733;stroke-width:3}
.view-more>.press-key[aria-expanded=true]{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
.view-popup{position:absolute;right:0;bottom:calc(100% + 10px);z-index:60;display:flex;flex-direction:column;gap:6px;min-width:170px;padding:10px;background:#fafcff;border:1px solid #e0e7f1;border-radius:20px;box-shadow:0 10px 26px #243b651d;opacity:0;visibility:hidden;pointer-events:none;transform:scale(.8);transform-origin:right bottom;transition:opacity .16s ease,transform .18s cubic-bezier(.35,.84,.4,1.02),visibility 0s linear .18s}
.view-popup.open{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1);transition:opacity .12s ease,transform .16s cubic-bezier(.3,.78,.4,1),visibility 0s}
.view-popup .press-key{justify-content:flex-start;gap:10px;min-height:42px;padding:0 16px;font-size:14px}
.view-popup .press-key svg{width:18px;height:18px;color:#1f2733}
.view-popup .press-key.chosen{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
.workspace>.toolbar.searching .view-more{max-width:0;opacity:0;margin-right:0;overflow:hidden;pointer-events:none}
}
/* Телефон, нижняя строка: ‹ › | + «Выбрать» лупа | ⋯ ; заголовок — только вверху по центру. */
@media(max-width:650px){
.workspace>.toolbar #breadcrumbs{display:none}
.tool-sep{flex:none;width:1px;height:22px;background:#e3e8f0;transition:max-width .32s ease,opacity .18s ease,margin .32s ease;max-width:1px}
.tool-sep-end{margin-left:auto}
.workspace>.toolbar #upload,.workspace>.toolbar #touch-select{display:inline-flex;flex:none;min-height:40px;height:40px;color:#1f2733;border:1px solid #e4eaf2;border-radius:999px;background:linear-gradient(#ffffff,#f4f7fc);box-shadow:0 1px 0 #f0f3f8,inset 0 1px 0 #ffffff;max-width:140px;transition:max-width .32s cubic-bezier(.3,.78,.4,1),opacity .18s ease,margin .32s ease,transform .07s ease}
.workspace>.toolbar #upload{width:40px;padding:0;font-size:0;gap:0;justify-content:center}
.workspace>.toolbar #upload svg{width:19px;height:19px;color:#1f2733}
.workspace>.toolbar #touch-select{padding:0 16px;font-size:14px;font-weight:500}
.workspace>.toolbar #upload:active,.workspace>.toolbar #touch-select:active{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
.workspace>.toolbar.searching .tool-sep,.workspace>.toolbar.searching #upload,.workspace>.toolbar.searching #touch-select{max-width:0;opacity:0;margin:0;padding:0;border-width:0;overflow:hidden;pointer-events:none}
#files-section .actionbar{justify-content:center;padding-top:14px}
#files-section .actionbar .actions{display:none}
#files-section .actionbar>div{flex:1;text-align:center}
#files-section .actionbar #folder-title{font-size:18px}
}
@media(max-width:650px){.workspace>.toolbar{padding:10px 10px 12px}.workspace>.toolbar>*{margin-right:6px}.workspace>.toolbar>:last-child{margin-right:0}.workspace>.toolbar .history{gap:6px}.workspace>.toolbar #touch-select{padding:0 13px}main#app>.workspace{margin:0 8px}}
/* Телефон: «+», «Выбрать» и лупа — по центру между разделителями; «Выбрать» плавно растягивается, когда кнопок меньше. */
@media(max-width:650px){
.workspace>.toolbar .tool-mid{flex:1 1 auto;min-width:0;display:flex;align-items:center;justify-content:center;gap:10px;margin:0 4px}
.workspace>.toolbar:not(.searching) .tool-mid>.search-close{margin-left:-10px}
.workspace>.toolbar .tool-mid>*{margin-right:0}
.workspace>.toolbar .tool-mid>#upload[hidden],.workspace>.toolbar .tool-mid>.search[hidden]{display:inline-flex!important;flex:0 0 0;max-width:0;width:0;opacity:0;padding:0;border-width:0;margin-left:-10px;overflow:hidden;pointer-events:none}
.workspace>.toolbar .tool-mid>#upload[hidden]{display:inline-flex!important;margin-left:0;margin-right:-10px}
.workspace>.toolbar .tool-mid>#touch-select{flex:1 1 auto;min-width:0;justify-content:center;max-width:110px;transition:max-width .32s cubic-bezier(.3,.78,.4,1),opacity .18s ease,margin .32s ease,transform .07s ease}
.workspace>.toolbar[data-tools="2"] .tool-mid>#touch-select{max-width:170px}
.workspace>.toolbar[data-tools="1"] .tool-mid>#touch-select{max-width:400px}
.workspace>.toolbar .tool-mid>.search{transition:flex-basis .32s cubic-bezier(.3,.78,.4,1),max-width .32s ease,opacity .18s ease,margin .32s ease,padding .32s ease}
.workspace>.toolbar.searching .tool-mid{margin:0 0 0 0;gap:0}
.workspace>.toolbar.searching .tool-mid>#touch-select,.workspace>.toolbar.searching .tool-mid>#upload{flex:0 0 0;max-width:0;min-width:0;opacity:0;margin:0;padding:0;border-width:0;overflow:hidden;pointer-events:none}
.workspace>.toolbar.searching .tool-mid>.search{margin-right:8px}
.workspace>.toolbar .tool-sep-end{margin-left:0}
}
/* Телефон: без кнопки с аватаром вверху; «Сменить пользователя» — в настройках учётной записи. */
.press-key.phone-only-key{display:none}
@media(max-width:650px){#user-button,.user-popup{display:none!important}.account-actions .phone-only-key{display:flex}}
/* Телефон: заголовок раздела — в кнопке приложений, над файлами его нет. */
@media(max-width:650px){#files-section .actionbar{display:none}#app-switch>span{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
/* Телефон: файлы чуть ниже верхнего края, чтобы выделение не обрезалось. */
@media(max-width:650px){#files-section #file-area{padding-top:14px}}
/* Телефон, значки: имя и размер по центру; у папок тоже виден размер. */
@media(max-width:650px){#entries.grid .file{align-items:center}#entries.grid .filename{text-align:center}#entries.grid .file-meta{padding-left:0;text-align:center}#entries.grid .file-meta.date-meta{display:none}}
/* Телефон, Настройки — как Файлы: карточка страницы, под ней полоска с круглыми кнопками, внизу вкладки. */
.settings-nav .nav-short{display:none}
@media(max-width:650px){
#settings-app{display:flex;flex-direction:column}
#settings-app>.settings-page{order:1;flex:1;min-height:0;overflow:auto;margin:0 8px;border-radius:22px;padding:26px 18px 24px}
#settings-app>.top-strip{display:none}
#settings-app.strip-keys>.settings-page{border-radius:22px 22px 0 0}
#settings-app.strip-keys>.top-strip{display:flex;order:2;flex:none;margin:0 8px;padding:10px 12px 12px;border-radius:0 0 22px 22px;border-top:1px solid #edf1f6;background:rgba(255,255,255,.875)}
#settings-app>.top-strip .strip-title h1{display:none}
#settings-app>.top-strip .disk-page-header,#settings-app>.top-strip .management-header{min-height:40px;margin:0!important}
#settings-app>.top-strip .status-popup{top:auto;bottom:calc(100% + 16px);transform-origin:right bottom}
#settings-app>.settings-nav{order:3;flex:none;width:100%;display:flex;flex-direction:row;justify-content:space-between;gap:4px;padding:10px 8px calc(10px + env(safe-area-inset-bottom));overflow:visible}
#settings-app>.settings-nav button{min-width:0;flex:1 1 0;flex-direction:column;justify-content:center;gap:3px;min-height:52px;padding:6px 0;font-size:10px;letter-spacing:-.25px;border-radius:18px;white-space:nowrap}
#settings-app>.settings-nav button svg{width:19px;height:19px}
#settings-app>.settings-nav button>span{max-width:100%;overflow:hidden;text-overflow:ellipsis}
#settings-app>.settings-nav .nav-full:has(+.nav-short){display:none}
#settings-app>.settings-nav .nav-short{display:inline}
}
/* Телефон, Управление: клавиша «Статус» во всю ширину в нижней полоске. */
.press-key.status-key{display:none}
@media(max-width:650px){
#settings-app>.top-strip .status-toggle{display:none}
#settings-app>.top-strip .press-key.status-key{display:flex;width:calc(100% - 12px);margin:0 6px}
#settings-app>.top-strip .status-toggle.open+.status-key{transform:translateY(1px);background:linear-gradient(#edf2fa,#f4f7fc);box-shadow:0 0 0 #e1e7ef,inset 0 1px 3px #dde4ef}
#settings-app>.top-strip .status-popup{left:0;right:0;width:auto;transform-origin:center bottom}
}
/* О системе: короткая строка диска на телефоне. */
.about-line .phone-only{display:none}
@media(max-width:650px){.about-line .desk-only{display:none}.about-line .phone-only{display:inline}.about-line strong{white-space:nowrap}}
/* Телефон: без приближения двойным касанием. */
@media(max-width:650px){html,body{touch-action:manipulation}}
