@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root,[data-theme=light]{--text: #1a1a2e;--text-secondary: #64748b;--bg: #f8fafc;--card-bg: #fff;--input-bg: #fff;--border: #e2e8f0;--border-strong: #cbd5e1;--primary: #2563eb;--primary-hover: #1d4ed8;--badge-bg: #e8f4fd;--badge-text: #0369a1;--region-bg: #f8fafc;--hover: rgba(0, 0, 0, .03);--total-bg: #f8fafc;--toggle-bg: #f1f5f9;--popular-bg: #f0f9ff;--secondary-bg: #f1f5f9}[data-theme=dark]{--text: #e2e8f0;--text-secondary: #94a3b8;--bg: #0f172a;--card-bg: #1e293b;--input-bg: #334155;--border: #334155;--border-strong: #475569;--primary: #3b82f6;--primary-hover: #60a5fa;--badge-bg: #1e3a5f;--badge-text: #7dd3fc;--region-bg: #1e293b;--hover: rgba(255, 255, 255, .05);--total-bg: #1e293b;--toggle-bg: #334155;--popular-bg: #1e293b;--secondary-bg: #334155}[data-theme=dark] body{background:var(--bg);color:var(--text)}.madrid-calculator{max-width:1200px;margin:0 auto;padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text)}.calc-header{text-align:center;margin-bottom:32px}.header-top{display:flex;justify-content:space-between;align-items:flex-start}.header-top>div:first-child{width:40px}.theme-toggle{width:40px;height:40px;border:1px solid var(--border);border-radius:10px;background:var(--card-bg);cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.theme-toggle:hover{border-color:var(--primary)}.calc-header h1{font-size:1.75rem;font-weight:700;margin:0 0 4px}.calc-header .subtitle{color:var(--text-secondary);font-size:.95rem;margin:0 0 12px}.rate-badge{display:inline-block;background:var(--badge-bg, #e8f4fd);color:var(--badge-text, #0369a1);padding:4px 12px;border-radius:16px;font-size:.85rem;font-weight:500}.calc-form{background:var(--card-bg, #fff);border:1px solid var(--border, #e2e8f0);border-radius:12px;padding:24px;margin-bottom:24px}.form-group{margin-bottom:16px}.form-group label,.section-label{display:block;font-weight:600;margin-bottom:6px;font-size:.9rem}.form-group select,.form-group input[type=number]{width:100%;padding:10px 12px;border:1px solid var(--border, #cbd5e1);border-radius:8px;font-size:.95rem;background:var(--input-bg, #fff);color:inherit}.form-group select:focus,.form-group input:focus{outline:none;border-color:var(--primary, #2563eb);box-shadow:0 0 0 3px #2563eb26}.hint{display:block;font-size:.8rem;color:var(--text-secondary, #94a3b8);margin-top:4px}.form-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:.9rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary, #2563eb)}.country-selector{margin-bottom:16px}.origin-note{font-size:.8rem;color:var(--text-secondary, #64748b);margin:0 0 10px}.popular-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:12px;padding:8px 12px;background:var(--popular-bg, #f0f9ff);border-radius:8px}.popular-label{font-size:.8rem;color:var(--text-secondary, #64748b);font-weight:500;margin-right:4px}.popular-btn{padding:4px 10px;border:1px solid var(--border, #cbd5e1);border-radius:14px;background:#fff;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s}.popular-btn:hover{border-color:var(--primary, #2563eb);color:var(--primary, #2563eb)}.popular-btn.active{background:var(--primary, #2563eb);color:#fff;border-color:var(--primary, #2563eb)}.selected-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.tag{display:inline-flex;align-items:center;gap:4px;background:var(--primary, #2563eb);color:#fff;padding:3px 10px;border-radius:14px;font-size:.8rem;cursor:pointer;transition:opacity .15s}.tag:hover{opacity:.85}.tag-code{opacity:.7;font-size:.75rem}.tag-remove{margin-left:2px;font-size:1rem;line-height:1}.btn-clear{background:none;border:1px solid var(--border, #cbd5e1);border-radius:14px;padding:3px 10px;font-size:.8rem;cursor:pointer;color:var(--text-secondary, #64748b)}.country-columns{display:flex;gap:0;min-height:350px}.column-alpha,.column-regions{flex:1;min-width:0}.column-header{font-weight:600;font-size:.85rem;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px}.country-search{width:100%;padding:8px 10px;border:1px solid var(--border, #cbd5e1);border-radius:8px;font-size:.9rem;margin-bottom:8px;background:var(--input-bg, #fff);color:inherit;box-sizing:border-box}.country-search:focus{outline:none;border-color:var(--primary, #2563eb);box-shadow:0 0 0 3px #2563eb26}.country-list{max-height:320px;overflow-y:auto;border:1px solid var(--border, #e2e8f0);border-radius:8px;padding:4px}.region-list{max-height:360px;overflow-y:auto}.column-divider{display:flex;flex-direction:column;align-items:center;justify-content:center;width:48px;flex-shrink:0;padding:0 4px}.divider-line{flex:1;width:1px;background:var(--border, #cbd5e1)}.divider-text{padding:8px 0;font-size:.8rem;color:var(--text-secondary, #94a3b8);font-style:italic}.region-group{border:1px solid var(--border, #e2e8f0);border-radius:8px;margin-bottom:4px;overflow:hidden}.region-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:var(--region-bg, #f8fafc)}.region-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.85rem}.region-count{font-weight:400;color:var(--text-secondary, #94a3b8);font-size:.75rem;margin-left:4px}.btn-expand{background:none;border:none;cursor:pointer;font-size:.8rem;color:var(--text-secondary, #94a3b8);padding:2px 6px}.region-countries{padding:2px 10px 6px;display:flex;flex-direction:column;gap:1px}.country-item{display:flex;align-items:center;gap:6px;padding:3px 4px;font-size:.83rem;cursor:pointer;border-radius:4px}.country-item:hover{background:var(--hover, rgba(0, 0, 0, .03))}.country-item .country-name{flex:1}.country-item .country-code{color:var(--text-secondary, #94a3b8);font-size:.75rem;font-family:monospace}.no-results{text-align:center;color:var(--text-secondary, #94a3b8);padding:16px}.form-actions{display:flex;gap:12px;margin-top:20px}.btn-primary{padding:12px 32px;background:var(--primary, #2563eb);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-primary:hover:not(:disabled){background:var(--primary-hover, #1d4ed8)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:12px 24px;background:var(--secondary-bg, #f1f5f9);color:var(--text, #334155);border:1px solid var(--border, #cbd5e1);border-radius:8px;font-size:1rem;cursor:pointer}.error-message{margin-top:12px;padding:10px 14px;background:#fef2f2;color:#dc2626;border-radius:8px;font-size:.9rem}.calc-results{background:var(--card-bg, #fff);border:1px solid var(--border, #e2e8f0);border-radius:12px;padding:24px}.total-block{text-align:center;margin-bottom:24px;padding-bottom:20px;border-bottom:2px solid var(--border, #e2e8f0)}.total-block h2{margin:0 0 8px;font-size:1.1rem;color:var(--text-secondary, #64748b)}.total-amount{font-size:2.2rem;font-weight:700;color:var(--primary, #2563eb)}.savings-badge{display:inline-block;margin-top:8px;padding:4px 14px;background:#dcfce7;color:#15803d;border-radius:16px;font-size:.85rem;font-weight:500}.rate-info{margin-top:8px;font-size:.8rem;color:var(--text-secondary, #94a3b8)}.variants-toggle{display:flex;gap:4px;margin-bottom:16px;padding:3px;background:var(--toggle-bg, #f1f5f9);border-radius:8px;width:fit-content}.toggle-btn{padding:6px 16px;border:none;border-radius:6px;background:transparent;font-size:.85rem;cursor:pointer;color:var(--text-secondary, #64748b);transition:all .15s}.toggle-btn.active{background:#fff;color:var(--text, #1a1a2e);font-weight:600;box-shadow:0 1px 3px #0000001a}.variant-block{border:1px solid var(--border, #e2e8f0);border-radius:10px;padding:16px;margin-bottom:16px;position:relative}.variant-best{border-color:#86efac;background:#f0fdf4}.variant-other{opacity:.7;background:var(--card-bg, #fafafa)}.variant-badge{position:absolute;top:-10px;left:16px;background:#16a34a;color:#fff;font-size:.75rem;font-weight:600;padding:2px 10px;border-radius:10px}.variant-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.variant-label{font-size:.9rem;font-weight:500}.variant-total{font-size:1.3rem;font-weight:700;color:var(--primary, #2563eb)}.variant-best .variant-total{color:#16a34a}.results-table,.breakdown-table{width:100%;border-collapse:collapse;font-size:.85rem}.results-table th,.results-table td,.breakdown-table td{padding:6px 10px;text-align:left;border-bottom:1px solid var(--border, #f1f5f9)}.results-table th{font-weight:600;color:var(--text-secondary, #64748b);font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.results-table .amount,.results-table .subtotal{text-align:right;font-family:SF Mono,Fira Code,monospace;font-weight:500}.designation-type{font-size:.75rem;color:var(--text-secondary, #94a3b8)}.total-row{background:var(--total-bg, #f8fafc)}.total-row td{border-top:2px solid var(--border, #e2e8f0);border-bottom:none}.admin-breakdown{margin-top:16px;padding-top:16px;border-top:1px dashed var(--border, #e2e8f0)}.admin-breakdown h3,.admin-breakdown h4{margin:0 0 10px;font-size:.9rem}.breakdown-table td:last-child{text-align:right;font-family:SF Mono,Fira Code,monospace;font-weight:500}.formula-note{margin-top:10px;font-size:.75rem;color:var(--text-secondary, #94a3b8);font-style:italic}@media (max-width: 768px){.madrid-calculator{padding:12px}.calc-header h1{font-size:1.3rem}.total-amount{font-size:1.6rem}.country-columns{flex-direction:column}.column-divider{flex-direction:row;width:100%;height:auto;padding:8px 0}.divider-line{height:1px;width:auto;flex:1}.divider-text{padding:0 12px}.results-table{font-size:.75rem}.results-table th,.results-table td{padding:4px 6px}.form-row{flex-direction:column;gap:8px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d9d9d9;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#bfbfbf}.ant-layout-sider,.ant-menu,.ant-card,.ant-table{transition:all .3s ease!important}
