/* EVO Storage v3 — interface Neon Violet minimalista */
:root{--evo-bg:#080716;--evo-sidebar:#0b091c;--evo-card:#10102a;--evo-stroke:#292043;--evo-purple:#ac59ff;--evo-magenta:#dc54fa;--evo-text:#f3edff;--evo-muted:#a69dbf}
body.is-app{background:var(--evo-bg);color:var(--evo-text);font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;margin:0}
.evo-layout{min-height:100vh;display:grid;grid-template-columns:256px minmax(0,1fr);background:radial-gradient(ellipse 60% 30% at 72% -10%,#7224ac2c,transparent),#090818}
.evo-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:linear-gradient(155deg,#100a24,#080817 70%);border-right:1px solid #372350;padding:23px 17px;z-index:20;box-sizing:border-box}
.evo-logo{font-size:20px;letter-spacing:.4px;font-weight:850;white-space:nowrap;display:flex;align-items:center;gap:8px;margin:4px 6px 40px}.evo-logo span{font-size:35px;color:var(--evo-purple);text-shadow:0 0 20px #982afe}.evo-logo b{color:var(--evo-purple);font-weight:800}
.evo-nav{display:flex;flex-direction:column;gap:8px}.evo-nav button{padding:13px 18px;border:1px solid transparent;background:transparent;color:#c9badf;font-size:14px;text-align:left;display:flex;gap:15px;align-items:center;border-radius:11px;cursor:pointer;transition:.15s}.evo-nav button span{font-size:21px;width:23px;color:#c4a0ff}.evo-nav button:hover{background:#8d3dff18;color:white}.evo-nav button.active{background:linear-gradient(100deg,#681bd34d,#2d1645b8);border-color:#8841e5;color:#fff;box-shadow:inset 3px 0 0 #a54cfa,0 0 14px #9d2ce928}
.sidebar-base{margin-top:auto;display:flex;flex-direction:column;gap:13px;border-top:1px solid #38224a;padding-top:16px}.sidebar-base>a{font-size:12px;text-decoration:none;color:#ad9bcc}.profile-mini{display:flex;gap:10px;align-items:center;min-width:0}.profile-mini .avatar{border:1px solid #8a44dc;border-radius:50%;background:#432271;color:#fff;padding:9px}.profile-mini div{min-width:0}.profile-mini b{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-mini small{color:#b49cdb;font-size:11px;display:block}.evo-exit{border:1px solid #51335d;background:#1d102a;color:#eac8fa;padding:10px;border-radius:10px;cursor:pointer;width:100%;text-align:left}
.evo-main{min-width:0}.evo-topbar{height:73px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid #2b1b44;background:#090816d9}.evo-search-mark{display:flex;align-items:center;gap:12px;color:#bbb0d4;font-size:13px}.evo-search-mark:first-letter{color:var(--evo-purple)}.evo-topright{display:flex;align-items:center;gap:13px;font-size:13px}.evo-topright button{border:0;color:#ebd9ff;background:transparent;font-size:24px;cursor:pointer;position:relative}.evo-topright i{position:absolute;background:#e73af2;width:8px;height:8px;right:1px;top:2px;border-radius:50%}.evo-top-avatar{border:1px solid #8542b9;border-radius:50%;background:#4d1777;color:#db7cff;padding:8px}
.evo-content{max-width:1560px;margin:0 auto;padding:28px 30px 60px}.evo-page[hidden],.modal-overlay[hidden],#notice-dot[hidden]{display:none!important}.evo-page{animation:evo-fade .17s ease}@keyframes evo-fade{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.evo-hero{padding:30px 36px;background:radial-gradient(circle at 78% 70%,#6424e85e,transparent 35%),linear-gradient(110deg,#150f35,#0d0927);border:1px solid #3e1e64;border-radius:19px;margin-bottom:18px;min-height:120px;display:flex;flex-direction:column;justify-content:center}.evo-hero h1{font-weight:830;line-height:1.18;font-size:clamp(26px,3vw,41px);margin:0 0 10px;letter-spacing:-.9px}.evo-hero em{font-style:normal;color:#d272ff;text-shadow:0 0 22px #c061ff50}.evo-hero p,.evo-titlebar p{color:var(--evo-muted);font-size:14px;margin:0}
.evo-cols-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:17px}.evo-box{background:linear-gradient(140deg,#111028,#0d0b20);border:1px solid #32234e;border-radius:16px;padding:21px;margin-bottom:18px;min-width:0;box-shadow:0 14px 24px #04020a45}.evo-box h2{font-size:17px;margin:0 0 22px;color:#f4eaff}.evo-box-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}.evo-box-head h2{margin:0}.link-btn,.evo-sub-link{border:0;background:transparent;color:#c46bfa;cursor:pointer;font-size:12px;text-decoration:none}
.evo-identity{display:flex;align-items:center;gap:15px;margin:10px 0 27px}.evo-identity>span{font-size:35px;border:2px solid #a73eff;border-radius:50%;background:#3d145a;padding:8px 13px;box-shadow:0 0 18px #b53aff70}.evo-identity strong{display:block;font-size:17px}.evo-identity small{display:block;color:#b3a5c6;padding:5px 0}.evo-identity b,.evo-pill{display:inline-block;background:#6621a84d;border:1px solid #7836b3;color:#e1a8ff;padding:5px 9px;border-radius:7px;font-size:11px}
.notice-list{max-height:260px;overflow:auto}.notice{border-bottom:1px solid #362147;padding:8px 0}.notice:first-child{padding-top:0}.notice p{margin:0 0 5px;font-size:13px;line-height:1.45}.notice small{color:#9a8eb1}.notice button{float:right;background:transparent;border:0;color:#c485ff;cursor:pointer;font-size:11px}.notice.unread p:before{content:'●';font-size:9px;color:#b144ff;margin-right:10px}.evo-storage-value{font-weight:850;font-size:clamp(22px,2.3vw,34px)}.evo-storage-value small{font-size:13px;font-weight:450;color:#c3b0d5}.evo-meter{height:10px;background:#2b1f46;overflow:hidden;border-radius:30px;margin:17px 0}.evo-meter span{display:block;height:100%;background:linear-gradient(90deg,#7124ef,#d84dff);border-radius:30px;box-shadow:0 0 16px #b63cff8c}.evo-storage-footer{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid #342347;font-size:11px;color:#ad99c7}.evo-muted{color:var(--evo-muted);font-size:13px;line-height:1.5}.evo-pictures{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.evo-picture{border:1px solid #34264c;border-radius:10px;overflow:hidden;background:#141029;padding:0;cursor:pointer;position:relative;aspect-ratio:1.25}.evo-picture img{width:100%;height:100%;object-fit:cover}.evo-picture span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#090715de);font-size:11px;color:#fff;text-align:left;padding:16px 7px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.evo-titlebar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:6px 0 26px}.evo-titlebar h1{font-size:clamp(27px,3vw,37px);margin:0 0 8px;color:#faf2ff}.evo-buttons{display:flex;gap:10px}.evo-button{border-radius:9px;padding:10px 16px;border:1px solid #674095;background:#241839;color:#eee2ff;font:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:.17s}.evo-button:hover{border-color:#bd60f1;box-shadow:0 0 14px #bb39ff38}.evo-button.filled{border:1px solid #af4bff;background:linear-gradient(115deg,#8226e8,#c83bea);box-shadow:0 0 16px #a52dff3d;color:white}.evo-button.danger{border-color:#982747;background:#381227;color:#ff91b0}.evo-button:disabled{opacity:.45;cursor:not-allowed}
.evo-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:17px}.evo-tabs button{border:1px solid #4a2b65;background:#15102a;color:#cdbde7;padding:11px 17px;border-radius:9px;cursor:pointer;font:inherit;font-size:13px}.evo-tabs button.selected{color:#fff;background:#6820b050;border-color:#a44fff;box-shadow:0 0 14px #8628ff36}
.evo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px;flex-wrap:wrap}.evo-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.evo-crumbs button{background:transparent;border:0;color:#e3c9ff;font:inherit;font-size:13px;cursor:pointer;padding:5px}.evo-crumbs span{color:#77628f}.evo-toolbar input,.evo-toolbar select,.evo-form input,.evo-form select,.evo-form textarea,.evo-link input{background:#17132c;border:1px solid #483260;border-radius:9px;color:#fff;padding:11px 14px;font:inherit;font-size:13px;min-width:0;outline:none}.evo-toolbar input:focus,.evo-form input:focus,.evo-form textarea:focus,.evo-form select:focus{border-color:#bd58ff;box-shadow:0 0 0 2px #9e32ff36}.evo-toolbar #search{width:250px}
.evo-files{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;align-items:stretch}.evo-file{min-width:0;background:#17122e;border:1px solid #38244f;border-radius:11px;overflow:hidden}.evo-file:hover{border-color:#a74cf1}.evo-file-preview{width:100%;height:126px;background:linear-gradient(130deg,#22113e,#0d0c24);border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden}.evo-file-preview img{width:100%;height:100%;object-fit:cover}.evo-file-symbol{font-size:58px;color:#b759ff;text-shadow:0 0 24px #9d3effa1}.evo-file-title{display:flex;flex-direction:column;gap:5px;padding:11px 12px 3px}.evo-file-title strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.evo-file-title small{font-size:10px;color:#9a88bc}.evo-file-actions{text-align:right;padding:0 10px 9px}.evo-file-actions button{background:transparent;color:#c393f7;border:0;font-size:22px;cursor:pointer;line-height:1}.evo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.evo-gallery-card{padding:13px;text-align:left;border:1px solid #44305d;border-radius:14px;background:#13102b;cursor:pointer;color:#f1e6ff}.evo-gallery-card:hover{border-color:#b259ed;box-shadow:0 0 20px #7923ca36}.evo-gallery-photos{display:flex;gap:5px;height:160px}.evo-gallery-photos img{width:34%;height:100%;min-width:0;object-fit:cover;border-radius:7px}.evo-gallery-photos img:first-child{width:57%;flex:1}.evo-gallery-photos span{display:flex;align-items:center;justify-content:center;width:100%;font-size:70px;color:#a249e9}.evo-gallery-name{display:flex;justify-content:space-between;gap:8px;padding:15px 6px 5px;font-size:13px}.evo-gallery-name small{color:#ab95c3}
.evo-scroll{overflow-x:auto}.evo-table{width:100%;border-collapse:collapse;min-width:700px;text-align:left}.evo-table th{padding:13px 12px;background:#211637;color:#b2a1c9;text-transform:uppercase;font-size:10px;letter-spacing:.6px}.evo-table td{padding:14px 12px;border-bottom:1px solid #332249;font-size:12px;color:#eee2ff;overflow-wrap:anywhere}.evo-table td small{display:block;color:#9987bc;padding-top:5px}.evo-table tbody tr:hover{background:#251638}.table-actions{display:flex;flex-wrap:wrap;gap:5px}.table-actions button{border:1px solid #553473;border-radius:8px;padding:7px 9px;color:#d8b9f7;background:#271a41;cursor:pointer;font-size:11px}.table-actions button.red{color:#ff9baf;border-color:#863452}.evo-pages{display:flex;justify-content:center;align-items:center;gap:14px;padding-top:18px;font-size:12px;color:#ad98ce}
.modal-overlay{position:fixed!important;inset:0;display:flex;justify-content:center;align-items:center;background:#050313d9;backdrop-filter:blur(6px);z-index:1000;padding:17px;box-sizing:border-box}.modal-card{position:relative;background:linear-gradient(150deg,#1d1434,#100d24);border:1px solid #7544a4;box-shadow:0 18px 55px #0009,0 0 40px #8522dc30;border-radius:18px;max-height:90vh;overflow:auto;width:min(100%,640px);box-sizing:border-box;padding:27px}.dialog-title{font-size:23px;margin:0 35px 8px 0}.dialog-sub{font-size:13px;color:#a992c7;margin:0 0 17px}.evo-modal-close{position:absolute;right:20px;top:19px;border:0;background:transparent;color:#eedfff;font-size:19px;cursor:pointer}.evo-form{display:flex;flex-direction:column;gap:14px;padding-top:8px}.evo-form label{display:flex;flex-direction:column;gap:7px;color:#ded1ee;font-size:12px}.evo-form input,.evo-form select,.evo-form textarea{width:100%;box-sizing:border-box}.dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:20px}.evo-preview{display:flex;align-items:center;justify-content:center;margin:18px 0;max-height:360px;overflow:hidden;border-radius:10px;background:#0b091b;padding:6px}.evo-preview-image{max-height:330px;max-width:100%;object-fit:contain}.evo-link{display:flex;gap:8px}.evo-link input{flex:1;width:30px}.evo-menu-options{display:grid;gap:8px;padding-top:15px}.evo-menu-options .evo-button{text-align:left}.evo-drop{border:1px dashed #8545b3;border-radius:14px;text-align:center;padding:28px 12px;font-size:30px;color:#b975ff;background:#ae35f80a}.evo-drop p{font-size:13px;color:#b8a4cb}.evo-check{display:flex;gap:8px;align-items:center;margin:15px 0;font-size:13px}.evo-upload-item{border-bottom:1px solid #3b2955;padding:10px 0;font-size:12px}.evo-upload-item strong{display:block;max-width:100%;overflow-wrap:anywhere}.evo-upload-item small{color:#ada2ce}.evo-upload-item .evo-meter{height:6px;margin:8px 0}.toast{position:fixed;right:22px;bottom:22px;max-width:min(440px,calc(100vw - 44px));color:white;background:#40216d;border:1px solid #b151f4;padding:14px 20px;border-radius:12px;font-size:13px;z-index:1050;box-shadow:0 10px 35px #0009}.toast.error{background:#4e182d;border-color:#d43c68}
.mobile-only{display:none}
@media(max-width:1190px){.evo-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.evo-cols-3 .evo-box:last-child{grid-column:span 2}.evo-files{grid-template-columns:repeat(3,minmax(0,1fr))}.evo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.evo-pictures{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:820px){.evo-layout{display:block}.evo-sidebar{position:fixed;transform:translateX(-105%);transition:transform .2s;width:260px}.evo-sidebar.open{transform:translateX(0);box-shadow:10px 0 38px #0009}.mobile-only{display:inline-flex;border:0;background:transparent;color:#d8b8fc;font-size:23px;cursor:pointer}.evo-content{padding:18px}.evo-topbar{padding:0 16px;height:66px}.evo-search-mark span{display:none}.evo-files{grid-template-columns:repeat(2,minmax(0,1fr))}.evo-titlebar{align-items:flex-start;flex-direction:column}.evo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.evo-cols-3{grid-template-columns:1fr}.evo-cols-3 .evo-box:last-child{grid-column:auto}.evo-hero{padding:22px;min-height:90px}.evo-box{padding:15px}.evo-pictures{grid-template-columns:repeat(2,minmax(0,1fr))}.evo-gallery{grid-template-columns:1fr}.evo-files{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.evo-file-preview{height:115px}.evo-titlebar .evo-buttons{width:100%}.evo-titlebar .evo-buttons button{flex:1}.evo-toolbar #search{width:100%}.evo-topright{font-size:11px}.evo-tabs button{flex:1}.evo-storage-footer{gap:7px}}
@media(prefers-reduced-motion:reduce){.evo-page{animation:none}.evo-sidebar{transition:none}}
