:root{--bg:#f5f7f9;--white:#fff;--text:#20333d;--muted:#8a98a3;--line:#eaf0f2;--green:#19a987;--nav:#173b42;--soft:#e9f7f2;--shadow:0 12px 40px #1a3c4809;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--text);font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg)}[hidden]{display:none!important}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer;border:0;background:none;color:inherit;transition:.18s}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}svg{width:20px;height:20px;vertical-align:middle;flex-shrink:0}input:not([type=checkbox]),select{background:#fff;border:1px solid #dde6e9;padding:11px 13px;border-radius:10px;color:var(--text);min-width:0}input:focus{outline:2px solid #b4e9da;border-color:var(--green)}input[type=checkbox]{accent-color:var(--green);width:16px;height:16px;cursor:pointer}button.primary,.primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:10px;padding:12px 20px;background:linear-gradient(110deg,#14ac88,#37b5bc);color:white;font-weight:600;box-shadow:0 5px 12px #14ac8821}.primary:hover{filter:brightness(1.04);transform:translateY(-1px)}.secondary{display:inline-flex;align-items:center;gap:8px;border:1px solid #dce6e9;border-radius:10px;padding:11px 17px;background:white}.secondary:hover,.icon-btn:hover{background:#eef6f3}.danger{color:#dd5265;background:#fff0f2;border:1px solid #ffdfe4;border-radius:9px;padding:10px 16px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;font-size:21px}.text-btn{color:var(--green);padding:6px}.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:650;letter-spacing:2px;color:#73948f}.brandmark{width:39px;height:39px;display:inline-grid;place-items:center;background:linear-gradient(135deg,#21be93,#4db8d9);color:white;border-radius:12px;font-size:21px;font-weight:700;box-shadow:0 4px 12px #0cae7833}.brand{display:flex;align-items:center;gap:11px;font-size:22px;font-weight:650;letter-spacing:1px}.brand small{display:block;font-size:8px;color:#88acae;letter-spacing:2px;margin-top:3px}.boot{min-height:100vh;display:flex;gap:15px;align-items:center;justify-content:center;color:var(--muted)}.app{display:flex;min-height:100vh}aside{width:232px;position:fixed;inset:0 auto 0 0;background:linear-gradient(175deg,#163b42,#122e35);color:#d2e2e2;padding:32px 20px;z-index:25;display:flex;flex-direction:column}aside>.brand{padding:0 8px;color:#fff}.nav-caption{font-size:10px;letter-spacing:2px;color:#668b8e;margin:45px 14px 15px}nav{display:grid;gap:7px}.nav-item{display:flex;align-items:center;gap:13px;width:100%;padding:13px 16px;border-radius:9px;text-align:left;color:#99b3b6}.nav-item svg{width:19px}.nav-item:hover{color:#fff;background:#ffffff08}.nav-item.active{background:linear-gradient(110deg,#2d625e,#264d57);color:#89e4c2;box-shadow:inset 2px 0 #78dfbb}.nav-divider{height:1px;background:#ffffff0c;margin:17px 12px}.sidebar-bottom{margin-top:auto;padding-top:25px}.capacity{padding:16px 12px}.capacity>div:first-child{display:flex;justify-content:space-between;font-size:11px;color:#93aeb0}.capacity strong{font-size:10px;color:#b9d9d2}.meter{height:5px;background:#ffffff12;border-radius:9px;overflow:hidden;margin:12px 0}.meter i{display:block;height:100%;background:linear-gradient(90deg,#36c49a,#61c0da);width:0}.capacity small{font-size:10px;color:#c7d9d8}.capacity p{font-size:9px;color:#62878b;margin:7px 0}.profile{border-top:1px solid #ffffff12;padding:21px 8px 0;display:flex;align-items:center;gap:10px;text-align:left;width:100%}.profile strong{display:block;color:#d7e6e4;font-size:12px}.profile small{display:block;color:#73979b;font-size:10px;margin-top:5px}.profile>span:last-child{margin-left:auto}.avatar,.top-avatar{border-radius:11px;background:#d8eee7;color:#236e5a;display:grid;place-items:center;width:37px;height:37px;font-size:13px;font-weight:650}.workspace{margin-left:232px;flex:1;min-width:0}.topbar{height:80px;border-bottom:1px solid var(--line);background:#ffffffbb;display:flex;align-items:center;justify-content:space-between;padding:0 40px}.top-label{font-size:12px;color:#697e88;display:flex;align-items:center;gap:11px}.top-label small{font-size:10px;color:#91a29d}.dot{width:5px;height:5px;border-radius:5px;background:#55c99c}.top-actions{display:flex;align-items:center;gap:23px}.top-avatar{width:31px;height:31px;border-radius:50%}main{max-width:1600px;margin:auto;padding:35px 40px 15px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}h1{font-size:27px;font-weight:650;letter-spacing:.4px;margin:9px 0 8px}h2{font-weight:600}p{line-height:1.8}.page-heading p{font-size:12px;color:var(--muted);margin:0}.heading-actions{display:flex;gap:10px}.welcome-card{position:relative;overflow:hidden;background:linear-gradient(110deg,#e1f5ee,#e9f5f8 70%,#e5eef9);border:1px solid #d9eee8;border-radius:16px;padding:28px 32px;margin-bottom:28px;min-height:170px;display:flex;justify-content:space-between;align-items:center}.badge{display:inline-block;color:#4b9a84;font-size:10px;padding:5px 9px;border-radius:5px;background:#ffffff86;letter-spacing:1px}.welcome-card h2{font-size:20px;margin:12px 0 8px;color:#30695f}.welcome-card p{font-size:11px;color:#7c9d96;margin:0}.welcome-art{width:220px;height:120px;position:relative;flex-shrink:0}.art-folder{position:absolute;left:58px;top:40px;width:110px;height:77px;transform:rotate(-9deg);border-radius:7px 12px 12px 12px;background:linear-gradient(140deg,#66d7bc,#33baa5);box-shadow:8px 11px 20px #4f9e9422}.art-folder:before{content:'';position:absolute;width:42px;height:14px;top:-10px;background:#69d8bd;border-radius:7px 7px 0 0}.art-sheet{position:absolute;left:95px;top:5px;width:70px;height:90px;transform:rotate(12deg);border:1px solid #fff;border-radius:8px;background:repeating-linear-gradient(#fff 0 17px,#d4eae5 18px 20px,#fff 21px 29px);box-shadow:4px 7px 20px #59a69312}.spark{position:absolute;color:#76b6b0;font-size:25px}.s1{left:28px;top:22px}.s2{right:16px;bottom:5px}.file-panel{background:#fff;border:1px solid #e5ecef;border-radius:14px;box-shadow:var(--shadow);min-height:390px;overflow:hidden}.panel-toolbar{padding:19px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;align-items:center;gap:10px;font-size:12px;flex-wrap:wrap}.breadcrumbs button{font-size:12px;padding:3px 0;color:#8a9a9f}.breadcrumbs button:last-child{color:#294b50;font-weight:600}.breadcrumbs span{color:#bac6ca}.list-tools{display:flex;align-items:center;gap:10px}.list-tools select{font-size:11px;padding:8px;border-color:transparent;background:#f7f9fa}.searchbox{display:flex;align-items:center;background:#f6f8fa;border-radius:8px;padding:0 10px;color:#9caeb3}.searchbox svg{width:16px}.searchbox input{border:0;background:none;padding:9px;width:180px;font-size:11px}.searchbox input:focus{outline:0}.searchbox .icon-btn{width:20px;height:25px;font-size:17px}.file-list{min-height:290px}.file-table{width:100%;border-collapse:collapse;text-align:left}.file-table th{background:#fafcfc;color:#93a1a8;font-size:10px;font-weight:400;padding:14px 16px;border-bottom:1px solid var(--line)}.file-table th:first-child,.file-table td:first-child{width:45px;padding-left:24px}.file-table td{padding:16px;font-size:11px;color:#8a9ba3;border-bottom:1px solid #f0f4f5}.file-table tr:hover td{background:#fbfdfd}.file-table tr.selected td{background:#f0faf6}.file-name{display:flex;align-items:center;gap:12px;min-width:180px}.name-btn{padding:3px 0;font-size:12px;font-weight:500;color:#3b505c;text-align:left;max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name-btn:hover{color:var(--green)}.file-symbol{display:grid;place-items:center;border-radius:9px;width:37px;height:40px;background:#edf4fb;color:#79a7dd;flex-shrink:0}.file-symbol svg{width:23px;height:23px}.file-symbol.folder{color:#e9b45a;background:#fff8e9}.file-symbol.image{color:#6cbca4;background:#ebf8f1}.file-symbol.pdf{color:#df8a8e;background:#fdf0f0}.file-symbol.zip{color:#a491cb;background:#f3f0fa}.row-actions{display:flex;align-items:center;gap:2px;justify-content:flex-end}.row-actions .icon-btn{width:27px;height:29px;color:#88a0a7}.row-actions svg{width:15px;height:15px}.row-actions .icon-btn:hover{color:#16a484}.row-actions .remove:hover{color:#dc6070;background:#fff0f2}.selection-bar{display:flex;align-items:center;padding:10px 24px;gap:15px;background:#edf9f4;border-bottom:1px solid #dcefe5;font-size:11px;color:#37836b}.selection-bar>button:last-child{margin-left:auto}.selection-bar button{font-size:11px}.selection-bar #batchActions{display:flex;gap:6px}.empty{padding:55px 20px 65px;text-align:center}.empty-illustration{height:75px;width:75px;margin:auto auto 16px;border-radius:24px;background:linear-gradient(140deg,#edf9f2,#edf5fd);display:grid;place-items:center;color:#8dc7b5}.empty-illustration svg{width:34px;height:34px}.empty h3{font-size:14px;font-weight:500;margin:10px 0;color:#66818a}.empty p{font-size:11px;color:#a0afb6;margin:0}.pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;color:#97a6ad;font-size:10px;gap:10px}.pagination>div{display:flex;align-items:center;gap:10px}.pagination select{padding:4px 7px;font-size:10px;border-radius:5px}.pagination .icon-btn{width:25px;height:25px}.main-footer{display:flex;justify-content:space-between;color:#afbbc1;font-size:9px;padding:22px 1px}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px;padding:22px}.grid-card{position:relative;border:1px solid #edf1f3;border-radius:11px;padding:18px 12px 10px;text-align:center}.grid-card:hover{background:#fbfdfc;border-color:#cde7dd}.grid-card.selected{background:#f1faf6;border-color:#9ed8c2}.grid-card>input{position:absolute;left:10px;top:10px}.grid-card .file-symbol{margin:8px auto 14px;width:52px;height:55px}.grid-card .file-symbol svg{width:32px;height:32px}.grid-card .name-btn{max-width:100%;font-size:11px}.grid-card small{display:block;color:#a2b0b6;font-size:9px;margin-top:8px}.grid-card .row-actions{justify-content:center;margin-top:9px}.mobile-only{display:none}dialog{border:1px solid #e4edeb;border-radius:17px;width:min(510px,calc(100vw - 30px));padding:0;color:var(--text);box-shadow:0 25px 90px #0c303433}dialog::backdrop{background:#102d3f65;backdrop-filter:blur(4px)}.modal-heading{padding:20px 25px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.modal-heading h2{font-size:17px;margin:0}#modalBody{padding:24px;max-height:75vh;overflow:auto}label.field{display:block;font-size:12px;color:#67808b;margin-bottom:18px}label.field input,label.field select{display:block;width:100%;margin-top:8px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;margin-top:25px}.hint{font-size:11px;color:#94a6ae;line-height:1.9}.share-result{padding:15px;background:#f1f8f5;border-radius:10px;word-break:break-all;font-size:12px;line-height:1.9}.share-result input{width:100%;font-size:11px;background:white}.toasts{position:fixed;right:25px;top:24px;z-index:100;display:grid;gap:10px;max-width:350px}.toast{background:#fff;border:1px solid #cce9dd;padding:15px 20px;border-radius:10px;box-shadow:0 8px 40px #12373120;font-size:12px}.toast.error{border-color:#f2c6ce;color:#c45868}.error{color:#d2546c;font-size:12px;min-height:21px}.drop-overlay{position:fixed;inset:12px;background:#e7f9f3ed;border:2px dashed #36b391;border-radius:18px;z-index:70;display:grid;place-items:center;text-align:center;color:#29997b;pointer-events:none;font-size:55px}.drop-overlay h2{font-size:23px}.drop-overlay p{font-size:13px}.upload-panel{position:fixed;bottom:20px;right:25px;width:min(400px,calc(100vw - 30px));background:white;border:1px solid #dce9e4;border-radius:14px;z-index:60;box-shadow:0 12px 55px #153e4320}.upload-title{padding:15px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:13px}#uploadTasks{max-height:260px;overflow:auto}.upload-task{padding:14px 20px;border-bottom:1px solid var(--line)}.upload-task div{display:flex;justify-content:space-between;gap:10px;font-size:11px}.upload-task .task-name{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-track{height:4px;background:#edf2f1;margin-top:9px;border-radius:4px;overflow:hidden}.progress-track i{display:block;background:linear-gradient(90deg,#30b88e,#5ebbe3);height:100%;width:0}.upload-note{font-size:10px;color:#a2b0b5;padding:0 20px}.move-folder{display:flex;width:100%;align-items:center;gap:10px;padding:13px;border:1px solid var(--line);border-radius:8px;margin-top:8px;text-align:left}.move-folder:hover{background:#edf8f2}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:white}.login-story{background:linear-gradient(145deg,#173b42,#1d4b4d);color:#e3f2ee;padding:45px 60px;position:relative;overflow:hidden}.login-story .brand small{display:inline;margin-left:10px}.story-content{max-width:530px;margin:85px auto 40px}.story-content .eyebrow{color:#7ebbaa;font-size:11px}.story-content h1{font-size:42px;line-height:1.5;letter-spacing:1px;margin:20px 0}.story-content p{color:#96b8b5;font-size:13px}.story-tags{display:flex;gap:25px;font-size:10px;letter-spacing:2px;color:#aacdc5}.story-tags span:before{content:'✓';color:#69d4af;margin-right:7px}.story-foot{font-size:10px;color:#6c9997;display:block;margin-top:60px}.orbit{height:220px;position:relative;width:380px;max-width:100%;margin-top:20px}.orbit-core{position:absolute;top:55px;left:140px;width:100px;height:100px;background:linear-gradient(140deg,#72d7b3,#6cc9cf);border:1px solid #a6ead7;border-radius:30px;font-size:60px;display:grid;place-items:center;transform:rotate(-10deg);box-shadow:0 15px 70px #1d9e8077;color:white}.orbit-card{position:absolute;width:125px;height:80px;padding:14px;background:#ffffff0c;backdrop-filter:blur(4px);border:1px solid #ffffff18;border-radius:13px;font-size:21px;color:#b9e8da}.orbit-card small{display:block;font-size:10px;margin-top:7px;color:#9ebdb8}.c1{left:0;top:15px;transform:rotate(-9deg)}.c2{right:0;top:7px;transform:rotate(9deg)}.c3{left:25px;bottom:15px;transform:rotate(4deg)}.login-form-area{display:flex;align-items:center;justify-content:center;padding:35px}.login-form{width:340px;max-width:100%}.login-form h2{font-size:28px;margin:17px 0 9px}.login-form .muted{font-size:12px;margin-bottom:35px}.login-form label{display:block;font-size:12px;color:#657e89;margin:20px 0}.login-form input{display:block;width:100%;margin-top:10px;padding:14px}.wide{width:100%;margin-top:15px}.wide span{margin-left:auto}.form-foot{font-size:10px;color:#a2afb5;text-align:center;margin-top:25px}.share-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at top,#ddf6e9,#f5f8fa 65%);padding:30px}.share-card{max-width:460px;width:100%;background:white;border:1px solid #dceae6;border-radius:21px;padding:35px;box-shadow:0 25px 80px #19443b0c;text-align:center}.share-card .brand{justify-content:center;margin-bottom:30px}.share-card h1{font-size:20px;overflow-wrap:anywhere}.share-card .file-symbol{margin:25px auto 15px;width:65px;height:70px}.share-card input{width:100%;margin:15px 0}.share-card p{font-size:12px;color:#90a4ad}.preview-frame{width:100%;height:65vh;border:1px solid #e3ece9;border-radius:8px}.preview-image{max-width:100%;max-height:65vh;display:block;margin:auto}.busy-text{color:#8ca0a8;padding:60px;text-align:center;font-size:12px}@media(min-width:1600px){main{padding:45px 55px}.topbar{padding:0 55px}.welcome-card{min-height:190px}}@media(max-width:1100px){aside{width:205px;padding:28px 14px}.workspace{margin-left:205px}main{padding:28px 24px}.topbar{padding:0 24px}.welcome-art{width:160px}.welcome-card{padding:24px}.searchbox input{width:135px}.file-table .time-col{display:none}.row-actions .icon-btn{width:25px}.page-heading h1{font-size:24px}.file-name{min-width:135px}.name-btn{max-width:210px}.login-story{padding:35px}.story-content h1{font-size:33px}}@media(max-width:760px){aside{transform:translateX(-100%);transition:.2s;width:232px}aside.open{transform:none}.workspace{margin-left:0}.mobile-only{display:inline-flex}.mobile-shade{position:fixed;inset:0;background:#102f3c66;z-index:24}.topbar{height:63px;padding:0 18px}.top-label{margin-right:auto;margin-left:10px}.top-actions{gap:10px}main{padding:25px 16px}.page-heading{align-items:flex-start;flex-wrap:wrap;gap:18px}.page-heading h1{font-size:25px}.page-heading .eyebrow{font-size:8px}.heading-actions{width:100%}.heading-actions button{flex:1;padding:11px}.welcome-card{min-height:145px;padding:21px;margin-bottom:20px}.welcome-card h2{font-size:16px}.welcome-card p{font-size:10px;max-width:230px}.welcome-art{width:80px;transform:scale(.65);transform-origin:right center;position:absolute;right:15px;opacity:.55}.welcome-art .art-folder{left:-60px}.welcome-art .art-sheet{left:-20px}.welcome-art .s1{left:-80px}.panel-toolbar{padding:16px;flex-wrap:wrap;gap:15px}.list-tools{width:100%}.searchbox{flex:1}.searchbox input{width:100%}.list-tools select{width:85px}.file-table th,.file-table td{padding:13px 8px}.file-table th:first-child,.file-table td:first-child{padding-left:13px;width:30px}.file-table .size-col{display:none}.file-name{min-width:0;gap:8px}.name-btn{max-width:150px;font-size:11px}.file-symbol{width:28px;height:34px;border-radius:6px}.file-symbol svg{width:19px}.row-actions{gap:0}.row-actions .icon-btn{width:25px}.file-table .rename-action,.file-table .move-action{display:none}.main-footer{font-size:8px;gap:15px}.pagination{padding:13px;font-size:9px}.pagination>div{gap:5px}.pagination label{font-size:0}.pagination select{font-size:10px}.file-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:13px;gap:10px}.login-shell{display:block}.login-story{min-height:220px;padding:28px 25px}.story-content{margin:28px 0 0}.story-content h1{font-size:26px;margin:15px 0}.story-content h1 br{display:none}.story-content p,.orbit,.story-tags,.story-foot{display:none}.login-form-area{padding:40px 25px 60px}.login-form{width:380px}.login-form h2{font-size:24px}.upload-panel{bottom:12px;right:15px}.selection-bar{padding:10px 13px}.grid-card .name-btn{max-width:130px}.share-card{padding:28px 23px}}

@media(max-width:360px){.top-label{font-size:10px;white-space:nowrap;gap:7px}.top-label small{font-size:9px}.top-actions{gap:5px}.welcome-art{opacity:.2}.name-btn{max-width:115px}}
