/* These icons display the generated bitmap atlas; no icon is drawn in CSS. */
.ui-icon{display:inline-block;width:32px;height:24px;flex-shrink:0;background-image:url("images/icons.d4f4435d82d6.png");background-size:600% 400%;background-repeat:no-repeat;vertical-align:middle;transition:transform .35s cubic-bezier(.2,.9,.3,1),filter .35s}
.i-logo{background-position:0 0}.i-home{background-position:20% 0}.i-people{background-position:40% 0}.i-folder{background-position:60% 0}.i-note{background-position:80% 0}.i-shield{background-position:100% 0}
.i-upload{background-position:0 33.333333%}.i-download{background-position:20% 33.333333%}.i-trash{background-position:40% 33.333333%}.i-edit{background-position:60% 33.333333%}.i-pin{background-position:80% 33.333333%}.i-search{background-position:100% 33.333333%}
.i-money{background-position:0 66.666667%}.i-star{background-position:20% 66.666667%}.i-phone{background-position:40% 66.666667%}.i-check{background-position:60% 66.666667%}.i-heart{background-position:80% 66.666667%}.i-flag{background-position:100% 66.666667%}
.i-plus{background-position:0 100%}.i-close{background-position:20% 100%}.i-logout{background-position:40% 100%}.i-arrow{background-position:60% 100%}.i-spark{background-position:80% 100%}.i-database{background-position:100% 100%}
.brandmark{background:transparent;box-shadow:none;border-radius:0;width:50px;height:50px}.brandmark .ui-icon{width:60px;height:45px;filter:drop-shadow(0 0 12px #a777ff40)}.brand-text{font-size:25px;text-align:left}.brand-text small{font-size:11px;letter-spacing:1px;color:#c5b1f6}.sidebar .brand{gap:7px}.sidebar nav a{gap:10px}.sidebar nav a>span{width:32px;display:flex;align-items:center;justify-content:center}.sidebar nav a .ui-icon{width:32px;height:24px}.sidebar nav a:hover .ui-icon{transform:translateY(-3px) rotate(-6deg);filter:drop-shadow(0 4px 8px #b991ff50)}.btn .ui-icon{width:25px;height:19px}.btn:hover .ui-icon{transform:translateY(-2px) rotate(-6deg)}.btn .i-arrow{width:24px}.icon-btn .ui-icon{width:24px;height:18px}.stat-icon .ui-icon{width:40px;height:30px}.stat:hover .ui-icon{transform:scale(1.12) rotate(-6deg)}.file-icon .ui-icon{width:36px;height:27px}.file-icon{background:#a896ff05;border:0}.field-icon .ui-icon{width:48px;height:36px}.row-end .ui-icon{width:27px;height:20px}.search>span{display:flex}.search .ui-icon{width:28px;height:21px}.empty>.ui-icon{width:85px;height:64px;display:block;margin:0 auto 20px}.tip>span .ui-icon{width:34px;height:26px}.hero{min-height:310px;padding:35px 38px;background:linear-gradient(110deg,#191522,#211b32);isolation:isolate}.hero-image{position:absolute;left:0;top:0;width:65%;height:100%;object-fit:cover;z-index:-1;mask-image:linear-gradient(to right,black 55%,transparent 99%);animation:image-reveal 1.1s ease both}.hero-tools{z-index:1}.hero h2{font-size:43px;line-height:1.1;text-align:right;margin:0 0 32px;letter-spacing:-1px}.hero h2 span{font-size:24px;font-weight:400;letter-spacing:.3px}.hero .actions{gap:12px}.auth-card{position:relative;overflow:hidden;padding-top:42px;background:linear-gradient(160deg,#20172d,#12121b 78%);box-shadow:0 30px 160px #0008}.auth-art{position:absolute;inset:0 0 auto;height:220px;background:linear-gradient(to bottom,#16121c30,#17141f 98%),url("images/vault-hero.2c379b2f9830.png") center 42%/cover;opacity:.34;pointer-events:none;z-index:0}.auth-card>*:not(.auth-art){position:relative}.auth-card .login-brand{margin:5px 0 32px}.login-brand>span:last-child{font-size:29px;text-align:left;letter-spacing:.5px}.login-brand small{font-size:13px;color:#b8a3dd;font-weight:400;letter-spacing:1px}.auth-card h1{font-size:22px;margin-bottom:24px}.auth-card .stack{margin-top:0}.auth-card .brandmark{margin-left:6px}.login-form label{font-size:12px}.login-form input{background:#0d0d17c2;padding:14px;border-color:#b998ef19}.password-wrap{position:relative}.password-wrap input{padding-left:66px}.password-toggle{position:absolute;left:6px;top:14px;min-height:36px;border:0;background:transparent;color:#a397b7;font-size:10px;border-radius:6px;padding:5px 9px}.password-toggle:hover{color:#dac6ff;background:#a896ff0c}.login-submit{margin-top:8px;min-height:49px}.btn-label{display:flex;align-items:center;justify-content:center;gap:12px}.loader{display:none;width:20px;height:20px;border-radius:50%;border:2px solid #211a3830;border-top-color:#211a38;animation:spin .65s linear infinite}.loading .btn-label{display:none}.loading .loader{display:block}.loading{opacity:.85}.has-error{animation:auth-shake .55s cubic-bezier(.36,.07,.19,.97) both,auth-error-glow 1.3s ease both}.has-error input[aria-invalid=true]{border-color:#ed7b9866;animation:field-error 1.3s ease both}.toast.error{animation:error-toast .5s cubic-bezier(.16,1,.3,1) both;border-right:3px solid #e8839e;background:linear-gradient(100deg,#261b2b,#342034)}.toast-close .ui-icon{width:22px;height:17px}.icon-picker{border:0;padding:0;margin:4px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.icon-picker legend{font-size:12px;margin-bottom:12px;color:#c6bfd7}.icon-picker label{display:flex;position:relative;flex-direction:column;align-items:center;justify-content:center;padding:10px 6px;border:1px solid #a896ff12;border-radius:12px;background:#14121e;cursor:pointer;transition:all .25s}.icon-picker input{position:absolute;opacity:0;width:1px;height:1px}.icon-picker label:has(input:checked){background:#a896ff19;border-color:#b196ff75;box-shadow:0 0 22px #a896ff0b;transform:translateY(-2px)}.icon-picker label:has(input:focus-visible){outline:2px solid #c2a5ff;outline-offset:2px}.icon-picker label:hover{background:#a896ff10;transform:translateY(-3px)}.icon-picker .ui-icon{width:48px;height:36px}.icon-picker small{font-size:9px;margin-top:5px;color:#aaa0bc}.info-card{animation:info-arrive .6s cubic-bezier(.16,1,.3,1) both}.person-card:hover .avatar{transform:scale(1.05) rotate(-3deg)}.avatar{transition:transform .3s}.panel{animation:page-in .6s ease both}.dialog-icon .ui-icon{width:39px;height:29px}.section-heading>button .ui-icon{width:25px;height:19px}.upload-symbol{background:transparent;width:60px;height:50px}.upload-symbol .ui-icon{width:58px;height:44px}.auth-layout .content{padding-top:30px}.stack:has(.otp-input){animation:page-in .4s ease}.auth-card:has(.otp-input){min-height:350px}.success .ui-icon{width:25px;height:19px}
@keyframes spin{to{rotate:360deg}}@keyframes auth-shake{10%,90%{transform:translateX(-2px)}20%,80%{transform:translateX(4px)}30%,50%,70%{transform:translateX(-7px)}40%,60%{transform:translateX(7px)}}@keyframes auth-error-glow{0%,30%{box-shadow:0 0 0 1px #e8839e70,0 20px 90px #e8839e18}100%{box-shadow:0 30px 160px #0008}}@keyframes field-error{0%{background:#b6406025}100%{background:#0d0d17c2}}@keyframes error-toast{from{opacity:0;transform:translateY(22px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes image-reveal{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes info-arrive{from{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:850px){.sidebar .brand-text{display:none}.sidebar .brandmark .ui-icon{width:49px;height:37px}.hero h2{font-size:35px}.hero h2 span{font-size:20px}.hero-image{width:75%;opacity:.8}.hero{min-height:290px}.sidebar nav a .ui-icon{width:36px;height:27px}}
@media(max-width:600px){.hero{min-height:330px;padding:27px 23px;align-items:flex-start}.hero-image{width:100%;mask-image:linear-gradient(to top,black,transparent 95%);opacity:.65;object-position:center 70%}.hero h2{font-size:36px;margin:0 0 25px}.hero h2 span{font-size:21px}.hero-tools .actions{max-width:220px;gap:9px}.hero .btn{font-size:10px;padding:9px 12px}.sidebar .brandmark{width:35px;height:35px}.sidebar .brandmark .ui-icon{width:43px;height:32px}.sidebar nav a .ui-icon{width:34px;height:26px}.brand-text{font-size:20px}.auth-card{padding:34px 25px}.auth-art{height:200px}.icon-picker .ui-icon{width:44px;height:33px}.login-brand>span:last-child{font-size:28px}.stat-icon .ui-icon{width:36px;height:27px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
