/* Notes belong to a particular monthly bonus, with a touch-sized disclosure. */
.bonus-note-trigger{appearance:none;display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px 8px;max-width:100%;min-height:44px;padding:7px 11px;border:1px solid #cec0ff35;border-radius:12px;background:#bca7ff0c;color:#e0d0ff;cursor:pointer;text-align:left;font:inherit;transition:background .2s,border-color .2s,box-shadow .2s;}
.bonus-note-trigger:hover{background:#bca7ff19;border-color:#d9caff77;box-shadow:0 2px 12px #bca7ff0e;}
.bonus-note-trigger:focus-visible{outline:2px solid #ddcaff;outline-offset:3px;}
.bonus-note-trigger>.numeric{font-weight:700;font-size:inherit;}
.bonus-note-trigger svg{width:14px;height:14px;flex-shrink:0;opacity:.8;}
.bonus-note-trigger>small{display:inline!important;font-size:10px!important;color:#c3b2de!important;margin:0!important;}
.bonus-amount .bonus-note-trigger{font-size:30px;gap:9px 12px;padding:12px 16px;}
.bonus-amount .bonus-note-trigger>small{font-size:12px!important;}
.bonus-note-dialog{width:min(470px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;}
.bonus-note-dialog::backdrop{background:#02050dd9;backdrop-filter:blur(9px);}
.bonus-note-dialog .modal-head{align-items:flex-start;}
.bonus-note-dialog .icon-button{width:44px;height:44px;min-width:44px;min-height:44px;}
.bonus-note-dialog .modal-head h2{margin:6px 0 0;}
.bonus-note-eyebrow{font-size:9px;letter-spacing:2px;color:#bba6e5;}
.bonus-note-value{display:flex;flex-direction:column;gap:7px;margin-bottom:23px;}
.bonus-note-value>span{font-size:12px;color:#b2bfd3;}
.bonus-note-value>strong{font-size:32px;letter-spacing:-.5px;color:#e1d3ff;font-variant-numeric:tabular-nums;}
.bonus-note-value>small{font-size:12px;color:#acbad0;}
.bonus-note-copy{padding:18px;border-radius:16px;background:#d5c8ff0a;border:1px solid #d5c8ff18;color:#e5e9f2;font-size:15px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;}
.bonus-print-note{display:none;}
.pension-settings{margin:22px 0;}
.pension-settings .helper-text{line-height:1.8;}
.salary-version-pension{font-size:12px;color:#c6d4e5;line-height:1.8;margin:12px 0 0;}
.salary-version-pension strong{color:#e4edfa;}
.salary-version-pension small{display:block;color:#9eafc7;}
@media(max-width:600px){.bonus-note-dialog{max-height:calc(100dvh - 24px);}.bonus-note-dialog .modal-body{padding:22px;}.bonus-note-dialog .modal-head{padding:22px;}.bonus-note-copy{padding:16px;}.pension-settings input{font-size:16px;}.mobile-salary-bonus .bonus-note-trigger{margin-top:6px;}.bonus-amount .bonus-note-trigger{font-size:25px;}}
@media(prefers-reduced-motion:reduce){.bonus-note-trigger{transition:none;}}
@media print{.bonus-print-note{display:block;white-space:pre-wrap;}.bonus-note-trigger{border:0;background:none;padding:0;color:#000;}.bonus-note-trigger svg,.bonus-note-trigger>small{display:none!important;}}
.year-end-panel { margin-top: 24px; }
.year-end-records { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,260px),1fr)); gap: 16px; padding: 24px; }
.year-end-card { min-width: 0; padding: 22px; border: 1px solid rgba(188,172,246,.24); border-radius: 20px; background: linear-gradient(135deg,rgba(154,126,220,.11),rgba(18,26,43,.45)); }
.year-end-card header,.year-end-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.year-end-card h3 { margin: 10px 0 0; }.year-end-card .eyebrow { font-size: 10px; color: #d3c3fa; }
.year-end-net { display: block; margin-top: 24px; font-size: clamp(28px,4vw,36px); color: #e1d4ff; font-weight: 550; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.year-end-card p { color: #bac4d7; font-size: 13px; margin: 8px 0 24px; }
.year-end-card-footer .btn { min-height: 44px; }.year-end-card-footer .badge { margin-right: auto; }
.year-end-empty { display: flex; align-items: center; gap: 18px; padding: 10px 0; color: #d6ddeb; }.year-end-empty > span { display: grid; place-items: center; width: 48px; height: 48px; flex: 0 0 48px; border-radius: 16px; color: #d2bbff; background: rgba(165,130,225,.12); }.year-end-empty p { color: #aebad0; margin: 8px 0 0; font-size: 13px; line-height: 1.7; }
.year-end-detail-total { display: grid; gap: 14px; padding: 28px; border-radius: 22px; margin-bottom: 24px; background: linear-gradient(125deg,rgba(158,122,223,.16),rgba(39,55,80,.2)); }.year-end-detail-total strong { font-size: 40px; font-weight: 550; color: #dfccff; }.year-end-detail-total > span:last-child { color: #bac5d9; }
.annual-cashout { padding: 24px; margin: 28px 0; border-radius: 20px; border: 1px solid rgba(156,221,202,.25); background: linear-gradient(125deg,rgba(102,187,155,.08),rgba(17,29,42,.3)); }.annual-cashout-heading .eyebrow { color: #aedbcc; font-size: 10px; letter-spacing: .12em; }.annual-cashout-heading h3 { margin: 10px 0; }.annual-cashout-heading p { color: #b2bfce; font-size: 13px; line-height: 1.7; }.annual-cashout-inputs[hidden] { display: none; }.annual-cashout-inputs .form-grid { margin-top: 20px; }
@media (max-width:600px) { .year-end-records { padding: 16px; }.year-end-card { padding: 20px; }.annual-cashout { padding: 18px; }.year-end-detail-total { padding: 22px; }.year-end-panel .panel-head { flex-wrap: wrap; gap: 16px; }.year-end-panel .panel-head .btn { width: 100%; } }
