:root{--bg: #f4f5fb;--surface: #ffffff;--surface-2: #f1f3f9;--text: #151a2d;--muted: #6b7390;--border: #e6e9f2;--primary: #5b5bf0;--primary-2: #8b5cf6;--primary-ink: #fff;--primary-soft: #ececff;--danger: #e5484d;--ok: #1f9d55;--grad: linear-gradient(135deg, var(--primary), var(--primary-2));--shadow-sm: 0 1px 2px rgba(20, 24, 50, .06), 0 2px 8px rgba(20, 24, 50, .04);--shadow: 0 18px 50px rgba(30, 30, 80, .22);--radius: 16px;color-scheme:light}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{--bg: #0b0e17;--surface: #131827;--surface-2: #1a2033;--text: #e8ebf5;--muted: #8e97b5;--border: #232a40;--primary: #7c7cff;--primary-2: #a78bfa;--primary-ink: #0b0e17;--primary-soft: #23264d;--danger: #ff6b70;--ok: #4ade80;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow: 0 18px 50px rgba(0, 0, 0, .6);color-scheme:dark}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0b0e17;--surface: #131827;--surface-2: #1a2033;--text: #e8ebf5;--muted: #8e97b5;--border: #232a40;--primary: #7c7cff;--primary-2: #a78bfa;--primary-ink: #0b0e17;--primary-soft: #23264d;--danger: #ff6b70;--ok: #4ade80;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow: 0 18px 50px rgba(0, 0, 0, .6);color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;color:var(--text);font:14px/1.5 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg)}[hidden]{display:none!important}a{color:inherit;text-decoration:none}h1,h2,h3,h4{margin:0;letter-spacing:-.01em}button{font:inherit;color:inherit;cursor:pointer}.spacer,.grow{flex:1}.muted{color:var(--muted)}.splash{display:grid;place-items:center;height:100%;color:var(--muted)}.nowrap{white-space:nowrap}.center{text-align:center;justify-content:center}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px;border:2px solid transparent;background-clip:content-box}.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface);text-decoration:none;white-space:nowrap;font-weight:500;transition:transform .12s,box-shadow .12s,background .12s;box-shadow:var(--shadow-sm)}.btn:hover{background:var(--surface-2);transform:translateY(-1px)}.btn:active{transform:none}.btn.primary{background:var(--grad);color:#fff;border-color:transparent;font-weight:600;box-shadow:none}.btn.primary:hover{filter:brightness(1.07);background:var(--grad)}.btn.danger{background:var(--danger);color:#fff;border-color:transparent}.btn.danger-outline{color:var(--danger)}.btn.sm{padding:5px 11px;font-size:13px;border-radius:9px;box-shadow:none}.btn.wide{width:100%;justify-content:center;padding:12px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:var(--muted);transition:background .12s;flex:none}.icon-btn:hover{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.link{background:none;border:0;color:var(--primary);padding:0;font-weight:500}.link:hover{text-decoration:underline}label{display:block;margin-bottom:14px;font-size:13px;font-weight:500;color:var(--muted)}label.check{display:flex;gap:8px;align-items:center;color:var(--text)}input:not([type=checkbox]),select{display:block;width:100%;margin-top:6px;padding:11px 13px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--text);font:inherit;transition:border-color .12s,box-shadow .12s}input:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.form-err{color:var(--danger);margin:0 0 12px;font-size:13px;background:color-mix(in srgb,var(--danger) 10%,transparent);padding:8px 12px;border-radius:9px}.row{display:flex;gap:12px;align-items:flex-end}.row.end{justify-content:flex-end;align-items:center;margin-top:8px}.row.center{justify-content:center}.login-wrap{min-height:100%;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.login-hero{background:var(--grad);color:#fff;padding:48px 56px;display:flex;flex-direction:column;justify-content:center;gap:28px;position:relative;overflow:hidden}.login-hero .brand{position:absolute;top:36px;left:56px}.login-hero .logo{color:#fff}.login-hero h2{font-size:46px;line-height:1.08;font-weight:800;position:relative}.login-hero ul{list-style:none;padding:0;margin:0;display:grid;gap:14px;position:relative;font-size:15px}.login-hero li{display:flex;align-items:center;gap:12px;background:#ffffff24;padding:12px 16px;border-radius:14px}.login-card{width:min(410px,calc(100% - 32px));margin:auto;background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:34px;box-shadow:var(--shadow)}.login-card h1{font-size:23px;margin:10px 0 20px;text-align:center;font-weight:700}.login-card p{text-align:center;margin:-10px 0 18px}.logo{color:var(--primary);display:inline-flex}.logo.big{display:flex;justify-content:center}.logo.big svg{background:var(--primary-soft);padding:12px;box-sizing:content-box;border-radius:18px}.pub{min-height:100%;display:flex;flex-direction:column}.pub-body{flex:1;width:min(1000px,100%);margin:0 auto;padding:16px}.pub .drive,.pub .single{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--border)}.single{text-align:center;padding:60px 16px}.single h2{margin:16px 0 4px;word-break:break-all}.shell{height:100%;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:14px;height:64px;padding:0 18px;flex:none}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;letter-spacing:-.02em;min-width:160px}.brand .logo{background:var(--grad);color:#fff;width:36px;height:36px;border-radius:11px;align-items:center;justify-content:center;box-shadow:none}.brand .logo svg{width:22px;height:22px}.login-hero .brand .logo{background:#ffffff38;box-shadow:none}.search{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:0 16px;width:min(560px,100%);color:var(--muted);box-shadow:var(--shadow-sm)}.search input{margin:0;border:0;background:transparent;padding:11px 0;box-shadow:none!important}.search:focus-within{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.avatar{width:38px;height:38px;border-radius:12px;border:0;background:var(--grad);color:#fff;font-weight:700;display:inline-grid;place-items:center;box-shadow:none}.avatar.sm{width:32px;height:32px;font-size:13px;flex:none;border-radius:10px}.menu-btn{display:none}.body{flex:1;display:flex;min-height:0}.side{width:248px;flex:none;padding:6px 14px 16px;display:flex;flex-direction:column;gap:4px}.nav-item{display:flex;align-items:center;gap:14px;padding:10px 16px;border-radius:12px;color:var(--muted);font-weight:500;transition:background .12s,color .12s}.nav-item:hover{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--text)}.nav-item.active{background:var(--surface);color:var(--primary);font-weight:700;box-shadow:var(--shadow-sm);position:relative}.nav-item.active:before{content:"";position:absolute;left:-14px;top:10px;bottom:10px;width:4px;border-radius:0 4px 4px 0;background:var(--grad)}.nav-item.install{background:none;border:0;width:100%;text-align:left;color:var(--primary);font-weight:600}.storage{padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-sm)}.meter{height:8px;border-radius:4px;background:var(--surface-2);overflow:hidden;margin-bottom:8px}.meter i,.bar i{display:block;height:100%;background:var(--grad);border-radius:inherit;transition:width .3s}.meter i.hot{background:var(--danger)}.main{flex:1;min-width:0;margin:0 18px 18px 0;background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-sm);overflow:auto;position:relative}.scrim{display:none}.drive{min-height:100%;position:relative;padding:0 24px 24px}.toolbar{display:flex;align-items:center;gap:10px;padding:16px 0;position:sticky;top:0;background:color-mix(in srgb,var(--surface) 88%,transparent);z-index:2;flex-wrap:wrap}.crumbs{font-size:19px;display:flex;flex-wrap:wrap;align-items:center;gap:2px;min-width:0}.crumbs a{color:var(--muted)}.crumbs a:hover,.crumbs .link:hover{color:var(--primary);text-decoration:none}.crumbs .sep{margin:0 8px;color:var(--muted)}.crumbs .link{font-size:inherit;color:var(--muted)}.crumbs strong{font-weight:700}.seg{display:inline-flex;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface)}.seg button{border:0;background:transparent;padding:7px 12px;display:grid;place-items:center;color:var(--muted)}.seg button.on{background:var(--primary-soft);color:var(--primary)}.hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 28px;margin-bottom:8px;border-radius:18px;color:#fff;background:var(--grad);position:relative;overflow:hidden;box-shadow:none}.hero h1{font-size:24px;font-weight:800}.hero p{margin:4px 0 0;opacity:.9}.hero svg{opacity:.35;flex:none;position:relative;z-index:1}.note{background:var(--surface-2);border-radius:12px;padding:10px 14px;margin-bottom:8px;color:var(--muted)}.sec{font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:18px 2px 10px}.tile{display:inline-grid;place-items:center;flex:none;border-radius:11px;background:color-mix(in srgb,var(--c) 14%,transparent)}.list{width:100%;border-collapse:separate;border-spacing:0 4px}.list th{text-align:left;font-weight:600;color:var(--muted);padding:8px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.list td{padding:7px 12px;background:transparent;transition:background .12s}.list td:first-child{border-radius:12px 0 0 12px}.list td:last-child{border-radius:0 12px 12px 0}.list tr.item{cursor:default;-webkit-user-select:none;user-select:none}.list tr.item:hover td{background:var(--surface-2)}.list tr.sel td,.chip.sel,.card.sel{background:var(--primary-soft)!important}.c-date{width:140px;color:var(--muted)}.c-size{width:100px;color:var(--muted)}.c-act{width:48px;text-align:right}.name{display:flex;align-items:center;gap:12px;min-width:0;font-weight:500}.nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.star{color:#f5a524;display:inline-flex}.chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.chip{display:flex;align-items:center;gap:12px;padding:10px 8px 10px 12px;border:1px solid var(--border);border-radius:14px;background:var(--surface);-webkit-user-select:none;user-select:none;font-weight:600;transition:transform .12s,box-shadow .12s,border-color .12s}.chip .nm{flex:1}.chip:hover,.card:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));box-shadow:var(--shadow-sm);transform:translateY(-2px)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.card{border:1px solid var(--border);border-radius:16px;overflow:hidden;-webkit-user-select:none;user-select:none;background:var(--surface);transition:transform .12s,box-shadow .12s,border-color .12s}.thumb{height:140px;background:linear-gradient(160deg,color-mix(in srgb,var(--c, #888) 16%,var(--surface-2)),var(--surface-2));display:grid;place-items:center;overflow:hidden;position:relative}.thumb img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;left:10px;top:10px;font-size:10px;font-weight:800;letter-spacing:.06em;padding:2px 7px;border-radius:6px;color:#fff;background:var(--c, #64748b)}.card-foot{display:flex;align-items:center;gap:6px;padding:8px 4px 0 14px;font-weight:600}.card-foot .nm{flex:1}.card-sub{padding:0 14px 12px;font-size:12px;color:var(--muted);margin-top:-4px}.empty{display:grid;place-items:center;text-align:center;padding:70px 16px;gap:6px}.empty-ic{width:96px;height:96px;border-radius:28px;display:grid;place-items:center;color:var(--primary);background:var(--primary-soft);margin-bottom:10px}.empty h3{font-size:18px}.dropzone{position:absolute;top:8px;right:8px;bottom:8px;left:8px;z-index:5;background:color-mix(in srgb,var(--primary) 12%,var(--surface) 88%);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border:3px dashed var(--primary);border-radius:18px;display:grid;place-content:center;text-align:center;color:var(--primary);pointer-events:none}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#080a1880;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:50;padding:16px;animation:fade .15s}.modal{width:min(470px,100%);max-height:90vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow);animation:pop .18s cubic-bezier(.2,.9,.3,1.2)}.modal.wide{width:min(640px,100%)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 0}.modal-head h2{font-size:18px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-body{padding:16px 22px 22px;overflow:auto}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--border)}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:scale(.94) translateY(8px)}}.menu{position:fixed;z-index:60;min-width:200px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);animation:fade .1s}.menu button{display:flex;align-items:center;gap:12px;width:100%;padding:9px 12px;background:none;border:0;text-align:left;border-radius:9px}.menu button:hover{background:var(--surface-2)}.menu button.danger{color:var(--danger)}.menu hr{border:0;border-top:1px solid var(--border);margin:6px 4px}.tree{list-style:none;padding:0;margin:0;max-height:50vh;overflow:auto}.tree button{display:flex;align-items:center;gap:10px;width:100%;background:none;border:0;padding:9px 10px;border-radius:10px;text-align:left}.tree button:hover:not(:disabled){background:var(--surface-2)}.tree button.on{background:var(--primary-soft);color:var(--primary);font-weight:600}.tree button:disabled{opacity:.4;cursor:not-allowed}.shares{list-style:none;padding:0;margin:8px 0 0}.shares li{display:flex;gap:8px;align-items:center;padding:10px 0;border-top:1px solid var(--border)}.shares code{display:block;font-size:12px;word-break:break-all}.share-form .btn{margin-top:4px}h4{margin:18px 0 0}.pv{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#060812f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;color:#e8ebf5;animation:fade .15s}.pv-bar{display:flex;align-items:center;gap:12px;padding:10px 18px}.pv-bar .icon-btn{color:#e8ebf5}.pv-bar .btn{background:#ffffff1a;color:#e8ebf5;border-color:transparent;box-shadow:none}.pv-bar small{color:#94a3b8}.pv-body{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative;padding:0 64px 20px}.pv-body img,.pv-body video{max-width:100%;max-height:100%;min-height:0;object-fit:contain;border-radius:10px;box-shadow:0 20px 60px #00000080}.pv-body iframe{flex:0 1 1000px;align-self:stretch;border:0;background:#fff;border-radius:12px}.pv-body pre{flex:0 1 1000px;align-self:stretch;overflow:auto;margin:0;padding:18px;background:var(--surface);color:var(--text);border-radius:12px;white-space:pre-wrap;word-break:break-word;font:13px/1.55 ui-monospace,Consolas,monospace}.pv-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:0;background:#ffffff1f;color:#fff;font-size:28px;line-height:1}.pv-nav:hover{background:#ffffff40}.pv-nav.l{left:8px}.pv-nav.r{right:8px}.upl{position:fixed;right:20px;bottom:20px;width:min(370px,calc(100% - 24px));background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);z-index:40;overflow:hidden}.upl-head{display:flex;align-items:center;padding:12px 16px;background:var(--grad);color:#fff;cursor:pointer}.upl-head .icon-btn{color:#fff}.upl ul{list-style:none;margin:0;padding:0;max-height:280px;overflow:auto}.upl li{padding:10px 16px;border-top:1px solid var(--border)}.upl-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.upl-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.upl .err{color:var(--danger)}.upl .ok{color:var(--ok);display:inline-flex;align-items:center;gap:4px}.bar{height:5px;background:var(--surface-2);border-radius:3px;margin-top:6px;overflow:hidden}.toasts{position:fixed;left:50%;bottom:24px;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:90;align-items:center;pointer-events:none}.toast{background:#1b2033;color:#fff;padding:11px 20px;border-radius:12px;box-shadow:var(--shadow);animation:pop .2s}.toast.error{background:#c0262b}.tabbar{display:none}@media (max-width: 800px){.login-wrap{grid-template-columns:1fr}.login-hero{display:none}.login-card{margin:40px auto}.side{display:none}.brand{min-width:0}.brand+.search{flex:1}.brand{font-size:0;gap:0}.brand .logo{font-size:14px}.topbar{height:58px;padding:0 12px;gap:10px}.main{margin:0;border-radius:20px 20px 0 0;border-bottom:0;padding-bottom:0}.tabbar{display:flex;flex:none;background:var(--surface);border-top:1px solid var(--border);padding:6px 6px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -4px 18px #14183214}.tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;border-radius:12px;color:var(--muted);font-size:11px;font-weight:600;position:relative}.tab.active{color:var(--primary)}.tab.active:before{content:"";position:absolute;top:-7px;width:28px;height:3px;border-radius:0 0 3px 3px;background:var(--grad)}.tab:active{background:var(--surface-2)}.c-date,.c-size,.btn span{display:none}.toolbar .btn{padding:9px 11px}.drive{padding:0 14px 18px}.hero{padding:18px}.hero svg{display:none}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.chips{grid-template-columns:1fr 1fr}.upl{bottom:84px;right:12px}.toasts{bottom:90px}}.check-box{width:20px;height:20px;border-radius:6px;border:2px solid var(--border);background:var(--surface);display:inline-grid;place-items:center;padding:0;color:#fff;flex:none;opacity:0;transition:opacity .1s;cursor:pointer}.check-box.on{background:var(--primary);border-color:var(--primary);opacity:1}.item:hover .check-box,.picking .check-box,.list th .check-box{opacity:1}.list th .check-box{border-color:var(--muted)}.list th .check-box.on{border-color:var(--primary)}.c-chk{width:34px;padding-right:0!important}.card .thumb .check-box{position:absolute;left:10px;top:10px;z-index:1;border-color:#ffffffd9;background:#00000059}.card .thumb .check-box.on{background:var(--primary);border-color:var(--primary)}.card .badge{left:auto;right:10px}.chip .check-box{margin-right:-4px}.tile-img{border-radius:11px;object-fit:cover;flex:none;background:var(--surface-2)}.item.drop,.chip.drop,.card.drop{outline:2px dashed var(--primary);outline-offset:-2px;background:var(--primary-soft)}.list tr.drop td{background:var(--primary-soft)}.crumbs a.drop{color:var(--primary);text-decoration:underline}.selbar{background:var(--primary-soft);border-radius:14px;padding:10px 14px;margin:8px 0;top:8px}.selbar strong{font-size:15px}.pill{display:inline-block;font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--primary-soft);color:var(--primary)}.pill.bad{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.small{font-size:12px}.block{display:block}.wide-seg{display:flex;margin-bottom:12px}.wide-seg button{flex:1;display:flex;gap:6px;justify-content:center;align-items:center;padding:9px 12px}.stats{display:flex;gap:14px;margin-top:2px;color:var(--muted)}.stats span{display:inline-flex;gap:4px;align-items:center}.shares small{display:block}.versions{list-style:none;margin:0 0 8px;padding:0}.versions li{display:flex;gap:8px;align-items:center;padding:10px 0;border-top:1px solid var(--border)}.versions li:first-child{border-top:0}.versions small{display:block}.usage{background:var(--surface-2);border-radius:18px;padding:18px 20px;margin-bottom:8px}.usage-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.usage-big{font-size:26px;font-weight:800}.stack{display:flex;height:14px;border-radius:7px;overflow:hidden;background:var(--border);gap:2px}.stack i{display:block;min-width:3px}.legend{list-style:none;display:flex;flex-wrap:wrap;gap:8px 20px;padding:0;margin:14px 0 0}.legend li{display:flex;align-items:center;gap:7px}.legend li i{width:10px;height:10px;border-radius:50%;display:inline-block}.tabs{display:flex;gap:4px;margin:16px 0 10px;border-bottom:1px solid var(--border)}.tabs button{background:none;border:0;padding:10px 14px;font-weight:600;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-1px}.tabs button.on{color:var(--primary);border-color:var(--primary)}.count{margin-left:6px;background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:1px 8px;font-size:11px}.dgroup{border:1px solid var(--border);border-radius:14px;margin-bottom:12px;overflow:hidden}.dhead{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;background:var(--surface-2);flex-wrap:wrap}.srow{display:flex;align-items:center;gap:12px;padding:9px 14px;border-top:1px solid var(--border);cursor:pointer;margin:0;font-size:14px;color:var(--text)}.srow:first-of-type{border-top:0}.srow:hover,.srow.on{background:var(--primary-soft)}.srow input{width:18px;height:18px;margin:0;flex:none;accent-color:var(--primary)}.srow .nm.block{font-weight:500}.srow small{display:block}.srow small a{color:var(--primary)}.ssize{white-space:nowrap}.actionbar{position:sticky;bottom:12px;display:flex;align-items:center;gap:10px;justify-content:flex-end;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);padding:10px 14px;border-radius:16px;margin-top:16px}.actionbar span{margin-right:auto}.storage-page{padding-bottom:28px}.upbox{text-align:center;padding:40px 20px}.upbox .empty-ic{margin:0 auto 12px}.upbox h2{margin-bottom:4px;word-break:break-word}.updrop{display:grid;gap:4px;justify-items:center;margin:22px auto 0;max-width:520px;padding:36px 16px;border:2px dashed var(--border);border-radius:18px;color:var(--primary);cursor:pointer;transition:background .12s,border-color .12s}.updrop:hover,.updrop.over{background:var(--primary-soft);border-color:var(--primary)}.upjobs{list-style:none;max-width:520px;margin:18px auto 0;padding:0;text-align:left}.upjobs li{padding:10px 0;border-top:1px solid var(--border)}.upjobs .err{color:var(--danger)}.ok-line{color:var(--ok);font-weight:600;display:inline-flex;gap:6px;align-items:center}@media (max-width: 800px){.c-chk{width:30px}.check-box{opacity:1}.selbar{flex-wrap:nowrap;overflow-x:auto}.tabbar .tab span{font-size:10px}}.settings{padding-bottom:28px}.panel{border:1px solid var(--border);border-radius:16px;padding:18px 20px;margin-bottom:14px;background:var(--surface)}.panel h3{font-size:16px;margin-bottom:12px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.panel-head h3{margin:0}.panel .row label{margin-bottom:0}.panel input:disabled{opacity:.6}.setting{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--border);flex-wrap:wrap}.setting:first-of-type{border-top:0;padding-top:0}.setting p{margin:2px 0 0}.plain{list-style:none;margin:0;padding:0}.plain li{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--border)}.plain li:first-child{border-top:0}.plain small.block{display:block}.dot{width:9px;height:9px;border-radius:50%;flex:none;background:var(--ok)}.dot.bad{background:var(--danger)}.dot.warn{background:#f5a524}.steps{padding-left:20px;margin:0 0 12px;display:grid;gap:14px}.steps li{padding-left:4px}.qr{width:min(240px,100%);aspect-ratio:1;margin:10px 0;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:#fff}.qr svg{display:block;width:100%;height:100%}.qr-actions{flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}.secret{display:block;margin-top:8px;padding:10px;background:var(--surface-2);border-radius:10px;letter-spacing:.08em;word-break:break-all}details summary{cursor:pointer;color:var(--primary);font-size:13px}.codes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.codes code{background:var(--surface-2);padding:9px;border-radius:9px;text-align:center;font-size:15px;letter-spacing:.06em}.backup{margin:12px 0 18px;border-left:5px solid var(--ok)}.backup.bad{border-left-color:var(--danger)}.backup.warn{border-left-color:#f5a524}.backup.run{border-left-color:var(--primary)}.backup p{margin:4px 0}.backup code{background:var(--surface-2);padding:1px 6px;border-radius:6px;font-size:12px;word-break:break-all}.backup h3{display:flex;gap:8px;align-items:center}.warn-text{color:#b7791f}.filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 10px}.filters select{width:auto;margin:0;padding:7px 10px;border-radius:10px}.chips-row{display:flex;gap:6px;flex-wrap:wrap;flex:1}.fchip{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:5px 13px;font-size:13px;font-weight:500;color:var(--muted)}.fchip:hover{color:var(--text)}.fchip.on{background:var(--primary-soft);color:var(--primary);border-color:transparent;font-weight:700}.nm-wrap{display:flex;flex-direction:column;min-width:0}.snippet{font-size:12px;color:var(--muted);font-weight:400;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}mark{background:color-mix(in srgb,#f5a524 40%,transparent);color:inherit;border-radius:3px;padding:0 2px}.pill.role-editor{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok)}.pill.role-viewer{background:var(--surface-2);color:var(--muted)}.sect{margin:18px 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.sect.first{margin-top:0}.people-add{align-items:flex-end;margin-bottom:4px}.people-add label{margin-bottom:0}.people li{padding:8px 0}.people select{width:auto;margin:0;padding:6px 8px}.ed{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:var(--surface);display:flex;flex-direction:column;animation:fade .12s}.ed-bar{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border)}.ed-state{font-size:12px;color:var(--muted)}.ed-state.dirty{color:#b7791f}.ed-area{flex:1;width:100%;border:0;resize:none;padding:18px max(16px,calc((100% - 860px)/2));background:transparent;color:var(--text);font:15px/1.65 ui-monospace,Cascadia Code,Consolas,monospace;outline:none}.ed-foot{padding:6px 14px;font-size:12px;border-top:1px solid var(--border)}.ed-conflict{background:color-mix(in srgb,#f5a524 18%,transparent);padding:8px 14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.md{flex:1;overflow:auto;padding:18px max(16px,calc((100% - 760px)/2));line-height:1.7}.md h1,.md h2,.md h3{margin:1.1em 0 .4em}.md h1{font-size:26px}.md h2{font-size:21px}.md h3{font-size:17px}.md code{background:var(--surface-2);padding:1px 6px;border-radius:6px;font-size:.9em}.md pre{background:var(--surface-2);padding:12px;border-radius:12px;overflow:auto}.md pre code{background:none;padding:0}.md blockquote{margin:.8em 0;padding:2px 14px;border-left:4px solid var(--primary);color:var(--muted)}.md a{color:var(--primary)}.md ul,.md ol{padding-left:24px}.md li.task{list-style:none;margin-left:-20px}.md hr{border:0;border-top:1px solid var(--border)}.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:4px}.ptile{position:relative;aspect-ratio:1;overflow:hidden;border:0;padding:0;background:var(--surface-2);border-radius:6px;cursor:pointer}.ptile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .15s}.ptile:hover img{transform:scale(1.04)}.ptile .play{position:absolute;right:6px;bottom:6px;background:#0000008c;color:#fff;border-radius:999px;padding:3px 8px;font-size:11px;display:inline-flex;gap:3px;align-items:center}.ptile .vid{display:grid;place-items:center;width:100%;height:100%;color:var(--muted)}.pmonth{font-size:14px;font-weight:700;margin:20px 2px 8px;position:sticky;top:64px}.pbackup{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;border-radius:16px;background:var(--primary-soft);margin-bottom:8px}.pbackup .grow{min-width:200px}.pbackup small{display:block}.share-card{max-width:560px;margin:24px auto}.share-card ul{list-style:none;padding:0;margin:12px 0}.share-card li{display:flex;gap:10px;padding:8px 0;border-top:1px solid var(--border);align-items:center}.share-card select{margin-bottom:14px}@media (max-width: 800px){.pgrid{grid-template-columns:repeat(3,1fr);gap:3px}.tabbar .tab{min-width:0}.ed-bar .btn span{display:none}}.skip{position:absolute;left:12px;top:-48px;background:var(--primary);color:#fff;padding:8px 14px;border-radius:10px;z-index:200;transition:top .15s}.skip:focus{top:10px}.main:focus{outline:none}.kbd{display:inline-block;min-width:22px;padding:1px 6px;border:1px solid var(--border);border-bottom-width:2px;border-radius:6px;font:600 11px/1.6 ui-monospace,Consolas,monospace;color:var(--muted);background:var(--surface-2);text-align:center}.search .kbd{flex:none;margin-left:4px}.search:focus-within .kbd{display:none}.shortcuts{margin:0;display:grid;gap:2px}.shortcuts div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--border)}.shortcuts dt{white-space:nowrap}.shortcuts dd{margin:0;color:var(--muted);text-align:right}.mi-text{display:flex;flex-direction:column;min-width:0}.mi-text small{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis}.menu button:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;background:var(--surface-2)}.skel{display:block;background:linear-gradient(90deg,var(--surface-2) 25%,color-mix(in srgb,var(--surface-2) 55%,var(--surface)) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.3s infinite linear;border-radius:8px}@keyframes shimmer{to{background-position:-200% 0}}.skel-row{display:flex;align-items:center;gap:14px;padding:9px 12px}.skel.sq{width:36px;height:36px;border-radius:11px;flex:none}.skel.line{height:12px}.skel.line.sm{width:60px}.skel.block{height:140px;border-radius:0}@media (prefers-reduced-motion: reduce){.skel{animation:none}*{scroll-behavior:auto!important;transition-duration:.01ms!important}}.toast{pointer-events:auto;display:flex;align-items:center;gap:14px}.toast-act{background:none;border:0;color:#a5b4fc;font-weight:700;padding:0 2px;letter-spacing:.02em}.toast-act:hover{text-decoration:underline}.th-btn{background:none;border:0;padding:0;font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;display:inline-flex;align-items:center;gap:4px;cursor:pointer}.th-btn:hover,.th-btn.on{color:var(--text)}.hero{padding-right:56px}.hero-x{position:absolute;right:12px;top:12px;z-index:2;background:#ffffff29;border:0;color:#fff;width:30px;height:30px;border-radius:50%;display:grid;place-items:center}.hero-x:hover{background:#ffffff4d}.upl-total{height:3px;background:var(--surface-2)}.upl-total i{display:block;height:100%;background:var(--grad);transition:width .25s}.upl-cancel{background:#fff3;border:0;color:#fff;border-radius:8px;padding:3px 10px;font-size:12px;font-weight:600;margin-right:6px}.storage{display:block}a.storage:hover{border-color:var(--primary)}button.tab{background:none;border:0;font:inherit;font-size:11px;font-weight:600;cursor:pointer}button.tab:focus-visible,.tab:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.chip{position:relative}.chip .check-box{position:absolute;left:-7px;top:-7px;z-index:1;margin:0;box-shadow:var(--shadow-sm)}@media (max-width: 800px){.hero{display:none}.check-box{opacity:0}.picking .check-box,.check-box.on{opacity:1}.list th.c-chk .check-box{opacity:0}.picking-any .list th.c-chk .check-box{opacity:1}.crumbs{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scrollbar-width:none;flex:1;min-width:0}.crumbs::-webkit-scrollbar{display:none}.toolbar{gap:6px}.toolbar>.btn{flex:none}.search .kbd{display:none}.skel-row{padding:10px 4px}}@media (max-width: 800px){.btn.newfolder,.sort-dir{display:none}.toolbar>.btn{padding:9px 10px}.selbar{flex-wrap:nowrap;gap:4px;padding:8px;overflow:visible}.selbar strong{white-space:nowrap;font-size:14px}.selbar .link{white-space:nowrap;font-size:13px}.selbar .btn{padding:8px 9px}.selbar .bb-share,.list td.c-chk,.list th.c-chk{display:none}.list tr.picking td.c-chk,.drive:has(tr.picking) .list th.c-chk{display:table-cell}.list th.c-chk .check-box{opacity:1}}
