/* صفحة مدخل الأجور لحاسبة اعرف معاشك — نطاق معزول عن صفحات الموقع الأخرى */
.pension-wage-page{background:#f6f5f1;color:#202725}
.pension-hero{padding:58px 0 44px;background:#151b1b;color:#f8f7f1}
.pension-hero .back-link{color:#d2c7a1}
.pension-hero .page-code{display:block;color:#d9c691;font-size:13px;letter-spacing:.02em;margin:20px 0 10px}
.pension-hero h1{font-size:clamp(26px,3.6vw,44px);line-height:1.35;margin:0 0 16px}
.pension-hero p{font-size:16px;max-width:760px;color:#e3e5e1;line-height:1.9;margin:0 0 10px}
.pension-hero .pension-hero-note{color:#e6ca8f;font-size:13px}
.pension-shell{padding:36px 0 80px;display:grid;gap:24px}
.pension-box,.wage-panel{background:#fff;border:1px solid #dfded7;border-radius:16px;padding:clamp(18px,2.4vw,30px);box-shadow:0 6px 24px rgba(20,26,26,.045)}
.pension-box p,.wage-panel p{color:#525b57;line-height:1.9;margin:8px 0 18px}
.pension-section-heading{margin:0 0 24px}
.pension-section-heading span{color:#8a753e;font-weight:700;font-size:13px}
.pension-section-heading h2,.wage-panel h2{color:#1d2927;font-size:clamp(19px,2.5vw,26px);margin:4px 0 0}
.pension-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.pension-form-grid label{display:flex;flex-direction:column;gap:8px;font-weight:700;font-size:14px;color:#28302d}
.pension-form-grid input,.pension-form-grid select,
.wage-year input,.benefit-entry input,.benefit-entry select{font:inherit;min-height:46px;border:1px solid #bfc8c0;border-radius:9px;padding:10px 12px;background:#fff;color:#1e2824;min-width:0;width:100%;box-sizing:border-box}
.pension-wage-page input:focus-visible,.pension-wage-page button:focus-visible,.pension-wage-page select:focus-visible,.pension-wage-page a:focus-visible{outline:3px solid #a68e51;outline-offset:2px}
.pension-form-grid [hidden]{display:none}
.required{color:#a73d2d}
.pension-check{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.7;margin:18px 0}
.pension-check input,.benefit-confirm input{width:auto;accent-color:#70592f;flex:none}
.pension-warning,.pension-blocked,.pension-notice{padding:15px 18px;border-radius:10px;line-height:1.9;font-size:14px}
.pension-warning{background:#f9f5e7;border:1px solid #e2d4ac;color:#574921}
.pension-blocked,.pension-notice.is-error{background:#fff2ee;border:1px solid #dca493;color:#872f25}
.pension-notice:not(.is-error){background:#eef5ee;border:1px solid #b7d4ba;color:#23462d}
.pension-blocked[hidden],.pension-notice[hidden],#generated-sections[hidden]{display:none}
.pension-actions{margin-top:20px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pension-primary,.pension-secondary,.inline-action{font:inherit;cursor:pointer;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:10px 19px;text-decoration:none;box-sizing:border-box}
.pension-primary{background:#233d34;color:#fff;border:1px solid #233d34;font-weight:700}
.pension-primary:hover{background:#315b4b}
.pension-primary:disabled{opacity:.52;cursor:not-allowed}
.pension-secondary{background:#fff;border:1px solid #b8c4b9;color:#28483d}
.inline-action{border:1px solid #879e92;color:#234637;background:#fff;font-size:13px;font-weight:700;min-height:39px;padding:8px 13px}
.inline-action.muted{color:#7f4139;border-color:#d8b6af}
.inline-action:hover{background:#f2f5f1}
.benefit-entry{display:grid;grid-template-columns:1.2fr 1.2fr 1fr 2fr 1.5fr auto;gap:10px;align-items:center;margin:11px 0;padding:13px;border:1px solid #e5e7e0;border-radius:10px}
.benefit-confirm{display:flex;gap:8px;align-items:center;font-size:12px}
.add-benefit{margin-top:12px}
.wage-panel{margin-bottom:24px}
.wage-panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px}
.wage-panel-head strong{background:#e9ede7;padding:8px 14px;border-radius:24px;white-space:nowrap;font-variant-numeric:tabular-nums}
.wage-year{border:1px solid #dce2db;border-radius:12px;margin:12px 0;overflow:hidden}
.wage-year summary{list-style:revert;cursor:pointer;font-size:16px;font-weight:700;padding:15px 18px;background:#f3f6f2}
.wage-year[open] summary{border-bottom:1px solid #dce2db}
.fill-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:13px 16px;background:#fcfcfa}
.fill-toolbar input{max-width:200px}
.fill-note{font-size:12px;color:#5e5848}
.wage-table-scroll{overflow-x:auto}
.wage-table{border-collapse:collapse;width:100%;min-width:520px;font-size:14px}
.wage-table th,.wage-table td{text-align:right;border-bottom:1px solid #edf0eb;padding:10px 14px}
.wage-table th{font-weight:700;background:#f8f9f7;color:#243c31}
.wage-table td:first-child{font-variant-numeric:tabular-nums;white-space:nowrap}
.wage-table td:last-child small{font-size:12px;color:#626d67}
.wage-table td input{min-width:120px;max-width:220px}
.wage-note{font-size:13px;background:#fbf7e7;padding:15px;border-radius:10px}
.start-wage-row{padding:15px;background:#f1f4f0;border:1px solid #e1e7dd;border-radius:10px;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px}
.start-wage-row div{display:grid;gap:6px}
.start-wage-row small{color:#657469}
.start-wage-row input{min-width:130px;max-width:230px;border:1px solid #bfc8c0;border-radius:9px;padding:12px;font:inherit}
.export-box{border-top:4px solid #86704b}
.pension-footnote{font-size:12px}
@media(max-width:900px){.benefit-entry{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){
.pension-form-grid{grid-template-columns:1fr}
.pension-shell{padding-top:18px;gap:14px}
.pension-box,.wage-panel{border-radius:10px}
.pension-actions>*{width:100%}
.wage-panel-head{align-items:flex-start;flex-direction:column}
.fill-toolbar input{max-width:none}
.fill-toolbar>*{width:100%}
.start-wage-row{display:grid}
.start-wage-row input{max-width:none;width:100%}
.benefit-entry{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.pension-wage-page *{scroll-behavior:auto!important}}

.last-24-month td:first-child{border-inline-start:4px solid #3d775c;font-weight:700}.last-24-month td:last-child{background:#edf5ed}
@media screen{
html[data-theme="dark"] .pension-wage-page{background:var(--theme-bg);color:var(--theme-text)}
html[data-theme="dark"] .pension-wage-page :is(.pension-box,.wage-panel,.benefit-entry,.wage-year,.start-wage-row){background:var(--theme-surface);border-color:var(--theme-border);color:var(--theme-text)}
html[data-theme="dark"] .pension-wage-page :is(.pension-box p,.wage-panel p,.pension-form-grid label,.pension-section-heading h2,.wage-panel h2,.wage-table th,.fill-note,.start-wage-row small,.wage-table td:last-child small){color:var(--theme-text)}
html[data-theme="dark"] .pension-wage-page :is(.wage-year summary,.fill-toolbar,.wage-table th,.wage-panel-head strong,.wage-note){background:var(--theme-raised);color:var(--theme-text)}
html[data-theme="dark"] .pension-wage-page :is(.pension-secondary,.inline-action){background:var(--theme-raised);color:var(--theme-text);border-color:var(--theme-border)}
html[data-theme="dark"] .pension-wage-page .pension-section-heading span{color:var(--theme-link)}
html[data-theme="dark"] .pension-wage-page .pension-warning{background:#3a321e;color:#f6dfac;border-color:#d8bc79}
html[data-theme="dark"] .pension-wage-page :is(.pension-blocked,.pension-notice.is-error){background:#3a2025;color:var(--theme-error);border-color:#e29aa4}
html[data-theme="dark"] .pension-wage-page .last-24-month td:last-child{background:#254333}
html[data-theme="dark"] .pension-wage-page .last-24-month td:first-child{border-color:#9bdfba}
html[data-theme="dark"] .pension-wage-page .required{color:var(--theme-error)}
}
/* Keep the wide month table inside its own horizontal scroller on phones. */
.pension-wage-page .pension-shell{grid-template-columns:minmax(0,1fr)}
.pension-wage-page .pension-shell>*,.pension-wage-page .wage-panel{min-width:0}
.pension-wage-page .wage-table-scroll{max-width:100%;min-width:0}
.pension-wage-page .pension-section-heading span{color:#806b35}
