.amm-calc{--navy:#001e42;--txt:#424247;--muted:#737e8c;--line:#e4e7ee;--blue:#0488d0;--orange:#fb9100;--tint:#f6f9fb;font-family:"DM Sans",system-ui,sans-serif;color:var(--navy)}
.amm-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:12px;padding:12px;border-radius:20px;border:1px solid #c9eef0;background:linear-gradient(135deg,#d9f6f9 0%,#e9fef8 60%,#effefa 100%);position:relative;overflow:hidden}
.amm-panel:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(4,136,208,.14) 1px,transparent 1.4px);background-size:9px 9px;opacity:.7;pointer-events:none}
.amm-card,.amm-out{position:relative}
.amm-card{background:#fff;border-radius:12px;padding:clamp(24px,4vw,48px)}
.amm-card h3{font:700 clamp(34px,4.1vw,54px)/1.08 "DM Sans",sans-serif;letter-spacing:-.015em;margin:0 0 16px;color:var(--navy)}
.amm-introrow{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}
.amm-introrow p{margin:0;color:var(--txt);font-size:15.5px;line-height:1.55;max-width:34ch}
.amm-try{font:400 30px/1 "Caveat Brush","Permanent Marker",cursive;color:var(--blue);white-space:nowrap;position:relative;padding-left:26px;flex:none;transform:rotate(-3deg)}
.amm-arrow{position:absolute;left:-14px;top:22px;width:34px;height:26px}
.amm-card hr{border:0;border-top:1px solid var(--line);margin:22px 0}
.amm-f{margin-bottom:22px}
.amm-lab{display:block;font-size:15px;color:var(--txt);margin-bottom:10px}
.amm-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.amm-in,.amm-form input:not([type=checkbox]),.amm-form select,.amm-form textarea,.amm-dialog input:not([type=radio]){width:100%;box-sizing:border-box;font:inherit;font-size:15px;padding:12px 13px;border:1px solid var(--line);background:var(--tint);color:var(--navy);border-radius:6px}
.amm-in:focus,.amm-form input:focus,.amm-form select:focus,.amm-form textarea:focus,.amm-dialog input:focus{outline:2px solid var(--blue);outline-offset:1px;background:#fff}
.amm-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.amm-chips button{font:500 14px "DM Sans",sans-serif;padding:11px 15px;border:1px solid var(--line);background:var(--tint);color:var(--muted);border-radius:6px;cursor:pointer;transition:.15s}
.amm-chips button:hover{border-color:var(--navy);color:var(--navy)}
.amm-chips button.on{background:linear-gradient(180deg,#0b2d57,#001e42);color:#fff;border-color:var(--navy);box-shadow:0 4px 10px rgba(0,30,66,.22)}
.amm-range{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:99px;background:linear-gradient(90deg,var(--blue) var(--p,0%),#dfe6ee var(--p,0%));outline:none;margin:8px 0}
.amm-range::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--blue);cursor:pointer}
.amm-range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--blue);cursor:pointer}
.amm-val{font-weight:700;font-size:14px;color:var(--blue)}
.amm-warn{background:#fff6e0;border:1px solid #f4d68a;padding:10px 12px;font-size:13px;margin:0 0 20px;border-radius:6px}
.amm-warn[hidden]{display:none}
/* results */
.amm-out{padding:clamp(20px,3.4vw,40px) clamp(12px,3vw,34px)}
.amm-out h4{font:700 clamp(27px,3.1vw,42px)/1.12 "DM Sans",sans-serif;letter-spacing:-.01em;margin:0 0 12px;color:var(--navy)}
.amm-h2{margin-top:30px!important}
.amm-rows{margin:0;display:grid}
.amm-rows>div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;font-size:16px;color:var(--txt)}
.amm-rows dt,.amm-rows dd{margin:0}
.amm-rows dd{font-variant-numeric:tabular-nums}
.amm-total{display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-top:1px solid var(--navy);padding-top:14px;margin-top:6px;color:var(--navy)}
.amm-total span{font-size:16px}.amm-total strong{font:700 clamp(30px,3.4vw,42px)/1 "DM Sans",sans-serif;font-variant-numeric:tabular-nums;color:var(--blue)}
.amm-real{margin:10px 0 0;font-size:clamp(15px,1.5vw,18px);line-height:1.4;color:var(--muted)}
.amm-diff{border-top:1px solid var(--navy);margin-top:6px;padding-top:14px!important;font-weight:700;color:var(--navy)!important}
.amm-diff dd{color:#0a8a5a}
.amm-chart{position:relative;margin-top:22px;background:rgba(255,255,255,.75);border:1px solid var(--line);border-radius:10px;padding:12px 8px 4px}
.amm-chart svg{width:100%;height:auto;display:block}
.amm-chart .ax{font:14px "DM Sans",sans-serif;fill:var(--muted)}
.amm-chart .lbl{font:700 16px "DM Sans",sans-serif}
.amm-tip{position:absolute;pointer-events:none;background:var(--navy);color:#fff;font-size:12.5px;line-height:1.55;padding:9px 12px;border-radius:6px;z-index:5;width:150px;margin-top:10px}
.amm-tip[hidden]{display:none}.amm-tip b{display:block;margin-bottom:2px}.amm-tip span{display:block}.amm-tip .t1{color:#7fd0ff}.amm-tip .t2{color:#ffc266}
.amm-legend{display:flex;gap:20px;flex-wrap:wrap;font-size:13.5px;color:var(--txt);margin:12px 2px 0}
.amm-legend i{display:inline-block;width:22px;height:0;border-top:3px solid var(--blue);margin-right:8px;vertical-align:middle}
.amm-legend i.l2{border-top:3px dashed var(--orange)}
.amm-btn{display:inline-flex;justify-content:center;align-items:center;width:100%;box-sizing:border-box;font:500 15px "DM Sans",sans-serif;padding:15px 22px;background:linear-gradient(180deg,#0b2d57,#001e42);color:#fff;border:0;border-radius:6px;cursor:pointer;transition:.2s;box-shadow:0 6px 14px rgba(0,30,66,.2)}
.amm-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(0,30,66,.28)}
.amm-dl{margin-top:20px}
.amm-fine{font-size:12px;color:var(--muted);line-height:1.5;margin:14px 0 0}
/* forms + modal */
.amm-form{display:grid;gap:16px}
.amm-form label,.amm-dialog label{display:block;font-weight:500;font-size:14.5px;color:var(--navy)}
.amm-form label input,.amm-form label select,.amm-form label textarea,.amm-dialog label input{margin-top:6px;font-weight:400}
.amm-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.amm-opt{font-weight:400;color:var(--muted)}
.amm-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}
.amm-check,.amm-radio{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;font-size:13.5px!important;line-height:1.5;color:var(--txt)!important}
.amm-check input,.amm-radio input{margin-top:3px;width:auto}
.amm-msg{margin:0;font-size:14px;min-height:1.2em;color:var(--navy)}
.amm-modal{position:fixed;inset:0;background:rgba(0,20,45,.6);display:flex;align-items:center;justify-content:center;padding:20px;z-index:9999;backdrop-filter:blur(3px)}
.amm-modal[hidden]{display:none}
.amm-dialog{background:#fff;color:var(--navy);width:min(520px,100%);max-height:92vh;overflow:auto;padding:34px;border-radius:14px;position:relative;font-family:"DM Sans",sans-serif;--txt:#424247;--muted:#737e8c;--line:#e4e7ee;--blue:#0488d0;--tint:#f6f9fb;--navy:#001e42}
.amm-dialog h3{font:700 30px/1.1 "DM Sans",sans-serif;margin:0 0 6px}
.amm-dialog p{color:var(--txt);margin:0 0 18px;font-size:14.5px}
.amm-dialog form{display:grid;gap:14px}
.amm-dialog fieldset{border:1px solid var(--line);padding:14px;margin:0;display:grid;gap:10px;border-radius:8px}
.amm-dialog legend{font-weight:500;font-size:14px;padding:0 6px}
.amm-x{position:absolute;right:14px;top:10px;font-size:28px;background:none;border:0;cursor:pointer;color:var(--navy)}
@media(max-width:960px){.amm-panel{grid-template-columns:1fr}.amm-out{padding:20px 14px}}
@media(max-width:520px){.amm-two,.amm-row{grid-template-columns:1fr}.amm-introrow{flex-direction:column}.amm-try{align-self:flex-end;margin-top:6px}.amm-dialog{padding:26px 20px}}
.amm-req{color:#d0021b}
.amm-interest{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#e9fef8;border:1px solid #bfeee0;color:#001e42;border-radius:6px;padding:10px 14px;font-size:14px}
.amm-interest[hidden]{display:none}
.amm-interest button{background:none;border:0;font-size:22px;line-height:1;cursor:pointer;color:#001e42}
.amm-note{margin:-2px 0 0;font-size:13.5px;color:var(--muted)}
.amm-val + .amm-chips{margin-top:10px}

.amm-split,.amm-miles{margin-top:22px}
.amm-split h5,.amm-miles h5{font:700 15px "DM Sans",sans-serif;color:var(--navy);margin:0 0 10px}
.amm-bar{display:flex;height:14px;border-radius:7px;overflow:hidden;background:#e4e7ee}
.amm-bar i{display:block;height:100%}
.amm-keys{display:flex;gap:6px 18px;flex-wrap:wrap;margin-top:10px;font-size:13.5px;color:var(--txt)}
.amm-keys i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}
.amm-keys b{color:var(--navy);font-weight:700}
.amm-miles table{width:100%;border-collapse:collapse;font-size:14.5px;background:rgba(255,255,255,.75);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.amm-miles th{font-weight:600;font-size:12.5px;text-align:right;color:var(--muted);padding:9px 12px;border-bottom:1px solid var(--line)}
.amm-miles th:first-child,.amm-miles td:first-child{text-align:left}
.amm-miles td{text-align:right;padding:9px 12px;border-bottom:1px solid #eef0f4;font-variant-numeric:tabular-nums;color:var(--navy)}
.amm-miles tr:last-child td{border-bottom:0;font-weight:700}
.amm-miles td em{font-style:normal;font-size:12px;color:var(--orange);font-weight:600}
