:root{--ink:#162f39;--muted:#546b74;--navy:#12323e;--teal:#08695f;--mint:#d8eee7;--line:#d7e1e3;--paper:#f3f6f5;--white:#fff;--error:#9c2c34;--radius:12px;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:8px;min-height:44px;padding:10px 16px;font-weight:600;transition:background .15s}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #d59025}input,select,textarea{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #b8c9ce;border-radius:7px;padding:10px 12px}input:disabled,select:disabled{color:#48616b;background:#eef2f2}input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--teal)}textarea{resize:vertical;min-height:84px}label{flex-direction:column;gap:8px;font-size:.88rem;font-weight:600;line-height:1.5;display:flex}form>label{margin-bottom:18px}fieldset{border:1px solid var(--line);border-radius:8px}legend{padding:0 7px;font-weight:600}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.8px;margin-bottom:12px;font-size:2.3rem;line-height:1.2}h2{margin-bottom:10px;font-size:1.2rem;line-height:1.4}h3{margin-bottom:8px;font-size:1rem}p{line-height:1.65}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#edf3f3;max-height:320px;padding:15px;font-size:.79rem;overflow:auto}summary{cursor:pointer;padding:12px 0}table{border-collapse:collapse;width:100%;font-size:.9rem}th{text-align:left;color:#516972;letter-spacing:.3px;background:#f4f7f7;padding:16px 18px;font-size:.78rem}td{border-top:1px solid var(--line);vertical-align:top;padding:16px 18px}td p{margin:0}tr:last-child td{border-bottom:0}.primary{background:var(--teal);color:#fff}.primary:hover{background:#06584f}.secondary{color:var(--ink);background:#e7eeed}.secondary:hover{background:#d8e5e1}.quiet{color:var(--teal);background:0 0}.quiet:hover{background:#e5eeeb}.wide{width:100%}.muted{color:var(--muted)}.small{font-size:.83rem}.eyebrow{letter-spacing:1.6px;color:var(--teal);margin-bottom:14px;font-size:.7rem;font-weight:700}.lead{color:var(--muted);max-width:800px;margin-bottom:28px;font-size:1.02rem}.brand{white-space:nowrap;letter-spacing:.2px;align-items:center;gap:12px;font-size:1.2rem;display:flex}.brand strong{font-weight:400}.brand-symbol{background:var(--teal);color:#fff;border-radius:12px 4px;place-items:center;width:36px;height:39px;font-size:1.3rem;font-weight:800;display:grid}.topbar{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:40px;min-height:86px;padding:16px 32px;display:flex}.tenant-picker{align-items:center;gap:14px;margin-left:auto;display:flex}.tenant-picker select{width:270px}.tenant-picker label{color:var(--muted);font-size:.76rem}.account{align-items:center;gap:16px;font-size:.85rem;display:flex}.environment{color:#345c54;background:#e6efeb;justify-content:space-between;gap:12px;padding:8px 32px;font-size:.73rem;display:flex}.workspace{min-height:calc(100vh - 118px);display:flex}.sidebar{background:var(--navy);color:#c8dddd;flex-direction:column;flex-shrink:0;width:230px;padding:30px 16px;display:flex}.sidebar-title{letter-spacing:1.3px;color:#a1bdc6;padding:0 15px;font-size:.65rem}.sidebar nav{flex-direction:column;gap:3px;display:flex}.nav-item{color:#d3e3e6;text-align:left;background:0 0;align-items:center;gap:14px;font-size:.86rem;font-weight:400;display:flex}.nav-item>span{text-align:center;width:23px;font-size:1.1rem}.nav-item:hover{background:#214651}.nav-item.selected{color:#164b43;background:#d9efe7;font-weight:700}.sidebar-foot{color:#9fbec8;margin-top:auto;padding:32px 14px 0;font-size:.73rem;line-height:1.8}.sidebar-foot strong{color:#daecee;font-weight:400}.content{width:calc(100% - 230px);max-width:1550px;padding:42px 44px}.page-heading,.section-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.page-heading{margin-bottom:0}.section-heading{margin-bottom:18px}.section-heading h2{margin:0}.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;margin:22px 0;padding:24px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.full-width{grid-column:1/-1}.checkbox-label{flex-direction:row;align-items:center;gap:10px;min-height:44px}.form-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px;display:flex}.message{overflow-wrap:anywhere;border-radius:8px;margin:18px 0;padding:14px 18px}.message.error{color:var(--error);background:#fcebed;border-left:4px solid #b84853}.message.success{color:#17513b;background:#dff1e8;border-left:4px solid #3d8868}.searchbar{flex-direction:row;align-items:center;gap:12px;max-width:520px;margin:24px 0 18px;display:flex}.searchbar input{min-width:120px}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:auto}.row-meta{color:var(--muted);margin-top:7px;font-size:.76rem;display:block}.row-actions{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.badge{white-space:nowrap;border-radius:20px;padding:5px 10px;font-size:.73rem;font-weight:600;display:inline-block}.badge.active{color:#235a45;background:#e0f1e8}.badge.inactive{color:#556971;background:#edf0f0}.pagination{color:var(--muted);align-items:center;gap:10px;margin-top:15px;font-size:.82rem;display:flex}.pagination span{margin-right:auto}.notice{color:#385d56;background:#e8efed;border:1px solid #ccdfd7;border-radius:10px;margin:28px 0;padding:22px}.notice p:last-child{margin-bottom:0}.notice.compact{padding:15px;font-size:.82rem;line-height:1.7}.empty{text-align:center;color:var(--muted);padding:44px 30px}.empty p{max-width:560px;margin:0 auto}.empty-symbol{margin:18px;font-size:3rem;display:block}.home-grid{grid-template-columns:1fr 1fr;gap:22px;margin:38px 0;display:grid}.home-card{text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:30px;font-weight:400}.home-card:hover{border-color:var(--teal)}.home-card p{color:var(--muted);font-size:.94rem}.home-card>span:last-child{color:var(--teal);font-size:.88rem;font-weight:600}.card-index{color:var(--teal);margin-bottom:38px;font-size:.8rem;display:block}.home-card h2{font-size:1.4rem}.version-list article{background:#f5f8f7;border-left:3px solid #77a597;margin:15px 0;padding:10px 18px}.version-list p{margin:5px 0;font-size:.86rem}.tabs{border-bottom:1px solid var(--line);gap:8px;margin:26px 0 20px;display:flex}.tabs button{background:0 0}.tabs .selected{background:var(--mint);color:var(--teal);border-radius:8px 8px 0 0}.model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.model-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:24px}.version-card{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:18px 0;display:flex}.version-card p{color:var(--muted);margin:6px 0;font-size:.85rem}.day-card{border:1px solid var(--line);border-radius:9px;margin:14px 0;overflow:hidden}.day-heading{background:#edf3f1;align-items:center;gap:20px;padding:12px 16px;display:flex}.day-heading h3{width:90px;margin:0}.day-heading select{min-height:38px;padding:6px 10px;font-size:.83rem}.day-total{font-variant-numeric:tabular-nums;color:var(--teal);margin-left:auto;font-weight:700}.segment-row{border-top:1px solid var(--line);grid-template-columns:22px 1.25fr 1fr 1fr 16px 1fr 1fr 35px;align-items:end;gap:9px;padding:16px;display:grid}.segment-row label{font-size:.72rem}.segment-row input,.segment-row select{min-width:0;padding:8px 5px;font-size:.8rem}.segment-number{color:#70848c;align-self:center;font-size:.8rem}.segment-arrow{color:#738a90;align-self:center}.icon-button{color:#95404a;background:#f6eded;min-width:35px;padding:8px}.day-actions{gap:10px;padding:4px 12px;display:flex}.day-actions button{font-size:.8rem}.totals-strip{border:1px solid var(--line);border-radius:10px;grid-template-columns:1fr 1fr 1fr 1.3fr;margin-top:26px;display:grid;overflow:hidden}.totals-strip>div{flex-direction:column;gap:10px;padding:18px;display:flex}.totals-strip span{color:var(--muted);font-size:.75rem}.totals-strip strong{font-size:1.4rem}.totals-strip .total-highlight{background:var(--mint)}.preview{margin-top:28px}.boundary{color:#526c76;background:#f4f6f6}.security-section{max-width:940px}.security-section form>label{max-width:420px}.secret{overflow-wrap:anywhere;background:#eff4f4;padding:15px;font-size:1.05rem;display:block}.login-shell{background:#fff;grid-template-columns:1.2fr 1fr;min-height:100vh;display:grid}.login-intro{background:var(--navy);color:#fff;flex-direction:column;justify-content:center;padding:54px 10%;display:flex}.login-intro .brand{margin-bottom:90px}.login-intro .eyebrow{color:#9cd3be}.login-intro h1{letter-spacing:-2px;margin-bottom:24px;font-size:clamp(2.8rem,4.2vw,4.7rem);line-height:1.12}.login-intro p:not(.eyebrow){color:#b9d0d6;font-size:1.08rem}.intro-note{color:#98b8c1;margin-top:64px;font-size:.73rem}.auth-card{align-self:center;width:100%;max-width:590px;margin:auto;padding:60px}.auth-card h2{margin:12px 0;font-size:1.9rem}.auth-card form{margin:30px 0}.auth-card form label{margin-bottom:18px}.auth-card .security-section .form-grid{grid-template-columns:1fr}.auth-card .security-section .panel{border:0;padding:0}.loading{place-items:center;min-height:100vh;display:grid}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (min-width:1550px){.content{margin:0 auto}}@media (max-width:1150px){.content{padding:30px 24px}.sidebar{width:196px}.content{width:calc(100% - 196px)}.topbar{gap:20px}.tenant-picker{gap:8px}.tenant-picker label{display:none}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.segment-row{grid-template-columns:20px 1.2fr 1fr 1fr;align-items:center}.segment-arrow{display:none}.segment-row>label:nth-of-type(4){grid-column:2}.segment-row .icon-button{grid-area:2/1}.login-intro{padding:40px}.auth-card{padding:36px}}@media (max-width:760px){h1{font-size:1.9rem}.topbar{flex-wrap:wrap;padding:16px}.brand{font-size:1rem}.account{margin-left:auto}.account>span{display:none}.tenant-picker{order:3;width:100%;margin:0}.tenant-picker select{width:100%}.tenant-picker label{white-space:nowrap;display:block}.environment{flex-wrap:wrap;padding:8px 16px;font-size:.68rem}.workspace{display:block}.sidebar{background:#12323e;width:100%;padding:10px}.sidebar-title,.sidebar-foot{display:none}.sidebar nav{flex-direction:row;padding:2px 0;overflow-x:auto}.nav-item{white-space:nowrap;padding:8px 12px;font-size:.8rem}.nav-item span{display:none}.content{width:100%;padding:28px 16px}.home-grid,.model-grid{grid-template-columns:1fr}.home-card{padding:24px}.card-index{margin-bottom:20px}.page-heading{align-items:flex-start}.page-heading>.primary{padding:8px 12px;font-size:.78rem}.panel{padding:16px}.form-grid{grid-template-columns:1fr}.segment-row{grid-template-columns:20px 1fr 1fr;gap:10px}.segment-row>label:first-of-type{grid-column:2/4}.segment-row>label:nth-of-type(2),.segment-row>label:nth-of-type(4){grid-column:2}.segment-row .icon-button{grid-area:3/1}.day-heading{gap:10px;padding:12px}.day-heading h3{width:auto;min-width:58px;font-size:.88rem}.day-heading select{width:115px}.day-total{font-size:.84rem}.totals-strip{grid-template-columns:1fr 1fr}.totals-strip>div{padding:14px}.version-card{display:block}.version-card .row-actions{margin-top:14px}.login-shell{grid-template-columns:1fr}.login-intro{padding:30px}.login-intro .brand{margin-bottom:32px}.login-intro h1{font-size:2.6rem}.login-intro h1 br,.login-intro p:not(.eyebrow),.intro-note{display:none}.auth-card{max-width:none;padding:30px 24px}.home-grid{margin:28px 0}.table-wrap{border-radius:8px}td,th{padding:13px}.form-actions button{flex:1}.security-section .form-actions{grid-column:1}.pagination{font-size:.74rem}.pagination button{padding:8px}}.schedule-tabs{white-space:nowrap;overflow-x:auto}.schedule-person{max-width:420px;margin:22px 0}.pattern-row{flex-wrap:wrap;gap:12px;display:flex}.pattern-row label{width:150px}.weekday-choices{flex-wrap:wrap;gap:8px 24px;display:flex}.constraint-card{margin:18px 0;padding:18px}.schedule-legend{flex-wrap:wrap;gap:8px;margin:22px 0;display:flex}.schedule-state{border:1px solid var(--line);border-radius:6px;padding:7px 11px;font-size:.75rem}.state-work{background:#fff}.state-rest{background:#e2f1e8}.state-absence{background:#fff0d8}.state-unassigned{background:#fff3f4}.state-outside_employment{color:#61727a;background:#e8edef}.state-unknown{background:repeating-linear-gradient(135deg,#f1f1f4,#f1f1f4 8px,#e6e6eb 8px 16px)}.schedule-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.schedule-day{border:1px solid #c8d9d5;border-radius:8px;min-width:0;padding:12px;font-size:.79rem}.schedule-day>.day-total{margin:12px 0;display:block}.schedule-date{border-bottom:1px solid #ccdcd5;flex-direction:column;gap:5px;margin-bottom:12px;padding-bottom:10px;display:flex}.schedule-date strong{font-size:1.15rem}.schedule-date span{font-size:.72rem}.schedule-period{margin:10px 0;font-size:.76rem;line-height:1.5}.schedule-period span{color:var(--muted);font-size:.68rem;display:block}.schedule-day details{overflow-wrap:anywhere;font-size:.68rem}.schedule-day dd{margin:4px 0 12px;font-size:.63rem}.weekly-totals{flex-wrap:wrap;gap:16px;margin-bottom:16px;display:flex}.weekly-totals>div{background:var(--paper);flex-direction:column;gap:10px;padding:14px;font-size:.8rem;display:flex}.weekly-totals strong{font-size:1.1rem}.diagnostic-list{max-height:420px;overflow:auto}.diagnostic{background:#fff5dd;border-left:4px solid #b18022;margin:8px 0;padding:14px}.diagnostic-error{background:#fcebed;border-color:#b84853}.diagnostic-review_required{background:#f1ebff;border-color:#7855a9}.diagnostic p{margin:6px 0;font-size:.85rem}.manual-editor{margin-top:22px}.manual-segment{grid-template-columns:1.2fr repeat(4,1fr) 40px;align-items:end;gap:10px;margin:18px 0;display:grid}.manual-segment label{font-size:.75rem}.schedule-result{margin:24px 0}.schedule-result>.table-wrap{margin-top:18px}@media (max-width:1200px){.schedule-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:760px){.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-segment{grid-template-columns:1fr 1fr}.manual-segment label:first-child{grid-column:1/-1}.schedule-tabs button{padding:10px;font-size:.8rem}.pattern-row label{width:130px}}.task-cards{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;margin:24px 0;display:grid}.task-card{text-align:left;border:1px solid var(--border,#d7e5e3);overflow-wrap:anywhere;background:#fff;flex-direction:column;gap:10px;min-width:0;padding:20px;display:flex}.task-card strong{font-size:1.05rem}.task-card span{font-size:.85rem}.task-attention{color:#943b31}.task-editor fieldset{border:1px solid #d7e5e3;border-radius:10px;min-width:0;margin:20px 0;padding:16px}.task-field{border-bottom:1px solid #d7e5e3;padding:16px 0}.task-editor textarea{min-height:85px}.pwa-status{background:#e5f1ee;padding:8px 20px;font-size:.8rem}.pwa-status p{max-width:700px;margin:8px auto}.task-editor .checkbox-label{align-items:center;gap:10px;margin:10px 0;display:flex}.checkbox-label input[type=checkbox]{flex:none;width:auto}.task-editor .form-grid{align-items:end}.panel{overflow-wrap:anywhere}@media (max-width:600px){.task-editor .form-grid{grid-template-columns:1fr}.task-card{padding:16px}.task-editor fieldset{padding:12px}.pwa-status{padding:8px 12px}.form-actions{flex-wrap:wrap}.panel input[type=file]{max-width:100%}}.aej-editor fieldset{min-width:0;margin:12px 0;padding:12px}.aej-editor fieldset>label{margin:14px 0}.aej-editor button{margin:6px 6px 6px 0}.collector-shell{max-width:680px;min-height:100dvh;margin:0 auto;padding:24px 16px}.collector-shell .panel{margin-top:20px}.collector-shell button{min-height:44px;margin:8px 8px 8px 0}.collector-shell select,.collector-shell input{max-width:100%}.collector-shell article{border-top:1px solid var(--line,#dce5e3);padding:12px 0}.collector-shell h1{font-size:clamp(1.8rem,6vw,2.6rem)}.homologation-banner{color:#4a3200;text-align:center;background:#fff1bd;border-bottom:3px solid #b67a00;padding:12px 20px;font-weight:700}
