/*
 * GOXA Kalkulator v3.3
 * Manrope (tytuł) · Exo 2 (UI) · Raspberry · Glassmorphism
 */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700;800&family=Exo+2:wght@200;300;400;500;600&display=swap');

.goxa-calc-wrapper {
    --g-raspberry:     #E8325A;
    --g-raspberry-dim: rgba(232,50,90,0.08);
    --g-raspberry-mid: rgba(232,50,90,0.30);
    --g-text:          #FFFFFF;
    --g-text-sec:      #C0C0D8;
    --g-text-dim:      #8A8A9E;
    --g-input-bg:      rgba(3,3,6,0.70);
    --g-surface:       rgba(3,3,6,0.50);
    --g-border:        rgba(255,255,255,0.08);
    --g-border-dim:    rgba(255,255,255,0.05);
    --g-font-ui:       'Exo 2', sans-serif;
    --g-font-d:        'Manrope', sans-serif;
    --g-tr:            0.18s ease;

    box-sizing:              border-box;
    background:              rgba(5,5,8,0.52);
    backdrop-filter:         blur(32px);
    -webkit-backdrop-filter: blur(32px);
    border:                  1px solid var(--g-border);
    border-top:              2px solid var(--g-raspberry);
    color:                   var(--g-text);
    font-family:             var(--g-font-ui);
    font-size:               14px;
    padding:                 28px 22px 36px;
    max-width:               680px;
    width:                   100%;
    margin:                  0 auto;
    position:                relative;
    overflow:                hidden;
}
.goxa-calc-wrapper::after {
    content:''; position:absolute; inset:0;
    background:linear-gradient(135deg,rgba(255,255,255,0.03) 0%,transparent 55%);
    pointer-events:none;
}
.goxa-calc-wrapper *, .goxa-calc-wrapper *::before, .goxa-calc-wrapper *::after { box-sizing:inherit; }

/* NAGŁÓWEK */
.goxa-calc-header { text-align:left; margin-bottom:20px; position:relative; z-index:1; }
.goxa-calc-sup {
    display:block; font-size:11px; font-weight:600;
    color:var(--g-raspberry); letter-spacing:.28em;
    text-transform:uppercase; margin-bottom:6px;
    font-family:var(--g-font-ui);
}
.goxa-calc-title {
    display:block; font-family:var(--g-font-d);
    font-size:30px; font-weight:800; color:var(--g-text);
    letter-spacing:-.02em; line-height:1.05;
    text-shadow:0 2px 16px rgba(0,0,0,0.4);
}

/* TRYBY */
.goxa-calc-modes {
    display:flex; border-bottom:1px solid var(--g-border);
    margin-bottom:18px; position:relative; z-index:1;
}
.goxa-mode {
    flex:1; background:transparent !important; border:none;
    border-bottom:2px solid transparent;
    color:#9A9AB8 !important;
    font-family:var(--g-font-ui); font-size:11px; letter-spacing:.12em;
    text-transform:uppercase; padding:10px 8px;
    cursor:pointer; margin-bottom:-1px; outline:none; font-weight:500;
    -webkit-tap-highlight-color:transparent;
    transition:color var(--g-tr), border-color var(--g-tr);
}
.goxa-mode:hover  { color:var(--g-text) !important; background:transparent !important; }
.goxa-mode.active { color:var(--g-raspberry) !important; background:transparent !important; border-color:var(--g-raspberry); }

/* WYŚWIETLACZ */
.goxa-calc-display {
    background:var(--g-input-bg); border:1px solid var(--g-border);
    border-left:2px solid var(--g-raspberry);
    padding:14px 18px 12px; margin-bottom:12px; min-height:78px;
    display:flex; flex-direction:column; justify-content:flex-end;
    text-align:right; position:relative; z-index:1;
}
.goxa-calc-expr   { font-size:11px; color:var(--g-text-dim); min-height:14px; margin-bottom:3px; word-break:break-all; font-weight:300; }
.goxa-calc-screen { font-family:var(--g-font-ui); font-size:48px; font-weight:200; color:var(--g-text); line-height:1; word-break:break-all; transition:color var(--g-tr); letter-spacing:-.01em; }
.goxa-calc-screen.accent { color:var(--g-raspberry); }

