:root{--bg:#f7f8f6;--card:#fff;--ink:#14201d;--mute:#5b6a66;--line:#dfe5e2;--brand:#0f766e;--brand-ink:#fff;--accent:#f59e0b;--r:14px}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--brand)}
.wrap{max-width:1080px;margin:0 auto;padding:0 16px}
.top{background:#fff;border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;height:60px}
.logo{font-weight:800;font-size:20px;text-decoration:none;color:var(--ink);letter-spacing:-.02em}
.logo b{color:var(--brand)}
.top nav{display:flex;gap:16px;font-size:14px;white-space:nowrap}
.top nav a{color:var(--mute);text-decoration:none}
.hero{padding:40px 0 20px}
.hero h1{font-size:clamp(28px,5vw,44px);line-height:1.1;margin:0 0 12px;letter-spacing:-.03em}
.hero p{font-size:18px;color:var(--mute);max-width:700px;margin:0}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;margin:16px 0}
.h{font-size:18px;margin:0 0 14px}
.modes{display:flex;gap:6px;margin-top:20px}
.modes button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 16px;font:inherit;font-weight:600;cursor:pointer;color:var(--mute)}
.modes button[aria-selected=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.tool-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}
.tool-grid .card{margin:16px 0 0}
.fields{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.f{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--mute);font-weight:600}
.f.wide,.wide{grid-column:1/-1}
.f i{font-style:normal;display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--line);font-size:11px;cursor:help}
input,select,textarea{font:inherit;font-size:16px;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:9px 11px;background:#fff;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--brand);outline-offset:0;border-color:transparent}
input[type=color]{padding:2px;height:42px}
.chk{display:flex;align-items:center;gap:8px;font-size:14px}
.chk input{width:auto}
.addons{border:1px solid var(--line);border-radius:10px;display:flex;flex-wrap:wrap;gap:8px 18px;padding:10px 12px}
.addons legend{font-size:13px;color:var(--mute);font-weight:600;padding:0 4px}
.results{position:sticky;top:12px;align-self:start}
.big{font-size:44px;font-weight:800;letter-spacing:-.03em;color:var(--brand);line-height:1.1}
.big small{font-size:16px;color:var(--mute);font-weight:600}
.sub{margin:4px 0;color:var(--mute);font-size:14px}
.results table{width:100%;border-collapse:collapse;margin-top:12px;font-size:14px}
.results td{padding:7px 0;border-top:1px solid var(--line)}
.results td:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.note{font-size:13px;color:var(--mute)}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:10px;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}
.btn.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}
.btn:hover{filter:brightness(.96)}
.tag{font-size:10px;background:var(--accent);color:#111;border-radius:4px;padding:1px 5px;vertical-align:middle;letter-spacing:.04em}
.is-pro .tag{display:none}
.pro-only input{opacity:.5;pointer-events:none}
.is-pro .pro-only input{opacity:1;pointer-events:auto}
.pro{background:linear-gradient(135deg,#ecfdf5,#fff);border-color:#a7f3d0}
.pro-cols{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:start}
.price{display:inline-block;background:var(--ink);color:#fff;border-radius:999px;padding:2px 10px;font-size:14px;margin-left:6px}
.ticks{padding:0;list-style:none;margin:0 0 16px}
.ticks li{padding-left:24px;position:relative;margin:4px 0}
.ticks li:before{content:"✓";position:absolute;left:0;color:var(--brand);font-weight:800}
#licForm .btn{margin-top:8px}
.saved{list-style:none;padding:0;margin:0}
.saved li{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);padding:6px 0;font-size:14px}
.saved li button{background:none;border:0;font:inherit;color:var(--brand);cursor:pointer;text-align:left;flex:1;padding:0}
.saved li span{color:var(--mute)}
.saved .x{flex:0;color:var(--mute);font-size:18px}
.content{max-width:760px}
.content h2{margin-top:28px}
.grid-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:0;list-style:none}
.grid-links a{display:block;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;text-decoration:none;color:var(--ink);font-weight:600}
.grid-links a:hover{border-color:var(--brand)}
.faq details{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:8px 0}
.faq summary{font-weight:700;cursor:pointer}
.foot{border-top:1px solid var(--line);margin-top:48px;padding:24px 0;color:var(--mute);font-size:14px}
.foot .wrap{display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between}
.foot a{color:var(--mute)}
#proposal{display:none}
/* Proposal (print) */
.pp{font:14px/1.5 Georgia,"Times New Roman",serif;color:#111;max-width:760px;margin:0 auto}
.pp header{display:flex;justify-content:space-between;gap:24px;border-bottom:4px solid var(--pc);padding-bottom:14px}
.pp h1{font:800 24px/1.2 system-ui,sans-serif;margin:0;color:var(--pc)}
.pp header p{margin:4px 0 0;color:#444}
.pp-logo{max-height:64px;max-width:220px;display:block;margin-bottom:6px}
.pp-meta{text-align:right;font-size:13px;color:#444}
.pp-meta strong{font:700 16px system-ui,sans-serif;color:#111}
.pp-to{margin:18px 0;padding:12px 14px;background:#f4f6f5;border-left:4px solid var(--pc)}
.pp-to span{display:block;font:600 11px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#666}
.pp h2{font:700 13px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--pc);margin:20px 0 6px}
.pp ul{margin:0;padding-left:20px}
.pp-price{width:100%;border-collapse:collapse}
.pp-price td{padding:8px 0;border-bottom:1px solid #ddd}
.pp-price td:last-child{text-align:right;font-variant-numeric:tabular-nums}
.pp-price .tot td{font-weight:700;font-size:17px;border-bottom:2px solid var(--pc)}
.pp-sign{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:48px}
.pp-sign div{border-top:1px solid #333;padding-top:6px;font-size:12px;color:#444}
.pp-wm{margin-top:36px;text-align:center;font:12px system-ui,sans-serif;color:#888}
@media print{
  body{background:#fff}
  body>*:not(main),main>*:not(.tool),.tool>*:not(#bb-tool),#bb-tool>*:not(#proposal){display:none!important}
  #proposal{display:block!important}
  .wrap{padding:0}
  @page{margin:16mm}
}
@media (max-width:760px){
  .tool-grid,.pro-cols{grid-template-columns:1fr}
  .results{position:static}
  .top nav a.hide-sm{display:none}
}
@media (max-width:440px){.fields{grid-template-columns:1fr}.big{font-size:36px}}
