:root{color:#063f34;background:#f2f4ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#f8f7f0,#eef3ed)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:#004737;color:#f6fbf6;padding:24px 18px;display:flex;flex-direction:column;gap:12px}.brand{display:grid;gap:12px;align-items:start;margin-bottom:28px}.brand img{width:min(205px,100%);height:auto;background:#f8fbf3;box-shadow:0 12px 28px #00181229;border-radius:8px;padding:10px}.brand strong,.brand span{display:block}.brand span{color:#c6ddd5;font-size:13px;margin-top:3px}.sidebarExplanation{color:#d9e8e2;font-size:12px;font-weight:700;line-height:1.45;margin:-12px 0 26px;max-width:210px;text-transform:lowercase}.navButton,.sidebar button{border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff17;color:inherit;display:flex;align-items:center;gap:10px;padding:12px;text-align:left}.navButton:hover,.sidebar button:hover{background:#ffffff26}main{min-width:0}.page{padding:34px}.page.narrow{max-width:900px}.pageHeader{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.eyebrow{color:#60746b;font-size:13px;font-weight:700;letter-spacing:0;margin:0 0 5px;text-transform:lowercase}.timeSource{display:inline-block;color:#60746b;font-size:14px;font-weight:700;margin-top:10px}h1,h2,h3{margin:0;letter-spacing:0}h1{font-size:clamp(28px,4vw,44px);line-height:1.05}.weekPicker{display:flex;gap:8px;align-items:center}.weekPicker button,.iconText{border:1px solid #d0d9d0;background:#fffefa;border-radius:8px;height:40px;padding:0 12px;display:inline-flex;align-items:center;gap:8px}input,select,textarea{border:1px solid #c9d6ce;background:#fffdf6;border-radius:8px;color:#063f34;padding:10px 12px}input:focus,select:focus,textarea:focus,button:focus-visible{border-color:#fc0;box-shadow:0 0 0 3px #ffcc0038;outline:0}.notice{background:#fffefa;border:1px solid #d4ded5;border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:10px;margin-bottom:18px}.weekInfo{background:#eef5ef;border:1px solid #cbd9cf;border-radius:8px;color:#004c3f;font-size:14px;font-weight:800;line-height:1.45;margin:-4px 0 18px;padding:12px 16px}.cardGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.employeeCard,.settingsPanel,.entryPanel{background:#fffdf6f5;border:1px solid #d5ded5;border-radius:8px;box-shadow:0 18px 46px #003f341a}.employeeCard{padding:18px}.cardTop,.subline,.progressLabel,.groupHeader{display:flex;justify-content:space-between;gap:12px;align-items:center}.employeeName{color:#063f34;font-size:20px;font-weight:800;line-height:1.2}.traffic{border-radius:999px;color:#fff;min-width:58px;text-align:center;padding:7px 9px;font-weight:800}.traffic.green{background:#1f8a58}.traffic.yellow{background:#ba8a12}.traffic.red{background:#be3f36}.subline{color:#60746b;margin:7px 0 14px;font-size:14px}.weekProgress{height:12px;background:#e3e9e3;border-radius:999px;box-shadow:inset 0 1px 2px #003f341f;margin:-4px 0 14px;overflow:hidden}.weekProgress span{display:block;height:100%;border-radius:inherit;transition:width .35s ease}.weekProgress.green span{background:linear-gradient(90deg,#2d9761,#58b87b)}.weekProgress.yellow span{background:linear-gradient(90deg,#fc0,#2d9761)}.weekProgress.red span{background:linear-gradient(90deg,#bd3d35,#de6559)}.days{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.dayChip{border-radius:999px;position:relative;padding:6px 9px;font-size:13px;font-weight:800}.dayChip.done{background:#dcefe8;color:#00503f}.dayChip.partial{background:#fff1b8;color:#705b00}.dayChip.missing{background:#be3f36;box-shadow:0 0 0 3px #be3f362e;color:#fffefa;padding-right:24px}.dayChip.missing:after{background:#fffefa;border-radius:999px;color:#be3f36;content:"?";display:grid;font-size:12px;font-weight:900;height:17px;line-height:1;place-items:center;position:absolute;right:5px;top:50%;transform:translateY(-50%);width:17px}.dayChip.upcoming{background:#edf1eb;color:#7c8880}.dayChip.vacation,.dayChip.holiday,.dayChip.sick{background:#e7edf2;color:#38515e}.dayChip.sick{background:#f2dfdf;color:#843536}.progressList{display:grid;gap:12px}.progressLabel{font-size:13px;margin-bottom:6px}.progressValue{display:inline-flex;align-items:center;gap:5px}.overTargetStar{color:#1f8a58}.bar{height:9px;background:#e4e9e2;border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;background:linear-gradient(90deg,#fc0,#2d9761)}.bar.green span{background:linear-gradient(90deg,#2d9761,#58b87b)}.bar.yellow span{background:linear-gradient(90deg,#fc0,#2d9761)}.bar.red span{background:linear-gradient(90deg,#be3f36,#fc0)}.entryPanel,.settingsPanel{padding:22px}.sectionTitle{display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding-bottom:14px;border-bottom:1px solid #ecebe4}.sectionTitle span{color:#60746b;font-size:13px;font-weight:700}.entryHint{background:#fff8dd;border:1px solid #ead889;border-radius:8px;color:#4c4320;font-size:14px;font-weight:700;line-height:1.45;margin:14px 0 0;padding:12px 14px}.dayKindGroup{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:16px 0 4px}.dayKindGroup button{border:1px solid #c9d6ce;background:#f8faf4;border-radius:8px;color:#004c3f;min-height:42px;font-weight:800}.dayKindGroup button.active{background:#004c3f;border-color:#004c3f;color:#fffefa;box-shadow:inset 0 -4px #fc0}.dayKindGroup button:disabled,.entryRow input:disabled,.commentBox textarea:disabled,.primary:disabled{cursor:not-allowed;opacity:.62}.lockedNotice{border:1px solid #d4ded5;border-radius:8px;background:#eef5ef;color:#004c3f;font-size:14px;font-weight:800;line-height:1.45;margin-top:14px;padding:13px 16px}.lockedNotice.lockedFinal{align-items:flex-start;background:#e8f4ed;border:2px solid #00745f;border-left-width:10px;box-shadow:0 12px 28px #004c3f1f;display:flex;gap:13px;font-size:16px;margin:16px 0 6px;padding:18px 18px 18px 16px}.lockedNotice.lockedFinal svg{color:#004c3f;flex:0 0 auto;margin-top:2px}.lockedNotice.lockedFinal span{display:grid;gap:3px}.lockedNotice.lockedFinal strong{color:#003f34;display:block;font-size:18px;line-height:1.1}.lockedNotice.missed{background:#fff0ed;border-color:#e7b4ad;color:#8d251f}.lockedNotice.upcoming{background:#fff8dd;border-color:#ead889;color:#4c4320}.absenceState{margin-top:14px;border:1px solid #d4ded5;border-radius:8px;background:#f7fbf3;padding:16px;color:#38515e;font-weight:700}.entryRow,.targetRow{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:14px;align-items:center;padding:15px 14px;border-bottom:1px solid #ecebe4;margin-inline:-14px}.entryRow{border-radius:8px}.entryRow:hover{background:#f7fbf3}.entryInputCell{display:grid;gap:8px;justify-items:end}.entryInputCell input{background:#fffdf9;border-color:#b9c9bf;font-size:18px;font-weight:700;min-height:44px;text-align:center;width:120px}.targetRow.inactive{color:#7e8b84}.targetRow.inactive>input[type=number]{opacity:.5}.targetEventName{display:flex;align-items:center;gap:10px;font-weight:700}.targetEventName input{width:18px;height:18px;accent-color:#004c3f;padding:0}.blockDescription{color:#75827b;display:block;font-size:13px;font-weight:650;line-height:1.35;margin-top:5px;max-width:520px}.targetBadges{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.targetBadges span{background:#e8f4ed;border:1px solid #bdd6c8;border-radius:999px;color:#004c3f;display:inline-flex;font-size:13px;font-weight:800;line-height:1;padding:7px 10px}.targetBadges span:first-child{background:#fff4bc;border-color:#ecd76d;color:#4f4500}.crmReminder{display:block;color:#266456;font-size:13px;font-style:normal;font-weight:800;margin-top:6px;text-transform:lowercase}.commentBox{display:grid;gap:8px;margin:18px 0}.primary{border:0;background:#004c3f;color:#fff;border-radius:8px;min-height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800}.adminLayout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}.settingsPanel h2{margin-bottom:18px}.groupEditor+.groupEditor{margin-top:26px;padding-top:22px;border-top:1px solid #deded4}.employeeForm{display:grid;gap:10px}.createdLink{display:grid;gap:8px;margin-top:14px;padding:12px;border:1px solid #d9e2d7;background:#f7fbf3;border-radius:8px}.createdLink span{color:#60746b;font-size:13px;font-weight:800}.createdLink button{min-width:0;border:0;background:transparent;color:#004c3f;display:flex;align-items:center;gap:8px;padding:0;text-align:left;word-break:break-all}.adminGate{background:#fffefa;border:1px solid #d5ded5;border-radius:8px;box-shadow:0 12px 30px #003f3414;max-width:480px;padding:24px}.consentPanel{background:#fffefa;border:1px solid #d5ded5;border-radius:8px;box-shadow:0 12px 30px #003f3414;max-width:720px;padding:24px}.consentPanel p,.consentPanel li{color:#38515e;line-height:1.55}.consentPanel ul{margin:18px 0;padding-left:22px}.consentCheck{border:1px solid #d9e2d7;background:#f7fbf3;border-radius:8px;display:grid;grid-template-columns:18px 1fr;gap:10px;margin:18px 0;padding:14px}.consentCheck input{accent-color:#004c3f;height:18px;padding:0;width:18px}.adminGate form{display:grid;gap:10px;margin-top:18px}.adminGate input{text-transform:lowercase}.adminError{color:#be3f36;display:block;font-size:14px;font-weight:800;margin-top:12px;text-transform:lowercase}.employeeList{display:grid;gap:8px;margin-top:18px}.employeeLinkRow{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,180px) 42px;gap:8px;align-items:stretch}.employeeOpen,.copyLink{border:1px solid #dce2d9;background:#f5f7f1;border-radius:8px}.employeeOpen{display:grid;grid-template-columns:20px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:10px;text-align:left}.employeeOpen strong,.employeeOpen small{display:block}.copyLink{min-height:42px;display:grid;place-items:center;color:#004c3f}.groupSelect{min-width:0;min-height:42px;font-weight:700}.employeeList small{color:#69736b}.emptyState{background:#fffefa;border:1px solid #d4ded5;border-radius:8px;padding:28px}.praiseOverlay{align-items:center;background:#0028206b;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:22px;position:fixed;z-index:20}.praiseDialog{background:#fffdf6;border:1px solid #ead889;border-radius:8px;box-shadow:0 24px 70px #00282047;color:#063f34;max-width:460px;padding:24px}.praiseDialog strong{display:block;font-size:26px;margin-bottom:8px}.praiseDialog p{color:#38515e;font-weight:700;line-height:1.5;margin:0 0 18px}@media(max-width:860px){.app{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:2;padding:12px;flex-direction:row;align-items:center;overflow-x:auto}.brand{margin:0 12px 0 0;min-width:220px}.page{padding:20px}.pageHeader,.adminLayout{grid-template-columns:1fr;display:grid}.entryRow,.targetRow,.employeeLinkRow,.dayKindGroup{grid-template-columns:1fr}}
