.calculator-icon{background:linear-gradient(145deg,#53667e,#263952);color:#fff}.calculator-widget{width:390px;max-height:var(--widget-room,calc(100svh - 200px));display:flex;flex-direction:column;overflow:hidden}.calculator-widget .widget-head{flex-shrink:0}.calculator-widget .widget-actions svg{height:19px;width:19px}.calculator-widget #calc-history-toggle{position:relative;display:grid;place-items:center}.calculator-widget #calc-history-toggle.has-records:after{content:'';width:4px;height:4px;border-radius:50%;background:var(--accent);position:absolute;right:3px;top:3px}.calc-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:2px 16px 10px;flex-shrink:0}.calc-tabs button{border:0;border-radius:10px;background:transparent;font-size:12px;font-weight:550;color:var(--muted);height:35px}.calc-tabs button.active{background:var(--surface2);color:var(--ink)}.calc-panel{overflow:auto;min-height:0;padding:0 20px 20px;overscroll-behavior:contain}.calc-display{position:relative;padding:17px 36px 18px 0;min-height:109px;text-align:right}.calc-display>span:first-child{display:block;min-height:19px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.calc-display output{display:block;font-size:43px;letter-spacing:-1.8px;font-weight:450;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.35;user-select:text}.calc-display output.small-number{font-size:31px}.calc-display-copy,.calc-backspace{position:absolute;right:-2px;border:0;background:transparent;color:var(--muted);font-size:20px;width:32px;height:32px;border-radius:8px}.calc-display-copy{top:12px}.calc-backspace{bottom:16px}.calc-display-copy:hover,.calc-backspace:hover{background:var(--surface2);color:var(--ink)}#basic-memory{position:absolute;left:3px;bottom:28px;font-size:10px;font-weight:700;color:var(--accent)}.calc-memory{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:9px}.calc-memory button{height:30px;background:transparent;border:0;border-radius:9px;font-size:11px;color:var(--muted)}.calc-memory button:hover{background:var(--surface2)}.calc-keypad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.calc-keypad button{height:53px;border:1px solid var(--line);border-radius:15px;background:var(--field);color:var(--ink);font-size:23px;font-weight:450;box-shadow:0 2px 3px #00000004;transition:transform .08s,background .1s}.calc-keypad button:nth-child(-n+3){font-size:17px;background:var(--surface2)}.calc-keypad button.operator{background:color-mix(in srgb,var(--accent) 10%,var(--paper));color:var(--accent);border-color:transparent}.calc-keypad button.pending{background:var(--accent);color:var(--paper)}.calc-keypad button.equals{background:#3478f6;color:white;border-color:#3478f6;font-size:27px}.calc-keypad button.zero{grid-column:span 2}.calc-keypad button:active{transform:scale(.94)}.calc-keypad button:hover{filter:brightness(.98)}
.calc-segment{display:flex;gap:4px;background:var(--surface2);padding:4px;border-radius:12px;margin:4px 0 19px}.calc-segment button{flex:1;min-height:31px;background:transparent;border:0;border-radius:9px;color:var(--muted);font-size:12px;white-space:nowrap}.calc-segment button.active{background:var(--paper);color:var(--ink);box-shadow:0 2px 5px #00000009;font-weight:600}.calc-form{display:flex;flex-direction:column;gap:14px}.calc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:11px}.calc-field{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:11px;color:var(--muted)}.calc-field select{font-size:12px;min-height:43px;padding:10px;border-radius:11px}.calc-input{display:flex;align-items:center;background:var(--field);border:1px solid var(--line);border-radius:12px;min-height:45px;overflow:hidden}.calc-input:focus-within{outline:2px solid var(--accent);outline-offset:2px}.calc-input input{background:transparent!important;border:0!important;padding:11px 10px;min-width:0;width:100%;font-size:17px!important;color:var(--ink);text-align:right;outline:0!important;box-shadow:none;font-variant-numeric:tabular-nums}.calc-input i{font-style:normal;font-size:12px;padding-right:12px;white-space:nowrap}.calc-presets{display:flex;gap:5px;justify-content:flex-end;margin-top:-6px}.calc-presets button{background:var(--surface2);border:0;border-radius:20px;font-size:10px;color:var(--muted);padding:6px 10px;min-height:29px}.calc-presets button:hover{color:var(--accent)}.calc-finance-result{position:relative;border-top:1px solid var(--line);margin-top:21px;padding:18px 27px 12px 0}.calc-finance-result>span{display:block;font-size:11px;color:var(--muted);margin-bottom:9px}.calc-finance-result output{display:block;font-size:31px;letter-spacing:-1.2px;font-weight:570;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;color:var(--accent);line-height:1.3}.calc-finance-result .calc-display-copy{top:14px}#calc-breakdown>div{display:flex;justify-content:space-between;gap:10px;font-size:11px;line-height:1.9;padding:4px 0;color:var(--muted)}#calc-breakdown strong{font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}.calc-error{font-size:11px;line-height:1.65;color:#d65c72;margin:6px 0}.calc-error:empty{display:none}.calc-primary,.calc-small-primary{border:0;border-radius:12px;background:#3478f6;color:white;font-size:12px;font-weight:600;min-height:43px;padding:10px 16px}.calc-primary{width:100%;margin-top:13px}.calc-note{font-size:10px;color:var(--muted);line-height:1.75;margin:12px 0 0}.calc-extra>summary,#loan-schedule>summary{font-size:11px;color:var(--muted);cursor:pointer;min-height:32px;padding:7px 0}.calc-extra[open]>summary{margin-bottom:6px}#loan-schedule{border-top:1px solid var(--line);margin-top:16px}.calc-schedule-wrap{overflow:auto;max-height:230px}.calc-schedule-wrap table{width:100%;border-collapse:collapse;font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums}.calc-schedule-wrap th{font-weight:500;color:var(--muted)}.calc-schedule-wrap th,.calc-schedule-wrap td{text-align:right;padding:9px 4px;border-bottom:1px solid var(--line)}
.calc-fx{padding-top:7px}.calc-fx-card{border:1px solid var(--line);border-radius:18px;background:var(--field);padding:16px}.calc-fx-card.destination{border-color:color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--accent) 4%,var(--paper))}.calc-currency-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted)}.calc-currency-label select{border:0;background:transparent;width:auto;max-width:75%;min-height:32px;padding:3px 18px 3px 2px;font-size:12px;color:var(--ink);font-weight:600}.calculator-widget input.calc-fx-amount{font-size:32px;padding:9px 0 0;border:0;background:transparent;min-height:54px;border-radius:0;letter-spacing:-1px;font-variant-numeric:tabular-nums;outline-offset:4px}.calc-swap{display:block;position:relative;z-index:1;width:34px;height:34px;margin:-4px auto;border:1px solid var(--line);border-radius:50%;background:var(--paper);font-size:20px;color:var(--accent)}.calc-fx-info{display:flex;flex-direction:column;gap:6px;padding:19px 1px 17px;font-size:11px}.calc-fx-info strong{font-weight:550;font-variant-numeric:tabular-nums}.calc-fx-info>span{font-size:10px;color:var(--muted)}.calc-fx-actions{display:flex;justify-content:space-between;align-items:center;gap:10px}.calc-text-button{border:0;background:transparent;font-size:11px;color:var(--muted);min-height:36px;padding:5px 0}.calc-text-button:hover{color:var(--accent)}.calc-fx-source{display:block;font-size:9px;color:var(--muted);margin-top:13px;text-decoration:underline;text-underline-offset:3px}
.calc-history-panel{min-height:280px}.calc-history-heading{display:flex;justify-content:space-between;align-items:center;padding:5px 0 9px}.calc-history-heading>strong{font-size:13px;font-weight:600}.calc-history-list{list-style:none;padding:0;margin:0}.calc-history-list li{display:flex;align-items:center;border-bottom:1px solid var(--line);gap:8px}.calc-history-recall{flex:1;min-width:0;text-align:left;border:0;background:transparent;padding:14px 0;color:var(--ink)}.calc-history-recall small{display:block;font-size:10px;color:var(--muted);line-height:1.7}.calc-history-recall>span{display:block;font-size:11px;line-height:1.6;margin:5px 0;overflow-wrap:anywhere}.calc-history-recall>strong{display:block;font-size:18px;font-weight:550;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.calc-history-recall:hover>strong{color:var(--accent)}.calc-history-copy{border:1px solid var(--line);background:var(--surface2);border-radius:10px;padding:8px 10px;font-size:10px;min-height:36px;color:var(--muted)}.calc-history-empty{font-size:13px;color:var(--muted);padding:62px 0;text-align:center}
@media(max-width:760px){.calculator-widget{width:min(390px,calc(100vw - 24px))}.calculator-widget .widget-head{height:40px;min-height:40px;font-size:12px}.calculator-widget .widget-actions button{min-width:36px;min-height:36px}.calc-tabs{padding:0 12px 6px;gap:3px}.calc-tabs button{height:29px;font-size:11px}.calc-panel{padding:0 14px 14px}.calc-display{min-height:67px;padding-top:6px;padding-bottom:7px}.calc-display>span:first-child{min-height:15px;font-size:10px}.calc-display output{font-size:34px;line-height:1.2}.calc-display output.small-number{font-size:26px}.calc-display-copy{top:0}.calc-backspace{bottom:5px}.calc-display-copy,.calc-backspace{height:29px}#basic-memory{bottom:16px}.calc-memory{margin-bottom:5px;gap:3px}.calc-memory button{height:23px;font-size:10px}.calc-keypad{gap:4px}.calc-keypad button{height:37px;font-size:20px;border-radius:11px}.calc-keypad button:nth-child(-n+3){font-size:15px}.calc-keypad button.equals{font-size:24px}.calc-form{gap:12px}.calc-segment{margin-bottom:14px}.calc-input input{font-size:16px!important;min-height:42px}.calc-field select{font-size:16px}.calc-finance-result output{font-size:28px}.calc-fx-card{padding:12px 14px}.calc-currency-label select{font-size:12px;max-width:80%}.calculator-widget input.calc-fx-amount{font-size:28px;min-height:46px}.calc-fx-info{padding:15px 0;font-size:11px}.calc-fx-info>span,.calc-note{font-size:11px}.calc-history-copy{min-height:40px}.calc-history-recall>strong{font-size:17px}.dock{grid-template-columns:repeat(7,minmax(0,1fr));column-gap:4px}.dock .app-icon{width:min(40px,calc((100vw - 72px)/7));height:min(40px,calc((100vw - 72px)/7));border-radius:12px}.dock>button{font-size:9px;letter-spacing:-.3px}.dock>button>span:last-child{white-space:nowrap}.calc-fx-source{font-size:10px}}
@media(max-width:760px) and (max-height:700px){.calc-keypad button{height:34px}.calc-display{min-height:61px}.calc-display output{font-size:31px}.calc-panel.calc-basic{padding-bottom:8px}.calc-memory button{height:21px}.calc-memory{margin-bottom:4px}}
@media(prefers-reduced-motion:reduce){.calc-keypad button{transition:none}}
