 :root{
      --bg:#f8fafc; --card:#ffffff; --accent:#0ea5e9; --muted:#64748b; --success:#16a34a;
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
    }
    body{background:var(--bg); margin:0; color:#0f172a; -webkit-font-smoothing:antialiased;}
    .container{max-width:980px; margin:28px auto; padding:22px;}
    .card{background:var(--card); border-radius:12px; box-shadow:0 8px 30px rgba(2,6,23,0.08); padding:22px;}
    header h1{margin:0; font-size:22px; line-height:1.3;}
    header p.subtitle{margin:6px 0 0; color:var(--muted); font-size:14px;}
    .tabs{display:flex; gap:10px; margin:18px 0;}
    .tab{padding:10px 14px; border-radius:8px; cursor:pointer; background:#eef2f7; color:#1f2937; border:1px solid transparent; font-weight:600;}
    .tab.active{background:var(--accent); color:#fff; box-shadow:0 6px 18px rgba(14,165,233,0.14);}
    .grid{display:grid; grid-template-columns:1fr 320px; gap:18px;}
    @media (max-width:880px){ .grid{grid-template-columns:1fr; } .aside{order:2;} }
    .form{padding:12px 8px;}
    .field{margin-bottom:12px;}
    label{display:block; font-size:13px; color:#0f172a; margin-bottom:6px; font-weight:600;}
    input[type=number], input[type=url]{width:100%; padding:10px 12px; border-radius:8px; border:1px solid #e6eef6; font-size:14px;}
    .row{display:flex; gap:10px; flex-wrap:wrap;}
    .btn{padding:12px 14px; background:var(--accent); color:white; border-radius:10px; border:none; cursor:pointer; font-weight:700;}
    .btn.secondary{background:#111827;}
    .results{background:#f1fbfa; padding:16px; border-radius:10px; text-align:center; border:1px solid rgba(16,185,129,0.08);}
    .results h3{margin:0 0 6px; font-size:15px;}
    .money{font-size:28px; font-weight:800; color:var(--success);}
    .details{font-size:13px; color:var(--muted); margin-top:6px;}
    .tips{background:#fbfbff; padding:14px; border-radius:10px; font-size:14px; color:var(--muted);}
    .preset-grid{display:flex; gap:8px; flex-wrap:wrap;}
    .chip{padding:8px 10px; background:#eef2f7; border-radius:999px; cursor:pointer; font-weight:600; border:1px solid transparent;}
    .chip:focus{outline:2px solid var(--accent);}
    footer{margin-top:18px; font-size:13px; color:var(--muted); text-align:center;}
    .note{font-size:13px; color:var(--muted); margin-top:8px;}
    .share-row{display:flex; gap:8px; margin-top:10px; justify-content:center; flex-wrap:wrap;}
    .error{color:#dc2626; font-size:12px; margin-top:4px;}