.work-week-calculator{margin-bottom:var(--spacing-2xl);position:relative}.work-week-label{display:block;margin-bottom:var(--spacing-md);font-weight:600;background:linear-gradient(135deg,var(--color-text-primary),var(--color-text-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:14px;letter-spacing:.3px;text-transform:uppercase}.work-week-inputs{display:flex;gap:var(--spacing-lg);align-items:flex-start;flex-wrap:wrap}.work-week-input-group{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1;min-width:180px}.work-week-input-label{font-size:12px;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.work-week-control{display:flex;align-items:center;gap:0;background:linear-gradient(to bottom,var(--color-bg-primary) 0%,var(--color-gray-50) 100%);border:2px solid var(--color-border-medium);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-cubic);box-shadow:inset 0 2px 4px rgba(0,0,0,.06),inset 0 1px 2px rgba(0,0,0,.08)}.work-week-control:hover{border-color:var(--color-primary);box-shadow:inset 0 2px 4px rgba(0,0,0,.06),inset 0 1px 2px rgba(0,0,0,.08),0 0 0 3px rgba(var(--color-primary-rgb),var(--opacity-10))}.work-week-control:focus-within{border-color:var(--color-primary);box-shadow:inset 0 2px 4px rgba(0,0,0,.06),inset 0 1px 2px rgba(0,0,0,.08),0 0 0 3px rgba(var(--color-primary-rgb),var(--opacity-20))}.work-week-input{flex:1;border:0;background:0 0;padding:var(--spacing-sm) var(--spacing-md);font-size:16px;font-weight:600;color:var(--color-text-primary);text-align:center;outline:0;min-width:70px;appearance:textfield;-moz-appearance:textfield;font-family:"Consolas","Monaco","Courier New",monospace;font-variant-numeric:tabular-nums;letter-spacing:.5px}.work-week-input::-webkit-inner-spin-button,.work-week-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.work-week-input::placeholder{color:var(--color-text-tertiary)}.work-week-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;background:var(--gradient-secondary);color:var(--color-text-primary);font-size:18px;font-weight:700;cursor:pointer;transition:all var(--transition-base);user-select:none;flex-shrink:0}.work-week-btn:hover{background:var(--gradient-primary-solid);color:var(--color-text-white);transform:scale(1.05)}.work-week-btn:active{transform:scale(.95)}.work-week-btn:focus{outline:2px solid var(--color-primary);outline-offset:-2px}.work-week-btn-minus{border-right:1px solid var(--color-border-light)}.work-week-btn-plus{border-left:1px solid var(--color-border-light)}.work-week-unit{font-size:11px;color:var(--color-text-tertiary);text-align:center;font-weight:500;text-transform:lowercase}.dark-mode .work-week-control{background:linear-gradient(to bottom,var(--color-bg-primary) 0%,var(--color-bg-tertiary) 100%);box-shadow:inset 0 2px 4px rgba(0,0,0,.3),inset 0 1px 2px rgba(0,0,0,.4)}.dark-mode .work-week-control:hover{box-shadow:inset 0 2px 4px rgba(0,0,0,.3),inset 0 1px 2px rgba(0,0,0,.4),0 0 0 3px rgba(var(--color-primary-rgb),var(--opacity-20))}.dark-mode .work-week-btn{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.dark-mode .work-week-btn:hover{background:var(--gradient-primary-solid);color:var(--color-text-white)}.dark-mode .work-week-btn-minus{border-right-color:var(--color-border-light)}.dark-mode .work-week-btn-plus{border-left-color:var(--color-border-light)}@media (max-width:768px){.work-week-inputs{flex-direction:column;gap:var(--spacing-md)}.work-week-input-group{min-width:100%}.work-week-btn{width:40px;height:40px;font-size:20px}.work-week-input{font-size:18px;padding:var(--spacing-md)}}@media (prefers-reduced-motion:reduce){.work-week-btn,.work-week-control,.work-week-input{transition:none}}@media (prefers-contrast:high){.work-week-control{border-width:3px}.work-week-btn{border-width:2px}}.work-week-btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.work-week-input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}