/* PANELE */
.goxa-calc-panel        { display:none; }
.goxa-calc-panel.active { display:block; }
.goxa-calc-panel[hidden] { display:none !important; }

/* SIATKI PRZYCISKÓW */
.goxa-calc-grid.basic      { display:grid; grid-template-columns:repeat(4,1fr); gap:5px; position:relative; z-index:1; }
.goxa-calc-grid.scientific { display:grid; grid-template-columns:repeat(5,1fr); gap:4px; position:relative; z-index:1; }

/* PRZYCISKI */
.gc-btn {
    background:rgba(3,3,6,0.50); border:1px solid var(--g-border);
    color:var(--g-text) !important; font-family:var(--g-font-ui);
    font-size:19px; font-weight:300; padding:16px 6px; cursor:pointer;
    outline:none; -webkit-tap-highlight-color:transparent;
    transition:border-color var(--g-tr), background var(--g-tr);
    line-height:1;
    user-select:none; -webkit-user-select:none; -ms-user-select:none;
    touch-action:manipulation;
    display:flex; align-items:center; justify-content:center;
    width:100%; box-sizing:border-box;
}
.gc-btn:hover  { border-color:var(--g-raspberry-mid); background:rgba(3,3,6,0.50); }
.gc-btn:active { background:rgba(232,50,90,0.12); border-color:var(--g-raspberry); color:var(--g-raspberry) !important; }
.gc-btn.op:active { background:rgba(232,50,90,0.18); }
.gc-btn.eq:active { background:rgba(232,50,90,0.20); }
.goxa-calc-grid.scientific .gc-btn { font-size:14px; padding:13px 3px; }
.gc-btn.fn { color:#C0C0D8 !important; font-size:13px; font-weight:500; }
.gc-btn.fn:hover { border-color:var(--g-raspberry-mid); }
.gc-btn.op { color:var(--g-raspberry) !important; border-color:var(--g-raspberry-mid); font-weight:500; }
.gc-btn.op:hover { border-color:var(--g-raspberry); background:var(--g-raspberry-dim); }
.gc-btn.eq { background:transparent; border:1px solid var(--g-raspberry); color:var(--g-raspberry) !important; font-size:19px; margin-top:4px; font-weight:600; }
.gc-btn.eq:hover { background:var(--g-raspberry-dim); }
.span2 { grid-column:span 2; }
.span4 { grid-column:span 4; }

/* ZAKŁADKI FINANSE */
.goxa-fin-tabs {
    display:flex; margin-bottom:18px; border-bottom:1px solid var(--g-border);
    overflow-x:auto; scrollbar-width:none; position:relative; z-index:1;
}
.goxa-fin-tabs::-webkit-scrollbar { display:none; }
.goxa-fin-tab {
    background:transparent !important; border:none;
    border-bottom:2px solid transparent;
    color:#9A9AB8 !important;
    font-size:11px; letter-spacing:.12em; text-transform:uppercase;
    padding:9px 12px; cursor:pointer; white-space:nowrap;
    outline:none; font-weight:500; -webkit-tap-highlight-color:transparent;
    margin-bottom:-1px; transition:color var(--g-tr), border-color var(--g-tr);
}
.goxa-fin-tab:hover  { color:var(--g-text) !important; background:transparent !important; }
.goxa-fin-tab.active { color:var(--g-raspberry) !important; background:transparent !important; border-color:var(--g-raspberry); }

/* PANELE FINANSE */
.goxa-fin-panel        { display:none; }
.goxa-fin-panel.active { display:block; }
.goxa-fin-panel[hidden] { display:none !important; }

/* VAT TOGGLE */
.goxa-vat-mode-row { display:grid; grid-template-columns:1fr 1fr; gap:5px; margin-bottom:14px; }
.goxa-vat-mode {
    background:rgba(3,3,6,0.50); border:1px solid var(--g-border);
    color:#9A9AB8; font-family:var(--g-font-ui);
    font-size:10px; font-weight:500; letter-spacing:.1em;
    text-transform:uppercase; padding:9px 6px; cursor:pointer;
    outline:none; -webkit-tap-highlight-color:transparent;
    transition:border-color var(--g-tr), color var(--g-tr), background var(--g-tr);
}
.goxa-vat-mode.active { border-color:var(--g-raspberry); color:var(--g-raspberry); background:var(--g-raspberry-dim); }
.goxa-vat-mode:hover:not(.active) { border-color:var(--g-raspberry-mid); color:var(--g-text); }

/* TIP PRESETS */
.goxa-tip-presets { display:flex; gap:5px; margin-bottom:14px; flex-wrap:wrap; position:relative; z-index:1; }
.goxa-tip-preset {
    background:rgba(3,3,6,0.50); border:1px solid var(--g-border);
    color:#9A9AB8; font-family:var(--g-font-ui);
    font-size:10px; font-weight:500; letter-spacing:.1em;
    padding:6px 12px; cursor:pointer; outline:none;
    -webkit-tap-highlight-color:transparent;
    transition:border-color var(--g-tr), color var(--g-tr);
}
.goxa-tip-preset:hover  { border-color:var(--g-raspberry-mid); color:var(--g-raspberry); }
.goxa-tip-preset.active { border-color:var(--g-raspberry); color:var(--g-raspberry); background:var(--g-raspberry-dim); }

/* POLA FORMULARZY */
.goxa-fin-grid  { display:grid; grid-template-columns:1fr 1fr; gap:10px 16px; margin-bottom:14px; position:relative; z-index:1; }
.goxa-fin-field { display:flex; flex-direction:column; gap:5px; }
.goxa-fin-label { font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--g-text-sec); font-weight:500; }

