.dash-main{padding:0;background:url(../../../images/bg.png) no-repeat center center fixed;background-size:cover}:root{--bg1:#1fb3b2;--bg2:#107aa0;--surface:#ffffff;--muted:#6b7280;--ring:#e5e7eb;--shadow: 0 6px 20px rgba(0,0,0,.08);--radius: 18px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";color:#0f172a;background:#f5f7fb}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}.container{display:grid;grid-template-columns:220px 1fr;min-height:100dvh}.aside{background:#fff;border-right:1px solid var(--ring);padding:20px 16px;display:flex;flex-direction:column;justify-content:space-between;height:100vh;position:sticky;top:0}.aside .top{display:flex;flex-direction:column;gap:20px}.logo img{display:block;height:26px}.nav{display:flex;flex-direction:column;gap:12px}.nav a,.aside .signout{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;color:#0f172a;text-decoration:none;font-weight:600}.nav a:hover{background:#f3f4f6}.nav a.active{background:#eaf6f7;border-left:4px solid #1fb3b2;padding-left:8px}.aside .signout{color:#e34040}.aside .signout:hover{background:#feecec}.ico{font-size:20px;width:20px;display:inline-grid;place-items:center}.main{padding:24px}.header{background:linear-gradient(135deg,var(--bg1),var(--bg2));color:#fff;padding:24px;border-radius:20px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.header h1{margin:0;font-size:44px;line-height:1.1}.header .hello{font-size:14px;opacity:.95;margin-bottom:6px}.profile{display:flex;align-items:center;gap:12px}.avatar{height:48px;width:48px;border-radius:9999px;background:#fff;display:grid;place-items:center;color:#111827;font-weight:700}.badge{background:#fff3;border:1px solid rgba(255,255,255,.3);padding:6px 10px;border-radius:9999px;font-size:12px}.header a.download{color:#fff;text-decoration:underline;margin-left:14px;font-size:14px}.grid{margin-top:18px;display:grid;gap:18px;grid-template-columns:repeat(12,minmax(0,1fr))}.card{background:#fff;border:1px solid var(--ring);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.card h3{margin:0 0 10px;font-size:14px;color:#374151;font-weight:700}.donut{--size:140px;--spent: 10;height:var(--size);width:var(--size);border-radius:50%;background:conic-gradient(#0ea5e9 calc(var(--spent)*1%),#e5e7eb 0);display:grid;place-items:center;margin:auto}.donut:after{content:"";height:65%;width:65%;background:#fff;border-radius:9999px;box-shadow:inset 0 0 0 1px var(--ring)}.legend{display:flex;align-items:center;gap:14px;margin:6px 0 12px;font-size:12px;color:#6b7280}.legend .chip{height:10px;width:18px;border-radius:4px;display:inline-block;margin-right:6px}.total{margin-top:10px;text-align:center;font-size:12px;color:#6b7280}.calendar{display:grid;grid-template-rows:auto auto 1fr;gap:8px}.calendar .month{font-weight:700;color:#111827}.calendar .weekdays,.calendar .days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;font-size:12px}.calendar .weekdays div{color:#6b7280;text-align:center}.calendar .days button{aspect-ratio:1/1;border:none;background:#f9fafb;border-radius:10px;display:grid;place-items:center;cursor:default;color:#111827}.calendar .days button.muted{color:#9ca3af}.calendar .days button.today{outline:2px solid #2563eb}.kv{display:grid;grid-template-columns:120px 1fr;gap:10px;font-size:12px;color:#374151}.kv .muted{color:#6b7280}.link{color:#2563eb;font-size:12px}@media (max-width: 1000px){.container{grid-template-columns:82px 1fr}.aside .text{display:inline}}@media (max-width: 860px){.grid{grid-template-columns:1fr}}.card{padding:1rem;border-radius:12px;background:#fff;box-shadow:0 2px 6px #0000001a;overflow:hidden}.card .chart{width:300%;max-width:500px;height:300px;margin:0 auto}.chart-wrap{width:400px;height:360px;margin:0 auto}canvas{width:100%!important;height:100%!important}.days button{padding:6px;border-radius:6px;border:none;background:#f3f4f6;cursor:pointer}.days button.today{background:#49bdb3;color:#fff;font-weight:600}.days button:disabled{background:#d1d5db;color:#6b7280;cursor:not-allowed}.leave-modal::backdrop{background:#0006}.leave-form{background:#fff;border-radius:12px;padding:1.5rem;min-width:350px;max-width:480px;display:flex;flex-direction:column;gap:1rem}.leave-form .title{color:#49bdb3;font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.leave-form label,.leave-form .duration,.leave-form .dates{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}.leave-form input,.leave-form select,.leave-form textarea{border:1px solid #d1d5db;border-radius:8px;padding:.4rem .6rem}.leave-form .dates{flex-direction:row;gap:1rem}.leave-form .dates label{flex:1}.submit-btn{background:#49bdb3;color:#fff;border:none;border-radius:6px;padding:.6rem;font-weight:600;cursor:pointer}.submit-btn:hover{background:#40b1a7}.close-btn{background:transparent;border:none;font-size:1rem;font-weight:700;cursor:pointer;color:#333;position:absolute;top:1rem;right:1rem}.container{display:grid;grid-template-columns:220px 1fr;min-height:100dvh;gap:0;background:url(../../../images/bg.png) center/cover no-repeat}.container{display:grid;grid-template-columns:220px 1fr;min-height:100dvh;gap:0;background:url(../../../images/bg.png) center/cover no-repeat}.dash-main{padding:0;background:transparent}.aside{background:#fff;border-right:none}
