.subscription-panel{margin-top:20px;padding:25px 27px 22px}.tracker-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:17px}.tracker-buttons{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:7px}.import-file[hidden]{display:none}.import-warning{margin-top:10px;padding:10px 11px;border-radius:8px;background:#fff7e6;color:#806528;font-size:11px;line-height:1.7}.tracker-title{display:flex;align-items:center;gap:10px;min-width:0}.tracker-title h2{font-size:16px;font-weight:600;margin:0}.tracker-title p{font-size:11px;color:#839087;margin:4px 0 0}.primary-button,.secondary-button,.sub-action{min-height:36px;border-radius:8px;padding:0 13px;font:600 12px "DM Sans","IBM Plex Sans Arabic",sans-serif;cursor:pointer}.primary-button{border:1px solid #176b4c;background:#176b4c;color:#fff}.primary-button:hover{background:#125b40}.secondary-button,.sub-action{border:1px solid #dfe7e1;background:#fff;color:#52645a}.storage-note{display:flex;gap:7px;align-items:flex-start;margin:0 0 15px;color:#7d8a82;font-size:10px;line-height:1.7}.storage-note>span:first-child{color:#619177}.storage-warning{padding:9px 11px;margin:0 0 14px;border-radius:7px;background:#fff7e6;color:#876524;font-size:11px;line-height:1.7}.commitment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.commitment-card{min-width:0;padding:14px 16px 9px;border:1px solid #e7ece8;border-radius:10px;background:#fbfdfb}.currency-heading{display:flex;align-items:baseline;gap:8px;padding-bottom:9px;border-bottom:1px solid #edf1ee}.currency-heading strong{color:#176b4c;font:700 13px 'DM Sans',sans-serif}.currency-heading span{font-size:10px;color:#859189}.commitment-metric{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;font-size:11px;color:#68766e}.commitment-metric strong{flex:0 0 auto;font:600 12px 'DM Sans','IBM Plex Sans Arabic',sans-serif;color:#34463b;direction:ltr;text-align:end}.subscription-form{margin-top:16px;padding:17px;border:1px solid #e1e9e3;border-radius:10px;background:#fbfdfb}.subscription-form[hidden],.storage-warning[hidden],.form-error[hidden]{display:none}.subscription-form h3{font-size:14px;margin:0 0 13px}.subscription-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.subscription-field{display:flex;flex-direction:column;gap:6px;min-width:0;color:#45564c;font-size:11px}.subscription-field input,.subscription-field select{width:100%;min-width:0;height:39px;padding:0 10px;border:1px solid #dfe7e1;border-radius:7px;background:#fff;color:#283a30;font:500 13px 'DM Sans','IBM Plex Sans Arabic',sans-serif}.subscription-field input:focus,.subscription-field select:focus{outline:0;border-color:#6bac8b;box-shadow:0 0 0 3px #e8f4ec}.subscription-field input[type=date]{direction:ltr}.subscription-field input::placeholder{color:#a0aaa3;font-weight:400}.form-error{margin:12px 0 0;padding:9px 11px;border-radius:7px;background:#fff3f1;color:#a74135;font-size:11px}.form-actions{display:flex;gap:8px;margin-top:14px}.subscription-list{display:grid;gap:9px;margin-top:15px}.subscription-item{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:12px 13px;border:1px solid #e9eeea;border-radius:9px;background:#fff}.subscription-details{display:grid;gap:5px;min-width:0}.subscription-name{overflow-wrap:anywhere;font-size:12px;font-weight:600;color:#2c3e33}.subscription-meta{display:flex;flex-wrap:wrap;gap:5px 9px;color:#859088;font-size:10px}.subscription-amount{direction:ltr;unicode-bidi:isolate;color:#34463b;font:600 12px 'DM Sans','IBM Plex Sans Arabic',sans-serif}.due-badge{width:fit-content;padding:3px 7px;border-radius:99px;background:#eef4ef;color:#62766a;font-size:9px}.due-badge.soon{background:#fff6df;color:#8a6c24}.due-badge.overdue{background:#fff0ed;color:#a34d43}.subscription-actions{display:flex;flex:0 0 auto;gap:6px}.sub-action{min-height:31px;padding:0 9px;font-size:10px}.sub-action.delete{color:#a34d43;border-color:#f0dfdc}.empty-subscriptions{margin:15px 0 0;padding:16px;text-align:center;border:1px dashed #dfe7e1;border-radius:9px;color:#849189;font-size:11px}.empty-subscriptions[hidden]{display:none}
html[dir="ltr"] .commitment-metric strong{text-align:end}
@media(max-width:760px){.subscription-panel{padding:20px 19px}.commitment-grid{gap:9px}.commitment-card{padding:12px 10px 8px}.commitment-metric{align-items:flex-start;font-size:10px}.commitment-metric strong{font-size:11px}.subscription-fields{grid-template-columns:minmax(0,1fr)}.subscription-item{align-items:flex-start;padding:11px 10px}.sub-action{padding:0 8px}.tracker-heading{align-items:flex-start;flex-wrap:wrap}.tracker-buttons{gap:6px}}
@media(max-width:380px){.subscription-panel{padding:18px 15px}.tracker-heading{gap:8px}.tracker-title{gap:7px}.tracker-title h2{font-size:14px}.tracker-title p{font-size:10px}.tracker-buttons{flex:1 1 100%;min-width:0;max-width:100%}.tracker-buttons>button{flex:1 1 auto;min-width:0;white-space:normal}.tracker-buttons .primary-button,.tracker-buttons .secondary-button{padding:0 8px;min-height:33px;font-size:10px}.commitment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.commitment-card{padding:10px 8px 7px}.commitment-metric{display:grid;gap:3px}.subscription-item{gap:7px}.subscription-actions{flex-direction:column}.sub-action{min-height:28px}}



.backup-message{margin:0 0 14px;padding:9px 11px;border-radius:7px;background:#eef5ef;color:#536d5c;font-size:11px;line-height:1.7}.backup-message.error{background:#fff3f1;color:#a74135}.backup-message.success{background:#eef7f0;color:#35694b}
.precision-warning{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px}.primary-button:disabled,.secondary-button:disabled,.sub-action:disabled{opacity:.55;cursor:not-allowed}.import-migration-rows{display:grid;gap:8px;max-height:35vh;overflow:auto;margin-top:12px}.import-migration-rows[hidden]{display:none}.migration-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(95px,130px);align-items:center;gap:10px;padding:9px;border:1px solid #e7ece8;border-radius:8px}.migration-detail{min-width:0;overflow-wrap:anywhere;color:#53645a;font-size:11px;line-height:1.7}.migration-row input{width:100%;min-width:0;height:36px;padding:0 8px;border:1px solid #dfe7e1;border-radius:7px;font:500 12px 'DM Sans','IBM Plex Sans Arabic',sans-serif;direction:ltr}.rounding-note{margin:12px 0 0;color:#68766e;font-size:10px;line-height:1.7}
@media(max-width:480px){.migration-row{grid-template-columns:minmax(0,1fr)}.migration-row input{max-width:180px}}
.sub-action.paid{color:#176b4c;border-color:#d7e8dc}.payment-anchors{display:grid;gap:10px;margin-top:12px;padding:12px;border:1px solid #e7ece8;border-radius:9px;background:#fbfdfb}.payment-anchors[hidden],.payment-anchors label[hidden]{display:none}.payment-anchors p{margin:0;color:#68766e;font-size:11px;line-height:1.7}.payment-anchors label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:#45564c}.payment-anchors input{width:86px;height:36px;padding:0 8px;border:1px solid #dfe7e1;border-radius:7px;background:#fff;color:#283a30;font:500 13px 'DM Sans','IBM Plex Sans Arabic',sans-serif;direction:ltr}.payment-dialog{max-width:min(440px,calc(100vw - 28px))}
.delete-dialog{width:min(420px,calc(100vw - 28px));padding:22px;border:1px solid #e1e9e3;border-radius:14px;background:#fff;color:#26382e;box-shadow:0 20px 70px #18291e33;font-family:'IBM Plex Sans Arabic','DM Sans',sans-serif}.delete-dialog::backdrop{background:#14251d66;backdrop-filter:blur(2px)}.delete-dialog h2{margin:0 0 10px;font-size:16px}.delete-dialog>p{margin:0;color:#68766e;font-size:12px;line-height:1.8}.delete-dialog .import-warning{margin-top:10px}.delete-dialog .form-actions{justify-content:flex-start}.delete-dialog .form-actions .secondary-button{margin-inline-end:auto}

/* Shared tracker and dialog accessibility polish. */
.tracker-title h2{font-size:18px;color:#20372b}.tracker-title p{font-size:13px;color:#52645a;line-height:1.55}
.tracker-buttons{gap:9px}.primary-button,.secondary-button,.sub-action{min-height:44px;border-radius:10px;padding-inline:15px;font-size:13px}
.primary-button{border-color:#155e47;background:#155e47}.primary-button:hover{background:#104c3a}
.secondary-button,.sub-action{border-color:#cad8ce;color:#354a3d}.secondary-button:hover,.sub-action:hover{border-color:#8cae98;background:#f4f8f5;color:#203d2e}
.sub-action{min-height:40px;padding-inline:11px;font-size:12px}
.storage-note,.storage-warning,.backup-message{font-size:12px;line-height:1.65;color:#465b4e}
.storage-note>span:first-child{color:#246d4e}.storage-warning{color:#624a16;background:#fff7e6}.backup-message{color:#3e5d48;background:#eef5ef}.backup-message.error,.form-error{color:#8f3027}
.currency-heading strong{color:#155e47;font-size:14px}.currency-heading span{color:#52645a;font-size:12px}
.commitment-metric{font-size:12px;color:#46594e}.commitment-metric strong{font-size:13px;color:#263b30}
.subscription-field{font-size:13px;color:#354a3d}.subscription-field input,.subscription-field select{height:44px;border-color:#cbd8cf;color:#263b30;font-size:14px}
.subscription-field input::placeholder{color:#596c60;opacity:1}
.form-error{font-size:12px;background:#fff0ed}
.subscription-name{font-size:14px;color:#24382d}.subscription-meta{font-size:12px;color:#4e6256;line-height:1.5}
.subscription-amount{font-size:14px;color:#263b30}.due-badge{padding:4px 8px;font-size:11px;color:#3f5748;background:#e9f1eb}.due-badge.soon{color:#684e13;background:#fff3d5}.due-badge.overdue{color:#842f27;background:#ffebe7}
.empty-subscriptions{font-size:13px;color:#52645a;border-color:#cbd8cf}
.delete-dialog{max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;padding:24px;border-radius:16px}
.delete-dialog h2{font-size:19px;color:#20372b}.delete-dialog>p,.payment-anchors p{color:#46594e;font-size:13px;line-height:1.7}
.payment-anchors{gap:12px;border-color:#d9e4dc;background:linear-gradient(145deg,#fbfdfb,#f5f8f6)}
.payment-anchors label{font-size:13px;color:#354a3d}.payment-anchors input{width:92px;height:44px;border-color:#bdcec2;font-size:16px}
.payment-dialog{width:min(460px,calc(100vw - 24px));}
.delete-dialog .form-actions{gap:10px;flex-wrap:wrap;margin-top:18px}
.delete-dialog .form-actions button{min-height:44px;flex:1 1 135px}
.subscription-item{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.subscription-item:focus-visible{outline:3px solid #14785a;outline-offset:3px}
.rounding-note,.migration-detail{color:#46594e;font-size:12px;line-height:1.65}
.subscription-actions{gap:7px;flex-wrap:wrap}
@media(hover:hover){.subscription-item:hover{border-color:#d2e1d7;box-shadow:0 5px 16px #203b2c0a}}
@media(max-width:760px){.tracker-heading{gap:13px}.tracker-title p{font-size:12px}.tracker-buttons{display:grid;flex:1 1 100%;min-width:0;max-width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.tracker-buttons>button{min-width:0;white-space:normal}.tracker-buttons>#addSubscription{grid-column:1/-1}.subscription-panel{padding:21px 18px}.subscription-item{gap:10px}.sub-action{min-height:44px}}
@media(max-width:380px){.tracker-title h2{font-size:16px}.tracker-title p{font-size:12px}.tracker-buttons .primary-button,.tracker-buttons .secondary-button{min-height:44px;padding-inline:8px;font-size:12px}.subscription-panel{padding:19px 14px}.subscription-item{gap:8px}.subscription-actions{flex-direction:column;gap:6px}.sub-action{min-height:44px;min-width:88px;padding-inline:8px;font-size:12px}.commitment-card{padding:11px 8px 8px}.commitment-metric{font-size:12px}.commitment-metric strong{font-size:12px}}
@media(max-width:340px){.payment-dialog{padding:18px}.delete-dialog .form-actions button{flex-basis:100%}.payment-anchors{padding:10px}.payment-anchors label{gap:6px}}
@media(prefers-reduced-motion:reduce){.subscription-item,.sub-action,.primary-button,.secondary-button{transition-duration:.01ms!important}}
