*{box-sizing:border-box;margin:0;padding:0}:root{--brand:#2563eb;--brand-dark:#1d4ed8;--brand-light:#3b82f6;--brand-soft:#2563eb1f;--header-bg:#0f172a;--header-text:#f8fafc;--surface:#fff;--surface-2:#f8fafc;--ground:#f1f5f9;--text-1:#0f172a;--text-2:#475569;--text-3:#94a3b8;--line:#e2e8f0;--line-2:#cbd5e1;--ok:#059669;--ok-soft:#0596691f;--warn:#d97706;--warn-soft:#d977061f;--err:#dc2626;--err-soft:#dc26261f;--sh:0 2px 8px #0f172a0f;--sh-2:0 8px 24px #0f172a14;--r-sm:10px;--r-md:14px;--r-lg:18px;--r-xl:24px;--r-full:999px;--e:.2s ease}html{font-size:16px}body{min-height:100vh;color:var(--text-1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--ground);font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans KR,sans-serif;line-height:1.55}:root{--primary:var(--brand);--primary-dark:var(--brand-dark);--primary-light:var(--brand-light);--primary-bg:var(--brand-soft);--bg-page:var(--ground);--bg-card:var(--surface);--bg-elevated:var(--surface-2);--text-primary:var(--text-1);--text-secondary:var(--text-2);--text-tertiary:var(--text-3);--text-muted:var(--text-3);--border:var(--line);--border-strong:var(--line-2);--success:var(--ok);--success-bg:var(--ok-soft);--warning:var(--warn);--warning-bg:var(--warn-soft);--error:var(--err);--error-bg:var(--err-soft);--shadow-card:var(--sh);--shadow-card-hover:var(--sh-2);--radius-sm:var(--r-sm);--radius-md:var(--r-md);--radius-lg:var(--r-lg);--radius-full:var(--r-full);--ease:var(--e);--bg-primary:var(--surface);--bg-secondary:var(--surface-2)}@media (max-width:480px){html{font-size:15px}}.military-app{max-width:420px;min-height:100vh;margin:0 auto;padding:0 1rem 3rem}.app-header{background:var(--header-bg);color:var(--header-text);text-align:center;margin:0 -1rem;padding:1.75rem 1rem 1.5rem}.app-title{color:#fff;letter-spacing:-.03em;margin:0 0 .25rem;font-size:1.35rem;font-weight:700}.app-subtitle{color:#ffffffb8;font-size:.8rem;font-weight:500}.tab-navigation{z-index:50;background:var(--surface);border-bottom:1px solid var(--line);margin:0 -1rem .75rem;padding:0 1rem .5rem;position:sticky;top:0}.tab-list{scrollbar-width:none;-ms-overflow-style:none;gap:.25rem;display:flex;overflow-x:auto}.tab-list::-webkit-scrollbar{display:none}.tab-item{cursor:pointer;min-width:0;transition:color var(--e), border-color var(--e);background:0 0;border:none;border-bottom:3px solid #0000;flex-direction:column;flex:1;align-items:center;gap:.2rem;margin-bottom:-1px;padding:.6rem .4rem;display:flex}.tab-item:hover .tab-label{color:var(--text-1)}.tab-item.active{border-bottom-color:var(--brand)}.tab-item.active .tab-label{color:var(--brand);font-weight:700}.tab-icon{opacity:.9;font-size:1.1rem;line-height:1}.tab-label{color:var(--text-3);white-space:nowrap;font-size:.7rem;font-weight:600}.card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh);transition:box-shadow var(--e);border:none;margin-bottom:.875rem;padding:1.35rem 1.25rem}.card:hover{box-shadow:var(--sh-2)}.card-header{align-items:center;gap:.7rem;margin-bottom:1.1rem;display:flex}.card-icon{background:var(--brand-soft);width:28px;height:28px;color:var(--brand);border-radius:var(--r-sm);justify-content:center;align-items:center;font-size:.7rem;font-weight:800;display:flex}.card-title{color:var(--text-1);margin:0;font-size:.95rem;font-weight:700}.card-hint{text-align:center;color:var(--text-3);margin:0;font-size:.8rem}.form-group{margin-bottom:1.125rem}.form-group:last-child{margin-bottom:0}.form-label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.8125rem;font-weight:500;display:block}.form-input,.form-select{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);width:100%;color:var(--text-1);transition:border-color var(--e), box-shadow var(--e);padding:.8rem 1rem;font-size:.9375rem}.form-input:focus,.form-select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2.5rem}.form-hint{color:var(--text-tertiary);margin-top:.375rem;font-size:.75rem;display:block}.form-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.form-group-half{min-width:0}.input-with-unit{align-items:center;gap:.5rem;display:flex}.input-with-unit .form-input{flex:1}.input-unit{color:var(--text-tertiary);white-space:nowrap;font-size:.875rem;font-weight:500}.range-wrap{align-items:center;gap:.75rem;display:flex}.form-range{appearance:none;background:var(--line);border-radius:var(--r-full);flex:1;height:8px}.form-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--brand);cursor:pointer;width:20px;height:20px;box-shadow:var(--sh);border-radius:50%}.form-range::-moz-range-thumb{background:var(--brand);cursor:pointer;border:none;border-radius:50%;width:20px;height:20px}.range-value{color:var(--brand);text-align:right;min-width:5rem;font-size:.9375rem;font-weight:700}.checkbox-row{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.checkbox-chip{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--r-md);color:var(--text-1);cursor:pointer;transition:border-color var(--e), background var(--e);align-items:center;gap:.5rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;display:inline-flex}.checkbox-chip:hover{border-color:var(--brand)}.checkbox-chip input{accent-color:var(--brand)}.checkbox-chip span{white-space:normal;line-height:1.35}.condition-list-by-bank{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.condition-by-bank{text-align:left;flex-direction:column;align-items:stretch;gap:.35rem;padding:.6rem .75rem}.condition-by-bank .condition-bank-name{color:var(--text-2);font-size:.7rem;font-weight:700;display:block}.condition-by-bank .condition-label{color:var(--text-1);font-size:.8125rem;display:block}.condition-type-list{flex-direction:column;gap:.6rem;margin-top:.5rem;display:flex}.condition-type-row{flex-direction:column;gap:.35rem;display:flex}.condition-type-label{color:var(--text-1);font-size:.8rem;font-weight:600}.condition-type-select{padding:.5rem .75rem;font-size:.8125rem}.condition-check-list{flex-direction:column;gap:.6rem;margin-top:.5rem;display:flex}.condition-check-block{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--r-md);transition:border-color var(--e);padding:.6rem .75rem}.condition-check-block:has(input:checked){border-color:var(--brand);background:var(--brand-soft)}.condition-type-name{color:var(--text-1);margin-bottom:.4rem;font-size:.8rem;font-weight:700;display:block}.condition-detail-list{flex-direction:column;gap:.25rem;display:flex}.condition-detail-item-wrap{margin-bottom:.15rem}.condition-detail-examples{color:var(--text-2);margin:.15rem 0 0 1.5rem;font-size:.7rem;line-height:1.4}.condition-detail-item{color:var(--text-1);cursor:pointer;white-space:normal;align-items:center;gap:.4rem;font-size:.75rem;font-weight:500;line-height:1.35;display:inline-flex}.condition-detail-item input{accent-color:var(--brand);flex-shrink:0}.condition-check-block:has(input:checked) .condition-detail-item:has(input:checked) span{color:var(--brand);font-weight:600}.checkbox-chip.checked{background:var(--brand-soft);border-color:var(--brand);color:var(--brand);font-weight:600}.checkbox-chip:has(input:checked){background:var(--brand-soft);border-color:var(--brand);color:var(--brand);font-weight:600}.two-account-info{background:var(--brand-soft);border-radius:var(--r-md);margin-bottom:1rem;padding:.75rem 1rem}.two-account-info p{color:var(--text-1);margin:0;font-size:.875rem;font-weight:500}.two-account-info strong{color:var(--brand)}.two-account-detail{color:var(--text-2)!important;margin-top:.25rem!important;font-size:.8125rem!important}.two-account-total{background:var(--bg-elevated);border-radius:var(--r-md);justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.two-account-total-label{color:var(--text-2);font-weight:600}.two-account-total-value{color:var(--brand);font-size:1.0625rem;font-weight:700}.two-account-total.two-account-total-over .two-account-total-value{color:var(--error)}.two-account-limit-hint{color:var(--error);margin:-.5rem 0 1rem;font-size:.75rem;font-weight:500}.two-account-recommend{flex-direction:column;gap:.75rem;display:flex}.two-account-item{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--r-md);transition:all var(--e);padding:1rem}.two-account-item:hover{border-color:var(--line-2)}.two-account-item.top-rank{border-color:var(--brand);background:var(--brand-soft)}.two-account-rank{color:var(--brand);margin-bottom:.5rem;font-size:.75rem;font-weight:700}.two-account-banks{flex-direction:column;gap:.25rem;display:flex}.two-account-conditions-above{border-top:1px solid var(--line);flex-wrap:wrap;gap:.25rem;margin-top:.5rem;padding-top:.5rem;display:flex}.two-account-conditions-above .two-account-condition-tag{color:var(--text-3);background:var(--bg-elevated);border-radius:4px;padding:.15rem .4rem;font-size:.625rem;line-height:1.3}.two-account-conditions-above .two-account-condition-none{color:var(--text-3);font-size:.625rem;font-style:italic}.two-account-row{justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.two-account-row-low{color:var(--text-2)}.two-account-bank-name{color:var(--text-1);font-weight:600}.two-account-amount{color:var(--brand);font-size:.8125rem;font-weight:600}.two-account-maturities{border-top:1px solid var(--line);margin-top:.75rem;padding-top:.75rem;font-size:.8125rem}.two-account-maturity-label{color:var(--text-2);margin-bottom:.2rem;display:block}.two-account-maturity-value{color:var(--text-1)}.two-account-maturity-value strong{color:var(--brand)}.two-account-more-wrap{border-top:1px solid var(--line);margin-top:.75rem;padding-top:.75rem}.two-account-more-toggle{width:100%;color:var(--brand);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:background var(--ease), border-color var(--ease);background:0 0;padding:.5rem;font-size:.8125rem}.two-account-more-toggle:hover{background:var(--bg-elevated);border-color:var(--brand)}.two-account-more-list{margin:.5rem 0 0;padding-left:1.25rem;list-style:outside}.two-account-more-item{color:var(--text-2);padding:.25rem 0;font-size:.8125rem;line-height:1.4}.two-account-avg-caption{color:var(--text-2);margin-bottom:.75rem;font-size:.8125rem}.two-account-avg-caption strong{color:var(--text-1)}.two-account-table-wrap{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);margin-top:0;overflow-x:auto}.two-account-table{border-collapse:collapse;width:100%;font-size:.8125rem}.two-account-table th,.two-account-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:.5rem}.two-account-table thead th{background:var(--bg-elevated);color:var(--text-2);white-space:nowrap;font-weight:700}.two-account-table tbody tr:last-child td{border-bottom:none}.two-account-table tbody tr:hover{background:var(--bg-elevated)}.two-account-table tbody tr.top-rank,.two-account-table tbody tr.top-rank:hover{background:var(--brand-soft)}.two-account-td-rank{color:var(--brand);width:2.5rem;font-weight:700}.two-account-td-bank{color:var(--text-1);font-weight:600;display:block}.two-account-td-amount{color:var(--text-2);font-size:.75rem;display:block}.two-account-td-maturity{color:var(--text-1);white-space:nowrap;font-weight:600}.two-account-td-diff{white-space:nowrap}.two-account-td-diff.over{color:var(--brand);font-weight:600}.two-account-td-diff.under{color:var(--text-2)}.two-account-more-cell{text-align:center;background:var(--bg-elevated);padding:.375rem!important}.two-account-more-fold{width:100%;margin-top:.5rem}.two-account-item-btn{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit}.two-account-item-btn:focus{outline:2px solid var(--brand);outline-offset:2px}.two-account-item-hint{color:var(--text-3);margin-top:.5rem;font-size:.6875rem;display:block}.bank-detail-overlay{z-index:1000;-webkit-backdrop-filter:blur(6px);background:#0f172aa6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.bank-detail-modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);background-color:#fff;width:100%;max-width:480px;max-height:calc(100vh - 2rem);overflow-y:auto;box-shadow:0 16px 48px #00000040}.bank-detail-header{background:var(--surface);border-bottom:1px solid var(--line);border-radius:var(--r-lg) var(--r-lg) 0 0;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem 1.25rem;display:flex}.bank-detail-title{color:var(--text-1);margin:0;font-size:1rem;font-weight:700}.bank-detail-close{width:2rem;height:2rem;color:var(--text-2);border-radius:var(--radius-md);cursor:pointer;transition:background var(--ease), color var(--ease);background:0 0;border:none;flex-shrink:0;padding:0;font-size:1.5rem;line-height:1}.bank-detail-close:hover{background:var(--bg-elevated);color:var(--text-1)}.bank-detail-summary{background:var(--brand-soft);border-bottom:1px solid var(--line);padding:1rem 1.25rem}.bank-detail-summary-label{color:var(--text-2);margin-bottom:.25rem;font-size:.75rem;display:block}.bank-detail-summary-value{color:var(--brand);font-size:1.25rem;font-weight:700;display:block}.bank-detail-summary-breakdown{color:var(--text-2);margin-top:.5rem;font-size:.75rem;display:block}.bank-detail-banks{padding:1rem 1.25rem 1.25rem}.bank-detail-block{border-bottom:1px solid var(--line);padding:1rem 0}.bank-detail-block:last-child{border-bottom:none;padding-bottom:0}.bank-detail-block-title{color:var(--text-1);margin:0 0 .25rem;font-size:.9375rem;font-weight:700}.bank-detail-product{color:var(--text-2);margin:0 0 .75rem;font-size:.8125rem}.bank-detail-row{justify-content:space-between;align-items:center;padding:.35rem 0;font-size:.8125rem;display:flex}.bank-detail-row-label{color:var(--text-2)}.bank-detail-row-value{color:var(--text-1);font-weight:600}.bank-detail-section{margin-top:.875rem}.bank-detail-section-title{color:var(--text-2);text-transform:uppercase;letter-spacing:.02em;margin:0 0 .5rem;font-size:.75rem;font-weight:700}.bank-detail-section-title--small{margin-top:.75rem;font-size:.6875rem}.bank-detail-list{color:var(--text-1);margin:0;padding-left:1.125rem;font-size:.8125rem;line-height:1.5}.bank-detail-list li{margin-bottom:.25rem}.bank-detail-condition-item{align-items:flex-start;gap:.5rem;margin-bottom:.35rem;display:flex}.bank-detail-condition-rate{color:var(--brand);flex-shrink:0;font-weight:700}.bank-detail-condition-label{color:var(--text-1)}.bank-detail-list--applied{color:var(--text-2)}.bank-detail-note{color:var(--text-2);margin:0;font-size:.8125rem;line-height:1.45}.bank-detail-none{color:var(--text-3);margin:0;font-size:.8125rem;font-style:italic}.bank-detail-rates{background:var(--bg-elevated);border-radius:var(--radius-md);margin-top:.875rem;padding:.75rem}.bank-detail-rate-row{justify-content:space-between;align-items:baseline;gap:.5rem;padding:.25rem 0;font-size:.8125rem;display:flex}.bank-detail-rate-row.bank-detail-rate-final{border-top:1px solid var(--line);color:var(--text-1);margin-top:.35rem;padding-top:.5rem;font-weight:600}.bank-detail-rate-label{color:var(--text-2);flex-shrink:0}.bank-detail-rate-value{color:var(--text-1);text-align:right;word-break:break-all}.bank-detail-rate-value.bank-detail-rate-bonus{color:var(--brand);font-weight:700}.bank-detail-month-table-wrap{margin-top:1rem}.bank-detail-month-table-scroll{border:1px solid var(--line);border-radius:var(--radius-md);max-height:280px;overflow-y:auto}.bank-detail-month-table{border-collapse:collapse;width:100%;font-size:.6875rem}.bank-detail-month-table th,.bank-detail-month-table td{text-align:right;border-bottom:1px solid var(--line);white-space:nowrap;padding:.35rem .4rem}.bank-detail-month-table th:first-child,.bank-detail-month-table td:first-child{text-align:center;background:var(--surface);z-index:1;position:sticky;left:0}.bank-detail-month-table thead th{background:var(--bg-elevated);color:var(--text-2);border-bottom:2px solid var(--line);z-index:2;font-weight:700;position:sticky;top:0}.bank-detail-month-table thead th:first-child,.bank-detail-month-table tbody tr:hover td,.bank-detail-month-table tbody tr:hover td:first-child{background:var(--bg-elevated)}.bank-detail-month-table tbody tr:last-child td{border-bottom:1px solid var(--line)}.bank-detail-month-table tfoot .bank-detail-month-table-total td{background:var(--brand-soft);color:var(--text-1);border-top:2px solid var(--brand);border-bottom:none;padding:.5rem .4rem;font-weight:700}.bank-detail-month-table tfoot .bank-detail-month-table-total td:first-child{background:var(--brand-soft)}.bank-detail-month-total-line{color:var(--text-2);background:var(--bg-elevated);border-radius:var(--radius-md);margin:.75rem 0 0;padding:.6rem .75rem;font-size:.75rem;line-height:1.45}.bank-detail-month-total-line strong{color:var(--brand);font-size:.875rem}.dday-wrap{margin-top:.5rem}.dday-display{text-align:center;background:linear-gradient(165deg, var(--brand) 0%, var(--brand-dark) 100%);border-radius:var(--r-lg);margin-bottom:.875rem;padding:1.85rem 1.25rem;box-shadow:0 10px 32px #2563eb47}.dday-label{color:#ffffffe0;text-transform:uppercase;letter-spacing:.12em;margin-bottom:.2rem;font-size:.65rem;font-weight:700}.dday-date{color:#fffffff2;margin-bottom:.4rem;font-size:.9rem;font-weight:500}.dday-count{color:#fff;letter-spacing:-.04em;font-size:2.75rem;font-weight:800;line-height:1.1}.dday-count.completed{color:#fffffffa;font-size:2rem}.progress-container{margin-top:1.2rem}.progress-bar{border-radius:var(--r-full);background:#ffffff38;height:6px;overflow:hidden}.progress-fill{border-radius:var(--r-full);background:#fff;height:100%;transition:width .5s}.progress-text{color:#ffffffe0;text-align:center;margin-top:.45rem;font-size:.72rem;font-weight:600}.timeline{padding-left:30px;position:relative}.timeline:before{content:"";background:var(--border);border-radius:1px;width:2px;position:absolute;top:0;bottom:0;left:5px}.timeline-item{padding:.75rem 0;position:relative}.timeline-item:before{content:"";background:var(--bg-card);border:2px solid var(--border-strong);border-radius:50%;width:10px;height:10px;position:absolute;top:50%;left:-1.5rem;transform:translate(-50%,-50%)}.timeline-item.current:before{background:var(--primary);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-bg)}.timeline-item.completed:before{background:var(--success);border-color:var(--success)}.timeline-rank{color:var(--text-primary);font-size:.875rem;font-weight:600}.timeline-date{color:var(--text-tertiary);margin-top:.125rem;font-size:.8125rem}.timeline-dday{color:var(--primary);background:var(--primary-bg);border-radius:var(--radius-full);margin-top:.25rem;padding:.2rem .5rem;font-size:.6875rem;font-weight:600;display:inline-block}.timeline-dday.completed{color:var(--text-tertiary);background:var(--bg-elevated)}.timeline-grid{padding-left:0}.timeline-grid:before{display:none}.timeline-grid .timeline-row{border-bottom:1px solid var(--border);grid-template-columns:1fr auto auto;align-items:center;gap:.75rem 1rem;padding:.5rem 0;font-size:.8125rem;display:grid}.timeline-grid .timeline-row:last-child{border-bottom:none}.timeline-grid .timeline-head{color:var(--text-secondary);border-bottom:2px solid var(--border);padding-bottom:.375rem;font-weight:700}.timeline-grid .timeline-item{padding:.5rem 0}.timeline-grid .timeline-item:before{display:none}.timeline-grid .timeline-col-rank,.timeline-grid .timeline-col-date,.timeline-grid .timeline-col-dday{min-width:0}.timeline-grid .timeline-rank{margin:0;font-size:.8125rem}.timeline-grid .timeline-date{text-align:right;margin:0;font-size:.75rem}.timeline-grid .timeline-dday{text-align:right;min-width:4rem;margin:0;font-size:.6875rem}.current-rank-badge{background:var(--primary);color:#fff;border-radius:var(--radius-full);align-items:center;gap:.5rem;margin-bottom:1rem;padding:.4rem .875rem;font-size:.8125rem;font-weight:600;display:inline-flex}.current-rank-badge svg{fill:currentColor;width:14px;height:14px}.data-table{border-collapse:collapse;width:100%;font-size:.8125rem}.data-table th,.data-table td{text-align:center;padding:.625rem .5rem}.data-table th{background:var(--bg-elevated);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);font-size:.6875rem;font-weight:600}.data-table th:first-child{border-radius:var(--radius-sm) 0 0 0;text-align:left;padding-left:.75rem}.data-table th:last-child{border-radius:0 var(--radius-sm) 0 0}.data-table tbody tr{border-bottom:1px solid var(--border)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody td{color:var(--text-primary);font-weight:500}.data-table tbody td:first-child{text-align:left;padding-left:.75rem}.data-table tbody tr:hover{background:var(--bg-elevated)}.data-table tfoot td{background:var(--primary-bg);color:var(--primary);border-top:2px solid var(--border);padding:.75rem .5rem;font-weight:700}.data-table tfoot td:first-child{text-align:right;padding-left:.5rem;padding-right:.75rem}.summary-card{margin-top:.5rem}.summary-card-body{padding:.5rem 0 .75rem}.summary-card-section{margin-bottom:.5rem}.summary-card-section:last-of-type{margin-bottom:0}.summary-card-row{justify-content:space-between;align-items:center;padding:.35rem 0;font-size:.875rem;display:flex}.summary-card-label{color:var(--text-2);flex-direction:column;gap:.1rem;display:flex}.summary-card-formula{color:var(--text-2);opacity:.9;font-size:.75rem;font-weight:400}.summary-card-value{color:var(--text-1);font-weight:600}.summary-card-row.summary-card-deduction .summary-card-value{color:var(--text-2)}.summary-card-row.summary-card-subtotal{border-top:1px solid var(--border);margin-top:.15rem;padding-top:.5rem;font-weight:600}.summary-card-row.summary-card-memo{padding:.2rem 0;font-size:.8125rem}.summary-card-row.summary-card-memo .summary-card-label{color:var(--text-2);opacity:.9}.summary-card-row.summary-card-memo .summary-card-value{font-size:.8125rem;font-weight:500}.summary-card-row.summary-card-total{border-top:2px solid var(--brand);margin-top:.75rem;padding-top:.75rem;font-weight:700}.summary-card-row.summary-card-total .summary-card-value{color:var(--brand);font-size:1.05rem}.summary-card-detail-btn{width:100%;color:var(--brand);border:1px solid var(--brand);border-radius:var(--radius-md);cursor:pointer;transition:background var(--ease), color var(--ease);background:0 0;margin-top:.75rem;padding:.6rem 1rem;font-size:.8125rem}.summary-card-detail-btn:hover{background:var(--brand-soft);color:var(--brand-dark)}.summary-detail-overlay{z-index:1000;-webkit-backdrop-filter:blur(6px);background:#0f172aa6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.summary-detail-modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;width:100%;max-width:520px;max-height:calc(100vh - 2rem);display:flex;overflow:hidden;box-shadow:0 16px 48px #00000040}.summary-detail-header{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem 1.25rem;display:flex}.summary-detail-title{color:var(--text-1);margin:0;font-size:1rem;font-weight:700}.summary-detail-close{width:2rem;height:2rem;color:var(--text-2);border-radius:var(--radius-md);cursor:pointer;transition:background var(--ease), color var(--ease);background:0 0;border:none;flex-shrink:0;padding:0;font-size:1.5rem;line-height:1}.summary-detail-close:hover{background:var(--bg-elevated);color:var(--text-1)}.summary-detail-scroll{max-height:60vh;padding:0 1rem 1rem;overflow-y:auto}.summary-detail-table{border-collapse:collapse;width:100%;font-size:.6875rem}.summary-detail-table th,.summary-detail-table td{text-align:right;border-bottom:1px solid var(--line);padding:.35rem .3rem}.summary-detail-table th:first-child,.summary-detail-table td:first-child{text-align:center}.summary-detail-table thead th{background:var(--bg-elevated);color:var(--text-2);z-index:1;font-weight:700;position:sticky;top:0}.summary-detail-table tfoot tr.summary-detail-tfoot td{background:var(--brand-soft);border-top:2px solid var(--brand);padding:.5rem .3rem;font-weight:700}.summary-detail-footer{color:var(--text-2);background:var(--bg-elevated);border-top:1px solid var(--line);flex-shrink:0;margin:0;padding:.75rem 1.25rem;font-size:.75rem}.summary-detail-footer strong{color:var(--brand)}.summary-box{background:var(--bg-elevated);border-radius:var(--radius-md);margin-top:1rem;padding:1rem 1rem 1.25rem}.summary-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.summary-row:last-child{border-bottom:none;border-top:1px solid var(--border-strong);margin-top:.25rem;padding-top:.75rem}.summary-label{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.summary-value{color:var(--text-primary);font-size:.875rem;font-weight:600}.summary-total{color:var(--primary);font-size:1rem;font-weight:700}.summary-value.summary-error{color:var(--error)}.summary-row.summary-highlight{background:var(--primary-bg);border-radius:0 0 var(--radius-md) var(--radius-md);border-top:1px solid var(--border);margin:1rem -1rem -1.25rem;padding:1rem 1rem 1.25rem}.savings-info-box{background:var(--primary-bg);border-radius:var(--radius-md);margin-bottom:1rem;padding:.875rem 1rem}.savings-info-text{color:var(--primary-dark);text-align:center;margin:0;font-size:.8125rem;font-weight:500;line-height:1.5}.savings-info-text strong{font-weight:700}.savings-warning{background:var(--error-bg);color:var(--error);border-radius:var(--radius-md);text-align:center;margin-bottom:1rem;padding:.75rem 1rem;font-size:.8125rem;font-weight:600}.savings-notice{background:var(--warning-bg);border-radius:var(--radius-md);margin-top:1rem;padding:.75rem 1rem}.savings-notice p{color:var(--warning);margin:.25rem 0;font-size:.75rem;font-weight:500;line-height:1.5}.savings-notice p:first-child{margin-top:0}.savings-notice p:last-child{margin-bottom:0}.account-section{background:var(--bg-elevated);border-radius:var(--radius-md);margin-bottom:.75rem;padding:1rem}.account-header{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.account-badge{background:var(--primary);color:#fff;border-radius:var(--radius-full);padding:.25rem .625rem;font-size:.6875rem;font-weight:700}.account-bank-name{color:var(--text-primary);font-size:.875rem;font-weight:600}.account-summary{background:var(--bg-card);border-radius:var(--radius-sm);color:var(--text-secondary);text-align:right;margin-top:.75rem;padding:.5rem .75rem;font-size:.8125rem}.account-summary strong{color:var(--primary)}.comparison-toggle-btn,.bonus-selector-toggle,.rate-details-toggle{background:var(--bg-elevated);width:100%;color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--ease);margin-top:.75rem;padding:.75rem 1rem;font-size:.8125rem;font-weight:600}.comparison-toggle-btn:hover,.bonus-selector-toggle:hover,.rate-details-toggle:hover{background:var(--primary-bg);color:var(--primary);border-color:var(--primary)}.bank-comparison{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.comparison-title{color:var(--text-primary);text-align:center;margin:0 0 .75rem;font-size:.875rem;font-weight:700}.comparison-table-wrapper{margin:0 -.25rem;padding:0 .25rem;overflow-x:auto}.comparison-table{border-collapse:collapse;width:100%;min-width:380px;font-size:.75rem}.comparison-table th,.comparison-table td{text-align:center;border-bottom:1px solid var(--border);padding:.5rem .375rem}.comparison-table th{background:var(--bg-elevated);color:var(--text-secondary);font-size:.6875rem;font-weight:600}.comparison-table tbody tr{cursor:pointer;transition:background var(--ease)}.comparison-table tbody tr:hover{background:var(--bg-elevated)}.comparison-table tbody tr.selected-bank{background:var(--primary-bg)}.comparison-table .bank-name{text-align:left;padding-left:.5rem;font-weight:600}.comparison-table .max-rate{color:var(--primary);font-weight:700}.comparison-table .bonus-rate{color:var(--success);font-weight:600}.comparison-note{color:var(--text-tertiary);text-align:center;margin-top:.5rem;font-size:.6875rem}.bank-tag{text-align:center;color:#fff;border-radius:4px;width:14px;height:14px;margin-left:.25rem;font-size:.5625rem;font-weight:700;line-height:14px;display:inline-block}.bank-tag.tag-1{background:var(--primary)}.bank-tag.tag-2{background:var(--text-tertiary)}.comparison-table tbody tr.account1-selected{background:var(--primary-bg)}.comparison-table tbody tr.account2-selected{background:var(--bg-elevated)}.form-input:disabled,.form-select:disabled{background:var(--bg-elevated);color:var(--text-tertiary);cursor:not-allowed;opacity:.8}.bonus-conditions-box,.rate-details-box{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border);margin-top:.75rem;padding:.75rem 1rem}.bonus-conditions-title,.rate-details-title{color:var(--text-primary);margin-bottom:.5rem;font-size:.8125rem;font-weight:600}.bonus-condition-item{cursor:pointer;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;display:flex}.bonus-condition-item input[type=checkbox]{accent-color:var(--primary)}.bonus-condition-label{color:var(--text-primary);flex:1;font-weight:500}.bonus-condition-rate{color:var(--success);font-size:.75rem;font-weight:600}.bonus-conditions-summary{border-top:1px solid var(--border);color:var(--primary);margin-top:.75rem;padding-top:.5rem;font-size:.8125rem;font-weight:600}.rate-details-section{margin-bottom:1rem}.rate-details-section:last-child{margin-bottom:0}.rate-details-grid{flex-wrap:wrap;gap:.5rem 1rem;display:flex}.rate-detail-item{min-width:100px;color:var(--text-secondary);font-size:.8125rem}.rate-detail-period{margin-right:.25rem;font-weight:600}.rate-detail-value{color:var(--text-primary)}.rate-details-note{color:var(--text-tertiary);margin-top:.5rem;font-size:.75rem}.additional-benefits-list{color:var(--text-secondary);margin:0;padding-left:1.25rem;font-size:.8125rem}.additional-benefits-list li{margin-bottom:.25rem}.app-footer{text-align:center;color:var(--text-3);letter-spacing:.06em;padding:2rem 1rem;font-size:.65rem;font-weight:500}.bank-rank-list{flex-direction:column;gap:.75rem;display:flex}.bank-rank-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--ease);padding:1rem}.bank-rank-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card-hover)}.bank-rank-item.top-rank{border-color:var(--primary);background:var(--primary-bg)}.bank-rank-header{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.bank-rank-number{color:var(--primary);font-size:1.125rem;font-weight:800}.bank-rank-name{color:var(--text-primary);font-size:.9375rem;font-weight:700}.bank-rank-details{grid-template-columns:repeat(2,1fr);gap:.5rem;font-size:.8125rem;display:grid}.bank-rank-detail{justify-content:space-between;display:flex}.bank-rank-detail-label{color:var(--text-tertiary)}.bank-rank-detail-value{color:var(--text-primary);font-weight:600}.bank-rank-detail-value.highlight{color:var(--primary)}.spending-description{color:var(--text-secondary);margin:-.25rem 0 1rem;font-size:.8125rem;line-height:1.5}.spending-inputs{flex-direction:column;gap:.75rem;display:flex}.spending-inputs--grouped{gap:1.25rem;margin-top:.75rem}.spending-group{border-bottom:1px solid var(--border);padding:.875rem 0}.spending-group:last-of-type{border-bottom:none}.spending-group-title{color:var(--text-secondary);text-transform:none;margin:0 0 .75rem;font-size:.875rem;font-weight:700}.spending-group-list{flex-direction:column;gap:.5rem;display:flex}.spending-more-toggle{width:100%;color:var(--primary);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--ease), border-color var(--ease);background:0 0;margin-top:.75rem;padding:.5rem;font-size:.8125rem}.spending-more-toggle:hover{background:var(--bg-elevated);border-color:var(--primary)}.spending-input-group{align-items:center;gap:.75rem;display:flex}.spending-icon{text-align:center;width:28px;font-size:1.125rem}.spending-label{color:var(--text-primary);flex:1;font-size:.875rem;font-weight:500}.spending-input{width:100px}.total-spending{background:var(--bg-elevated);border-radius:var(--r-md);justify-content:space-between;align-items:center;margin-top:1rem;padding:.875rem 1rem;display:flex}.total-spending-label{color:var(--text-secondary);font-weight:600}.total-spending-value{color:var(--primary);font-size:1.0625rem;font-weight:700}.card-disclaimer{color:var(--text-tertiary);border-bottom:1px solid var(--border);margin:-.25rem 0 1rem;padding:.5rem 0;font-size:.75rem;line-height:1.5}.card-rank-list{flex-direction:column;gap:.75rem;display:flex}.card-rank-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--ease);flex-direction:row;align-items:center;gap:1rem;padding:1rem;display:flex}.card-rank-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card-hover)}.card-rank-item.top-rank{border-color:var(--primary);background:var(--primary-bg)}.card-rank-info{flex:1;min-width:0}.card-rank-image-wrap{perspective:800px;flex-shrink:0;justify-content:center;align-items:center;width:88px;height:140px;display:flex;position:relative;overflow:hidden}.card-flip-wrap{width:88px;height:140px;transform-style:preserve-3d;cursor:pointer;border-radius:var(--radius-sm);isolation:isolate;z-index:1;position:absolute;inset:0;overflow:hidden}.card-flip-wrap.is-flipped .card-flip-inner{transform:translate(-50%,-50%)rotate(90deg)rotateY(180deg)}.card-flip-inner{width:140px;height:88px;transform-style:preserve-3d;border-radius:var(--radius-sm);pointer-events:none;transition:transform .5s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(90deg)}.card-flip-front,.card-flip-back{backface-visibility:hidden;border-radius:var(--radius-sm);background:var(--bg-card,#fff);position:absolute;inset:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.card-flip-back{transform:rotateY(180deg)}.card-image-rotated{filter:drop-shadow(0 4px 12px #00000026);border-radius:var(--radius-sm);width:140px;height:88px;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)rotate(90deg)}.card-image-rotated .card-rank-image{object-fit:cover;width:100%;height:100%}.card-rank-image{aspect-ratio:1.586;object-fit:cover;width:100%;height:auto;display:block}.card-flip-front .card-rank-image,.card-flip-back .card-rank-image{object-fit:cover;width:100%;height:100%}.card-rank-header{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.card-rank-number{color:var(--primary);font-size:1.125rem;font-weight:800}.card-rank-name{color:var(--text-primary);flex:1;font-size:.9375rem;font-weight:700}.card-rank-bank{color:var(--text-tertiary);margin-bottom:.35rem;font-size:.75rem;display:block}.card-rank-cashback{justify-content:space-between;align-items:baseline;margin-bottom:.35rem;display:flex}.card-rank-cashback--yearly{margin-bottom:.5rem}.card-cashback-label{color:var(--text-tertiary);font-size:.75rem;font-weight:500}.card-cashback-monthly{color:var(--primary);font-size:1.0625rem;font-weight:700}.card-cashback-yearly{color:var(--text-secondary);font-size:.875rem;font-weight:600}.card-benefits{flex-wrap:wrap;gap:.375rem;margin-top:.5rem;display:flex}.card-benefit-tag{background:var(--bg-elevated);border-radius:var(--radius-full);color:var(--text-secondary);padding:.25rem .5rem;font-size:.6875rem}.card-detail-btns{flex-direction:column;gap:.375rem;margin-top:.5rem;display:flex}.card-detail-btn{width:100%;color:var(--brand);background:var(--brand-soft);border:1px solid var(--brand);border-radius:var(--r-md);cursor:pointer;transition:background var(--e), color var(--e);padding:.5rem .75rem;font-size:.8125rem}.card-detail-btn:hover{background:var(--brand);color:#fff}.card-detail-btn--outline{background:var(--surface);color:var(--text-2);border-color:var(--line);background-color:#fff}.card-detail-btn--outline:hover{background:var(--surface-2);color:var(--text-1);border-color:var(--line-2)}.card-detail-overlay{z-index:1000;-webkit-backdrop-filter:blur(6px);background:#0f172aa6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.card-detail-modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);background-color:#fff;width:100%;max-width:420px;max-height:calc(100vh - 2rem);overflow-y:auto;box-shadow:0 16px 48px #00000040}.card-detail-header{background:var(--surface);border-bottom:1px solid var(--line);border-radius:var(--r-lg) var(--r-lg) 0 0;background-color:#fff;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem 1.25rem;display:flex}.card-detail-title{color:var(--text-1);margin:0;font-size:1rem;font-weight:700}.card-detail-close{width:2rem;height:2rem;color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:background var(--ease), color var(--ease);background:0 0;border:none;flex-shrink:0;padding:0;font-size:1.5rem;line-height:1}.card-detail-close:hover{background:var(--surface-2);color:var(--text-1)}.card-detail-sub{color:var(--text-2);background:var(--surface);background-color:#fff;margin:0;padding:.5rem 1.25rem 0;font-size:.8125rem}.card-detail-breakdown{background:var(--surface);border-radius:0 0 var(--r-lg) var(--r-lg);background-color:#fff;padding:.75rem 1.25rem 1.25rem}.card-detail-empty{color:var(--text-secondary);text-align:center;margin:0;padding:1rem 0;font-size:.875rem}.card-detail-row{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:.5rem .75rem;padding:.5rem 0;font-size:.8125rem;display:grid}.card-detail-row:last-of-type{border-bottom:none}.card-detail-row--head{color:var(--text-secondary);padding-bottom:.375rem;font-size:.75rem;font-weight:600}.card-detail-row--head .card-detail-label,.card-detail-row--head .card-detail-amount,.card-detail-row--head .card-detail-rate,.card-detail-row--head .card-detail-cashback{color:var(--text-secondary);font-weight:600}.card-detail-icon{font-size:1rem}.card-detail-label{color:var(--text-1)}.card-detail-amount{color:var(--text-secondary);text-align:right}.card-detail-rate{color:var(--primary);text-align:right;font-weight:600}.card-detail-cashback{color:var(--primary);text-align:right;min-width:4.5rem;font-weight:600}.card-detail-total{border-top:2px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.75rem;font-size:.9375rem;font-weight:700;display:flex}.card-detail-total-label{color:var(--text-1)}.card-detail-total-value{color:var(--primary)}.card-benefits-body{background:var(--surface);border-radius:0 0 var(--r-lg) var(--r-lg);background-color:#fff;padding:.75rem 1.25rem 1.25rem}.card-benefits-list{margin:0;padding-left:1.25rem;list-style:outside}.card-benefits-item{color:var(--text-1);margin-bottom:.5rem;font-size:.8125rem;line-height:1.5}.card-benefits-item:last-child{margin-bottom:0}.card-benefits-requirements{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.card-benefits-requirements-label{color:var(--text-2);margin-bottom:.375rem;font-size:.75rem;font-weight:600;display:block}.card-benefits-requirements-text{color:var(--text-2);margin:0;font-size:.8125rem;line-height:1.5}.card-detail-modal--benefits{max-height:85vh}.card-benefits-detail{flex-direction:column;gap:1rem;display:flex}.card-benefits-section{border-bottom:1px solid var(--line);padding-bottom:.75rem}.card-benefits-section:last-of-type{border-bottom:none;padding-bottom:0}.card-benefits-section-title{color:var(--text-1);margin:0 0 .375rem;font-size:.8125rem;font-weight:700;line-height:1.35}.card-benefits-section .card-benefits-list{margin:0;padding-left:1.125rem}.card-benefits-section .card-benefits-item{color:var(--text-2);margin-bottom:.25rem;font-size:.75rem;line-height:1.45}.card-benefits-section .card-benefits-item:last-child{margin-bottom:0}.card-more-wrap{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem}.card-more-toggle{width:100%;color:var(--primary);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--ease), border-color var(--ease);background:0 0;padding:.5rem;font-size:.8125rem}.card-more-toggle:hover{background:var(--bg-elevated);border-color:var(--primary)}.card-more-list{margin:.5rem 0 0;padding-left:1.25rem;list-style:outside}.card-more-item{color:var(--text-secondary);padding:.25rem 0;font-size:.8125rem;line-height:1.4}.condition-selector{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.condition-chip{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-full);cursor:pointer;transition:all var(--ease);align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.8125rem;display:flex}.condition-chip:hover{border-color:var(--primary)}.condition-chip.selected{background:var(--primary-bg);border-color:var(--primary);color:var(--primary);font-weight:600}.condition-chip input[type=checkbox]{display:none}@media (max-width:480px){.military-app{padding:0 .875rem 2.5rem}.app-header{margin:0 -.875rem;padding:1.5rem .875rem 1.25rem}.tab-navigation{margin-left:-.875rem;margin-right:-.875rem;padding-left:.875rem;padding-right:.875rem}.app-title{font-size:1.375rem}.tab-item{padding:.5rem .35rem}.tab-label{font-size:.625rem}.card{margin-bottom:.625rem;padding:1rem 1.125rem 1.25rem}.form-row{grid-template-columns:1fr}.dday-count{font-size:2rem}.data-table{font-size:.75rem}.data-table th,.data-table td{padding:.5rem .25rem}.data-table th:first-child,.data-table tbody td:first-child{padding-left:.5rem}.comparison-table{min-width:340px;font-size:.6875rem}.bank-rank-details{grid-template-columns:1fr}}@media (min-width:768px){.military-app{max-width:520px;padding:0 1.5rem 3rem}.app-header{padding:2.5rem 1rem 1.5rem}.app-title{font-size:1.625rem}.card{margin-bottom:1rem;padding:1.5rem 1.5rem 1.75rem}}
