:root{font-family:Arial,sans-serif;color:#193347;background:#f2f6f6;font-size:14px}*{box-sizing:border-box}body{margin:0}aside{position:fixed;width:235px;inset:0 auto 0 0;background:#fff;border-right:1px solid #dce7e7;padding:30px 22px}aside img{width:100%;height:105px;object-fit:contain}aside p,small{font-size:10px;letter-spacing:2px;color:#789092}aside button{width:100%;text-align:left;background:transparent;color:#47616b;margin-top:12px;padding:14px}aside button.active{background:#e4f5f3;color:#008f91}footer{position:absolute;bottom:30px;line-height:1.9;font-size:11px;color:#829394}main{margin-left:235px;padding:38px;max-width:1600px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}h1{font-size:30px;margin:9px 0}h2{font-size:20px}button{cursor:pointer;border:0;border-radius:8px;padding:11px 17px;background:#009b9e;color:white;font-weight:600}button:hover{filter:brightness(.94)}header button,.secondary{background:#e3ecec;color:#34535c}input,select,textarea{font:inherit;border:1px solid #cedddd;border-radius:7px;background:white;padding:11px;min-width:0;width:100%;color:#193347}label{display:block;line-height:1.8}textarea{height:75px}input[type=month]{width:180px}.toolbar{display:flex;gap:12px;align-items:center;margin:20px 0}.toolbar input{max-width:380px}.grid,.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card,.panel{background:white;border:1px solid #e0e9e8;border-radius:14px;padding:24px;margin-bottom:22px}.card strong{display:block;font-size:32px;margin:15px 0}.muted{color:#758b92;line-height:1.6}.tag{background:#e4f5ef;color:#218664;padding:5px 9px;border-radius:20px;white-space:nowrap}table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}td,th{padding:16px;text-align:left;border-bottom:1px solid #e7eeee}th{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#72858b;background:#f9fbfb}td button{font-size:12px;padding:8px;margin:3px}dialog{border:1px solid #cfdddd;border-radius:18px;width:min(940px,95vw);max-height:92vh;padding:30px}dialog::backdrop{background:#102d3c88}.grid label{font-size:12px}#auth{max-width:430px;margin:70px auto;background:white;padding:35px;border-radius:20px}#auth input{margin:15px 0}#notice{color:#ae3d31;line-height:1.8}#notice:empty{display:none}#voucher{color:#344d91;background:white;padding:22px}#voucher .sheet{border:2px solid #344d91;border-radius:18px;padding:25px;margin-bottom:20px;break-inside:avoid}#voucher header{border-bottom:2px solid #344d91;padding-bottom:16px;line-height:1.6}#voucher img{width:200px;max-height:100px;object-fit:contain}#voucher h2{text-align:center}#voucher table{font-size:12px}#voucher td,#voucher th{padding:8px;color:#344d91}#voucher .signatures{display:flex;justify-content:space-between;margin-top:45px;font-size:12px}#voucher-dialog{width:980px}.adjustment{font-size:12px;margin:8px 0}.scroll{overflow:auto}@media(max-width:900px){aside{position:static;width:100%;padding:15px}aside img{height:60px;width:160px}aside button{width:auto}footer{display:none}main{margin:0;padding:20px}.grid,.cards{grid-template-columns:1fr 1fr}}@media print{@page{size:A4;margin:9mm}body>*{visibility:hidden}#voucher-dialog{display:block!important;position:absolute;left:0;top:0;border:0;padding:0;max-height:none;width:100%;overflow:visible}#voucher,#voucher *{visibility:visible}#voucher{padding:0}.no-print{display:none!important}#voucher .sheet{padding:16px;margin-bottom:12px}#voucher header{margin-bottom:10px}#voucher .signatures{margin-top:25px}}
aside{overflow-y:auto}aside footer{position:static;margin-top:40px}.dialog-error{color:#b23d31}#hr-kind,#hr-employee-filter{max-width:260px}#report-content table{font-size:12px}.printing-report #voucher-dialog{display:none!important}@media print{body.printing-report main,body.printing-report #workspace,body.printing-report #reports,body.printing-report #report-content,body.printing-report #report-content *{visibility:visible}body.printing-report main{margin:0;padding:0}body.printing-report main>header,body.printing-report #reports>.toolbar{display:none}body.printing-report #report-content .panel{break-inside:avoid}body.printing-report #report-content{position:absolute;top:0;left:0;width:100%}}
[hidden]{display:none!important}body.auth-mode{min-height:100vh;background:radial-gradient(ellipse at top left,#d6eeec 0,transparent 55%),#f4f8f9}body.auth-mode>aside,body.auth-mode main>header{display:none}body.auth-mode main{margin:0;padding:35px 20px;max-width:none;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center}body.auth-mode #auth{width:min(440px,100%);max-width:440px;margin:0;padding:38px 40px;border:1px solid #e0ebeb;box-shadow:0 20px 65px #1933470d;border-radius:20px}body.auth-mode #notice{width:min(440px,100%);margin:0 0 15px}.login-brand{display:flex;flex-direction:column;align-items:center;border-bottom:1px solid #e9eeee;margin-bottom:26px;padding-bottom:23px}.login-brand img{width:235px;height:110px;object-fit:contain}.login-brand span{font-size:10px;letter-spacing:3px;color:#728e94;margin-top:12px}#auth h2{font-size:25px;margin-bottom:8px}#auth label{margin-top:16px;font-size:13px;font-weight:600}#auth label input{margin:7px 0 0}#auth button{width:100%;padding:14px;margin-top:22px}.login-footer{font-size:11px;color:#8a9da2;text-align:center;margin:25px 0 0}#employee-list td:last-child{min-width:270px}.profile-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 0}.profile-heading h2{font-size:26px;margin:10px 0}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid #e2ebeb;border-radius:12px;overflow:hidden;background:#e2ebeb}.profile-grid>div{padding:15px;background:white;overflow-wrap:anywhere}.profile-grid small{letter-spacing:.6px}.profile-grid p{margin:10px 0 0}.salary-lines{background:#f5f9f9;border-radius:12px;padding:12px 22px;margin:20px 0}.salary-lines>div{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #dee9e9}.salary-lines .salary-net{border:0;color:#008d90;font-size:18px}#salary-dialog,#profile-dialog{width:min(1000px,95vw)}@media(max-width:650px){.profile-grid{grid-template-columns:1fr 1fr}.profile-heading{align-items:flex-start;flex-direction:column}.salary-lines .salary-net{font-size:15px}body.auth-mode #auth{padding:30px 24px}}
.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.permission-grid input{width:auto}.permission-form{padding:15px 0;border-bottom:1px solid #e0eaea}#full-backup-tools form{margin-top:20px}.letterhead img{width:190px}#document-dialog{width:min(1050px,95vw)}#document-content{line-height:1.8;padding:25px}#document-content h1{font-size:24px}#document-content .signatures{margin-top:70px;display:flex;justify-content:space-between}@media print{body.printing-document #voucher-dialog{display:none!important}body.printing-document #document-dialog{display:block!important;visibility:visible;position:absolute;top:0;left:0;border:0;max-height:none;width:100%;padding:0;overflow:visible}body.printing-document #document-content,body.printing-document #document-content *{visibility:visible}body.printing-document #document-content table{break-inside:auto}body.printing-document #document-content tr{break-inside:avoid}}
/* Animated Spark Agency sign-in overlay */
body.auth-mode{background:linear-gradient(125deg,#071c29,#103b49 45%,#07575a 75%,#092c3c);background-size:220% 220%;animation:spark-background 24s ease infinite;isolation:isolate}
body.auth-mode::before,body.auth-mode::after{content:"";position:fixed;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(45px);width:48vw;height:48vw;min-width:340px;min-height:340px;background:radial-gradient(circle,#00bcc044,transparent 68%);animation:spark-drift 18s ease-in-out infinite alternate}
body.auth-mode::before{top:-25%;left:-10%}body.auth-mode::after{right:-15%;bottom:-30%;animation-delay:-9s;background:radial-gradient(circle,#28ddd32e,transparent 68%)}
body.auth-mode main{padding:40px 24px;position:relative}
body.auth-mode #auth{width:min(990px,100%);max-width:990px;padding:0;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid #ffffff38;border-radius:28px;background:#faffff;box-shadow:0 35px 100px #0007,0 0 55px #00a9ad12;animation:spark-enter .7s cubic-bezier(.2,.7,.25,1) both}
body.auth-mode #notice{color:#ffe0db;background:#512e3bcc;border:1px solid #e9a29b55;border-radius:10px;padding:11px 18px;width:min(990px,100%);position:relative;z-index:2}
body.auth-mode #notice:empty{display:none}
.login-story{position:relative;min-height:620px;padding:36px;background:linear-gradient(150deg,#063641,#087e82 65%,#00a3a5);color:#fff;display:flex;flex-direction:column;overflow:hidden}
.login-story::before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 97%,#ffffff07 97%),linear-gradient(90deg,transparent 97%,#ffffff07 97%);background-size:38px 38px;pointer-events:none}
.login-eyebrow{font-size:10px;font-weight:700;letter-spacing:2.5px;color:#a8eceb;position:relative;z-index:1}.login-story>.login-eyebrow{font-size:13px;color:white;letter-spacing:4px}
.login-story-copy{position:relative;z-index:1;margin-top:auto}.login-story-copy h2{font-size:37px!important;line-height:1.16;font-weight:600;letter-spacing:-1px;margin:17px 0!important}.login-story-copy p{color:#c4eded;line-height:1.8;font-size:14px}.login-story-bottom{font-size:9px;letter-spacing:2.3px;color:#b5e6e5;margin-top:38px;z-index:1}
.login-orbit{position:relative;width:240px;height:210px;align-self:center;margin:35px 0 15px;display:grid;place-items:center}
.login-orbit>i{position:absolute;border:1px solid #8bfff733;border-radius:50%;width:200px;height:200px;animation:spark-orbit 24s linear infinite}
.login-orbit>i:nth-child(2){width:254px;height:254px;border-style:dashed;animation-duration:42s;animation-direction:reverse;opacity:.7}
.login-orbit>i:nth-child(3){width:140px;height:140px;border-color:#cafff34d;animation:spark-breathe 7s ease-in-out infinite}
.login-orbit>i:first-child::before,.login-orbit>i:nth-child(2)::before{content:"";position:absolute;top:15px;left:20px;width:8px;height:8px;border-radius:50%;background:#adfff4;box-shadow:0 0 18px #8ffff5}
.login-eye{position:relative;width:124px;height:75px;border:3px solid #c5fff5;border-radius:85% 10% 85% 10%;transform:rotate(45deg);display:grid;place-items:center;box-shadow:0 0 35px #70fff028;animation:spark-eye-glow 7s ease-in-out infinite}
.login-eye b{display:block;width:47px;height:47px;border:3px solid #c5fff5;border-radius:50%;transform:rotate(-45deg)}.login-eye b::after{content:"";display:block;width:19px;height:19px;border:3px solid #c5fff5;border-left-color:transparent;border-radius:50%;margin:8px}
.login-panel{padding:43px 44px 32px;align-self:center;min-width:0;background:linear-gradient(150deg,#fff,#f2fbfa)}
.login-panel .login-brand{margin-bottom:25px;padding-bottom:22px}.login-panel .login-brand img{width:220px;height:100px}.login-panel .login-brand span{color:#009c9e;font-size:9px;letter-spacing:3.5px}
#auth .login-panel h2{font-size:27px;margin:0 0 9px;color:#102c3d;letter-spacing:-.5px}#auth .login-panel>.muted{font-size:13px;color:#6e858d;line-height:1.7;margin-bottom:22px}
#auth .login-form label{color:#27444e;font-weight:600;font-size:12px;margin-top:17px}#auth .login-form input{border:1px solid #d6e5e7;background:#fff;border-radius:10px;padding:13px 14px;transition:border-color .2s,box-shadow .2s;outline:none}
#auth .login-form input:focus{border-color:#00a5a7;box-shadow:0 0 0 4px #00a5a712}#auth button.login-toggle{width:auto;padding:6px 0;margin:7px 0 0;display:block;margin-left:auto;background:transparent;color:#00858d;font-size:11px;font-weight:500}
#auth button.login-submit{margin-top:17px;padding:14px 20px;border-radius:10px;position:relative;overflow:hidden;background:linear-gradient(110deg,#008f95,#00afb0);box-shadow:0 8px 22px #009da52b;transition:transform .2s,box-shadow .2s;font-size:14px}
#auth button.login-submit::after{content:"";position:absolute;inset:-30% auto -30% -50%;width:30%;background:linear-gradient(90deg,transparent,#ffffff28,transparent);transform:skewX(-20deg);animation:spark-sheen 8s ease-in-out infinite}
#auth button.login-submit:hover{transform:translateY(-2px);box-shadow:0 11px 28px #009da53b}#auth button.login-submit:active{transform:translateY(0)}#auth button.login-submit:disabled{cursor:wait;opacity:.75;transform:none}
#auth button.is-loading::before{content:"";display:inline-block;width:12px;height:12px;border:2px solid #ffffff66;border-top-color:white;border-radius:50%;margin-right:9px;vertical-align:-2px;animation:spark-orbit .8s linear infinite}
.login-footer{font-size:10px;color:#82989e;display:flex;justify-content:center;align-items:center;gap:7px;margin-top:25px}.login-status-dot{width:5px;height:5px;border-radius:50%;background:#00a5a7;box-shadow:0 0 0 4px #00a5a711}
@keyframes spark-background{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes spark-drift{to{transform:translate(12vw,8vh) scale(1.15)}}@keyframes spark-enter{from{opacity:0;transform:translateY(22px) scale(.985)}to{opacity:1;transform:none}}@keyframes spark-orbit{to{transform:rotate(360deg)}}@keyframes spark-breathe{0%,100%{opacity:.5;transform:scale(.96)}50%{opacity:1;transform:scale(1.05)}}@keyframes spark-eye-glow{0%,100%{box-shadow:0 0 25px #70fff01c}50%{box-shadow:0 0 55px #70fff044}}@keyframes spark-sheen{0%,65%{left:-50%}90%,100%{left:150%}}
@media(max-width:760px){body.auth-mode #auth{max-width:450px;grid-template-columns:1fr;border-radius:22px}.login-story{display:none}.login-panel{padding:30px 28px}body.auth-mode main{padding:24px 16px}body.auth-mode #notice{max-width:450px}}
@media(prefers-reduced-motion:reduce){body.auth-mode,body.auth-mode::before,body.auth-mode::after,body.auth-mode #auth,.login-orbit>i,.login-eye,#auth button.login-submit::after,#auth button.is-loading::before{animation:none}#auth button.login-submit:hover{transform:none}}
@media print{body.auth-mode::before,body.auth-mode::after{display:none}}
.login-real-eye{position:relative;width:260px;height:174px;object-fit:contain;z-index:1;filter:drop-shadow(0 0 20px #62f9e526)}.login-orbit{width:270px}.login-orbit>i{opacity:.35;border-color:#a5fff52b}.login-orbit>i:nth-child(2){opacity:.3}.login-orbit>i:nth-child(3){opacity:.3}.developer-credit{margin-top:20px;padding-top:17px;border-top:1px solid #deebeb;text-align:center;font-size:10px;color:#70878d;line-height:1.8}.developer-credit strong{font-weight:600;color:#2c5360}.developer-credit a{display:block;width:max-content;margin:2px auto 0;color:#008f96;text-decoration:none;font-size:11px;letter-spacing:.5px}.developer-credit a:hover{text-decoration:underline}.app-credit{margin-top:18px;padding-top:17px}.login-panel{padding-top:32px;padding-bottom:27px}@media print{.developer-credit{display:none}}

.developer-credit .copyright{display:block;margin-top:7px;font-size:9px;color:#82959b;letter-spacing:.1px}

/* The exact logo eye, cropped in CSS from the original transparent logo asset. */
.login-orbit{width:300px;height:210px;display:grid;place-items:center}
.login-logo-eye{display:block;width:288px;height:166px;background-image:url('assets/logo.png');background-repeat:no-repeat;background-size:558px 253.5px;background-position:-140px -22px;transform-origin:50% 52%;animation:spark-logo-blink 6s ease-in-out infinite}
@keyframes spark-logo-blink{0%,44%,50%,100%{transform:scaleY(1)}47%{transform:scaleY(.035)}}
@media(prefers-reduced-motion:reduce){.login-logo-eye{animation:none}}

.login-logo-eye{filter:brightness(0) invert(1)}

/* Animated atmosphere outside the login card. */
.login-ambient{display:none}body.auth-mode .login-ambient{display:block;position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}body.auth-mode main{z-index:1}body.auth-mode #auth{position:relative;z-index:1}
.ambient-aurora{position:absolute;width:70vw;height:60vh;min-width:500px;border-radius:45%;filter:blur(65px);opacity:.6;will-change:transform}.aurora-one{left:-30vw;top:4vh;background:radial-gradient(ellipse,#04d5d04a,transparent 65%);animation:aurora-flow 20s ease-in-out infinite alternate}.aurora-two{right:-32vw;bottom:-10vh;background:radial-gradient(ellipse,#31dfc33b,transparent 68%);animation:aurora-flow 24s ease-in-out -10s infinite alternate-reverse}
.ambient-wave{position:absolute;width:100vw;height:76vh;min-width:950px;border:1px solid #79fff12b;border-radius:48% 52% 65% 35%;box-shadow:0 0 20px #47ead00a,inset 0 0 20px #47ead008;will-change:transform}.wave-one{left:-50vw;top:7vh;animation:ambient-wave-flow 28s ease-in-out infinite alternate}.wave-two{right:-56vw;bottom:2vh;animation:ambient-wave-flow 33s ease-in-out -14s infinite alternate-reverse;border-color:#7fffe92b}.wave-three{left:-10vw;top:-64vh;width:120vw;height:96vh;opacity:.7;animation:ambient-wave-flow 38s ease-in-out -8s infinite alternate}
.ambient-spark{position:absolute;display:block;width:4px;height:4px;border-radius:50%;background:#c0fff4;box-shadow:0 0 12px #62fff2,0 0 30px #37d4c548;opacity:0;animation:ambient-spark-rise 15s linear infinite;will-change:transform,opacity}.spark-1{left:6%;top:88%;animation-delay:-2s}.spark-2{left:14%;top:68%;animation-delay:-9s;width:3px;height:3px}.spark-3{left:22%;top:96%;animation-delay:-5s}.spark-4{left:3%;top:49%;animation-delay:-11s;width:2px;height:2px}.spark-5{left:88%;top:91%;animation-delay:-7s}.spark-6{left:95%;top:74%;animation-delay:-1s;width:3px;height:3px}.spark-7{left:81%;top:55%;animation-delay:-12s;width:2px;height:2px}.spark-8{left:91%;top:38%;animation-delay:-4s}.spark-9{left:35%;top:14%;animation-delay:-8s;width:2px;height:2px}.spark-10{left:67%;top:92%;animation-delay:-3s}.spark-11{left:51%;top:10%;animation-delay:-13s;width:2px;height:2px}.spark-12{left:73%;top:18%;animation-delay:-6s;width:3px;height:3px}
@keyframes aurora-flow{from{transform:translate(-3vw,-3vh) rotate(-12deg) scale(.9)}to{transform:translate(12vw,13vh) rotate(18deg) scale(1.2)}}@keyframes ambient-wave-flow{from{transform:translate(-2vw,-2vh) rotate(-12deg) scale(.92)}to{transform:translate(5vw,7vh) rotate(13deg) scale(1.12)}}@keyframes ambient-spark-rise{0%{opacity:0;transform:translate(0,20px)}15%{opacity:.65}75%{opacity:.35}100%{opacity:0;transform:translate(35px,-210px)}}
@media(max-width:760px){.ambient-wave{opacity:.35}.ambient-aurora{filter:blur(40px)}.ambient-spark:nth-of-type(even){display:none}}
@media(prefers-reduced-motion:reduce){.ambient-aurora,.ambient-wave,.ambient-spark{animation:none;will-change:auto}.ambient-spark{opacity:.25}}
@media print{.login-ambient{display:none!important}}
/* Persistent dialog close bar: header stays visible while content scrolls. */
dialog{padding:0;max-height:calc(100dvh - 32px);max-width:calc(100vw - 28px);border:1px solid #cfdede;border-radius:16px;box-shadow:0 25px 90px #0d293d44;overflow:hidden;margin:auto}
dialog[open]{display:flex;flex-direction:column}.dialog-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 20px;background:#fff;border-bottom:1px solid #e0eaea;flex:none;position:relative;z-index:3;min-height:64px}.dialog-topbar strong{font-size:16px;color:#21444d}.dialog-x{display:grid;place-items:center;flex:none;width:38px;height:38px;padding:0;border-radius:10px;background:#eaf4f3;color:#19616a;font-size:28px;font-weight:400;line-height:1}.dialog-x:hover{background:#d8edeb}.dialog-x:focus-visible{outline:3px solid #00a9a8;outline-offset:2px}.dialog-scroll{padding:24px;overflow:auto;min-height:0;overscroll-behavior:contain;scrollbar-gutter:stable}.dialog-scroll>.toolbar:first-child{margin-top:0}#salary-close,#profile-close,#close-voucher,#document-close{display:none}.dialog-scroll h2{margin-top:6px}.toolbar{flex-wrap:wrap}.toolbar h2{margin-right:auto}.row-actions{min-width:215px;vertical-align:middle}.row-actions button{display:inline-flex;align-items:center;justify-content:center;margin:4px 3px;padding:9px 12px;white-space:nowrap}#employee-list td:last-child{min-width:260px;max-width:320px}#employee-list td:last-child [data-profile],#employee-list td:last-child [data-calculate]{min-width:114px}button:focus-visible{outline:3px solid #00a9a870;outline-offset:3px}button:disabled{cursor:wait;opacity:.6}
.workspace-nav{margin:8px 0 24px}.nav-group{margin-bottom:21px}.nav-caption{display:block;font-size:9px;font-weight:700;letter-spacing:1.5px;color:#8a9da4;margin:0 12px 8px}.workspace-nav button{margin:3px 0;padding:11px 14px;border-radius:9px;font-size:13px;transition:background .15s,color .15s}.workspace-nav button:hover{background:#f0f7f6}.workspace-nav button.active{background:#def3f0;color:#008d91;box-shadow:inset 3px 0 #00a6a8}aside>img{height:90px}aside>p{margin-bottom:28px}aside #company-footer{font-size:10px;margin-top:15px;padding-top:15px;border-top:1px solid #e5eeee}.quick-actions h2{margin:0 0 7px}.quick-actions>.muted{margin-top:0}.quick-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:20px}.quick-action-grid button{position:relative;background:#f4f9f8;border:1px solid #e0eeeb;text-align:left;color:#21474e;padding:19px 36px 19px 17px;transition:transform .18s,border-color .18s}.quick-action-grid button:hover{border-color:#62c4bb;transform:translateY(-2px);background:#eaf7f3}.quick-action-grid strong{display:block;font-size:13px}.quick-action-grid span{display:block;color:#799097;font-size:11px;font-weight:400;margin-top:8px;line-height:1.5}.quick-action-grid b{position:absolute;right:15px;top:17px;color:#009fa3;font-size:18px}#dashboard .panel{overflow:auto}#dashboard .card strong{font-size:27px}#dashboard table th{white-space:nowrap}
@media(max-width:900px){.workspace-nav{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.nav-group{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:0}.nav-caption{display:none}.workspace-nav button{width:auto}.quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}aside>p{margin-bottom:10px}.dialog-scroll{padding:18px}}
@media(max-width:520px){.quick-action-grid{grid-template-columns:1fr}dialog{max-width:calc(100vw - 14px);max-height:calc(100dvh - 14px)}.dialog-topbar{padding:11px 15px;min-height:58px}.dialog-scroll{padding:15px}.profile-grid{grid-template-columns:1fr}.toolbar button{flex-shrink:0}}
@media print{.dialog-topbar{display:none!important}.dialog-scroll{overflow:visible;padding:0;display:block;max-height:none}dialog[open]{display:block}.workspace-nav{display:none!important}}
.profile-print-head{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:2px solid #009ba2;padding-bottom:18px;margin-bottom:25px}.profile-print-head img{width:180px;height:90px;object-fit:contain}.profile-print-head h1{margin:0}.profile-print-head p{font-size:12px;color:#607d85}.profile-print-signatures{margin-top:35px;border-top:1px solid #d7e5e5;padding-top:15px}@media print{#document-content thead{display:table-header-group}#document-content h2{break-after:avoid}.profile-print-head{break-inside:avoid}.profile-print-signatures{break-inside:avoid}}
#notice.notice-success{color:#16836a;background:#e5f6ee;border:1px solid #c9e8db;border-radius:8px;padding:10px 14px;margin-bottom:16px;font-size:13px}#notice:empty{display:none!important}

.working-days-summary{display:flex;flex-wrap:wrap;gap:15px;padding:16px 20px;background:#eaf6f3;border:1px solid #d6eae4;border-radius:10px;margin:20px 0}.working-days-summary span{flex:1;min-width:155px;font-size:13px}.working-days-summary b{color:#008c8f}
.working-day-option{display:inline-flex!important;align-items:center;gap:6px;margin:5px 10px 5px 0!important;font-size:12px}.working-day-option input{width:15px;height:15px;margin:0}.weekday-picker{display:flex;flex-wrap:wrap}
.salary-change-banner{border:1px solid #ace1d0;border-left:4px solid #00a685;border-radius:10px;background:#edf9f3;padding:15px 18px;margin:17px 0;color:#226654}.salary-change-banner p{margin:8px 0;font-size:15px}.salary-change-banner span{font-size:12px}.raise-tag{margin-top:9px;padding:7px 9px;background:#e4f6ee;border-radius:7px;color:#17835d;font-size:11px}.employee-financial-history{margin-top:28px;border-top:1px solid #dfeaea;padding-top:20px}.cancelled-voucher{border:2px solid #b24747;color:#a43434;padding:12px;font-weight:700}

@media print{.employee-financial-history button{display:none}.salary-change-banner{break-inside:avoid}}
.employee-mode .workspace-nav,.employee-mode aside>p{display:none}.employee-mode #employee-portal{display:block}.rights-card{line-height:1.9}.rights-card td,.rights-card th{text-align:right}.rights-warning{background:#fff6df;border:1px solid #f1dda6;border-radius:8px;padding:12px;color:#7d6122}.legal-sources{display:flex;flex-direction:column;gap:10px;margin:20px 0}.legal-sources a{color:#008e94;line-height:1.6}#employee-login-form{padding-bottom:22px;margin-bottom:20px;border-bottom:1px solid #e1eaea}#employee-portal .panel{overflow:auto}#employee-portal form button{margin-top:15px}
#overview-actions-toggle{margin-left:auto;margin-right:14px}.office-card{margin-top:22px}.office-card>.toolbar>div{margin-right:auto}.office-payment-line{padding:8px 0;border-bottom:1px solid #e7eeee;font-size:12px}.employee-profile-link{background:transparent;color:#008d94;text-decoration:underline;padding:0;font-size:13px}#office-dialog{width:min(850px,95vw)}body.actions-docked #dashboard{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:20px;align-items:start}body.actions-docked #dashboard>*{grid-column:1;margin-bottom:0}body.actions-docked #dashboard #dashboard-quick-actions{grid-column:2;grid-row:1/span 25;position:sticky;top:20px;padding:19px;overflow:visible}body.actions-docked .quick-action-grid{grid-template-columns:1fr;gap:10px}body.actions-docked #dashboard>.cards{grid-template-columns:repeat(3,minmax(0,1fr))}body.auth-mode #overview-actions-toggle,body.employee-mode #overview-actions-toggle{display:none}@media(max-width:1150px){body.actions-docked #dashboard{display:block}body.actions-docked #dashboard #dashboard-quick-actions{position:static;margin-bottom:20px}body.actions-docked .quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.office-card button:not(.employee-profile-link){display:none}.employee-profile-link{color:inherit;text-decoration:none}.office-card{break-inside:auto}.office-card tr{break-inside:avoid}#overview-actions-toggle{display:none}}
body>aside{transition:transform .25s ease;touch-action:pan-y}body>main{transition:margin-left .25s ease}body.sidebar-collapsed>aside{transform:translateX(-102%);pointer-events:none}body.sidebar-collapsed>main{margin-left:0;max-width:none}#sidebar-toggle{font-size:20px;line-height:1;padding:10px 13px;margin-right:16px;flex:none}main>header>div{margin-right:auto}body.auth-mode #sidebar-toggle{display:none}#overview-actions-toggle{display:none!important}@media(max-width:900px){body>aside{position:fixed;inset:0 auto 0 0;width:235px;z-index:20;height:100dvh;box-shadow:12px 0 35px #16364722}body>main{margin-left:235px}body.sidebar-collapsed>main{margin-left:0}.workspace-nav{display:block}.nav-group{display:block;margin-bottom:20px}.nav-caption{display:block}.workspace-nav button{width:100%}}@media(prefers-reduced-motion:reduce){body>aside,body>main{transition:none}}@media print{#sidebar-toggle{display:none!important}}
#welcome-screen{position:fixed;inset:0;z-index:1000;background:radial-gradient(ellipse at center,#09626b 0,#0a3443 50%,#071e2d 100%);display:flex;align-items:center;justify-content:center;flex-direction:column;color:white;text-align:center;padding:25px;overflow:hidden}#welcome-screen::before{content:"";position:absolute;width:70vmax;height:70vmax;border:1px solid #86ffee20;border-radius:50%;animation:welcome-ring 2.4s ease-out both}.welcome-orbit{position:relative;animation:welcome-rise .75s ease both}.welcome-kicker{letter-spacing:5px;font-size:13px;color:#a2eee8;margin:22px 0 10px;animation:welcome-rise .7s .15s ease both}#welcome-screen h1{font-size:clamp(25px,4vw,39px);font-weight:500;margin:12px 0;letter-spacing:-.7px;animation:welcome-rise .7s .3s ease both}#welcome-screen p{font-size:14px;color:#b5dedd;animation:welcome-rise .7s .45s ease both}.welcome-progress{margin-top:28px;width:180px;height:2px;background:#ffffff1f;overflow:hidden}.welcome-progress span{display:block;width:100%;height:100%;background:#92fff0;transform-origin:left;animation:welcome-load 2.4s ease both}#welcome-skip{position:absolute;bottom:30px;right:30px;color:#b5dedd;background:transparent;font-size:11px}body.welcoming #auth{visibility:hidden}@keyframes welcome-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes welcome-load{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes welcome-ring{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1.05)}}.paid-checkbox{display:flex!important;align-items:center;flex-wrap:wrap;gap:8px;margin:9px 3px;padding:8px 10px;background:#eef7f3;border:1px solid #d7e9df;border-radius:8px;font-size:12px;width:max-content;max-width:100%}.paid-checkbox input{width:17px;height:17px;accent-color:#009b94;margin:0}.paid-checkbox small{font-size:9px;letter-spacing:0}.voucher-paper-control{padding:15px;background:#f1f7f6;border-radius:10px}.voucher-paper-control label{min-width:150px}.voucher-paper-control .muted{max-width:300px;font-size:11px}@media print{#welcome-screen,.paid-checkbox,.voucher-paper-control{display:none!important}}@media(prefers-reduced-motion:reduce){#welcome-screen::before,.welcome-orbit,.welcome-kicker,#welcome-screen h1,#welcome-screen p,.welcome-progress span{animation:none}}
