@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap'); :root { --tx-navy:#0b2545; --tx-accent:#D55E00; --tx-ink:#16202e; --tx-muted:#6b7686; --tx-line:#e8edf3; --tx-soft:#f6f8fb; } html, body, [class*="css"], .stApp, button, input, textarea, select { font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; } .stApp {background:#fbfcfe;} [data-testid="stHeader"] {background:transparent;} .block-container {padding-top:2.4rem; padding-bottom:3.5rem; max-width:1280px;} h1, h2, h3 {letter-spacing:-0.02em; color:var(--tx-ink);} /* hero ------------------------------------------------------------- */ .tx-hero-title {margin:0; font-size:2.7rem; font-weight:800; line-height:1.04; background:linear-gradient(92deg,#0b2545 0%,#1d4e89 70%); -webkit-background-clip:text; background-clip:text; color:transparent;} .tx-sub {color:var(--tx-muted); font-size:1.1rem; line-height:1.5; max-width:660px; margin:.7rem 0 1.1rem;} .tx-pill {display:inline-block; padding:5px 13px; border-radius:999px; background:#fff; border:1px solid var(--tx-line); color:#33405a; font-size:.78rem; font-weight:600; margin:0 8px 8px 0; box-shadow:0 1px 2px rgba(16,32,50,.04);} /* cards (st.container(border=True)) --------------------------------- */ [data-testid="stVerticalBlockBorderWrapper"] { background:#fff; border:1px solid var(--tx-line) !important; border-radius:18px !important; padding:1.4rem 1.5rem !important; box-shadow:0 1px 2px rgba(16,32,50,.04), 0 10px 30px rgba(16,32,50,.05); counter-reset:txstep;} /* accordion sections inside the config card ------------------------- */ [data-testid="stVerticalBlockBorderWrapper"] [data-testid="stExpander"] { border-bottom:1px solid var(--tx-line);} [data-testid="stVerticalBlockBorderWrapper"] [data-testid="stExpander"] details { border:none !important; box-shadow:none !important; background:transparent !important;} [data-testid="stVerticalBlockBorderWrapper"] [data-testid="stExpander"] summary { padding:.85rem .15rem; font-weight:700; font-size:1.04rem; color:var(--tx-ink); transition:opacity .12s ease;} [data-testid="stVerticalBlockBorderWrapper"] [data-testid="stExpander"] summary:hover { opacity:.65;} [data-testid="stVerticalBlockBorderWrapper"] [data-testid="stExpander"] summary::before { counter-increment:txstep; content:counter(txstep); display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; margin-right:.65rem; border-radius:8px; font-size:.82rem; font-weight:700; color:#fff; background:linear-gradient(135deg,#0b2545,#1d4e89);} /* inputs ----------------------------------------------------------- */ [data-baseweb="select"] > div, .stTextInput input, [data-testid="stFileUploaderDropzone"] { border-radius:11px !important;} [data-baseweb="select"] > div {border-color:var(--tx-line) !important;} /* buttons ---------------------------------------------------------- */ .stButton > button, .stDownloadButton > button {border-radius:12px; font-weight:600; transition:transform .12s ease, box-shadow .12s ease;} .stButton > button[kind="primary"], [data-testid="stBaseButton-primary"] { background:var(--tx-accent); border:none; box-shadow:0 5px 16px rgba(213,94,0,.26);} .stButton > button[kind="primary"]:hover, [data-testid="stBaseButton-primary"]:hover { transform:translateY(-1px); box-shadow:0 8px 22px rgba(213,94,0,.32);} /* metrics ---------------------------------------------------------- */ div[data-testid="stMetric"] {background:var(--tx-soft); border:1px solid var(--tx-line); border-radius:14px; padding:9px 11px;} div[data-testid="stMetricLabel"] p {font-size:.78rem; line-height:1.15; white-space:normal;} div[data-testid="stMetricValue"] {font-weight:700; font-size:1.25rem;} div[data-testid="stMetricDelta"] {font-size:.78rem;} /* tabs ------------------------------------------------------------- */ .stTabs [data-baseweb="tab-list"] {gap:6px; border-bottom:none; margin-bottom:.6rem;} .stTabs [data-baseweb="tab"] {font-size:.98rem; font-weight:600; border-radius:11px; padding:8px 16px; background:transparent; color:var(--tx-muted);} .stTabs [data-baseweb="tab"][aria-selected="true"] {background:#fff; color:var(--tx-ink); border:1px solid var(--tx-line); box-shadow:0 1px 3px rgba(16,32,50,.06);} .stTabs [data-baseweb="tab-highlight"], .stTabs [data-baseweb="tab-border"] {display:none;} /* sidebar ---------------------------------------------------------- */ [data-testid="stSidebar"] {background:#fff; border-right:1px solid var(--tx-line);}