.goxa-fin-input {
    width:100%; background:var(--g-input-bg);
    border:1px solid rgba(255,255,255,0.06);
    border-bottom:1px solid var(--g-raspberry-mid);
    color:var(--g-text); font-family:var(--g-font-ui);
    font-size:14px; font-weight:300; padding:9px 8px; outline:none;
    -webkit-appearance:none; appearance:none;
    transition:border-color var(--g-tr);
}
.goxa-fin-input:focus { border-color:var(--g-raspberry-mid); border-bottom-color:var(--g-raspberry); background:rgba(3,3,6,0.78); }
select.goxa-fin-input {
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23E8325A'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position:right 10px center; padding-right:28px; cursor:pointer;
}

/* WYNIKI */
.goxa-fin-results { border:1px solid var(--g-border); border-left:2px solid var(--g-raspberry); background:var(--g-surface); position:relative; z-index:1; }
.goxa-fin-row { display:flex; justify-content:space-between; align-items:center; padding:11px 14px; border-bottom:1px solid var(--g-border-dim); }
.goxa-fin-row[hidden] { display:none; }
.goxa-fin-row:last-child { border-bottom:none; }
.goxa-fin-row span:first-child { font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--g-text-sec); font-weight:500; }
.goxa-fin-row span:last-child  { font-size:17px; font-weight:300; color:var(--g-text); }
.goxa-fin-row.main span:last-child { font-size:26px; font-weight:200; color:var(--g-raspberry); }

/* BŁĄD */
.goxa-calc-error { margin-top:10px; font-size:11px; color:#FF4466; text-align:left; min-height:14px; position:relative; z-index:1; }

/* MOBILE */
@media (max-width:440px) {
    .goxa-calc-wrapper  { padding:22px 12px 30px; }
    .goxa-calc-title    { font-size:24px; }
    .goxa-calc-screen   { font-size:38px; }
    .gc-btn             { padding:14px 4px; font-size:17px; }
    .goxa-calc-grid.scientific .gc-btn { padding:10px 2px; font-size:11px; }
    .goxa-fin-grid      { grid-template-columns:1fr; }
    .goxa-fin-tab       { font-size:10px; padding:9px 8px; }
}

/* ── FIX: Hover malinowy z białym tekstem ── */
.gf-btn-primary:hover,
.goxa-speedtest-btn:hover {
    background: #E8325A !important;
    color:      #FFFFFF !important;
}

/* ── FIX: Przycisk EXPAND ── */
.goxa-expand-btn {
    position: absolute !important;
    top:      12px !important;
    right:    12px !important;
    max-width: calc(100% - 24px) !important;
}
