:root{color-scheme:light;--bg:#f5f7fb;--surface:#ffffff;--surface-2:#eef3f9;--text:#132033;--muted:#627086;--line:#dce4ef;--brand:#153a5b;--brand-strong:#0d283f;--accent:#f28a21;--accent-soft:#fff1df;--danger:#b42318;--success:#18794e;--radius:8px;--shadow:0 18px 50px rgba(15,31,48,0.08)}*{box-sizing:border-box}body{margin:0;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.login-page{display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,rgba(21,58,91,.92),rgba(13,40,63,.92)),radial-gradient(circle at top right,rgba(242,138,33,.35),transparent 34%)}.login-card{width:min(460px,100%);border:1px solid rgba(255,255,255,.18);border-radius:10px;background:var(--surface);padding:28px;box-shadow:var(--shadow)}.login-card h1{font-size:1.8rem}.login-card p{margin:0 0 22px;color:var(--muted)}.field{display:grid;gap:6px;margin-bottom:14px}.field label{font-weight:700;font-size:.9rem}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius);padding:11px 12px;background:#fff;color:var(--text)}.form-card h2{margin:0 0 14px}.form-card h3{margin:28px 0 12px;color:var(--brand);font-size:1rem}.form-hint{color:var(--muted);font-size:.9rem;line-height:1.6}.quote-calculator{margin-top:18px}.calculation-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.calculation-result>div{display:flex;justify-content:space-between;gap:12px;padding:8px}.calculation-result span{color:var(--muted)}.calculation-total{grid-column:1/-1;border-top:2px solid var(--brand);padding-top:15px!important;color:var(--brand);font-size:1.15rem}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.field.wide{grid-column:1/-1}.check-row{display:flex;align-items:center;gap:8px;font-weight:700}.inline-form,.row-actions,.row-actions form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.inline-form select,.row-actions input,.row-actions select{min-height:36px;border:1px solid var(--line);border-radius:var(--radius);padding:7px 9px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:0;border-radius:var(--radius);background:var(--brand);color:#fff;padding:0 16px;font-weight:800;cursor:pointer}.button:hover{background:var(--brand-strong)}.button.secondary{background:var(--surface-2);color:var(--brand)}.button.compact{min-height:36px;padding:0 10px;font-size:.86rem}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;overflow:auto;border-right:1px solid var(--line);background:var(--brand-strong);color:#fff;padding:22px 16px}.brand{display:grid;gap:4px;margin-bottom:24px;padding:0 8px}.brand strong{font-size:1.1rem}.brand span{color:rgba(255,255,255,.7);font-size:.85rem}.nav{display:grid;gap:4px}.nav a{display:flex;align-items:center;gap:10px;border-radius:var(--radius);padding:10px 11px;color:rgba(255,255,255,.82);font-weight:700}.nav a.active,.nav a:hover{background:rgba(255,255,255,.1)}.sidebar-session{display:grid;gap:7px;margin-top:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,.18)}.sidebar-session button{width:100%;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius);background:transparent;color:#fff;padding:9px;cursor:pointer}.sidebar-session button:hover{background:rgba(255,255,255,.1)}.content{min-width:0;padding:26px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.topbar h1{margin:0;font-size:clamp(1.6rem,2vw,2.2rem)}.topbar p{margin:6px 0 0;color:var(--muted)}.grid{display:grid;gap:16px}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.two-col{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:18px;box-shadow:0 1px 2px rgba(16,24,40,.04)}.metric span{color:var(--muted);font-size:.85rem}.metric strong{display:block;margin-top:10px;font-size:1.8rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:760px}td,th{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left;vertical-align:top}th{color:var(--muted);font-size:.8rem;text-transform:uppercase}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;background:var(--surface-2);color:var(--brand);font-size:.78rem;font-weight:900}.badge.orange{background:var(--accent-soft);color:#9a4d00}.badge.green{background:#e7f6ef;color:var(--success)}.revenue-panel{margin-top:18px}.panel-heading .eyebrow{margin:0 0 6px;color:#bd7435;font-size:.65rem;font-weight:900;letter-spacing:.14em}.chart-legend{display:flex;align-items:center;gap:7px;color:#71828e;font-size:.73rem}.chart-legend i{width:9px;height:9px;border-radius:50%}.revenue-bar,.revenue-dot{background:#347d92}.cost-bar,.cost-dot{background:#e7a15d}.revenue-chart{display:grid;height:190px;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:19px;border-bottom:1px solid #e8edf0;background:repeating-linear-gradient(180deg,transparent 0,transparent 46px,#eff3f5 47px,transparent 48px)}.chart-month{display:grid;grid-template-rows:1fr auto;justify-items:center;gap:8px;color:#83919a;font-size:.7rem}.chart-bars{display:flex;width:min(62px,90%);height:100%;align-items:flex-end;justify-content:center;gap:5px}.cost-bar,.revenue-bar{width:15px;min-height:0;border-radius:5px 5px 0 0;transition:opacity .2s ease}.cost-bar:hover,.revenue-bar:hover{opacity:.75}.chart-note{margin:12px 0 0;color:#87959d;font-size:.72rem}.empty{border:1px dashed var(--line);padding:20px;color:var(--muted);background:#fafcff}.empty,.notice{border-radius:var(--radius)}.notice{background:var(--accent-soft);padding:12px 14px}.print-page{min-height:100vh;padding:32px;background:#e8edf4}.print-document{width:min(920px,100%);margin:0 auto;padding:44px;border-radius:8px;background:#fff;box-shadow:var(--shadow)}.print-header{display:flex;justify-content:space-between;gap:24px;border-bottom:2px solid var(--brand);padding-bottom:22px}.print-header h1{margin:0;color:var(--brand)}.print-address p,.print-footer p,.print-header p{margin:4px 0;color:var(--muted)}.print-address{margin:34px 0}.print-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 24px}.print-meta div{border:1px solid var(--line);border-radius:var(--radius);padding:10px}.print-meta dt{color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.print-meta dd{margin:4px 0 0;font-weight:800}.print-table{min-width:0}.print-total{margin-top:24px;text-align:right}.print-footer{margin-top:44px;border-top:1px solid var(--line);padding-top:12px}.print-button{width:min(920px,100%);margin:14px auto 0;color:var(--muted);text-align:center}@media (max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.calculation-result,.form-grid,.metrics,.two-col{grid-template-columns:1fr}}@media (max-width:620px){.content{padding:18px}.topbar{align-items:flex-start;flex-direction:column}.nav{grid-template-columns:1fr}.print-page{padding:0}.print-document{border-radius:0;padding:22px}.print-header,.print-meta{grid-template-columns:1fr;flex-direction:column}}@media print{.print-page{padding:0;background:#fff}.print-document{width:100%;box-shadow:none}.print-button{display:none}}:root{--bg:#f2f5f8;--surface:#fff;--surface-2:#f4f7fa;--text:#122334;--muted:#66798a;--line:#e0e7ed;--brand:#14516a;--brand-strong:#0d3548;--accent:#e88b36;--accent-soft:#fff4e8;--danger:#b33b3b;--success:#167c5a;--radius:14px;--shadow:0 18px 55px rgba(12,39,55,.09)}body{background:var(--bg);letter-spacing:-.01em}::selection{background:rgba(232,139,54,.22)}a,button,input,select,textarea{transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease,transform .18s ease}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid rgba(232,139,54,.55);outline-offset:2px}.app-shell{grid-template-columns:276px minmax(0,1fr);background:var(--bg)}.sidebar{z-index:5;border:0;border-right:1px solid rgba(255,255,255,.08);background:radial-gradient(ellipse at 5% 0,rgba(55,128,151,.24),transparent 36%),linear-gradient(180deg,#0d2638,#102f42 55%,#0b2638);padding:26px 16px 18px;box-shadow:12px 0 36px rgba(18,44,60,.05)}.brand{display:flex;align-items:center;gap:12px;margin:0 4px 27px;padding:0 8px 19px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-mark{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:13px;background:linear-gradient(145deg,#e99a4d,#cf742d);color:#fff;font-size:13px;font-weight:900;letter-spacing:.06em;box-shadow:0 8px 18px rgba(0,0,0,.18)}.brand-copy{display:grid;gap:3px;min-width:0}.brand-copy strong{color:#fff;font-size:.96rem;letter-spacing:-.025em}.brand-copy small{color:rgba(239,247,251,.62);font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}.nav-disclosure>summary{display:none}.nav-group{margin:0 0 19px}.nav-group-title{display:block;padding:0 10px 7px;color:rgba(218,233,241,.45);font-size:.62rem;font-weight:900;letter-spacing:.14em}.nav{gap:3px}.nav a{min-height:40px;gap:11px;border:1px solid transparent;border-radius:10px;padding:8px 10px;color:rgba(237,245,249,.75);font-size:.84rem;font-weight:650}.nav a svg{color:rgba(219,234,241,.58)}.nav a.active,.nav a:hover{border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.09);color:#fff}.nav a.active svg,.nav a:hover svg{color:#f0a257}.sidebar-session{gap:9px;margin-top:auto;padding:15px 4px 0;border-color:rgba(255,255,255,.12)}.sidebar-session button{min-height:38px;border-color:rgba(255,255,255,.14);color:rgba(237,245,249,.72);font-size:.78rem}.sidebar-session button:hover{background:rgba(255,255,255,.08);color:#fff}.sidebar-user{display:flex;align-items:center;gap:10px;padding:4px 6px 8px;color:white}.sidebar-user>span:last-child{display:grid;gap:2px;min-width:0}.sidebar-user strong{overflow:hidden;font-size:.79rem;text-overflow:ellipsis;white-space:nowrap}.sidebar-user small{color:rgba(237,245,249,.54);font-size:.69rem}.user-avatar{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(255,255,255,.12);color:#f2a45e;font-weight:900}.content{min-height:100vh;padding:clamp(22px,3.4vw,48px)}.content>*{width:min(100%,1480px);margin-right:auto;margin-left:auto}.topbar{margin-bottom:27px}.topbar h1{color:#142b3d;font-size:clamp(1.7rem,2.5vw,2.45rem);font-weight:780;letter-spacing:-.055em}.topbar p{color:#748493;font-size:.94rem}.grid{gap:18px}.metrics{gap:14px}.card{border:1px solid #e5ebf0;border-radius:16px;padding:21px;box-shadow:0 5px 18px rgba(16,40,56,.035)}.card h2{color:#18374a;font-size:1.05rem;font-weight:760;letter-spacing:-.025em}.metric{position:relative;overflow:hidden;min-height:126px;padding:19px 20px}.metric:after{position:absolute;right:-20px;bottom:-31px;width:96px;height:96px;border:15px solid rgba(20,81,106,.045);border-radius:50%;content:""}.metric span{color:#708291;font-size:.75rem;font-weight:800;letter-spacing:.025em}.metric strong{position:relative;z-index:1;margin-top:14px;color:#163a4f;font-size:clamp(1.4rem,2.2vw,2rem);letter-spacing:-.055em}.metric p{color:#8796a1;font-size:.75rem}.table-wrap{border:1px solid #e8edf1;border-radius:12px;background:#fff}table{min-width:680px}th{background:#f7f9fb;color:#7c8b97;font-size:.67rem;letter-spacing:.09em}th:first-child{border-top-left-radius:11px}th:last-child{border-top-right-radius:11px}td{color:#344c5c;font-size:.84rem}tbody tr:hover{background:#fbfcfd}.field{gap:7px;color:#354c5b;font-size:.82rem}.field input,.field select,.field textarea,.inline-form select,.row-actions input,.row-actions select{min-height:43px;border:1px solid #dbe4ea;border-radius:10px;background:#fff}.field input:hover,.field select:hover,.field textarea:hover{border-color:#a9bfcb}.field input:focus,.field select:focus,.field textarea:focus{border-color:#44829a;box-shadow:0 0 0 3px rgba(37,113,141,.1);outline:none}.field textarea{line-height:1.55}.login-page{min-height:100vh;padding:clamp(16px,4vw,54px);background:#f2f5f7}.login-layout{display:grid;width:min(1180px,100%);min-height:min(760px,calc(100vh - 32px));grid-template-columns:1.03fr .97fr;overflow:hidden;margin:auto;border:1px solid #e5eaed;border-radius:25px;background:#fff;box-shadow:0 28px 90px rgba(17,44,60,.13)}.login-story{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:650px;overflow:hidden;padding:clamp(28px,5vw,58px);color:#fff;background:radial-gradient(ellipse at 86% 10%,rgba(99,164,176,.33),transparent 37%),radial-gradient(ellipse at 5% 96%,rgba(181,112,57,.16),transparent 36%),linear-gradient(145deg,#0c2c40,#124e61 60%,#1d6671)}.employee-login .login-story{background:radial-gradient(ellipse at 88% 12%,rgba(92,180,160,.32),transparent 36%),radial-gradient(ellipse at 4% 95%,rgba(205,140,80,.19),transparent 38%),linear-gradient(145deg,#0d2937,#124957 62%,#216c6c)}.login-brand{position:relative;z-index:1;display:flex;align-items:center;gap:13px;color:#fff}.login-brand>span:last-child{display:grid;gap:3px}.login-brand strong{font-size:.92rem;letter-spacing:-.01em}.login-brand small{color:rgba(255,255,255,.63);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase}.login-story-copy{position:relative;z-index:1;max-width:510px;margin:55px 0}.login-card-kicker,.login-overline{color:#d6a166;font-size:.65rem;font-weight:900;letter-spacing:.16em}.login-story-copy h2{margin:15px 0 18px;color:#fff;font-size:clamp(2.3rem,5vw,4.1rem);line-height:1.04;letter-spacing:-.07em}.login-story-copy h2 em{color:#a6d0cf;font-style:normal}.employee-login .login-story-copy h2 em{color:#b5dec9}.login-story-copy>p:not(.login-overline){max-width:410px;color:rgba(255,255,255,.72);font-size:.96rem;line-height:1.7}.login-highlights{display:grid;gap:13px;margin-top:29px}.login-highlights span{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.85);font-size:.81rem;font-weight:650}.login-highlights svg{color:#a6d0cf}.login-story-footer{position:relative;z-index:1;display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.55);font-size:.7rem}.login-card-wrap{display:grid;align-items:center;padding:clamp(26px,6vw,75px)}.login-card{width:min(420px,100%);margin:auto;padding:0;border:0;border-radius:0;box-shadow:none}.login-card-icon{display:grid;width:44px;height:44px;place-items:center;border:1px solid #dcebe7;border-radius:13px;color:#286d67;background:#f0f8f5}.login-card-kicker{margin:24px 0 9px;color:#718b91;font-size:.61rem}.login-card h1{margin:0 0 8px;color:#16394b;font-size:1.9rem;letter-spacing:-.055em}.login-card-intro{margin:0 0 27px;color:#7a8b94;font-size:.84rem;line-height:1.55}.login-card .field{margin-top:16px}.login-card .field label{color:#344f5d;font-size:.75rem;font-weight:750}.login-card .field label span{color:#96a1a6;font-weight:500}.login-card .field input{min-height:47px;border:1px solid #dce5e8;border-radius:10px;background:#fbfcfc}.login-card .field input:focus{border-color:#428a82;box-shadow:0 0 0 3px rgba(52,130,119,.11)}.login-error{margin:13px 0 0;color:#a83b36;font-size:.79rem;line-height:1.5}.login-card .login-submit{display:flex;width:100%;min-height:49px;align-items:center;justify-content:center;gap:9px;margin-top:22px;border-radius:10px;background:linear-gradient(135deg,#246b75,#174c63)}.employee-login .login-card .login-submit{background:linear-gradient(135deg,#267267,#1b5662)}.login-card .login-submit:disabled{opacity:.68;cursor:wait;transform:none}.login-security-note{display:flex;align-items:center;justify-content:center;gap:6px;margin:18px 0 0;color:#97a3a8;font-size:.67rem}.login-security-note svg{color:#5b9288}.form-grid{gap:15px}.form-card{margin-bottom:18px;padding:23px}.button{min-height:43px;border-radius:10px;background:linear-gradient(135deg,#1c657d,#144a62);box-shadow:0 5px 12px rgba(20,81,106,.14);font-size:.83rem;font-weight:760}.button:hover{transform:translateY(-1px);background:linear-gradient(135deg,#17566d,#103c51);box-shadow:0 8px 18px rgba(20,81,106,.2)}.button.secondary{border:1px solid #dce6eb;background:#f3f7f9;color:#28566b;box-shadow:none}.button.secondary:hover{background:#e9f1f4}.button.danger{border:1px solid #f0d6d5;background:#fff5f4;color:#a43532;box-shadow:none}.button.danger:hover{background:#fdeae8}.badge{padding:5px 10px;font-size:.72rem}.notice{border:1px solid #f4dcbf;border-left:4px solid var(--accent);border-radius:10px;color:#785631;font-size:.84rem;line-height:1.55}.empty{border-radius:12px;color:#71818e}.delete-action{display:grid;justify-items:start;gap:6px}.action-feedback{margin:4px 0 0;border-radius:9px;padding:8px 10px;font-size:.76rem;line-height:1.45}.action-feedback.success{background:#eaf6f1;color:#17694f}.action-feedback.error{background:#fff0ee;color:#a3332e}.assignment-cell{display:grid;min-width:175px;gap:7px;color:#516979;font-size:.8rem}.assignment-cell details>summary{color:#1e6279;cursor:pointer;font-size:.75rem;font-weight:800}.assignment-cell details form{display:grid;min-width:210px;gap:7px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff}.assignment-cell select{min-height:75px;padding:6px;border:1px solid var(--line);border-radius:8px}.assignment-cell small{color:var(--muted)}.employee-portal{min-height:100vh;padding:0 clamp(16px,4vw,58px) 28px;background:#f2f5f8;color:#142d3f}.employee-header{display:flex;min-height:80px;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #e0e7ec}.employee-header>div{display:flex;align-items:center;gap:16px}.employee-brand{display:flex;align-items:center;gap:12px}.employee-brand>span:last-child{display:grid;gap:3px}.employee-brand strong{font-size:.92rem}.employee-brand small{color:#7c8e9a;font-size:.71rem;letter-spacing:.07em;text-transform:uppercase}.employee-name{color:#5a6f7c;font-size:.84rem;font-weight:650}.employee-settings-link{color:#28677a;font-size:.79rem;font-weight:750}.employee-welcome{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:32px auto 20px;padding:clamp(24px,4vw,44px);border:1px solid #e0e9ed;border-radius:20px;background:radial-gradient(ellipse at 100% 0,rgba(73,140,155,.17),transparent 42%),linear-gradient(130deg,#fff,#f7fafb);box-shadow:0 15px 40px rgba(17,48,64,.05)}.employee-welcome .eyebrow,.panel-heading .eyebrow{margin:0 0 8px;color:#bd7435;font-size:.68rem;font-weight:900;letter-spacing:.14em}.employee-welcome h1{margin:0;color:#15384a;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.065em}.employee-welcome p:not(.eyebrow){max-width:580px;margin-bottom:0;color:#697c89;line-height:1.6}.employee-shield{display:flex;align-items:center;gap:10px;color:#286b68;font-size:.8rem;font-weight:750}.employee-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.employee-summary article{display:grid;gap:13px;padding:18px 21px;border:1px solid #e2e9ed;border-radius:15px;background:#fff}.employee-summary article span{display:flex;align-items:center;gap:8px;color:#718490;font-size:.8rem;font-weight:700}.employee-summary strong{color:#15384a;font-size:1.5rem;letter-spacing:-.045em}.employee-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);align-items:start;gap:17px}.employee-panel{border:1px solid #e1e8ed;border-radius:16px;background:#fff;padding:clamp(18px,2.5vw,25px);box-shadow:0 8px 26px rgba(16,43,58,.035)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.panel-heading h2{margin:0;color:#173a4d;font-size:1.16rem;letter-spacing:-.035em}.panel-heading>svg{color:#4a8190}.count-chip{display:grid;min-width:30px;height:30px;place-items:center;border-radius:50%;background:#edf4f5;color:#2c6874;font-size:.78rem;font-weight:850}.employee-empty{display:grid;min-height:190px;justify-items:center;align-content:center;gap:9px;color:#81919b;text-align:center}.employee-empty svg{color:#7a9aa4}.employee-empty strong{color:#526a78;font-size:.9rem}.employee-empty span{font-size:.8rem}.employee-job-list{display:grid;gap:10px}.employee-job{display:grid;grid-template-columns:105px minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px;border:1px solid #e7edf0;border-radius:12px;background:#fbfcfd}.job-date{display:flex;align-items:center;gap:7px;color:#6c818f;font-size:.75rem;font-weight:750}.job-date svg{flex:0 0 auto;color:#538292}.job-main>strong{color:#b06f38;font-size:.7rem;letter-spacing:.08em}.job-main h3{margin:4px 0 6px;color:#1b3e50;font-size:.88rem}.job-main p{display:flex;align-items:center;gap:5px;margin:0;color:#768892;font-size:.75rem}.employee-status{border:1px solid #dcece5;border-radius:99px;background:#f1f8f4;padding:5px 9px;color:#28715a;font-size:.68rem;font-weight:800;white-space:nowrap}.panel-copy{color:#758792;font-size:.82rem;line-height:1.55}.employee-time-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}.employee-time-form .field{margin-bottom:10px}.employee-time-form .field.full,.employee-time-form>.action-feedback,.employee-time-form>button{grid-column:1/-1}.employee-time-form>button{justify-self:start}.employee-history{margin-top:17px}.employee-log-list{display:grid}.employee-log-list article{display:grid;grid-template-columns:1fr 1fr 1.2fr 1fr;gap:12px;border-top:1px solid #ebeff2;padding:12px 4px;color:#6c7e89;font-size:.79rem}.employee-log-list strong{color:#1d4659}.employee-footer{padding:20px 4px 0;color:#8b9aa3;font-size:.72rem;text-align:center}.role-safety-note{display:flex;align-items:flex-start;gap:15px;margin-bottom:20px;padding:19px 22px;border-color:#d9e8de;background:linear-gradient(120deg,#f2faf5,#fff)}.role-safety-icon{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:50%;color:#216444;background:#dff3e7;font-weight:900}.role-safety-note strong{color:#214c39}.role-safety-note p{margin:5px 0 0;color:#647b70;font-size:.84rem;line-height:1.55}.role-create-form{align-items:end}.roles-list{display:grid;gap:16px;margin-top:18px}.role-card{padding:21px}.role-card-head{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px}.role-title-line{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.role-title-line h2{margin:0;color:#183c4c;font-size:1.08rem}.role-badge{padding:4px 8px;border-radius:20px;color:#4d6471;background:#edf3f5;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.role-card-head>div:first-child>p{margin:9px 0;color:#6a7d87;font-size:.8rem;line-height:1.5}.role-user-count{color:#7c8d96;font-size:.73rem}.admin-role-note{align-self:start;padding:13px 15px;border-radius:9px;color:#5d7180;background:#f3f6f8;font-size:.84rem}.permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.permission-group{min-width:0;margin:0;padding:11px;border:1px solid #e5ebee;border-radius:10px}.permission-group legend{padding:0 5px;color:#355669;font-size:.73rem;font-weight:800}.permission-group>div{display:grid;gap:3px}.permission-choice{display:flex;align-items:flex-start;gap:9px;padding:7px 5px;border-radius:7px;cursor:pointer}.permission-choice:hover{background:#f6f9fa}.permission-choice input{width:16px;height:16px;flex:0 0 16px;margin:2px 0 0;accent-color:#17614c}.permission-choice span{display:grid;gap:2px}.permission-choice strong{color:#334f5c;font-size:.75rem;font-weight:700}.permission-choice small{color:#91a0a7;font-size:.64rem}.permission-choice.disabled{opacity:.5;cursor:not-allowed}.role-lock-note{margin:0 0 10px;color:#815d29;font-size:.76rem}.role-delete-row,.role-save-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}.role-delete-row>span,.role-save-row>span{color:#8a989f;font-size:.72rem}.role-delete-row{padding-top:13px;border-top:1px solid #edf0f2}.role-delete-row .delete-action{display:flex;align-items:center;gap:8px}.staff-account-list{display:grid;gap:12px}.staff-account{padding:15px;border:1px solid #e8edef;border-radius:11px}.staff-account-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.staff-account-head>div{display:grid;gap:3px}.staff-account-head>div strong{color:#254b5b}.staff-account-head>div span,.staff-meta{color:#809099;font-size:.76rem}.status-pill{padding:4px 9px;border-radius:20px;font-size:.67rem;font-weight:800}.status-pill.active{color:#256447;background:#e8f6ee}.status-pill.inactive{color:#8a4b43;background:#fbedeb}.staff-meta{display:flex;flex-wrap:wrap;gap:15px;margin:12px 0}.staff-actions{flex-wrap:wrap}.staff-actions,.staff-role-form{display:flex;align-items:end;gap:10px}.staff-role-form{flex:1 1 500px;flex-wrap:wrap}.staff-role-form .field{min-width:240px;flex:1 1 300px}.staff-role-form select[multiple]{min-height:70px}.staff-actions>form:last-child{margin-bottom:1px}.form-grid select[multiple]{min-height:95px}.field small{display:block;margin-top:5px;color:#88979e;font-size:.69rem}.employee-portal{max-width:1660px;margin:0 auto}.employee-task-panel{margin-bottom:17px}.employee-tasks{display:grid;gap:9px}.employee-task{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 15px;border:1px solid #e6edef;border-radius:11px;background:#fcfdfd}.employee-task-copy{display:grid;gap:6px}.employee-task-copy>div{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.employee-task-copy strong{color:#244958;font-size:.84rem}.employee-task-copy p{margin:0;color:#6e8089;font-size:.77rem;line-height:1.5;white-space:pre-line}.employee-task-copy small,.employee-task-job{color:#8c999e;font-size:.68rem}.employee-task-job{padding:3px 7px;border-radius:10px;background:#f0f4f5}.employee-task-action form{margin:0}.employee-task-action .button{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.employee-task-action .action-feedback{margin:5px 0 0;font-size:.67rem}.completed-tasks{margin-top:5px;color:#69818c;font-size:.75rem}.completed-tasks summary{padding:8px;cursor:pointer}.employee-task.completed{margin-top:7px;background:#f7faf9}.compact-empty{min-height:120px}.employee-extra-grid{margin-top:17px}.absence-request-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.absence-request-form .field{margin:0 0 11px}.absence-request-form .field.wide{grid-column:1/-1}.absence-request-form .action-feedback{margin:0 0 10px;font-size:.78rem}.absence-list{display:grid;gap:9px}.absence-list>article{display:grid;gap:10px;padding:13px 14px;border:1px solid #e7edef;border-radius:10px;background:#fcfdfd}.absence-list>article>div:first-child{display:grid;gap:5px}.absence-list>article strong{color:#315363;font-size:.8rem}.absence-list>article strong span,.absence-list>article>div>span{color:#7e8f97;font-size:.73rem;font-weight:500}.absence-list>article small{color:#758791;font-size:.72rem;line-height:1.5}.absence-status{justify-self:start;padding:4px 8px;border-radius:12px;color:#86683c;background:#fbf5e8;font-size:.66rem;font-weight:800}.absence-status.genehmigt{color:#28654b;background:#e9f6ef}.absence-status.abgelehnt{color:#974844;background:#fbefed}.admin-absence-list>article{grid-template-columns:minmax(200px,1fr) minmax(380px,1.2fr);align-items:center}.absence-decision-form{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}.absence-decision-note{min-width:170px;min-height:38px;flex:1 1 180px;padding:7px 9px;border:1px solid #e0e7e9;border-radius:8px}.team-summary{margin-bottom:17px}.team-summary-card{display:flex;align-items:center;gap:14px;padding:18px}.team-summary-card>div{display:grid;gap:4px}.team-summary-card small{color:#85959c;font-size:.63rem;font-weight:850;letter-spacing:.1em}.team-summary-card strong{color:#1e4d5a;font-size:1.4rem}.team-summary-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;color:#286c72;background:#eaf5f3}@media (max-width:1100px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;top:auto;height:auto;overflow:visible;padding:13px 16px}.brand{margin-bottom:0;padding-bottom:0;border-bottom:0}.nav-disclosure>summary{display:block;margin:12px 4px 0;padding:10px 12px;border:1px solid rgba(255,255,255,.15);border-radius:9px;color:rgba(255,255,255,.8);cursor:pointer;font-size:.82rem;font-weight:750}.nav-disclosure:not([open]) .nav-group,.nav-disclosure:not([open])+.sidebar-session{display:none}.nav-disclosure[open]{padding-bottom:10px}.nav-disclosure[open] .nav-group{margin-top:12px}.nav{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-session{display:flex;align-items:center;justify-content:flex-end;margin-top:0;padding-top:10px}.sidebar-session>form{flex:0 1 auto}.sidebar-session button{min-height:35px;width:auto;padding:7px 10px}.sidebar-user{margin-right:auto}}@media (max-width:760px){.login-page{padding:12px}.login-layout{min-height:calc(100vh - 24px);grid-template-columns:1fr;border-radius:18px}.login-story{min-height:0;padding:24px}.login-story-copy{margin:38px 0 22px}.login-story-copy h2{font-size:clamp(2.1rem,9vw,3rem)}.login-story-copy>p:not(.login-overline){font-size:.84rem}.login-highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px}.login-highlights span{align-items:flex-start;font-size:.7rem}.login-story-footer{padding-top:7px}.login-card-wrap{padding:33px 24px 38px}.login-card{width:min(440px,100%)}.content{padding:20px 15px 28px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.form-grid,.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-grid{grid-template-columns:1fr}.employee-welcome{align-items:flex-start;flex-direction:column}.employee-shield{align-self:flex-start}.employee-job{grid-template-columns:1fr auto}.job-date{grid-column:1/-1}.employee-log-list article{grid-template-columns:1fr 1fr}.revenue-chart{height:160px}.role-card-head{gap:15px}.admin-absence-list>article,.permission-groups,.role-card-head{grid-template-columns:1fr}.absence-decision-form{justify-content:flex-start}.absence-request-form .form-grid{grid-template-columns:1fr}.absence-request-form .field.wide{grid-column:auto}}@media (max-width:480px){.employee-summary,.employee-time-form,.form-grid,.metrics{grid-template-columns:1fr}.employee-time-form .field.full,.employee-time-form>.action-feedback,.employee-time-form>button,.field.wide{grid-column:auto}.sidebar-session{flex-wrap:wrap}.sidebar-session>form{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 8px)}.sidebar-session button{width:100%}.employee-header{align-items:flex-start;flex-direction:column;justify-content:center;padding:14px 0}.employee-header>div{width:100%;justify-content:space-between}.employee-log-list article{grid-template-columns:1fr;gap:5px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important}}