/* ===== Free tools: shared UI ===== */
.hn-tool{background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(18px,2.6vw,30px);box-shadow:0 30px 60px -42px rgba(6,22,46,.45);display:grid;gap:18px;min-width:0}
.tool-form{display:grid;gap:16px}
.tf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.tf-grid.c1{grid-template-columns:1fr}
.tf-grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tf{display:grid;gap:6px;min-width:0;align-content:start}
.tf-full{grid-column:1/-1}
.tf>label{font-weight:700;font-size:.88rem;color:var(--ink)}
.tf>label em{font-weight:500;font-style:normal;color:var(--muted)}
.tf input:not([type=checkbox]):not([type=range]):not([type=color]),.tf select,.tf textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;padding:12px 14px;font:inherit;font-size:1rem;color:var(--ink);background:#F8FAFD;transition:border-color .2s,box-shadow .2s}
.tf input,.tf select{height:48px}
.tf textarea{min-height:120px;resize:vertical;line-height:1.55}
.tf input[type=file]{height:auto;padding:12px}
.tf input[type=color]{width:100%;height:48px;border:1px solid var(--line);border-radius:12px;padding:4px;background:#fff}
.tf input[type=range]{width:100%;accent-color:var(--blue)}
.tf input:focus,.tf select:focus,.tf textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,108,208,.14);background:#fff}
.tf.bad input,.tf.bad select,.tf.bad textarea{border-color:#D64541;background:#FFF7F6}
.tf-err{color:#C0362F;font-size:.8rem;font-weight:600}.tf-err:empty{display:none}
.tf-help{color:var(--muted);font-size:.8rem}
.tf-check{display:flex;gap:10px;align-items:center;font-weight:600;font-size:.92rem;color:var(--ink);cursor:pointer}
.tf-check input{width:18px;height:18px;accent-color:var(--blue);flex:none}
.tf-affix{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:12px;background:#F8FAFD;overflow:hidden}
.tf-affix>span{display:grid;place-items:center;padding:0 12px;color:var(--muted);font-weight:700;font-size:.9rem;background:#EEF3F9;white-space:nowrap}
.tf .tf-affix input{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.tf-affix:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,108,208,.14)}
.tf-actions{display:flex;flex-wrap:wrap;gap:10px}
.tf-actions .btn{min-height:50px;padding-inline:24px}
.tool-out{display:grid;gap:14px;min-width:0}.tool-out:empty{display:none}
.tool-error{margin:0;padding:12px 14px;border-radius:12px;background:#FFF1EF;color:#B3261E;font-weight:600}
.tool-loading{display:flex;gap:12px;align-items:center;padding:16px;border-radius:12px;background:#F4F8FD;color:var(--ink);font-weight:600}
.tool-loading .spin{width:20px;height:20px;border-radius:50%;border:3px solid #C9D9EE;border-top-color:var(--blue);animation:abspin .8s linear infinite;flex:none}
.t-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(130px,100%),1fr));gap:12px}
.t-stat{border:1px solid var(--line);border-radius:16px;padding:14px 16px;display:grid;gap:4px;background:#F8FAFD}
.t-stat span{font-size:.8rem;color:var(--muted);font-weight:600}
.t-stat b{font-family:var(--f-display);font-size:1.45rem;color:var(--ink);line-height:1.15;overflow-wrap:anywhere}
.t-stat small{color:var(--muted);font-size:.78rem}
.t-stat.good{background:#ECFBF2;border-color:#BDEBD0}.t-stat.good b{color:#0E7A43}
.t-stat.warn{background:#FFF7E8;border-color:#F7DDA8}.t-stat.warn b{color:#9A5B00}
.t-stat.bad{background:#FFF1EF;border-color:#F5C6C0}.t-stat.bad b{color:#B3261E}
.t-stat.blue{background:#EEF5FD;border-color:#CFE0F5}.t-stat.blue b{color:var(--blue)}
.t-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;min-width:0}
.t-card-h{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;padding:10px 14px;background:#F4F8FD;border-bottom:1px solid var(--line)}
.t-card-h b{font-size:.92rem;color:var(--ink);margin-right:auto}
.t-meta{font-family:var(--f-mono);font-size:.74rem;color:var(--muted)}
.t-card-b{padding:14px 16px;color:var(--ink);line-height:1.6;overflow-wrap:anywhere}
.t-card-b.pre{white-space:pre-wrap}
.t-copy{border:1px solid var(--line);background:#fff;color:var(--blue);font-weight:700;font-size:.8rem;border-radius:9px;padding:6px 12px;cursor:pointer}
.t-copy:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.t-code{margin:0;padding:14px 16px;max-height:420px;overflow:auto;background:#0B1730;color:#DCE8F7;font-family:var(--f-mono);font-size:.82rem;line-height:1.55;white-space:pre}
.t-list{margin:0;padding-left:1.2em;display:grid;gap:6px;color:var(--ink)}
.t-table{overflow-x:auto;border:1px solid var(--line);border-radius:14px}
.t-table table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:520px}
.t-table th,.t-table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.t-table th{background:#F4F8FD;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.t-table tr:last-child td{border-bottom:0}
.t-badge{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-radius:7px;padding:3px 8px;color:#fff;white-space:nowrap}
.t-badge.good{background:#13A35B}.t-badge.warn{background:#E28C00}.t-badge.bad{background:#D64541}.t-badge.blue{background:var(--blue)}
.t-bar{height:8px;border-radius:9px;background:#E7EEF7;overflow:hidden}.t-bar i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,var(--cyan),var(--blue))}
.t-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,#06162E,#0C2244);color:#DCE8F7}
.t-cta p{margin:0;font-weight:600}
.t-note{font-size:.84rem;color:var(--muted);margin:0}
.t-chips{display:flex;flex-wrap:wrap;gap:8px}
.t-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#F8FAFD;border-radius:999px;padding:6px 12px;font-size:.86rem;color:var(--ink);cursor:pointer}
.t-chip:hover{border-color:var(--blue);color:var(--blue)}
.t-preview{border:1px dashed #C9D6E6;border-radius:16px;padding:14px;background:#FBFCFE;overflow:auto}
canvas.t-canvas{max-width:100%;height:auto;border-radius:12px;border:1px solid var(--line);background:repeating-conic-gradient(#EEF2F7 0% 25%,#fff 0% 50%) 50%/20px 20px}
@media (max-width:640px){.tf-grid,.tf-grid.c3{grid-template-columns:1fr}.tf-actions .btn{flex:1 1 100%;justify-content:center}.hn-tool{border-radius:18px}}

/* ===== Tool pages & hub ===== */
.tool-hero .wrap{grid-template-columns:1fr!important}
.tool-hero h1{font-size:clamp(1.9rem,4vw,3rem);margin:10px 0 10px}
.tool-hero .lead{max-width:760px}
.tool-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.tool-badges span{display:inline-flex;align-items:center;gap:7px;font-size:.82rem;font-weight:700;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px}
.tool-badges .i{width:14px;height:14px;fill:var(--blue)}
.tool-main{padding-top:0!important}
.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.tool-side{display:grid;gap:14px;position:sticky;top:100px}
.tool-side .card{padding:18px}
.tool-side h3{font-size:1rem;margin:0 0 10px}
.tool-side ol{margin:0;padding-left:1.1em;display:grid;gap:8px;color:var(--muted);font-size:.9rem}
.tool-side .rel a{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);color:var(--ink);font-weight:600;font-size:.92rem}
.tool-side .rel a:last-child{border-bottom:0}
.tool-side .rel .i{width:16px;height:16px;fill:var(--blue);flex:none}
.tool-about{max-width:820px}
.tool-about h2{font-size:clamp(1.35rem,2.6vw,1.8rem);margin:0 0 12px}
.tool-about h3{font-size:1.1rem;margin:20px 0 8px}
.tool-about p,.tool-about li{color:var(--muted);line-height:1.7}
.tool-about table{width:100%;border-collapse:collapse;margin:12px 0;font-size:.92rem}
.tool-about th,.tool-about td{border:1px solid var(--line);padding:9px 11px;text-align:left}
.tool-about th{background:#F4F8FD}
.tool-about code{font-family:var(--f-mono);font-size:.86em;background:#EEF3F9;padding:2px 6px;border-radius:6px}
@media (max-width:1000px){.tool-layout{grid-template-columns:1fr}.tool-side{position:static}}
.tools-search{position:relative;max-width:640px;margin-top:18px}
.tools-search input{width:100%;height:58px;border-radius:16px;border:1px solid var(--line);padding:0 18px 0 50px;font:inherit;font-size:1.05rem;background:#fff;box-shadow:0 20px 40px -30px rgba(6,22,46,.4)}
.tools-search input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,108,208,.14)}
.tools-search .i{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:18px;height:18px;fill:var(--muted)}
.tools-count{margin:10px 0 0;color:var(--muted);font-weight:600;font-size:.9rem}
.tool-cats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
/* Colourful category cards: each gets a theme-aligned accent colour (cycled), a gradient icon tile and a lift on hover. */
.tool-cat{position:relative;padding:20px 18px 18px;display:grid;gap:8px;align-content:start;color:var(--ink);overflow:hidden;--c:#0A6CD0;--c2:#00AEE6;border-top:4px solid var(--c);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.tool-cat:nth-child(8n+2){--c:#13A35B;--c2:#34C38F}
.tool-cat:nth-child(8n+3){--c:#7C3AED;--c2:#A855F7}
.tool-cat:nth-child(8n+4){--c:#EA6A12;--c2:#F7A64B}
.tool-cat:nth-child(8n+5){--c:#E11D48;--c2:#FB7185}
.tool-cat:nth-child(8n+6){--c:#0E7490;--c2:#06B6D4}
.tool-cat:nth-child(8n+7){--c:#4F46E5;--c2:#6366F1}
.tool-cat:nth-child(8n+8){--c:#0D9488;--c2:#2DD4BF}
.tool-cat:before{content:"";position:absolute;right:-40px;top:-40px;width:120px;height:120px;border-radius:50%;background:var(--c);opacity:.06;pointer-events:none}
.tool-cat:hover{transform:translateY(-4px);box-shadow:0 22px 40px -22px rgba(10,26,51,.45);border-color:var(--c2)}
.tool-cat .ic{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--c),var(--c2));box-shadow:0 8px 18px -8px rgba(10,26,51,.4)}
.tool-cat .ic .i{width:22px;height:22px;fill:#fff}
.tool-cat b{font-family:var(--f-display);font-size:1.08rem;font-weight:800;letter-spacing:-.01em}
.tool-cat small{color:var(--muted);font-size:.86rem}
.tool-cat .n{display:inline-flex;align-items:center;font-family:var(--f-mono);font-size:.74rem;color:var(--c);font-weight:700}
.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tool-card{padding:18px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 14px;align-content:start;color:var(--ink);transition:transform .2s,border-color .2s}
.tool-card:hover{transform:translateY(-3px);border-color:rgba(10,108,208,.4)}
.tool-card .ic{grid-row:1/span 2;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(10,108,208,.08)}
.tool-card .ic .i{width:20px;height:20px;fill:var(--blue)}
.tool-card b{font-size:.98rem;line-height:1.3}
.tool-card small{color:var(--muted);font-size:.85rem;line-height:1.45}
.tool-card .tag{grid-column:2;justify-self:start;margin-top:6px;font-family:var(--f-mono);font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);background:rgba(10,108,208,.08);border-radius:6px;padding:3px 7px}
.cat-block{margin-top:clamp(28px,4vw,44px)}
.cat-block h2{font-size:clamp(1.3rem,2.4vw,1.7rem);margin:0 0 6px}
.cat-block>p{color:var(--muted);margin:0 0 16px}
.cat-block .more{display:inline-flex;margin-top:14px;font-weight:700;color:var(--blue)}
@media (max-width:1100px){.tool-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.tool-grid,.tool-cats{grid-template-columns:1fr}}
/* ===== Advertising + business tools (scoped to .ab-tool) ===== */
.ab-tool .tf[hidden],.ab-tool [hidden]{display:none!important}
.ab-tool .ab-formula{border:1px solid var(--line);border-radius:14px;background:#F8FAFD;padding:12px 14px;display:grid;gap:6px;min-width:0}
.ab-tool .ab-formula b{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.ab-tool .ab-formula pre{margin:0;font-family:var(--f-mono,monospace);font-size:.82rem;line-height:1.6;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}
.ab-tool .ab-note{border-left:4px solid var(--blue);background:#F4F8FD;border-radius:0 14px 14px 0;padding:12px 16px;display:grid;gap:8px;min-width:0}
.ab-tool .ab-note>b{color:var(--ink)}
.ab-tool .ab-note .t-list{line-height:1.55}
.ab-tool .ab-pos{color:#0E7A43;font-weight:700}.ab-tool .ab-neg{color:#B3261E;font-weight:700}
.ab-tool .t-card-b .t-table{margin-top:8px}
.ab-tool .t-card-b>p:first-child{margin-top:0}.ab-tool .t-card-b>p:last-child{margin-bottom:0}
/* editable row tables */
.ab-tool .ab-rt{overflow-x:auto;border:1px solid var(--line);border-radius:14px}
.ab-tool .ab-rt table{width:100%;border-collapse:collapse;font-size:.9rem}
.ab-tool .ab-rt th{background:#F4F8FD;font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:left;padding:8px 10px}
.ab-tool .ab-rt td{padding:6px 8px;border-top:1px solid var(--line);vertical-align:middle}
.ab-tool .ab-rt input:not([type=checkbox]){width:100%;min-width:70px;height:40px;border:1px solid var(--line);border-radius:10px;padding:6px 10px;font:inherit;font-size:.95rem;background:#F8FAFD;color:var(--ink)}
.ab-tool .ab-rt input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(10,108,208,.14);background:#fff}
.ab-tool .ab-rt input[type=checkbox]{width:18px;height:18px;accent-color:var(--blue)}
.ab-tool .ab-rows .ab-add{justify-self:start}
.ab-tool input.ab-mini{width:80px;height:36px;border:1px solid var(--line);border-radius:9px;padding:4px 8px;font:inherit;background:#F8FAFD}
@media (max-width:640px){
  .ab-tool .ab-rt{border:0;overflow:visible}
  .ab-tool .ab-rt thead{display:none}
  .ab-tool .ab-rt table,.ab-tool .ab-rt tbody,.ab-tool .ab-rt tr,.ab-tool .ab-rt td{display:block;width:100%}
  .ab-tool .ab-rt tr{border:1px solid var(--line);border-radius:12px;padding:8px;margin-bottom:10px;display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .ab-tool .ab-rt td{border:0;padding:0}
  .ab-tool .ab-rt td:first-child{grid-column:1/-1}
  .ab-tool .ab-rt td::before{content:attr(data-l);display:block;font-size:.72rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
}
/* charts */
.ab-tool .ab-chart{display:grid;grid-template-columns:200px minmax(0,1fr);gap:18px;align-items:center;margin-top:12px}
.ab-tool .ab-chart svg{width:100%;max-width:200px;height:auto}
.ab-tool .ab-svg-k{font-size:11px;fill:var(--muted);font-weight:600}
.ab-tool .ab-svg-v{font-size:14px;fill:var(--ink);font-weight:800}
.ab-tool .ab-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ab-tool .ab-legend li{display:grid;grid-template-columns:12px minmax(0,1fr) auto auto;gap:4px 10px;align-items:center;font-size:.88rem}
.ab-tool .ab-legend li>i{width:12px;height:12px;border-radius:3px}
.ab-tool .ab-legend li em{font-style:normal;color:var(--muted);font-size:.82rem}
.ab-tool .ab-legend .t-bar{grid-column:2/-1;height:6px}
.ab-tool .ab-funnel{width:100%;max-width:560px;height:auto;display:block;margin:0 auto}
.ab-tool .ab-fk{font-size:15px;fill:#fff;font-weight:700}
.ab-tool .ab-fv{font-size:16px;fill:#fff;font-weight:800}
@media (max-width:640px){.ab-tool .ab-chart{grid-template-columns:1fr;justify-items:center}.ab-tool .ab-legend{width:100%}}
/* competitor */
.ab-tool .ab-comp{border:1px solid var(--line);border-radius:16px;padding:12px 14px 14px;margin:0;min-width:0}
.ab-tool .ab-comp legend{font-weight:800;color:var(--blue);padding:0 6px}
.ab-tool .ab-cg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px}
.ab-tool .ab-cg textarea{min-height:84px}
.ab-tool .ab-checks{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.88rem}
.ab-tool .ab-checks label{display:inline-flex;gap:6px;align-items:center;font-weight:500;color:var(--ink)}
.ab-tool .ab-checks input{width:16px;height:16px;accent-color:var(--blue)}
@media (max-width:900px){.ab-tool .ab-cg{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.ab-tool .ab-cg{grid-template-columns:1fr}}
.ab-tool .ab-swot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ab-tool .ab-sw{border-radius:14px;padding:12px 14px;border:1px solid var(--line);min-width:0}
.ab-tool .ab-sw>b{display:block;margin-bottom:6px}
.ab-tool .ab-sw.s{background:#ECFBF2}.ab-tool .ab-sw.w{background:#FFF1EF}.ab-tool .ab-sw.o{background:#EEF5FD}.ab-tool .ab-sw.t{background:#FFF7E8}
@media (max-width:640px){.ab-tool .ab-swot{grid-template-columns:1fr}}
/* funnel stages, personas */
.ab-tool .ab-stages,.ab-tool .ab-personas{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.ab-tool .ab-stage,.ab-tool .ab-persona{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#FBFCFE;min-width:0}
.ab-tool .ab-stage h4,.ab-tool .ab-persona h4{margin:0 0 8px;font-size:1rem;color:var(--blue)}
.ab-tool .ab-stage p{margin:0 0 6px;font-size:.9rem;line-height:1.5}
.ab-tool .ab-persona>div{margin-bottom:8px}.ab-tool .ab-persona>div>b{font-size:.82rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.ab-tool .ab-persona .t-list{font-size:.9rem;gap:3px}
/* lead gen */
.ab-tool .ab-dots{display:inline-flex;gap:3px;vertical-align:middle}.ab-tool .ab-dots i{width:8px;height:8px;border-radius:50%;background:#DCE4EF}.ab-tool .ab-dots i.on{background:var(--blue)}
.ab-tool .ab-check{list-style:none;margin:0;padding:0;display:grid;gap:6px}.ab-tool .ab-check label{display:flex;gap:8px;align-items:flex-start;cursor:pointer}.ab-tool .ab-check input{margin-top:4px;accent-color:var(--blue)}
/* names and slogans */
.ab-tool .ab-names{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.ab-tool .ab-name{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#FBFCFE;min-width:0}
.ab-tool .ab-name>div{display:grid;min-width:0}.ab-tool .ab-name b{font-size:1rem;overflow-wrap:anywhere}.ab-tool .ab-name small{color:var(--muted);font-size:.76rem;overflow-wrap:anywhere}
.ab-tool .ab-star{border:0;background:none;font-size:1.3rem;line-height:1;color:#C9D6E6;cursor:pointer;padding:2px}.ab-tool .ab-star.on{color:#F5A623}
.ab-tool .ab-x{border:0;background:none;font-size:1rem;cursor:pointer;color:var(--muted);padding:0 2px}
.ab-tool .ab-slogans{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.ab-tool .ab-slogan{display:flex;gap:10px;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#FBFCFE;min-width:0}
.ab-tool .ab-slogan>div{display:grid;min-width:0}.ab-tool .ab-slogan small{color:var(--muted);font-size:.76rem}
.ab-tool .ab-pbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
/* proposal */
.ab-tool .ab-proposal{border:1px solid var(--line);border-radius:16px;padding:clamp(16px,3vw,32px);background:#fff;line-height:1.6;color:var(--ink);min-width:0;overflow-wrap:anywhere}
.ab-tool .ab-proposal h1{font-size:clamp(1.4rem,3vw,1.9rem);margin:8px 0 14px;color:#fff}
.ab-tool .ab-proposal h2{font-size:1.15rem;margin:24px 0 8px;color:var(--blue);border-bottom:1px solid var(--line);padding-bottom:6px}
.ab-tool .ab-proposal table{width:100%;border-collapse:collapse;margin:8px 0;font-size:.92rem}
.ab-tool .ab-proposal th,.ab-tool .ab-proposal td{border:1px solid var(--line);padding:8px 10px;text-align:left}
.ab-tool .ab-proposal th{background:#F4F8FD}
.ab-tool .pp-cover{padding:clamp(18px,3vw,30px);border-radius:14px;background:#06162E;color:#E7F0FB}
.ab-tool .pp-cover p{margin:4px 0}
.ab-tool .pp-k{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;color:#00AEE6!important;margin:0}
.ab-tool .pp-sign{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media (max-width:640px){.ab-tool .pp-sign{grid-template-columns:1fr}}
@media print{
  body.ab-printing *{visibility:hidden!important}
  body.ab-printing .ab-print-me,body.ab-printing .ab-print-me *{visibility:visible!important}
  body.ab-printing .ab-print-me{position:absolute;left:0;top:0;width:100%;border:0;padding:0}
  body.ab-printing .pp-cover{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body.ab-printing .ab-proposal h2{break-after:avoid}
}
@media (max-width:640px){.ab-tool .t-stat b{font-size:1.12rem;overflow-wrap:normal}.ab-tool .t-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}
.ab-tool .ab-dmb,.ab-tool .ab-ai,.ab-tool .ab-favs,.ab-tool .ab-chart>*{min-width:0}
/* ===== Business calculators (65-business-calc.js). Every selector is scoped to .hn-tool.bc-tool and uses the unique bc- prefix. ===== */
.hn-tool.bc-tool>*,.hn-tool.bc-tool .bc-panel>*,.hn-tool.bc-tool .tool-out>*{min-width:0}
.hn-tool.bc-tool .tf[hidden],.hn-tool.bc-tool .bc-panel[hidden]{display:none!important}
.hn-tool.bc-tool .bc-panel{display:grid;gap:18px}
.hn-tool.bc-tool .bc-h{font-family:var(--f-display);font-size:1.05rem;color:var(--ink);margin:6px 0 -4px}
.hn-tool.bc-tool .bc-neg{color:#B3261E}
.hn-tool.bc-tool .bc-del{color:#B3261E}
.hn-tool.bc-tool .bc-del:hover{background:#B3261E;border-color:#B3261E;color:#fff}
.hn-tool.bc-tool .t-copy:disabled{opacity:.55;cursor:not-allowed}
.hn-tool.bc-tool .t-chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.hn-tool.bc-tool .t-table td code,.hn-tool.bc-tool .bc-steps code{font-family:var(--f-mono);font-size:.84rem;background:#F4F8FD;border-radius:6px;padding:2px 6px;overflow-wrap:anywhere;white-space:normal}
.hn-tool.bc-tool .bc-steps{gap:8px}
.hn-tool.bc-tool .bc-in{width:100%;min-width:0;height:44px;border:1px solid var(--line);border-radius:12px;padding:8px 12px;font:inherit;font-size:.95rem;color:var(--ink);background:#F8FAFD}
.hn-tool.bc-tool .bc-in:focus,.hn-tool.bc-tool .bc-cell input:focus,.hn-tool.bc-tool .bc-cell select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,108,208,.14);background:#fff}
.hn-tool.bc-tool .bc-row{display:flex;gap:8px;align-items:center;min-width:0}
.hn-tool.bc-tool .bc-row>.bc-in{flex:1 1 0;width:0}
.hn-tool.bc-tool .bc-row .btn{flex:none;min-height:44px}
.hn-tool.bc-tool .bc-x{border:0;background:transparent;color:var(--muted);font-size:1.4rem;line-height:1;cursor:pointer;padding:6px 10px;border-radius:9px;flex:none}
.hn-tool.bc-tool .bc-x:hover{color:#B3261E;background:#FFF1EF}
.hn-tool.bc-tool .bc-file{position:relative;overflow:hidden;cursor:pointer;display:inline-flex;align-items:center}
.hn-tool.bc-tool .bc-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.hn-tool.bc-tool .bc-toast{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:9999;padding:12px 16px;border-radius:14px;background:#06162E;color:#fff;font-weight:600;font-size:.92rem;box-shadow:0 20px 40px -18px rgba(6,22,46,.6);max-width:calc(100vw - 32px)}
.hn-tool.bc-tool .t-sync{margin:0}

/* tabs */
.hn-tool.bc-tool .bc-tabs{display:flex;gap:4px;padding:4px;border-radius:14px;background:#EEF3F9;overflow-x:auto;scrollbar-width:none}
.hn-tool.bc-tool .bc-tabs button{flex:1 0 auto;border:0;background:transparent;border-radius:10px;padding:10px 14px;font:inherit;font-size:.92rem;font-weight:700;color:var(--muted);cursor:pointer;white-space:nowrap}
.hn-tool.bc-tool .bc-tabs button[aria-selected="true"]{background:#fff;color:var(--ink);box-shadow:0 2px 8px -4px rgba(6,22,46,.35)}

/* toolbars, alerts, notes */
.hn-tool.bc-tool .bc-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.hn-tool.bc-tool .bc-bar a.t-copy{text-decoration:none;display:inline-flex;align-items:center}
.hn-tool.bc-tool .bc-alert{margin:0;padding:12px 14px;border-radius:12px;border:1px solid;line-height:1.55;font-size:.94rem;color:var(--ink)}
.hn-tool.bc-tool .bc-alert.good{background:#ECFBF2;border-color:#BDEBD0}
.hn-tool.bc-tool .bc-alert.warn{background:#FFF7E8;border-color:#F7DDA8}
.hn-tool.bc-tool .bc-alert.bad{background:#FFF1EF;border-color:#F5C6C0}
.hn-tool.bc-tool .bc-alert.info{background:#EEF5FD;border-color:#CFE0F5}
.hn-tool.bc-tool .bc-warns{margin:0;font-size:.9rem;color:var(--text)}
.hn-tool.bc-tool .bc-warns2{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.hn-tool.bc-tool .bc-warns2 li{padding:9px 12px 9px 34px;border-radius:10px;font-size:.9rem;position:relative;line-height:1.45}
.hn-tool.bc-tool .bc-warns2 li:before{position:absolute;left:12px;top:9px;font-weight:900}
.hn-tool.bc-tool .bc-warns2 li.warn{background:#FFF7E8;color:#6B4300}.hn-tool.bc-tool .bc-warns2 li.warn:before{content:"!";color:#E28C00}
.hn-tool.bc-tool .bc-warns2 li.info{background:#EEF5FD;color:#23466F}.hn-tool.bc-tool .bc-warns2 li.info:before{content:"i";color:var(--blue)}
.hn-tool.bc-tool .bc-sec{display:grid;gap:2px;padding-top:4px;border-top:1px dashed var(--line)}
.hn-tool.bc-tool form .bc-sec:first-child{border-top:0;padding-top:0}
.hn-tool.bc-tool .bc-sec b{font-family:var(--f-display);font-size:1rem;color:var(--ink)}
.hn-tool.bc-tool .bc-det{border:1px solid var(--line);border-radius:14px;background:#fff}
.hn-tool.bc-tool .bc-det>summary{cursor:pointer;padding:12px 14px;font-weight:700;color:var(--blue);font-size:.92rem}
.hn-tool.bc-tool .bc-det[open]>summary{border-bottom:1px solid var(--line)}
.hn-tool.bc-tool .bc-det>.t-table{border:0;border-radius:0 0 14px 14px}
.hn-tool.bc-tool .bc-det>.bc-row{padding:12px 14px}

/* charts */
.hn-tool.bc-tool .bc-chartbox{margin:0;border:1px solid var(--line);border-radius:16px;padding:12px 12px 10px;background:#fff;display:grid;gap:8px}
.hn-tool.bc-tool .bc-chartbox figcaption{font-weight:700;font-size:.88rem;color:var(--ink)}
.hn-tool.bc-tool .bc-svg{width:100%;min-width:0;overflow:hidden}
.hn-tool.bc-tool .bc-svg svg,.hn-tool.bc-tool .bc-chartbox>svg{display:block;max-width:100%;height:auto}
.hn-tool.bc-tool .bc-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.82rem;color:var(--muted)}
.hn-tool.bc-tool .bc-legend span{display:inline-flex;align-items:center;gap:6px}
.hn-tool.bc-tool .bc-legend i{display:inline-block;width:14px;height:10px;border-radius:3px}
.hn-tool.bc-tool .bc-legend b{color:var(--ink)}

/* saved scenarios */
.hn-tool.bc-tool .bc-scen,.hn-tool.bc-tool .bc-lib{border:1px solid var(--line);border-radius:16px;padding:14px;background:#F8FAFD;display:grid;gap:10px}
.hn-tool.bc-tool .bc-scen-h{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;justify-content:space-between}
.hn-tool.bc-tool .bc-scen-h b{font-family:var(--f-display);color:var(--ink)}
.hn-tool.bc-tool .bc-scen-list,.hn-tool.bc-tool .bc-links{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.hn-tool.bc-tool .bc-scen-list li,.hn-tool.bc-tool .bc-links li{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;min-width:0}
.hn-tool.bc-tool .bc-scen-list li>div,.hn-tool.bc-tool .bc-lmain{display:grid;gap:2px;min-width:0;flex:1 1 220px}
.hn-tool.bc-tool .bc-scen-list small{color:var(--muted);font-size:.8rem}
.hn-tool.bc-tool .bc-scen-list li>span,.hn-tool.bc-tool .bc-lact{display:flex;gap:6px;flex:none}
.hn-tool.bc-tool .bc-links li.bc-empty{display:block;background:transparent;border:0;padding:4px 0}
.hn-tool.bc-tool .bc-lmain code{font-family:var(--f-mono);font-size:.78rem;color:var(--text);overflow-wrap:anywhere;word-break:break-all}

/* line editors (cash flow, landed cost) */
.hn-tool.bc-tool .bc-lines-h{display:grid;gap:2px}
.hn-tool.bc-tool .bc-lines-h b{font-family:var(--f-display);color:var(--ink)}
.hn-tool.bc-tool .bc-lines,.hn-tool.bc-tool .bc-plines{display:grid;gap:8px;min-width:0}
.hn-tool.bc-tool .bc-line{display:grid;grid-template-columns:118px minmax(120px,1.6fr) minmax(90px,1fr) 128px 112px 112px 88px 36px;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);border-left:4px solid #3FBF7F;border-radius:12px;background:#fff;min-width:0}
.hn-tool.bc-tool .bc-line.is-out{border-left-color:#E56B66}
.hn-tool.bc-tool .bc-cell{display:grid;gap:4px;min-width:0}
.hn-tool.bc-tool .bc-cell>span{font-size:.74rem;font-weight:700;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hn-tool.bc-tool .bc-cell input,.hn-tool.bc-tool .bc-cell select{width:100%;min-width:0;height:42px;border:1px solid var(--line);border-radius:10px;padding:6px 10px;font:inherit;font-size:.93rem;color:var(--ink);background:#F8FAFD}
.hn-tool.bc-tool .bc-cell input:disabled,.hn-tool.bc-tool .bc-cell select:disabled{opacity:.5}
.hn-tool.bc-tool .bc-cell.bc-bad input{border-color:#D64541;background:#FFF7F6}
.hn-tool.bc-tool .bc-line .bc-x{align-self:end;height:42px}
.hn-tool.bc-tool .bc-actions{display:flex;flex-wrap:wrap;gap:8px}
.hn-tool.bc-tool .bc-empty{margin:0}
.hn-tool.bc-tool .bc-pline{border:1px solid var(--line);border-radius:14px;background:#fff;padding:10px 12px 12px;display:grid;gap:8px;min-width:0}
.hn-tool.bc-tool .bc-pline-h{display:flex;align-items:center;justify-content:space-between;min-height:30px}
.hn-tool.bc-tool .bc-pline-h b{font-size:.9rem;color:var(--ink)}
.hn-tool.bc-tool .bc-pgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px}
.hn-tool.bc-tool .bc-pgrid .bc-rate>span{white-space:normal;line-height:1.25;min-height:2.5em;display:flex;align-items:flex-end}
.hn-tool.bc-tool .bc-pline-f{font-size:.82rem;color:var(--muted);font-weight:600}
.hn-tool.bc-tool .bc-pline-f:empty{display:none}

/* landed cost composition bar */
.hn-tool.bc-tool .bc-comp{display:grid;gap:8px}
.hn-tool.bc-tool .bc-compbar{display:flex;height:18px;border-radius:9px;overflow:hidden;background:#E7EEF7}
.hn-tool.bc-tool .bc-compbar i{display:block;height:100%;min-width:2px}

/* UTM builder */
.hn-tool.bc-tool .bc-presets .t-chip{font-weight:600}
.hn-tool.bc-tool .bc-custom{display:grid;gap:8px}
.hn-tool.bc-tool .bc-custom [data-cp]{display:grid;gap:8px}
.hn-tool.bc-tool .bc-custom [data-cp]:empty{display:none}
.hn-tool.bc-tool .bc-custom>.t-copy{justify-self:start}
.hn-tool.bc-tool .bc-url{display:block;font-family:var(--f-mono);font-size:.88rem;color:var(--ink);overflow-wrap:anywhere;word-break:break-all;line-height:1.55}
.hn-tool.bc-tool .bc-urlbar{padding:0 14px 14px}
.hn-tool.bc-tool .bc-urlbar .bc-lname{flex:1 1 160px;width:auto;height:36px;font-size:.88rem}
.hn-tool.bc-tool .bc-utmgrid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px;align-items:start}
.hn-tool.bc-tool .bc-utmgrid .t-table table{min-width:0}
.hn-tool.bc-tool .bc-qr{border:1px solid var(--line);border-radius:16px;padding:12px;display:grid;gap:10px;justify-items:center;background:#fff}
.hn-tool.bc-tool .bc-qrimg{width:100%;max-width:196px;aspect-ratio:1;display:grid;place-items:center;text-align:center}
.hn-tool.bc-tool .bc-qrimg svg{width:100%;height:auto;display:block}

@media (max-width:980px){
  .hn-tool.bc-tool .bc-line{grid-template-columns:repeat(4,minmax(0,1fr)) 36px}
  .hn-tool.bc-tool .bc-line .bc-c-name{grid-column:span 2}
}
@media (max-width:640px){
  .hn-tool.bc-tool .bc-line{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 10px 10px 12px;position:relative}
  .hn-tool.bc-tool .bc-line .bc-c-name{grid-column:1/-1;padding-right:34px}
  .hn-tool.bc-tool .bc-line .bc-x{position:absolute;top:4px;right:4px;height:auto}
  .hn-tool.bc-tool .bc-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hn-tool.bc-tool .bc-pgrid .bc-c-name{grid-column:1/-1}
  .hn-tool.bc-tool .bc-utmgrid{grid-template-columns:1fr}
  .hn-tool.bc-tool .bc-tabs button{padding:10px 10px;font-size:.88rem}
  .hn-tool.bc-tool .bc-row{flex-wrap:wrap}
  .hn-tool.bc-tool .bc-row>.bc-in{flex:1 1 100%;width:100%}
  .hn-tool.bc-tool .bc-row .btn{flex:1 1 auto}
  .hn-tool.bc-tool .bc-cp{flex-wrap:nowrap}
  .hn-tool.bc-tool .bc-cp>.bc-in{flex:1 1 0;width:0}
}
.hn-tool.bc-tool .t-stats{grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr))}
.hn-tool.bc-tool .t-stat b{font-size:1.28rem;overflow-wrap:normal;word-break:normal}
@media (max-width:640px){.hn-tool.bc-tool .t-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hn-tool.bc-tool .t-stat{padding:12px}.hn-tool.bc-tool .t-stat b{font-size:1.08rem;overflow-wrap:anywhere}}
.hn-tool.bc-tool .bc-chartbox>svg{width:100%;max-width:680px}
/* ===== Business kit: invoice, quotation, receipt, business card, review QR kit, link in bio (scoped to .bk-tool) ===== */
.bk-tool [hidden],.bk-tool .tf[hidden]{display:none!important}
.bk-tool .bk-form{gap:12px}
.bk-tool .bk-sec{border:1px solid var(--line);border-radius:16px;background:#fff;min-width:0}
.bk-tool .bk-sec>summary{cursor:pointer;list-style:none;padding:14px 16px;font-weight:800;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:16px}
.bk-tool .bk-sec>summary::-webkit-details-marker{display:none}
.bk-tool .bk-sec>summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s;flex:none;margin-right:4px}
.bk-tool .bk-sec[open]>summary::after{transform:rotate(-135deg)}
.bk-tool .bk-sec[open]>summary{border-bottom:1px solid var(--line);border-radius:16px 16px 0 0;background:#F8FAFD}
.bk-tool .bk-sec>.tf-grid{padding:14px 16px 16px}
.bk-tool .bk-sec>.t-note{padding:12px 16px 0}
.bk-tool .bk-raw{display:block}
.bk-tool .bk-alert{margin:0;padding:10px 14px;border-radius:12px;font-weight:600;font-size:.9rem;background:#EEF5FD;color:#0B4F96}
.bk-tool .bk-alert.good{background:#ECFBF2;color:#0E7A43}.bk-tool .bk-alert.warn{background:#FFF7E8;color:#8A5300}.bk-tool .bk-alert.bad{background:#FFF1EF;color:#B3261E}
.bk-tool .bk-msg:empty{display:none}
.bk-tool .bk-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.bk-tool .bk-btns .btn{min-height:42px}
.bk-tool .bk-note{border-left:4px solid var(--blue);background:#F4F8FD;border-radius:0 14px 14px 0;padding:12px 16px;display:grid;gap:8px;min-width:0}
.bk-tool .bk-note .t-list{line-height:1.55}
.bk-tool .bk-h{margin:6px 0 0;font-size:1.1rem}
.bk-tool .bk-imgs{display:flex;flex-wrap:wrap;gap:12px}
.bk-tool .bk-imgs span,.bk-tool .bk-logo-row{display:flex;align-items:center;gap:12px}
.bk-tool .bk-imgs img,.bk-tool .bk-logo-row img{max-height:56px;max-width:140px;border:1px solid var(--line);border-radius:10px;padding:4px;background:#fff}
.bk-tool .bk-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* line item editor */
.bk-doc .bk-items-ed{display:grid;gap:10px}
.bk-doc .bk-items-ed table{width:100%;border-collapse:collapse;font-size:.9rem}
.bk-doc .bk-items-ed th{background:#F4F8FD;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:left;padding:8px 6px}
.bk-doc .bk-items-ed td{padding:5px 4px;border-top:1px solid var(--line);vertical-align:middle}
.bk-doc .bk-items-ed input{width:100%;min-width:56px;height:42px;border:1px solid var(--line);border-radius:10px;padding:6px 9px;font:inherit;font-size:.95rem;background:#F8FAFD;color:var(--ink)}
.bk-doc .bk-items-ed input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(10,108,208,.14);background:#fff}
.bk-doc .bk-items-ed td:first-child{width:40%}
.bk-doc .bk-items-ed .bk-amt{text-align:right;white-space:nowrap;font-weight:700;color:var(--ink);padding-right:8px}
.bk-doc .bk-items-ed th.bk-amt{color:var(--muted);font-weight:700}
.bk-doc .bk-del{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:#fff;color:#B3261E;font-size:1.2rem;line-height:1;cursor:pointer}
.bk-doc .bk-del:hover{background:#FFF1EF}
.bk-doc .bk-add{justify-self:start}
.bk-doc form:not(.bk-linetax) .bk-ltax{display:none}
.bk-doc .bk-drafts{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 14px;border:1px dashed #C9D6E6;border-radius:14px;background:#FBFCFE;font-weight:700;font-size:.9rem}
.bk-doc .bk-drafts label{display:flex;gap:8px;align-items:center;flex:1 1 260px;min-width:0}
.bk-doc .bk-drafts select{flex:1;min-width:0;height:40px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;background:#fff}
.bk-doc .bk-pvbar{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.bk-doc .bk-pvbar b{color:var(--ink)}.bk-doc .bk-pvbar .t-note{margin-right:auto}
.bk-doc .bk-pv{border:1px solid var(--line);border-radius:14px;background:#E9EEF5;padding:0;overflow:hidden;position:relative}
.bk-doc .bk-scale{transform-origin:0 0;box-shadow:0 10px 30px -18px rgba(6,22,46,.5)}
.bk-doc .bk-pv.bk-zoomed{overflow:auto;max-height:80vh}
.bk-doc .bk-pv .bk-th{margin:16px auto;box-shadow:0 10px 30px -18px rgba(6,22,46,.5)}
@media (max-width:700px){
  .bk-doc .bk-items-ed table,.bk-doc .bk-items-ed tbody,.bk-doc .bk-items-ed tr,.bk-doc .bk-items-ed td{display:block;width:100%!important}
  .bk-doc .bk-items-ed thead{display:none}
  .bk-doc .bk-items-ed tr{border:1px solid var(--line);border-radius:12px;padding:10px;margin-bottom:10px;display:grid;grid-template-columns:1fr 1fr;gap:8px;position:relative}
  .bk-doc .bk-items-ed td{border:0;padding:0}
  .bk-doc .bk-items-ed td:first-child{grid-column:1/-1;padding-right:42px}
  .bk-doc .bk-items-ed td[data-l]::before{content:attr(data-l);display:block;font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
  .bk-doc .bk-items-ed .bk-amt{text-align:left;align-self:end;padding:0 0 10px}
  .bk-doc .bk-items-ed .bk-rm{position:absolute;top:8px;right:8px;width:auto!important}
  .bk-doc form:not(.bk-linetax) .bk-items-ed td.bk-ltax{display:none}
}
/* business card */
.bk-card .bk-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bk-card .bk-cards figure{margin:0;display:grid;gap:6px;min-width:0}
.bk-card .bk-cards figcaption{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.bk-card .bk-cv canvas{width:100%;display:block;border-radius:10px;background:none;box-shadow:0 14px 30px -20px rgba(6,22,46,.6)}
.bk-tool .bk-qrrow{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:14px}
.bk-tool .bk-qr svg{width:100%;height:auto;display:block;border-radius:8px;border:1px solid var(--line)}
@media (max-width:700px){.bk-card .bk-cards{grid-template-columns:1fr}.bk-tool .bk-qrrow{grid-template-columns:110px minmax(0,1fr)}}
/* review kit */
.bk-review .bk-link{display:grid;gap:8px;border:1px solid var(--line);border-radius:16px;padding:14px;background:#F8FAFD;min-width:0}
.bk-review .bk-link a{overflow-wrap:anywhere;font-weight:600;color:var(--blue)}
.bk-review .bk-link .bk-btns a{text-decoration:none}
.bk-review .bk-rv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.bk-review .bk-rvimg canvas{width:100%;display:block;background:none;border-radius:14px}
.bk-review .bk-rvside{display:grid;gap:10px;min-width:0}
.bk-review .bk-rvside .bk-qr{max-width:160px}
.bk-review .bk-msgs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bk-review .bk-msgs .t-card-h a{text-decoration:none}
@media (max-width:760px){.bk-review .bk-rv,.bk-review .bk-msgs{grid-template-columns:1fr}}
/* link in bio */
.bk-bio .bk-links{display:grid;gap:10px}
.bk-bio .bk-lrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;gap:8px;align-items:start;border:1px solid var(--line);border-radius:14px;padding:10px;background:#FBFCFE}
.bk-bio .bk-lrow .tf input{height:44px}
.bk-bio .bk-lact{display:flex;gap:4px;padding-top:26px}
.bk-bio .bk-lact .t-copy{width:38px;height:40px;padding:0;font-size:1rem}
.bk-bio .bk-ladd{justify-self:start;margin-top:10px}
.bk-bio .bk-biogrid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:22px;align-items:start}
.bk-bio .bk-phone{position:relative;width:100%;max-width:330px;margin:0 auto;aspect-ratio:9/18.5;border:12px solid #0B1020;border-radius:44px;background:#0B1020;box-shadow:0 30px 60px -36px rgba(6,22,46,.7);overflow:hidden}
.bk-bio .bk-phone iframe{width:100%;height:100%;border:0;border-radius:32px;background:#fff;display:block}
.bk-bio .bk-notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:38%;height:22px;background:#0B1020;border-radius:0 0 14px 14px;z-index:2}
.bk-bio .bk-bioside{display:grid;gap:12px;min-width:0}
@media (max-width:760px){.bk-bio .bk-biogrid{grid-template-columns:1fr}.bk-bio .bk-lrow{grid-template-columns:1fr}.bk-bio .bk-lact{justify-content:flex-end;padding-top:0}.bk-bio .bk-phone{max-width:300px}}
.bk-doc .bk-sum .t-stat b{font-size:1.2rem}
/* ===== Everyday calculators + WhatsApp tools (61-calculators.js) ===== */
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) [hidden],.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .tf[hidden]{display:none!important}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-hero{border-radius:18px;padding:18px 20px;background:linear-gradient(135deg,#0A6CD0,#00AEE6);color:#fff;display:grid;gap:4px;min-width:0}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-hero span{font-size:.85rem;font-weight:700;opacity:.9}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-hero b{font-family:var(--f-display);font-size:clamp(1.6rem,4.6vw,2.4rem);line-height:1.15;overflow-wrap:anywhere}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-hero small{font-size:.9rem;opacity:.92}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-formula{border:1px solid var(--line);border-radius:14px;background:#F8FAFD;padding:12px 14px;display:grid;gap:6px;min-width:0}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-formula b{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-formula pre{margin:0;font-family:var(--f-mono,monospace);font-size:.82rem;line-height:1.6;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-note{border-left:4px solid var(--blue);background:#F4F8FD;border-radius:0 14px 14px 0;padding:12px 16px;display:grid;gap:8px;min-width:0}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-note .t-list{line-height:1.55;font-size:.92rem}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-chips .t-chip{padding:6px 12px;font-weight:700;min-height:34px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-seg{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-seg button{border:0;background:transparent;padding:6px 12px;font:inherit;font-size:.8rem;font-weight:700;color:var(--muted);cursor:pointer;min-height:32px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-seg button.on{background:var(--blue);color:#fff}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-sched{padding:12px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-sched.cx-scroll .t-table{max-height:480px;overflow:auto}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-sched .t-table td{white-space:nowrap;font-variant-numeric:tabular-nums}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-sched .t-table th{position:sticky;top:0}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-split{display:grid;gap:8px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-splitbar{height:14px;border-radius:9px;background:#F2A33A;overflow:hidden}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-splitbar i{display:block;height:100%;background:var(--blue)}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-legend{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.86rem;font-weight:600;color:var(--ink)}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;background:var(--blue)}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-legend i.b{background:#F2A33A}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-party{margin:0;padding:12px 14px;border-radius:12px;background:#ECFBF2;color:#0E7A43;font-weight:700}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-warnline{margin:0;padding:10px 14px;border-radius:12px;background:#FFF7E8;color:#9A5B00;font-weight:600;font-size:.92rem}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-wa-actions{display:flex;flex-wrap:wrap;gap:10px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-wa-actions .btn{min-height:50px;justify-content:center}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-wa-btn{background:#1DA851!important;border-color:#1DA851!important}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-link{font-family:var(--f-mono,monospace);font-size:.86rem;word-break:break-all}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-qr{display:grid;justify-items:center}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-qr canvas{width:min(320px,100%);background:#fff}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-tpl-top{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) mark{background:#FFF1C2;color:#7A4B00;border-radius:4px;padding:0 3px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-tpls{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:14px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-tpl{border:1px solid var(--line);border-radius:16px;background:#fff;padding:12px;display:grid;gap:10px;align-content:start;min-width:0}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-tpl-h{display:grid;gap:6px;justify-items:start}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-tpl-h b{font-size:.95rem;color:var(--ink)}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-bubble{position:relative;background:#E7F8DC;border-radius:4px 14px 14px 14px;padding:10px 12px 8px;color:#111B21;font-size:.92rem;line-height:1.5;overflow-wrap:anywhere}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-bubble small{display:block;text-align:right;color:#667781;font-size:.72rem;margin-top:4px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-tpl-a{display:flex;flex-wrap:wrap;gap:8px}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-tpl-a .t-copy{min-height:36px;display:inline-flex;align-items:center;text-decoration:none}
@media (max-width:640px){.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-wa-actions .btn{flex:1 1 100%}.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-hero{padding:16px}}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .t-stats{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .t-stat b{overflow-wrap:normal;word-break:normal;font-size:clamp(1.15rem,3.8vw,1.45rem)}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-fit .t-table table{min-width:0}
.hn-tool:is([data-tool="loan-emi-calculator"],[data-tool="tip-calculator"],[data-tool="discount-calculator"],[data-tool="percentage-calculator"],[data-tool="age-calculator"],[data-tool="date-calculator"],[data-tool="whatsapp-direct-chat"],[data-tool="whatsapp-message-templates"]) .cx-chips .t-chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
/* Group 40: creative + local tools. All selectors use the unique .hcl- prefix. */
.hcl-ed{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:22px;align-items:start}
.hcl-ed .hcl-ctl{min-width:0;display:grid;gap:14px}
.hcl-ed .hcl-pv{min-width:0;position:sticky;top:90px;display:grid;gap:12px}
.hcl-ed .hcl-stage{display:grid;place-items:center;gap:10px;padding:12px;border:1px dashed #C9D6E6;border-radius:16px;background:#FBFCFE;min-height:220px}
.hcl-ed .hcl-stage canvas.t-canvas{display:block;max-width:100%;max-height:72vh;width:auto;height:auto}
.hcl-ed .hcl-bar{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center}
.hcl-ed .hcl-bar .t-note{flex:1 1 220px}
.hcl-ed .tf-actions .btn{min-height:44px}
.hcl-priv{display:flex;gap:8px;align-items:center}
.hcl-priv:before{content:"";width:8px;height:8px;border-radius:50%;background:#13A35B;flex:none}
.hcl-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
/* logo concepts */
.hcl-lg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.hcl-lg{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;display:grid}
.hcl-lg-view{all:unset;cursor:zoom-in;display:block;aspect-ratio:4/3;padding:18px;background:#fff;box-sizing:border-box}
.hcl-lg-view:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}
.hcl-lg-view svg{width:100%;height:100%;display:block}
.hcl-lg-f{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px 10px;border-top:1px solid var(--line);background:#F8FAFD}
.hcl-lg-f span{margin-right:auto;font-size:.8rem;font-weight:700;color:var(--ink)}
.hcl-sel-g{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hcl-sel-g>div{border-radius:14px;padding:22px;aspect-ratio:4/3;display:grid;place-items:center;border:1px solid var(--line)}
.hcl-sel-g svg{width:100%;height:100%;display:block}
.hcl-sel-l{background:#fff}.hcl-sel-d{background:#0b1220}
.hcl-sw{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 10px 5px 6px;font:600 .8rem/1 var(--f-mono,monospace);cursor:pointer;color:var(--ink)}
.hcl-sw i{width:18px;height:18px;border-radius:50%;border:1px solid rgba(0,0,0,.12)}
/* ad creatives */
.hcl-ad-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.hcl-ad{border:1px solid var(--line);border-radius:16px;overflow:hidden;display:grid;align-content:space-between;background:#fff}
.hcl-ad.wide{grid-column:1/-1}
.hcl-ad-c{padding:12px;display:grid;place-items:center;background:#F4F8FD}
.hcl-ad-c canvas{display:block;max-width:100%;max-height:420px;width:auto;height:auto;border-radius:6px}
/* background remover */
.hcl-tools{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.hcl-tools .t-chip.on{background:var(--blue);color:#fff;border-color:var(--blue)}
canvas.hcl-paint{touch-action:none;cursor:crosshair}
/* before / after */
.hcl-ba{position:relative;width:100%;line-height:0;border-radius:12px;overflow:hidden;background:repeating-conic-gradient(#EEF2F7 0% 25%,#fff 0% 50%) 50%/20px 20px}
.hcl-ba canvas{display:block;width:100%;height:auto}
.hcl-ba .hcl-before{position:absolute;inset:0}
.hcl-ba-tag{position:absolute;top:10px;line-height:1;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:rgba(6,22,46,.7);padding:5px 8px;border-radius:6px;pointer-events:none}
.hcl-ba-tag.l{left:10px}.hcl-ba-tag.r{right:10px}
.hcl-ba input[type=range]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}
.hcl-ba:after{content:"";position:absolute;top:0;bottom:0;left:var(--hcl-x,50%);width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.25);pointer-events:none}
/* local SEO tools */
.hcl-count{font-family:var(--f-mono,monospace);font-size:.74rem;font-weight:600;padding:3px 8px;border-radius:7px;background:#ECFBF2;color:#0E7A43}
.hcl-count.warn{background:#FFF7E8;color:#9A5B00}.hcl-count.bad{background:#FFF1EF;color:#B3261E}
.hcl-warn{margin:0;padding:12px 14px;border-radius:12px;background:#FFF7E8;border:1px solid #F7DDA8;color:#7A4A00;font-size:.9rem;line-height:1.55}
.hcl-warn ul{margin:6px 0 0;padding-left:1.2em}
.hcl-group h3{font-size:1rem;margin:0 0 8px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.hcl-kw{display:flex;flex-wrap:wrap;gap:6px}
.hcl-kw span{font-size:.86rem;background:#F4F8FD;border:1px solid var(--line);border-radius:8px;padding:4px 9px;color:var(--ink)}
.hcl-check{display:grid;gap:6px}
.hcl-check label{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer}
.hcl-check label.done{background:#F3FBF6;border-color:#BDEBD0}
.hcl-check label.done b{text-decoration:line-through;color:var(--muted)}
.hcl-check input{width:18px;height:18px;margin-top:2px;accent-color:#13A35B}
.hcl-check small{display:block;color:var(--muted);font-size:.82rem;line-height:1.45}
.hcl-cat{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}
.hcl-cat small{display:block;color:var(--muted);font-size:.8rem}
@media (max-width:900px){.hcl-ed{grid-template-columns:1fr}.hcl-ed .hcl-pv{position:static;order:-1}.hcl-lg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.hcl-lg-grid{grid-template-columns:1fr;gap:10px}.hcl-lg-view{padding:10px}.hcl-sel-g{grid-template-columns:1fr}.hcl-cat{grid-template-columns:1fr}.hcl-ed .hcl-stage canvas.t-canvas{max-height:60vh}}
.hcl-rv{float:right;font-family:var(--f-mono,monospace);font-size:.78rem;font-weight:600;color:var(--blue)}
/* Daily life tools (63-daily-life.js). Every selector is scoped with the unique .dl-tool class (added to the tool root) or a unique dl- class. */
.dl-tool>*{min-width:0}
.dl-tool [hidden]{display:none!important}
.dl-tool .dl-h{display:block;font-size:.84rem;color:var(--ink);margin:4px 0 2px}
.dl-tool .dl-acts{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.dl-tool .dl-inl{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.86rem;color:var(--ink)}
.dl-tool .dl-sel,.dl-tool .dl-search,.dl-tool .dl-num,.dl-tool .dl-name,.dl-tool .dl-amt,.dl-tool .dl-month,.dl-tool .dl-jtags{border:1px solid var(--line);border-radius:10px;background:#F8FAFD;font:inherit;font-size:.95rem;color:var(--ink);padding:8px 10px;min-height:42px;min-width:0}
.dl-tool .dl-sel:focus,.dl-tool .dl-search:focus,.dl-tool .dl-num:focus,.dl-tool .dl-name:focus,.dl-tool .dl-amt:focus,.dl-tool .dl-month:focus,.dl-tool .dl-jtags:focus,.dl-tool .dl-jtext:focus,.dl-tool .dl-went:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(10,108,208,.14);background:#fff}
.dl-tool .dl-num{width:80px}
.dl-tool .dl-x{border:0;background:transparent;color:#8A97AB;font-size:1.3rem;line-height:1;width:34px;height:34px;border-radius:8px;cursor:pointer;flex:none}
.dl-tool .dl-x:hover{background:#FFF1EF;color:#B3261E}
.dl-tool .t-copy.dl-del{color:#B3261E}.dl-tool .t-copy.dl-del:hover{background:#B3261E;border-color:#B3261E;color:#fff}
.dl-tool a.t-copy{text-decoration:none;display:inline-block;color:var(--blue)}.dl-tool a.t-copy:hover{color:#fff}
.dl-tool .dl-file{position:relative;overflow:hidden;display:inline-block}
.dl-tool .dl-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.dl-tool .dl-file:focus-within{outline:3px solid rgba(10,108,208,.45);outline-offset:2px}
.dl-tool .t-chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.dl-tool .t-chip small{opacity:.7;font-weight:700}
.dl-tool .dl-foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px}
.dl-tool .dl-empty{display:grid;gap:6px;justify-items:start;padding:22px;border:1px dashed #C9D6E6;border-radius:16px;background:#FBFCFE}
.dl-tool .dl-empty b{color:var(--ink)}
.dl-tool .dl-empty span{color:var(--muted);font-size:.92rem}
.dl-tool .dl-warn{background:#FFF7E8;border:1px solid #F7DDA8;border-radius:10px;padding:8px 12px;color:#7A4A00}
.dl-tool .dl-sync{min-height:1px}
.dl-tool .dl-sync a{color:var(--blue);text-decoration:underline}
.dl-tool .dl-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:9999;display:flex;gap:14px;align-items:center;background:#06162E;color:#fff;padding:12px 16px;border-radius:12px;box-shadow:0 12px 30px -10px rgba(6,22,46,.6);font-size:.92rem;max-width:calc(100vw - 32px)}
.dl-tool .dl-toast button{background:transparent;border:0;color:#7FD3F5;font-weight:800;cursor:pointer;padding:4px 6px}
.dl-print-frame{position:fixed;left:-9999px;top:0;width:10px;height:10px;border:0;visibility:hidden}

/* ---------- bookmarks ---------- */
.dl-tool .dl-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.dl-tool .dl-bar .dl-search{flex:1 1 240px}
.dl-tool .dl-panel{border:1px solid var(--line);border-radius:16px;padding:16px;background:#FBFCFE}
.dl-tool .dl-ph{color:var(--ink)}
.dl-tool .dl-dup{background:#FFF7E8;border:1px solid #F7DDA8;border-radius:10px;padding:10px 12px;font-size:.9rem;color:#5C3A00;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.dl-tool .dl-filters{display:grid;gap:8px}
.dl-tool .dl-tagrow .t-chip{font-size:.8rem;padding:4px 10px}
.dl-tool .dl-bms{display:grid;gap:10px}
.dl-tool .dl-bm{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:start;border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff}
.dl-tool .dl-bm.later{border-left:4px solid #F5A623}
.dl-tool .dl-av{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:1.15rem;font-family:var(--f-display)}
.dl-tool .dl-bm-b{display:grid;gap:3px;min-width:0}
.dl-tool .dl-bm-t{font-weight:700;color:var(--ink);text-decoration:none;overflow-wrap:anywhere;line-height:1.35}
.dl-tool .dl-bm-t:hover{color:var(--blue);text-decoration:underline}
.dl-tool .dl-bm-u{color:var(--muted);font-size:.8rem;overflow-wrap:anywhere}
.dl-tool .dl-rl{color:#9A5B00;font-weight:700}
.dl-tool .dl-bm-n{font-size:.88rem;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;max-height:6.4em;overflow:hidden}
.dl-tool .dl-tags{display:flex;flex-wrap:wrap;gap:4px}
.dl-tool .dl-tag{border:0;background:#EEF5FD;color:var(--blue);border-radius:999px;padding:2px 9px;font-size:.76rem;font-weight:700;cursor:pointer}
.dl-tool .dl-bm-a{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;max-width:260px}
.dl-tool .dl-bm-a .t-copy{padding:5px 9px;font-size:.76rem}
.dl-tool .dl-more{justify-self:center}
.dl-tool .dl-dupes{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#FBFCFE;display:grid;gap:8px}
.dl-tool .dl-dh{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:center}
.dl-tool .dl-dg{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:8px;font-size:.9rem;overflow-wrap:anywhere}
.dl-tool .dl-dg small{display:block;color:var(--muted)}
@media (max-width:640px){
  .dl-tool .dl-bm{grid-template-columns:38px minmax(0,1fr);padding:12px}
  .dl-tool .dl-av{width:38px;height:38px;font-size:1rem}
  .dl-tool .dl-bm-a{grid-column:1/-1;justify-content:flex-start;max-width:none}
}

/* ---------- journal ---------- */
.dl-tool .dl-jgrid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;align-items:start}
.dl-tool .dl-jside{display:grid;gap:12px;min-width:0}
.dl-tool .dl-cal{border:1px solid var(--line);border-radius:16px;padding:12px;background:#FBFCFE;display:grid;gap:8px}
.dl-tool .dl-calh,.dl-tool .dl-mnav{display:flex;align-items:center;justify-content:space-between;gap:8px}
.dl-tool .dl-calh b,.dl-tool .dl-mnav b{color:var(--ink);font-family:var(--f-display);font-size:.98rem;text-align:center}
.dl-tool .dl-nav{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:1.25rem;line-height:1;cursor:pointer;flex:none}
.dl-tool .dl-nav:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}
.dl-tool .dl-nav:disabled{opacity:.35;cursor:default}
.dl-tool .dl-calg{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}
.dl-tool .dl-calg small{font-size:.7rem;color:var(--muted);font-weight:700}
.dl-tool .dl-day{position:relative;aspect-ratio:1;border:1px solid transparent;border-radius:9px;background:transparent;font:inherit;font-size:.85rem;color:var(--ink);cursor:pointer;padding:0;min-height:34px}
.dl-tool .dl-day:hover:not(:disabled){background:#EEF5FD}
.dl-tool .dl-day:disabled{color:#B8C3D3;cursor:default}
.dl-tool .dl-day.has{background:#EEF5FD;font-weight:700}
.dl-tool .dl-day.today{border-color:var(--cyan)}
.dl-tool .dl-day.on{background:var(--blue);color:#fff;border-color:var(--blue)}
.dl-tool .dl-day i{position:absolute;left:50%;bottom:3px;width:6px;height:6px;margin-left:-3px;border-radius:50%}
.dl-tool .dl-day.on i{box-shadow:0 0 0 1.5px #fff}
.dl-tool .dl-jlist{display:grid;gap:6px}
.dl-tool .dl-ji{display:grid;gap:2px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:9px 11px;cursor:pointer;font:inherit;color:var(--text);min-width:0}
.dl-tool .dl-ji:hover,.dl-tool .dl-ji.on{border-color:var(--blue)}
.dl-tool .dl-ji b{font-size:.82rem;color:var(--ink)}
.dl-tool .dl-ji span{font-size:.82rem;line-height:1.45;overflow-wrap:anywhere}
.dl-tool .dl-ji small{font-size:.74rem;color:var(--blue)}
.dl-tool .dl-ji mark{background:#FFE9A8;color:inherit;border-radius:3px}
.dl-tool .dl-jed{display:grid;gap:12px;border:1px solid var(--line);border-radius:16px;padding:16px;background:#fff;min-width:0}
.dl-tool .dl-jhead{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dl-tool .dl-jhead b{font-family:var(--f-display);color:var(--ink);font-size:1.05rem}
.dl-tool .dl-moods{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.dl-tool .dl-moods>span{font-weight:700;font-size:.86rem;color:var(--ink);margin-right:4px}
.dl-tool .dl-mood{display:grid;justify-items:center;gap:0;border:1px solid var(--line);background:#F8FAFD;border-radius:12px;padding:5px 9px;cursor:pointer;min-width:54px;font:inherit}
.dl-tool .dl-mood span{font-size:1.35rem;line-height:1.2}
.dl-tool .dl-mood small{font-size:.7rem;color:var(--muted);font-weight:700}
.dl-tool .dl-mood.on{border-color:var(--blue);background:#EEF5FD;box-shadow:0 0 0 2px rgba(10,108,208,.25)}
.dl-tool .dl-prompts{display:grid;gap:6px}
.dl-tool .dl-prompts .t-chip{font-size:.8rem;padding:5px 11px;text-align:left}
.dl-tool .dl-more-p{background:#fff;color:var(--blue);font-weight:700}
.dl-tool .dl-jtext,.dl-tool .dl-went{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px 14px;font:inherit;font-size:1rem;line-height:1.65;color:var(--ink);background:#FFFEFB;resize:vertical;min-height:240px}
.dl-tool .dl-went{min-height:180px;background:#F8FAFD;line-height:1.5}
.dl-tool .dl-jtags{width:100%}
.dl-tool .dl-jfoot{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.dl-tool .dl-jfoot .dl-acts{margin-left:auto}
.dl-tool .dl-priv{background:#F4F8FD;border-radius:10px;padding:10px 12px;color:var(--ink)}
@media (max-width:820px){.dl-tool .dl-jgrid{grid-template-columns:1fr}.dl-tool .dl-jed{order:-1}}
@media (max-width:640px){.dl-tool .t-stat b{font-size:1.15rem}.dl-tool .dl-jhead b{flex:1 1 0;min-width:0;font-size:.95rem;text-align:center}.dl-tool .dl-mood{min-width:0;flex:1 1 0;padding:5px 2px}.dl-tool .dl-jed{padding:12px}}

/* ---------- budget ---------- */
.dl-tool .dl-bbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.dl-tool .dl-mnav{min-width:250px}
.dl-tool .dl-sec{display:grid;gap:8px;border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff}
.dl-tool .dl-sech{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.dl-tool .dl-sech b{color:var(--ink);font-size:1rem}
.dl-tool .dl-sech .t-copy{margin-left:auto}
.dl-tool .dl-rows{display:grid;gap:6px}
.dl-tool .dl-row,.dl-tool .dl-ch{display:grid;gap:6px 8px;align-items:center}
.dl-tool .dl-irow{grid-template-columns:minmax(0,1fr) 160px 34px}
.dl-tool .dl-crow,.dl-tool .dl-ch{grid-template-columns:minmax(0,1fr) 120px 120px 100px 34px}
.dl-tool .dl-ch{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}
.dl-tool .dl-row .dl-amt{width:100%;text-align:right}
.dl-tool .dl-ro{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;background:#EEF5FD;border-color:#CFE0F5;line-height:1.1}
.dl-tool .dl-ro small{font-size:.66rem;color:var(--blue);font-weight:700;text-transform:uppercase}
.dl-tool .dl-left{text-align:right;font-weight:700;font-size:.92rem;color:var(--muted)}
.dl-tool .dl-left.good{color:#0E7A43}.dl-tool .dl-left.warn{color:#9A5B00}.dl-tool .dl-left.bad{color:#B3261E}
.dl-tool .dl-pbar{grid-column:1/-1;height:5px;border-radius:9px;background:#E7EEF7;overflow:hidden;margin-top:-2px}
.dl-tool .dl-pbar i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--blue));border-radius:9px}
.dl-tool .dl-pbar.warn i{background:#E28C00}.dl-tool .dl-pbar.bad i{background:#D64541}
.dl-tool .dl-tpl,.dl-tool .dl-unm{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.dl-tool .dl-split{background:#FBFCFE}
.dl-tool .dl-stack{display:flex;height:22px;border-radius:8px;overflow:hidden;background:#E7EEF7}
.dl-tool .dl-stack i,.dl-tool .dl-key{display:block}
.dl-tool .g0{background:#0A6CD0}.dl-tool .g1{background:#00AEE6}.dl-tool .g2{background:#13A35B}.dl-tool .g3{background:#E7EEF7;border:1px solid #C7D3E3}
.dl-tool .dl-keys{display:flex;flex-wrap:wrap;gap:6px 14px}
.dl-tool .dl-keys span{display:inline-flex;align-items:center;gap:6px}
.dl-tool .dl-key{display:inline-block;width:11px;height:11px;border-radius:3px;vertical-align:-1px}
.dl-tool .dl-kp{background:#0A6CD0}.dl-tool .dl-ka{background:#F5A623}
.dl-tool .dl-rule{display:grid;gap:10px;margin-top:4px}
.dl-tool .dl-rr{display:grid;grid-template-columns:150px minmax(0,1fr) 150px;gap:10px;align-items:center}
.dl-tool .dl-rr>span:first-child{display:grid}
.dl-tool .dl-rr>span:first-child b{font-size:.88rem;color:var(--ink)}
.dl-tool .dl-rr small{font-size:.74rem;color:var(--muted)}
.dl-tool .dl-rbars{display:grid;gap:4px}
.dl-tool .dl-rb{position:relative;height:10px;border-radius:6px;background:#E7EEF7}
.dl-tool .dl-rb i{display:block;height:100%;border-radius:6px}
.dl-tool .dl-rb em{position:absolute;top:-3px;bottom:-3px;width:2px;background:#06162E;margin-left:-1px}
.dl-tool .dl-rv{font-size:.8rem;color:var(--text);line-height:1.4}
.dl-tool .dl-trk{font-size:.9rem}
.dl-tool .dl-goals{display:grid;gap:10px}
.dl-tool .dl-goal{display:grid;gap:8px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#FBFCFE}
.dl-tool .dl-grow{display:grid;grid-template-columns:minmax(0,1fr) 150px 150px 170px 34px;gap:8px;align-items:center}
.dl-tool .dl-grow label{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:var(--muted)}
.dl-tool .dl-grow label .dl-amt,.dl-tool .dl-grow label .dl-month{width:100%;text-align:right}
.dl-tool .dl-gbar{height:10px}
.dl-tool .dl-gbar i{background:linear-gradient(90deg,#13A35B,#0E8C8C)}
.dl-tool .dl-ginfo{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center}
.dl-tool .dl-gadd{display:flex;gap:6px;align-items:center}
.dl-tool .dl-gadd .dl-amt{width:110px;min-height:36px;padding:6px 9px}
@media (max-width:760px){
  .dl-tool .dl-mnav{min-width:0;flex:1 1 100%}
  .dl-tool .dl-crow{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 74px 34px}
  .dl-tool .dl-crow .dl-x{grid-row:1;grid-column:4}
  .dl-tool .dl-crow .dl-name{grid-column:1/4;grid-row:1}
  .dl-tool .dl-ch{display:none}
  .dl-tool .dl-irow{grid-template-columns:minmax(0,1fr) 120px 34px}
  .dl-tool .dl-rr{grid-template-columns:1fr;gap:4px}
  .dl-tool .dl-grow{grid-template-columns:1fr 1fr}
  .dl-tool .dl-grow .dl-name{grid-column:1/2}
  .dl-tool .dl-grow .dl-x{justify-self:end;grid-column:2;grid-row:1}
  .dl-tool .dl-grow label{flex-direction:column;align-items:stretch}
}

/* ---------- shopping list ---------- */
.dl-tool .dl-lists{display:grid;gap:8px}
.dl-tool .dl-lacts{justify-content:flex-start}
.dl-tool .dl-sladd{display:grid;grid-template-columns:minmax(0,1fr) 80px 110px auto;gap:8px;align-items:center}
.dl-tool .dl-sladd .dl-name{min-height:48px;font-size:1rem}
.dl-tool .dl-sladd .dl-num,.dl-tool .dl-sladd .dl-amt{width:100%;min-height:48px}
.dl-tool .dl-sladd .btn{min-height:48px;padding-inline:22px}
.dl-tool .dl-slitems{display:grid;gap:6px}
.dl-tool .dl-sli{display:grid;grid-template-columns:28px minmax(0,1fr) 116px 96px 90px 34px;gap:8px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:6px 8px 6px 12px;background:#fff}
.dl-tool .dl-sli.done{background:#F6F8FB}
.dl-tool .dl-sli.done .dl-slt{text-decoration:line-through;color:var(--muted)}
.dl-tool .dl-ck{width:22px;height:22px;accent-color:#13A35B;cursor:pointer}
.dl-tool .dl-slt{border:0;background:transparent;font:inherit;font-size:1rem;font-weight:600;color:var(--ink);padding:8px 4px;min-width:0;border-radius:8px}
.dl-tool .dl-slt:focus{outline:none;background:#F4F8FD}
.dl-tool .dl-qty{display:flex;align-items:center;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#F8FAFD}
.dl-tool .dl-qty button{width:34px;height:38px;border:0;background:transparent;font-size:1.1rem;color:var(--blue);cursor:pointer;flex:none}
.dl-tool .dl-qty button:hover{background:#EEF5FD}
.dl-tool .dl-qty input{width:100%;min-width:0;border:0;background:transparent;text-align:center;font:inherit;font-weight:700;color:var(--ink)}
.dl-tool .dl-sli .dl-amt{width:100%;text-align:right;min-height:38px}
.dl-tool .dl-lt{text-align:right;font-weight:700;font-size:.9rem;color:var(--ink)}
@media (max-width:640px){
  .dl-tool .dl-sladd{grid-template-columns:1fr 1fr}
  .dl-tool .dl-sladd .dl-name{grid-column:1/-1}
  .dl-tool .dl-sladd .btn{grid-column:1/-1}
  .dl-tool .dl-sli{grid-template-columns:26px minmax(0,1fr) 96px 34px;padding:6px 6px 6px 10px}
  .dl-tool .dl-sli .dl-slt{grid-column:2/4}
  .dl-tool .dl-sli .dl-x{grid-column:4;grid-row:1}
  .dl-tool .dl-sli .dl-qty{grid-column:2;grid-row:2;max-width:120px}
  .dl-tool .dl-sli .dl-amt{grid-column:3;grid-row:2}
  .dl-tool .dl-sli .dl-lt{grid-column:2/5;grid-row:3;text-align:right}
  .dl-tool .dl-sli .dl-lt:empty{display:none}
}

/* ---------- picker wheel ---------- */
.dl-tool .dl-tabs{display:flex;gap:4px;overflow-x:auto;background:#EEF3F9;padding:4px;border-radius:14px;scrollbar-width:none}
.dl-tool .dl-tabs button{flex:1 0 auto;border:0;background:transparent;border-radius:10px;padding:10px 14px;font:inherit;font-weight:700;font-size:.92rem;color:var(--muted);cursor:pointer;white-space:nowrap}
.dl-tool .dl-tabs button.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(10,26,51,.12)}
.dl-tool .dl-pane{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.dl-tool .dl-wbox>*,.dl-tool .dl-wed>*{min-width:0;max-width:100%}
.dl-tool .dl-wgrid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;align-items:start}
.dl-tool .dl-wbox{display:grid;gap:12px;justify-items:center;min-width:0}
.dl-tool .dl-wwrap{width:100%;max-width:520px;display:flex;justify-content:center}
.dl-tool .dl-wheel{display:block;cursor:pointer;border-radius:50%;max-width:100%}
.dl-tool .dl-spin{min-width:220px}
.dl-tool .dl-win{width:100%}
.dl-tool .dl-winner{display:grid;justify-items:center;gap:6px;text-align:center;padding:14px;border-radius:16px;background:linear-gradient(135deg,#06162E,#0C2244);color:#DCE8F7;animation:dlpop .35s ease-out}
.dl-tool .dl-winner b{font-family:var(--f-display);font-size:clamp(1.4rem,4vw,2rem);color:#fff;overflow-wrap:anywhere}
.dl-tool .dl-winner .t-copy{background:transparent;color:#BFE6F7;border-color:rgba(255,255,255,.25)}
.dl-tool .dl-wed{display:grid;gap:12px;min-width:0}
.dl-tool .dl-saved{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:12px}
.dl-tool .dl-row2{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}
.dl-tool .dl-row2 .dl-name{flex:1}
.dl-tool .dl-wchip{padding:0 0 0 2px;gap:0}
.dl-tool .dl-wchip>button:first-child{border:0;background:transparent;font:inherit;color:inherit;cursor:pointer;padding:6px 4px 6px 10px}
.dl-tool .dl-wchip .dl-x{width:28px;height:28px;font-size:1.05rem}
.dl-tool .dl-picks{margin:0;padding-left:1.4em;display:grid;gap:3px;font-size:.9rem;color:var(--ink)}
.dl-tool .dl-picks small{color:var(--muted)}
.dl-tool .dl-coinbox{display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:center;padding:10px 0;perspective:600px}
.dl-tool .dl-ctl,.dl-tool .dl-dctl{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.dl-tool .dl-coin{position:relative;width:110px;height:110px;transform-style:preserve-3d}
.dl-tool .dl-coin span{position:absolute;inset:0;border-radius:50%;display:grid;place-items:center;font:800 2.6rem var(--f-display);backface-visibility:hidden;box-shadow:inset 0 0 0 6px rgba(255,255,255,.35),0 8px 18px -8px rgba(6,22,46,.5)}
.dl-tool .dl-coin .h{background:radial-gradient(circle at 35% 30%,#FFE08A,#E2A21B);color:#6B4700}
.dl-tool .dl-coin .t{background:radial-gradient(circle at 35% 30%,#E5ECF5,#9AAAC0);color:#25344D;transform:rotateY(180deg)}
.dl-tool .dl-coin.flip-h{animation:dlfliph .9s ease-out forwards}
.dl-tool .dl-coin.flip-t{animation:dlflipt .9s ease-out forwards}
@keyframes dlfliph{from{transform:rotateY(0)}to{transform:rotateY(1800deg)}}
@keyframes dlflipt{from{transform:rotateY(0)}to{transform:rotateY(1980deg)}}
@keyframes dlpop{from{transform:scale(.92);opacity:0}to{transform:none;opacity:1}}
@keyframes dlroll{0%{transform:rotate(-200deg) scale(.6);opacity:0}100%{transform:none;opacity:1}}
.dl-tool .dl-cres,.dl-tool .dl-dres{display:grid;gap:10px;justify-items:center;text-align:center}
.dl-tool .dl-big{font-family:var(--f-display);font-weight:800;font-size:clamp(1.5rem,4vw,2.1rem);color:var(--ink)}
.dl-tool .dl-huge{font-size:clamp(2.6rem,9vw,4.4rem);color:var(--blue);text-align:center;overflow-wrap:anywhere}
.dl-tool .dl-coins{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;max-width:620px}
.dl-tool .dl-coins span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.85rem}
.dl-tool .dl-coins .h{background:#FFE08A;color:#6B4700}.dl-tool .dl-coins .t{background:#D5DEEA;color:#25344D}
.dl-tool .dl-dice{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.dl-tool .dl-die{width:64px;height:64px;border-radius:14px;background:#fff;border:2px solid #06162E;display:grid;place-items:center;font:800 1.5rem var(--f-display);color:var(--ink);box-shadow:0 6px 14px -8px rgba(6,22,46,.5)}
.dl-tool .dl-die.roll{animation:dlroll .45s ease-out}
.dl-tool .dl-die.d6{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:9px;gap:2px;place-items:center}
.dl-tool .dl-die.d6 i{width:11px;height:11px;border-radius:50%}
.dl-tool .dl-die.d6 i.p{background:#06162E}
.dl-tool .dl-dres .dl-picks{text-align:left;justify-self:stretch}
.dl-tool .dl-nums{display:flex;flex-wrap:wrap;gap:6px}
.dl-tool .dl-nums span{border:1px solid #CFE0F5;background:#EEF5FD;color:var(--blue);font-weight:800;border-radius:9px;padding:5px 10px;font-family:var(--f-mono);font-size:.9rem}
.dl-tool .dl-presets{align-self:center}
.dl-tool .dl-teams{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.dl-tool .dl-team{border:1px solid var(--line);border-top:5px solid var(--blue);border-radius:12px;padding:10px 12px;background:#fff}
.dl-tool .dl-team b{display:flex;justify-content:space-between;color:var(--ink)}
.dl-tool .dl-team b small{color:var(--muted)}
.dl-tool .dl-team ol{margin:6px 0 0;padding-left:1.3em;display:grid;gap:3px;font-size:.92rem}
@media (max-width:760px){.dl-tool .dl-wgrid{grid-template-columns:minmax(0,1fr)}.dl-tool .dl-tabs button{padding:7px 2px;font-size:.74rem;flex:1 1 0;display:grid;justify-items:center;gap:1px;min-width:0}.dl-tool .dl-tabs button span{font-size:1.1rem}}
@media (prefers-reduced-motion:reduce){.dl-tool .dl-coin.flip-h,.dl-tool .dl-coin.flip-t,.dl-tool .dl-die.roll,.dl-tool .dl-winner{animation:none}.dl-tool .dl-coin.flip-t{transform:rotateY(180deg)}}
/* ===== Developer and network tools (81-dev-network.js). Selectors use the unique dn- prefix or the tool slug. ===== */
.hn-tool[data-tool="cron-expression-builder"] .tf[hidden],.hn-tool[data-tool="css-gradient-generator"] .tf[hidden]{display:none}
.hn-tool .dn-mono{font-family:var(--f-mono);font-size:.84rem;color:var(--ink);background:none;padding:0}
.hn-tool .dn-break{overflow-wrap:anywhere;word-break:break-word}
.hn-tool .dn-mt{margin-top:10px}
.hn-tool .dn-pad0{padding:0}
.hn-tool .dn-pad0 .t-table{border:0;border-radius:0}
.hn-tool .dn-presets{display:grid;gap:8px}
.hn-tool .dn-callout{margin:0;padding:12px 14px;border-radius:12px;background:#FFF7E8;border:1px solid #F7DDA8;color:var(--ink);line-height:1.55}

/* subnet binary view */
.hn-tool .dn-bin{display:grid;gap:8px;overflow-x:auto}
.hn-tool .dn-bin>div{display:grid;grid-template-columns:110px auto;gap:10px;align-items:center;min-width:max-content}
.hn-tool .dn-bin>div>span{font-size:.82rem;font-weight:700;color:var(--muted)}
.hn-tool .dn-bin code{font-family:var(--f-mono);font-size:.84rem;letter-spacing:.04em}
.hn-tool .dn-bin code b{color:var(--blue);font-weight:700}
.hn-tool .dn-bin code span{color:#7A8BA3}
.hn-tool .dn-bin code i{font-style:normal;color:var(--muted);padding:0 2px}

/* cron */
.hn-tool .dn-cron-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center;padding:16px 18px;border-radius:16px;background:linear-gradient(135deg,#06162E,#0C2244);color:#fff}
.hn-tool .dn-cron-hero code{font-family:var(--f-mono);font-size:1.25rem;color:#7FD6F5;overflow-wrap:anywhere}
.hn-tool .dn-cron-hero p{grid-column:1/-1;margin:0;font-size:1.05rem;font-weight:600;line-height:1.45;color:#DCE8F7}
.hn-tool .dn-cron-hero .t-copy{grid-row:1;grid-column:2}

/* color converter */
.hn-tool .dn-swatch-row{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;align-items:stretch}
.hn-tool .dn-swatch{border-radius:16px;border:1px solid var(--line);min-height:180px;display:flex;align-items:flex-end;padding:12px;background-image:none}
.hn-tool .dn-swatch span{font-family:var(--f-mono);font-weight:700;font-size:1.05rem}
.hn-tool .dn-fmts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.hn-tool .dn-fmt{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:#F8FAFD;min-width:0}
.hn-tool .dn-fmt span{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.hn-tool .dn-fmt code{grid-column:1;font-family:var(--f-mono);font-size:.86rem;color:var(--ink);overflow-wrap:anywhere}
.hn-tool .dn-fmt .t-copy{grid-column:2;grid-row:1/span 2}
.hn-tool .dn-contrast{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:14px}
.hn-tool .dn-sample{border-radius:14px;border:1px solid var(--line);padding:16px}
.hn-tool .dn-sample b{display:block;font-size:24px;line-height:1.2;margin-bottom:6px}
.hn-tool .dn-sample p{margin:0 0 6px;font-size:16px;line-height:1.5;color:inherit}
.hn-tool .dn-sample small{font-size:13px}
.hn-tool .dn-wcs{display:grid;gap:6px;align-content:start}
.hn-tool .dn-wc{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;font-size:.9rem;font-weight:600;color:var(--ink)}
.hn-tool .dn-wc small{color:var(--muted);font-weight:500;font-size:.78rem}
.hn-tool .dn-strip-h{display:flex;justify-content:space-between;align-items:center;margin:4px 0 6px;font-size:.88rem}
.hn-tool .dn-strip{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;margin-bottom:12px}
.hn-tool .dn-strip button{border:0;border-radius:10px;min-height:58px;padding:6px 4px;cursor:pointer;display:grid;align-content:end;gap:1px;font:inherit;text-align:left}
.hn-tool .dn-strip button span{font-size:.72rem;font-weight:700}
.hn-tool .dn-strip button small{font-family:var(--f-mono);font-size:.62rem;opacity:.9}
.hn-tool .dn-chip-sw i{display:inline-block;width:16px;height:16px;border-radius:5px;border:1px solid rgba(0,0,0,.12);flex:none}

/* gradient */
.hn-tool .dn-gprev{height:220px;border-radius:18px;border:1px solid var(--line);background:#0A6CD0}
.hn-tool .dn-stops{display:grid;gap:8px}
.hn-tool .dn-stop{display:grid;grid-template-columns:48px 104px minmax(0,1fr) 46px 40px;gap:10px;align-items:center}
.hn-tool .dn-stop input[type=color]{width:48px;height:44px;border:1px solid var(--line);border-radius:10px;padding:3px;background:#fff;cursor:pointer}
.hn-tool .tf .dn-stop input.dn-hex{height:44px;padding:8px 10px;font-family:var(--f-mono);font-size:.88rem}
.hn-tool .dn-stop input[type=range]{width:100%;accent-color:var(--blue)}
.hn-tool .dn-stop output{font-family:var(--f-mono);font-size:.84rem;color:var(--muted);text-align:right}
.hn-tool .dn-x{width:40px;height:40px;border-radius:10px;border:1px solid var(--line);background:#fff;font-size:1.3rem;line-height:1;color:#B3261E;cursor:pointer}
.hn-tool .dn-x:disabled{opacity:.35;cursor:not-allowed}

/* status codes */
.hn-tool .dn-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hn-tool .dn-code{border:1px solid var(--line);border-left:4px solid #9DB3CC;border-radius:14px;padding:12px 14px;background:#fff;min-width:0}
.hn-tool .dn-code.dn-c2{border-left-color:#13A35B}.hn-tool .dn-code.dn-c3{border-left-color:#E28C00}.hn-tool .dn-code.dn-c4,.hn-tool .dn-code.dn-c5{border-left-color:#D64541}.hn-tool .dn-code.dn-c1{border-left-color:var(--blue)}
.hn-tool .dn-code.seo{background:#F7FAFE}
.hn-tool .dn-code-h{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
.hn-tool .dn-code-h b{font-family:var(--f-display);font-size:1.3rem;color:var(--ink)}
.hn-tool .dn-code-h span:not(.t-badge){font-weight:700;color:var(--ink);margin-right:auto}
.hn-tool .dn-code p{margin:6px 0 0;color:var(--muted);font-size:.9rem;line-height:1.5}
.hn-tool .dn-code p.dn-seo{color:var(--ink)}

/* lorem */
.hn-tool .dn-lorem p,.hn-tool .dn-lorem li{margin:0 0 10px;color:var(--ink);line-height:1.65}
.hn-tool .dn-lorem h4{margin:4px 0 6px;font-size:1.05rem}
.hn-tool .dn-lorem ul{margin:0;padding-left:1.2em}
.hn-tool pre.dn-wrap{white-space:pre-wrap;overflow-wrap:anywhere}

/* hints (dns / ssl / headers) */
.hn-tool .dn-hints{display:grid;gap:0;padding-top:4px;padding-bottom:4px}
.hn-tool .dn-hint{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid var(--line);align-items:start}
.hn-tool .dn-hint:last-child{border-bottom:0}
.hn-tool .dn-hint .t-badge{justify-self:start;margin-top:2px}
.hn-tool .dn-hint b{color:var(--ink);font-size:.95rem}
.hn-tool .dn-hint p{margin:2px 0 0;color:var(--ink);font-size:.9rem;line-height:1.5}
.hn-tool .dn-hint small{display:block;margin-top:3px;color:var(--muted);font-size:.84rem;line-height:1.5}
.hn-tool .dn-hint code{display:block;margin-top:4px;font-size:.8rem;color:#33475F}

/* ssl */
.hn-tool .dn-ssl-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;padding:16px;border-radius:16px;border:1px solid var(--line);background:#F8FAFD}
.hn-tool .dn-ssl-hero.dn-good{background:#ECFBF2;border-color:#BDEBD0}.hn-tool .dn-ssl-hero.dn-warn{background:#FFF7E8;border-color:#F7DDA8}.hn-tool .dn-ssl-hero.dn-bad{background:#FFF1EF;border-color:#F5C6C0}
.hn-tool .dn-ssl-days{width:104px;height:104px;border-radius:50%;background:#fff;border:4px solid currentColor;display:grid;place-content:center;text-align:center;color:var(--blue)}
.hn-tool .dn-good .dn-ssl-days{color:#13A35B}.hn-tool .dn-warn .dn-ssl-days{color:#E28C00}.hn-tool .dn-bad .dn-ssl-days{color:#D64541}
.hn-tool .dn-ssl-days b{font-family:var(--f-display);font-size:2rem;line-height:1}
.hn-tool .dn-ssl-days span{font-size:.72rem;font-weight:700;color:var(--muted)}
.hn-tool .dn-ssl-hero h3{margin:0 0 6px;font-size:1.2rem;overflow-wrap:anywhere}
.hn-tool .dn-ssl-hero p{margin:0 0 4px;display:flex;flex-wrap:wrap;gap:6px}

/* my ip */
.hn-tool .dn-ip-hero{display:grid;gap:6px;justify-items:center;text-align:center;padding:22px 16px;border-radius:18px;background:linear-gradient(135deg,#06162E,#0C2244);color:#DCE8F7}
.hn-tool .dn-ip-hero>span{font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8FB3DA}
.hn-tool .dn-ip-hero>b{font-family:var(--f-mono);font-size:clamp(1.3rem,5vw,2.3rem);color:#fff;overflow-wrap:anywhere;line-height:1.2}
.hn-tool .dn-ip-hero p{margin:0;max-width:560px;color:#F3C7C2;font-weight:600}
.hn-tool .dn-ip-btns{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center}

@media (max-width:760px){
  .hn-tool .dn-swatch-row,.hn-tool .dn-contrast,.hn-tool .dn-codes{grid-template-columns:1fr}
  .hn-tool .dn-swatch{min-height:110px}
  .hn-tool .dn-fmts{grid-template-columns:1fr}
  .hn-tool .dn-strip{grid-template-columns:repeat(5,minmax(0,1fr))}
  .hn-tool .dn-stop{grid-template-columns:44px minmax(0,1fr) 40px;grid-template-areas:"c h x" "r r o"}
  .hn-tool .dn-stop input[type=color]{grid-area:c;width:44px}.hn-tool .dn-stop input.dn-hex{grid-area:h}.hn-tool .dn-stop .dn-x{grid-area:x}
  .hn-tool .dn-stop input[type=range]{grid-area:r}.hn-tool .dn-stop output{grid-area:o}
  .hn-tool .dn-gprev{height:160px}
  .hn-tool .dn-hint{grid-template-columns:1fr;gap:4px}
  .hn-tool .dn-ssl-hero{grid-template-columns:1fr;justify-items:start}
  .hn-tool .dn-cron-hero code{font-size:1.05rem}
}
/* key/value list (mobile friendly alternative to two-column tables) */
.hn-tool .dn-kv{margin:0;display:grid}
.hn-tool .dn-kv>div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:4px 14px;padding:9px 0;border-bottom:1px solid var(--line)}
.hn-tool .dn-kv>div:first-child{padding-top:0}
.hn-tool .dn-kv>div:last-child{border-bottom:0;padding-bottom:0}
.hn-tool .dn-kv dt{font-weight:600;font-size:.88rem;color:var(--muted);overflow-wrap:anywhere}
.hn-tool .dn-kv dd{margin:0;color:var(--ink);font-size:.92rem;overflow-wrap:anywhere;min-width:0}
@media (max-width:560px){.hn-tool .dn-kv>div{grid-template-columns:1fr;gap:2px}}
.hn-tool .dn-pad0 .t-table table{min-width:0}
.hn-tool[data-tool="cron-expression-builder"] .t-table table{min-width:0}
.hn-tool .dn-pad0 .t-table th,.hn-tool .dn-pad0 .t-table td:not(:has(code)),.hn-tool[data-tool="cron-expression-builder"] .t-table th{white-space:nowrap}
.hn-tool .dn-pad0 .t-table th,.hn-tool .dn-pad0 .t-table td{padding-left:10px;padding-right:10px}
/* ===== Developer tools (80-developer.js). All selectors scoped to .hn-tool with dv- classes ===== */
.hn-tool .dv-tabs .t-chip{font-weight:600;font-family:inherit}
.hn-tool .dv-tabs .t-chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.hn-tool .dv-panel{display:grid;gap:16px;min-width:0}
.hn-tool .dv-panel[hidden],.hn-tool .tf[hidden]{display:none}
.hn-tool .dv-h{font-size:1rem;margin:4px 0 0;color:var(--ink)}
.hn-tool .dv-pad{padding:8px 16px 12px}
.hn-tool .dv-code{max-height:360px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.hn-tool .dv-err{display:grid;gap:4px;padding:12px 16px;border-radius:14px;background:#FFF1EF;border:1px solid #F5C6C0;color:#8E1F18}
.hn-tool .dv-err b{font-size:1rem}.hn-tool .dv-err span{font-family:var(--f-mono);font-size:.82rem;font-weight:600}
.hn-tool .dv-err p{margin:0;color:#8E1F18}
.hn-tool .dv-caret{white-space:pre;color:#FFD9D3}
.hn-tool .dv-ok{padding:10px 16px;border-radius:14px;background:#ECFBF2;border:1px solid #BDEBD0;color:#0E7A43}
.hn-tool .dv-imgprev{display:grid;place-items:center;background:repeating-conic-gradient(#EEF2F7 0% 25%,#fff 0% 50%) 50%/20px 20px}
.hn-tool .dv-imgprev img{max-width:100%;max-height:320px;height:auto;display:block}
.hn-tool .dv-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
/* hash */
.hn-tool .dv-hashes{display:grid;gap:10px}
.hn-tool .dv-hash{border:1px solid var(--line);border-radius:14px;padding:10px 14px;display:grid;gap:6px;background:#fff;min-width:0}
.hn-tool .dv-hash.hit{border-color:#13A35B;background:#F2FCF6;box-shadow:0 0 0 3px rgba(19,163,91,.12)}
.hn-tool .dv-hash-h{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.hn-tool .dv-hash-h b{margin-right:auto;font-size:.92rem;color:var(--ink)}
.hn-tool .dv-hash code{font-family:var(--f-mono);font-size:.84rem;color:var(--ink);overflow-wrap:anywhere;word-break:break-all;background:#F4F8FD;border-radius:8px;padding:8px 10px}
.hn-tool .dv-hash small{color:var(--muted);font-size:.78rem}
/* jwt */
.hn-tool .dv-jwt{font-family:var(--f-mono);font-size:.84rem;line-height:1.55;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#FBFCFE;overflow-wrap:anywhere;word-break:break-all;color:var(--muted)}
.hn-tool .dv-jwt .p1{color:#D6336C}.hn-tool .dv-jwt .p2{color:#7B4FD6}.hn-tool .dv-jwt .p3{color:#0A8FB8}
.hn-tool .dv-sig{border:1px solid var(--line);border-radius:14px;padding:12px 16px;background:#F8FAFD}
.hn-tool .dv-sig p{margin:6px 0 0;color:var(--ink)}
/* regex */
.hn-tool .dv-lib{display:grid;gap:8px}
.hn-tool .dv-lib .t-chip{font-family:inherit;font-size:.82rem;padding:5px 11px}
.hn-tool .dv-hl{font-family:var(--f-mono);font-size:.88rem;white-space:pre-wrap;line-height:1.75;max-height:420px;overflow:auto}
.hn-tool .dv-hl mark{border-radius:4px;padding:1px 0;color:var(--ink)}
.hn-tool .dv-m0{background:#CFE5FF}.hn-tool .dv-m1{background:#FFE8A3}
.hn-tool .dv-empty{display:inline-block;width:2px;height:1em;background:#D64541;vertical-align:middle}
.hn-tool .dv-g{border-bottom:3px solid;border-radius:2px;font-weight:600}
.hn-tool .dv-g1{border-color:#13A35B}.hn-tool .dv-g2{border-color:#D6336C}.hn-tool .dv-g3{border-color:#7B4FD6}.hn-tool .dv-g4{border-color:#E28C00}
.hn-tool .t-table .dv-g{display:inline-block;font-size:.74rem;padding:0 4px;margin:2px 0}
.hn-tool .dv-explain{border:1px solid var(--line);border-radius:14px;padding:12px 16px;background:#FBFCFE}
.hn-tool .dv-explain summary{cursor:pointer;font-weight:700;color:var(--ink)}
.hn-tool .dv-tokens{display:grid;gap:4px;margin-top:10px}
.hn-tool .dv-tok{display:grid;grid-template-columns:minmax(64px,auto) minmax(0,1fr);gap:10px;align-items:baseline;padding:5px 0 5px calc(var(--l,0) * 18px);border-bottom:1px dashed var(--line);font-size:.88rem;color:var(--muted)}
.hn-tool .dv-tok code{font-family:var(--f-mono);font-size:.82rem;color:var(--blue);background:#EEF5FD;border-radius:6px;padding:2px 6px;overflow-wrap:anywhere;justify-self:start}
/* uuid */
.hn-tool .dv-one{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:14px 16px;border-radius:14px;background:#EEF5FD;border:1px solid #CFE0F5}
.hn-tool .dv-one code{font-family:var(--f-mono);font-size:clamp(.9rem,2.4vw,1.2rem);font-weight:600;color:var(--ink);overflow-wrap:anywhere;flex:1 1 260px}
.hn-tool .dv-insp{border-top:1px solid var(--line);padding-top:16px}
/* timestamp */
.hn-tool .dv-now{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px 18px;align-items:center;padding:14px 18px;border-radius:16px;background:linear-gradient(135deg,#06162E,#0C2244);color:#DCE8F7}
.hn-tool .dv-now span{display:block;font-size:.76rem;color:#9FB4D3;font-weight:600}
.hn-tool .dv-now b{font-family:var(--f-mono);font-size:clamp(1.4rem,3.4vw,1.9rem);color:#fff;letter-spacing:.02em}
.hn-tool .dv-now code{font-family:var(--f-mono);font-size:.92rem;color:#fff;overflow-wrap:anywhere}
.hn-tool .dv-now-a{display:flex;flex-wrap:wrap;gap:6px}
.hn-tool .t-table code{font-family:var(--f-mono);font-size:.84rem;overflow-wrap:anywhere}
/* diff */
.hn-tool .dv-diffwrap{overflow:auto;max-height:640px;border:1px solid var(--line);border-radius:14px}
.hn-tool .dv-diff{width:100%;border-collapse:collapse;table-layout:fixed;font-family:var(--f-mono);font-size:.82rem;line-height:1.55}
.hn-tool .dv-diff th{position:sticky;top:0;background:#F4F8FD;text-align:left;padding:8px 10px;font-family:inherit;font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--line)}
.hn-tool .dv-diff td{padding:2px 8px;vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;color:var(--ink)}
.hn-tool .dv-diff .dv-cn{width:44px}.hn-tool .dv-diff .dv-cs{width:22px}
.hn-tool .dv-diff td.dv-ln{color:#93A1B5;text-align:right;user-select:none;background:#FAFBFD;font-size:.76rem}
.hn-tool .dv-diff td.dv-sg{color:#93A1B5;user-select:none;text-align:center}
.hn-tool .dv-side td.dv-l{border-right:1px solid var(--line)}
.hn-tool .dv-side tr.dv-del td.dv-l,.hn-tool .dv-side tr.dv-mod td.dv-l,.hn-tool .dv-inline tr.dv-del td{background:#FFF1EF}
.hn-tool .dv-side tr.dv-ins td.dv-r,.hn-tool .dv-side tr.dv-mod td.dv-r,.hn-tool .dv-inline tr.dv-ins td{background:#EDFBF2}
.hn-tool .dv-side tr.dv-ins td.dv-l,.hn-tool .dv-side tr.dv-del td.dv-r{background:#F6F7F9}
.hn-tool .dv-diff tr.dv-skip td{background:#EEF5FD;color:var(--blue);font-family:inherit;font-size:.78rem;text-align:center;padding:4px}
.hn-tool .dv-diff del,.hn-tool .dv-flow del{background:#FFC9C2;color:#8E1F18;text-decoration:line-through;text-decoration-color:rgba(142,31,24,.45);border-radius:3px}
.hn-tool .dv-diff ins,.hn-tool .dv-flow ins{background:#B5EBC9;color:#0B5A31;text-decoration:none;border-radius:3px}
.hn-tool .dv-flow{white-space:pre-wrap;font-family:var(--f-mono);font-size:.86rem;max-height:560px;overflow:auto}
/* markdown */
.hn-tool .dv-md{display:grid;gap:12px;min-width:0}
.hn-tool .dv-mdbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:14px;background:#F4F8FD}
.hn-tool .dv-mdbar button{min-width:38px;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}
.hn-tool .dv-mdbar button:hover{border-color:var(--blue);color:var(--blue)}
.hn-tool .dv-mdbar [data-md=italic]{font-style:italic}.hn-tool .dv-mdbar [data-md=strike]{text-decoration:line-through}
.hn-tool .dv-mdview{display:inline-flex;margin-left:auto;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.hn-tool .dv-mdview button{border:0;border-radius:0;height:34px}
.hn-tool .dv-mdview button.on{background:var(--blue);color:#fff}
.hn-tool .dv-mdpanes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:420px}
.hn-tool .dv-md.dv-v-write .dv-mdpanes,.hn-tool .dv-md.dv-v-preview .dv-mdpanes{grid-template-columns:1fr}
.hn-tool .dv-md.dv-v-write .dv-mdout,.hn-tool .dv-md.dv-v-preview .dv-mdin{display:none}
.hn-tool .dv-mdin{width:100%;min-height:420px;resize:vertical;border:1px solid var(--line);border-radius:14px;padding:14px 16px;font-family:var(--f-mono);font-size:.9rem;line-height:1.6;color:var(--ink);background:#F8FAFD}
.hn-tool .dv-mdin:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,108,208,.14);background:#fff}
.hn-tool .dv-mdout{border:1px solid var(--line);border-radius:14px;padding:6px 20px;background:#fff;overflow:auto;max-height:680px;min-width:0}
.hn-tool .dv-prose{color:var(--ink);line-height:1.7;overflow-wrap:anywhere}
.hn-tool .dv-prose h1,.hn-tool .dv-prose h2,.hn-tool .dv-prose h3{line-height:1.25;margin:1em 0 .45em}
.hn-tool .dv-prose h1{font-size:1.6rem}.hn-tool .dv-prose h2{font-size:1.3rem}.hn-tool .dv-prose h3{font-size:1.08rem}
.hn-tool .dv-prose p,.hn-tool .dv-prose ul,.hn-tool .dv-prose ol{margin:0 0 .9em}
.hn-tool .dv-prose ul,.hn-tool .dv-prose ol{padding-left:1.4em}
.hn-tool .dv-prose li>input[type=checkbox]{margin-right:6px}
.hn-tool .dv-prose a{color:var(--blue);text-decoration:underline}
.hn-tool .dv-prose code{font-family:var(--f-mono);font-size:.86em;background:#EEF3F9;padding:2px 5px;border-radius:5px}
.hn-tool .dv-prose pre{background:#0B1730;color:#DCE8F7;padding:12px 14px;border-radius:10px;overflow:auto}
.hn-tool .dv-prose pre code{background:none;padding:0;color:inherit}
.hn-tool .dv-prose blockquote{margin:0 0 .9em;padding:6px 14px;border-left:4px solid var(--cyan,#00AEE6);background:#F4F8FD;color:var(--muted)}
.hn-tool .dv-prose table{border-collapse:collapse;width:100%;margin:0 0 .9em;font-size:.92rem;display:block;overflow-x:auto}
.hn-tool .dv-prose th,.hn-tool .dv-prose td{border:1px solid var(--line);padding:7px 10px;text-align:left}
.hn-tool .dv-prose th{background:#F4F8FD}
.hn-tool .dv-prose img{max-width:100%;height:auto}
.hn-tool .dv-prose hr{border:0;border-top:1px solid var(--line);margin:1.4em 0}
.hn-tool .dv-mdfoot{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:space-between;font-size:.84rem;color:var(--muted)}
.hn-tool .dv-mdact .btn{min-height:42px}
.hn-tool .dv-file{cursor:pointer}
/* text case */
.hn-tool .dv-cases{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:10px}
.hn-tool .dv-case{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;min-width:0;display:grid;grid-template-rows:auto 1fr}
.hn-tool .dv-case-h{display:flex;gap:6px;align-items:center;padding:8px 12px;background:#F4F8FD;border-bottom:1px solid var(--line)}
.hn-tool .dv-case-h b{margin-right:auto;font-size:.88rem;color:var(--ink)}
.hn-tool .dv-case-b{padding:10px 12px;font-size:.9rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;max-height:150px;overflow:auto;color:var(--ink)}
@media (max-width:760px){
  .hn-tool .dv-two,.hn-tool .dv-mdpanes{grid-template-columns:1fr}
  .hn-tool .dv-mdin,.hn-tool .dv-mdpanes{min-height:300px}
  .hn-tool .dv-mdview{margin-left:0}
  .hn-tool .dv-diff{font-size:.76rem}
  .hn-tool .dv-diff .dv-cn{width:30px}
  .hn-tool .dv-diff td{padding:2px 5px}
  .hn-tool .dv-mdact .btn{flex:1 1 calc(50% - 10px)}
}
/* compact stats and tables that wrap on phones */
.hn-tool[data-tool="base64-encoder-decoder"] .t-stat b,.hn-tool[data-tool="timestamp-converter"] .t-stat b,.hn-tool[data-tool="jwt-decoder"] .t-stat b,.hn-tool[data-tool="hash-generator"] .t-stat b,.hn-tool[data-tool="json-yaml-xml-converter"] .t-stat b,.hn-tool[data-tool="uuid-generator"] .t-stat b{font-size:1.15rem;overflow-wrap:break-word}
.hn-tool .dv-imgprev img{min-width:64px;image-rendering:pixelated}
@media (max-width:640px){
  .hn-tool[data-tool="timestamp-converter"] .t-table table,.hn-tool[data-tool="jwt-decoder"] .t-table table,.hn-tool[data-tool="uuid-generator"] .t-table table,.hn-tool[data-tool="regex-tester"] .t-table table{min-width:0;font-size:.82rem}
  .hn-tool[data-tool="timestamp-converter"] .t-table th,.hn-tool[data-tool="timestamp-converter"] .t-table td,.hn-tool[data-tool="jwt-decoder"] .t-table td,.hn-tool[data-tool="regex-tester"] .t-table td{padding:8px 8px;overflow-wrap:anywhere}
}
/* Everyday tools (60-everyday.js). Every selector is scoped to its tool with .hn-tool[data-tool="slug"]. */
.hn-tool[data-tool="weather-forecast"] >*,.hn-tool[data-tool="qr-code-generator"] >*,.hn-tool[data-tool="qr-code-scanner"] >*,.hn-tool[data-tool="barcode-generator"] >*,.hn-tool[data-tool="currency-converter"] >*,.hn-tool[data-tool="world-clock"] >*,.hn-tool[data-tool="unit-converter"] >*,.hn-tool[data-tool="password-generator"] >*,.hn-tool[data-tool="notes-checklist"] >*,.hn-tool[data-tool="expense-tracker"] >*{min-width:0}
.hn-tool[data-tool="weather-forecast"] .ev-ned>*,.hn-tool[data-tool="weather-forecast"] .ev-edash>*,.hn-tool[data-tool="weather-forecast"] .ev-scan>*,.hn-tool[data-tool="weather-forecast"] .ev-res>*,.hn-tool[data-tool="qr-code-generator"] .ev-ned>*,.hn-tool[data-tool="qr-code-generator"] .ev-edash>*,.hn-tool[data-tool="qr-code-generator"] .ev-scan>*,.hn-tool[data-tool="qr-code-generator"] .ev-res>*,.hn-tool[data-tool="qr-code-scanner"] .ev-ned>*,.hn-tool[data-tool="qr-code-scanner"] .ev-edash>*,.hn-tool[data-tool="qr-code-scanner"] .ev-scan>*,.hn-tool[data-tool="qr-code-scanner"] .ev-res>*,.hn-tool[data-tool="barcode-generator"] .ev-ned>*,.hn-tool[data-tool="barcode-generator"] .ev-edash>*,.hn-tool[data-tool="barcode-generator"] .ev-scan>*,.hn-tool[data-tool="barcode-generator"] .ev-res>*,.hn-tool[data-tool="currency-converter"] .ev-ned>*,.hn-tool[data-tool="currency-converter"] .ev-edash>*,.hn-tool[data-tool="currency-converter"] .ev-scan>*,.hn-tool[data-tool="currency-converter"] .ev-res>*,.hn-tool[data-tool="world-clock"] .ev-ned>*,.hn-tool[data-tool="world-clock"] .ev-edash>*,.hn-tool[data-tool="world-clock"] .ev-scan>*,.hn-tool[data-tool="world-clock"] .ev-res>*,.hn-tool[data-tool="unit-converter"] .ev-ned>*,.hn-tool[data-tool="unit-converter"] .ev-edash>*,.hn-tool[data-tool="unit-converter"] .ev-scan>*,.hn-tool[data-tool="unit-converter"] .ev-res>*,.hn-tool[data-tool="password-generator"] .ev-ned>*,.hn-tool[data-tool="password-generator"] .ev-edash>*,.hn-tool[data-tool="password-generator"] .ev-scan>*,.hn-tool[data-tool="password-generator"] .ev-res>*,.hn-tool[data-tool="notes-checklist"] .ev-ned>*,.hn-tool[data-tool="notes-checklist"] .ev-edash>*,.hn-tool[data-tool="notes-checklist"] .ev-scan>*,.hn-tool[data-tool="notes-checklist"] .ev-res>*,.hn-tool[data-tool="expense-tracker"] .ev-ned>*,.hn-tool[data-tool="expense-tracker"] .ev-edash>*,.hn-tool[data-tool="expense-tracker"] .ev-scan>*,.hn-tool[data-tool="expense-tracker"] .ev-res>*{min-width:0}
.hn-tool[data-tool="weather-forecast"] .ev-actions,.hn-tool[data-tool="qr-code-generator"] .ev-actions,.hn-tool[data-tool="qr-code-scanner"] .ev-actions,.hn-tool[data-tool="barcode-generator"] .ev-actions,.hn-tool[data-tool="currency-converter"] .ev-actions,.hn-tool[data-tool="world-clock"] .ev-actions,.hn-tool[data-tool="unit-converter"] .ev-actions,.hn-tool[data-tool="password-generator"] .ev-actions,.hn-tool[data-tool="notes-checklist"] .ev-actions,.hn-tool[data-tool="expense-tracker"] .ev-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.hn-tool[data-tool="weather-forecast"] .ev-row,.hn-tool[data-tool="qr-code-generator"] .ev-row,.hn-tool[data-tool="qr-code-scanner"] .ev-row,.hn-tool[data-tool="barcode-generator"] .ev-row,.hn-tool[data-tool="currency-converter"] .ev-row,.hn-tool[data-tool="world-clock"] .ev-row,.hn-tool[data-tool="unit-converter"] .ev-row,.hn-tool[data-tool="password-generator"] .ev-row,.hn-tool[data-tool="notes-checklist"] .ev-row,.hn-tool[data-tool="expense-tracker"] .ev-row{display:flex;gap:8px;align-items:stretch;min-width:0}
.hn-tool[data-tool="weather-forecast"] .ev-row input,.hn-tool[data-tool="qr-code-generator"] .ev-row input,.hn-tool[data-tool="qr-code-scanner"] .ev-row input,.hn-tool[data-tool="barcode-generator"] .ev-row input,.hn-tool[data-tool="currency-converter"] .ev-row input,.hn-tool[data-tool="world-clock"] .ev-row input,.hn-tool[data-tool="unit-converter"] .ev-row input,.hn-tool[data-tool="password-generator"] .ev-row input,.hn-tool[data-tool="notes-checklist"] .ev-row input,.hn-tool[data-tool="expense-tracker"] .ev-row input{flex:1 1 0;width:0;min-width:0;height:48px;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font:inherit;color:var(--ink);background:#F8FAFD}
.hn-tool[data-tool="weather-forecast"] .ev-row input:focus,.hn-tool[data-tool="qr-code-generator"] .ev-row input:focus,.hn-tool[data-tool="qr-code-scanner"] .ev-row input:focus,.hn-tool[data-tool="barcode-generator"] .ev-row input:focus,.hn-tool[data-tool="currency-converter"] .ev-row input:focus,.hn-tool[data-tool="world-clock"] .ev-row input:focus,.hn-tool[data-tool="unit-converter"] .ev-row input:focus,.hn-tool[data-tool="password-generator"] .ev-row input:focus,.hn-tool[data-tool="notes-checklist"] .ev-row input:focus,.hn-tool[data-tool="expense-tracker"] .ev-row input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,108,208,.14);background:#fff}
.hn-tool[data-tool="weather-forecast"] .ev-warn,.hn-tool[data-tool="qr-code-generator"] .ev-warn,.hn-tool[data-tool="qr-code-scanner"] .ev-warn,.hn-tool[data-tool="barcode-generator"] .ev-warn,.hn-tool[data-tool="currency-converter"] .ev-warn,.hn-tool[data-tool="world-clock"] .ev-warn,.hn-tool[data-tool="unit-converter"] .ev-warn,.hn-tool[data-tool="password-generator"] .ev-warn,.hn-tool[data-tool="notes-checklist"] .ev-warn,.hn-tool[data-tool="expense-tracker"] .ev-warn{margin:0;padding:10px 14px;border-radius:12px;background:#FFF7E8;border:1px solid #F7DDA8;color:#7A4800;font-size:.9rem;line-height:1.5}
.hn-tool[data-tool="weather-forecast"] .ev-ok,.hn-tool[data-tool="qr-code-generator"] .ev-ok,.hn-tool[data-tool="qr-code-scanner"] .ev-ok,.hn-tool[data-tool="barcode-generator"] .ev-ok,.hn-tool[data-tool="currency-converter"] .ev-ok,.hn-tool[data-tool="world-clock"] .ev-ok,.hn-tool[data-tool="unit-converter"] .ev-ok,.hn-tool[data-tool="password-generator"] .ev-ok,.hn-tool[data-tool="notes-checklist"] .ev-ok,.hn-tool[data-tool="expense-tracker"] .ev-ok{margin:0;padding:10px 14px;border-radius:12px;background:#ECFBF2;border:1px solid #BDEBD0;color:#0E7A43;font-size:.9rem;font-weight:600}
.hn-tool[data-tool="weather-forecast"] .ev-err,.hn-tool[data-tool="qr-code-generator"] .ev-err,.hn-tool[data-tool="qr-code-scanner"] .ev-err,.hn-tool[data-tool="barcode-generator"] .ev-err,.hn-tool[data-tool="currency-converter"] .ev-err,.hn-tool[data-tool="world-clock"] .ev-err,.hn-tool[data-tool="unit-converter"] .ev-err,.hn-tool[data-tool="password-generator"] .ev-err,.hn-tool[data-tool="notes-checklist"] .ev-err,.hn-tool[data-tool="expense-tracker"] .ev-err{color:#B3261E;font-weight:600}
.hn-tool[data-tool="weather-forecast"] .ev-h,.hn-tool[data-tool="qr-code-generator"] .ev-h,.hn-tool[data-tool="qr-code-scanner"] .ev-h,.hn-tool[data-tool="barcode-generator"] .ev-h,.hn-tool[data-tool="currency-converter"] .ev-h,.hn-tool[data-tool="world-clock"] .ev-h,.hn-tool[data-tool="unit-converter"] .ev-h,.hn-tool[data-tool="password-generator"] .ev-h,.hn-tool[data-tool="notes-checklist"] .ev-h,.hn-tool[data-tool="expense-tracker"] .ev-h{display:block;margin:0 0 8px;color:var(--ink);font-size:.95rem}
.hn-tool[data-tool="weather-forecast"] .ev-sub,.hn-tool[data-tool="qr-code-generator"] .ev-sub,.hn-tool[data-tool="qr-code-scanner"] .ev-sub,.hn-tool[data-tool="barcode-generator"] .ev-sub,.hn-tool[data-tool="currency-converter"] .ev-sub,.hn-tool[data-tool="world-clock"] .ev-sub,.hn-tool[data-tool="unit-converter"] .ev-sub,.hn-tool[data-tool="password-generator"] .ev-sub,.hn-tool[data-tool="notes-checklist"] .ev-sub,.hn-tool[data-tool="expense-tracker"] .ev-sub{display:grid;gap:8px;min-width:0}
.hn-tool[data-tool="weather-forecast"] .ev-sub>b,.hn-tool[data-tool="qr-code-generator"] .ev-sub>b,.hn-tool[data-tool="qr-code-scanner"] .ev-sub>b,.hn-tool[data-tool="barcode-generator"] .ev-sub>b,.hn-tool[data-tool="currency-converter"] .ev-sub>b,.hn-tool[data-tool="world-clock"] .ev-sub>b,.hn-tool[data-tool="unit-converter"] .ev-sub>b,.hn-tool[data-tool="password-generator"] .ev-sub>b,.hn-tool[data-tool="notes-checklist"] .ev-sub>b,.hn-tool[data-tool="expense-tracker"] .ev-sub>b{color:var(--ink);font-size:.95rem}
.hn-tool[data-tool="weather-forecast"] .ev-seg,.hn-tool[data-tool="qr-code-generator"] .ev-seg,.hn-tool[data-tool="qr-code-scanner"] .ev-seg,.hn-tool[data-tool="barcode-generator"] .ev-seg,.hn-tool[data-tool="currency-converter"] .ev-seg,.hn-tool[data-tool="world-clock"] .ev-seg,.hn-tool[data-tool="unit-converter"] .ev-seg,.hn-tool[data-tool="password-generator"] .ev-seg,.hn-tool[data-tool="notes-checklist"] .ev-seg,.hn-tool[data-tool="expense-tracker"] .ev-seg{display:inline-flex;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#F8FAFD;flex:none}
.hn-tool[data-tool="weather-forecast"] .ev-seg button,.hn-tool[data-tool="qr-code-generator"] .ev-seg button,.hn-tool[data-tool="qr-code-scanner"] .ev-seg button,.hn-tool[data-tool="barcode-generator"] .ev-seg button,.hn-tool[data-tool="currency-converter"] .ev-seg button,.hn-tool[data-tool="world-clock"] .ev-seg button,.hn-tool[data-tool="unit-converter"] .ev-seg button,.hn-tool[data-tool="password-generator"] .ev-seg button,.hn-tool[data-tool="notes-checklist"] .ev-seg button,.hn-tool[data-tool="expense-tracker"] .ev-seg button{border:0;background:transparent;padding:8px 14px;min-height:40px;font:inherit;font-weight:700;font-size:.88rem;color:var(--muted);cursor:pointer}
.hn-tool[data-tool="weather-forecast"] .ev-seg button.on,.hn-tool[data-tool="qr-code-generator"] .ev-seg button.on,.hn-tool[data-tool="qr-code-scanner"] .ev-seg button.on,.hn-tool[data-tool="barcode-generator"] .ev-seg button.on,.hn-tool[data-tool="currency-converter"] .ev-seg button.on,.hn-tool[data-tool="world-clock"] .ev-seg button.on,.hn-tool[data-tool="unit-converter"] .ev-seg button.on,.hn-tool[data-tool="password-generator"] .ev-seg button.on,.hn-tool[data-tool="notes-checklist"] .ev-seg button.on,.hn-tool[data-tool="expense-tracker"] .ev-seg button.on{background:var(--blue);color:#fff}
.hn-tool[data-tool="weather-forecast"] .ev-file,.hn-tool[data-tool="qr-code-generator"] .ev-file,.hn-tool[data-tool="qr-code-scanner"] .ev-file,.hn-tool[data-tool="barcode-generator"] .ev-file,.hn-tool[data-tool="currency-converter"] .ev-file,.hn-tool[data-tool="world-clock"] .ev-file,.hn-tool[data-tool="unit-converter"] .ev-file,.hn-tool[data-tool="password-generator"] .ev-file,.hn-tool[data-tool="notes-checklist"] .ev-file,.hn-tool[data-tool="expense-tracker"] .ev-file{position:relative;overflow:hidden;cursor:pointer}
.hn-tool[data-tool="weather-forecast"] .ev-file input,.hn-tool[data-tool="qr-code-generator"] .ev-file input,.hn-tool[data-tool="qr-code-scanner"] .ev-file input,.hn-tool[data-tool="barcode-generator"] .ev-file input,.hn-tool[data-tool="currency-converter"] .ev-file input,.hn-tool[data-tool="world-clock"] .ev-file input,.hn-tool[data-tool="unit-converter"] .ev-file input,.hn-tool[data-tool="password-generator"] .ev-file input,.hn-tool[data-tool="notes-checklist"] .ev-file input,.hn-tool[data-tool="expense-tracker"] .ev-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.hn-tool[data-tool="weather-forecast"] .ev-x,.hn-tool[data-tool="qr-code-generator"] .ev-x,.hn-tool[data-tool="qr-code-scanner"] .ev-x,.hn-tool[data-tool="barcode-generator"] .ev-x,.hn-tool[data-tool="currency-converter"] .ev-x,.hn-tool[data-tool="world-clock"] .ev-x,.hn-tool[data-tool="unit-converter"] .ev-x,.hn-tool[data-tool="password-generator"] .ev-x,.hn-tool[data-tool="notes-checklist"] .ev-x,.hn-tool[data-tool="expense-tracker"] .ev-x{border:0;background:transparent;color:var(--muted);font-size:1.3rem;line-height:1;width:34px;height:34px;border-radius:9px;cursor:pointer;flex:none}
.hn-tool[data-tool="weather-forecast"] .ev-x:hover,.hn-tool[data-tool="qr-code-generator"] .ev-x:hover,.hn-tool[data-tool="qr-code-scanner"] .ev-x:hover,.hn-tool[data-tool="barcode-generator"] .ev-x:hover,.hn-tool[data-tool="currency-converter"] .ev-x:hover,.hn-tool[data-tool="world-clock"] .ev-x:hover,.hn-tool[data-tool="unit-converter"] .ev-x:hover,.hn-tool[data-tool="password-generator"] .ev-x:hover,.hn-tool[data-tool="notes-checklist"] .ev-x:hover,.hn-tool[data-tool="expense-tracker"] .ev-x:hover{background:#FFF1EF;color:#B3261E}
.hn-tool[data-tool="weather-forecast"] .ev-det,.hn-tool[data-tool="qr-code-generator"] .ev-det,.hn-tool[data-tool="qr-code-scanner"] .ev-det,.hn-tool[data-tool="barcode-generator"] .ev-det,.hn-tool[data-tool="currency-converter"] .ev-det,.hn-tool[data-tool="world-clock"] .ev-det,.hn-tool[data-tool="unit-converter"] .ev-det,.hn-tool[data-tool="password-generator"] .ev-det,.hn-tool[data-tool="notes-checklist"] .ev-det,.hn-tool[data-tool="expense-tracker"] .ev-det{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.hn-tool[data-tool="weather-forecast"] .ev-det>summary,.hn-tool[data-tool="qr-code-generator"] .ev-det>summary,.hn-tool[data-tool="qr-code-scanner"] .ev-det>summary,.hn-tool[data-tool="barcode-generator"] .ev-det>summary,.hn-tool[data-tool="currency-converter"] .ev-det>summary,.hn-tool[data-tool="world-clock"] .ev-det>summary,.hn-tool[data-tool="unit-converter"] .ev-det>summary,.hn-tool[data-tool="password-generator"] .ev-det>summary,.hn-tool[data-tool="notes-checklist"] .ev-det>summary,.hn-tool[data-tool="expense-tracker"] .ev-det>summary{cursor:pointer;padding:12px 14px;font-weight:700;color:var(--ink);background:#F4F8FD}
.hn-tool[data-tool="weather-forecast"] .ev-det>*:not(summary),.hn-tool[data-tool="qr-code-generator"] .ev-det>*:not(summary),.hn-tool[data-tool="qr-code-scanner"] .ev-det>*:not(summary),.hn-tool[data-tool="barcode-generator"] .ev-det>*:not(summary),.hn-tool[data-tool="currency-converter"] .ev-det>*:not(summary),.hn-tool[data-tool="world-clock"] .ev-det>*:not(summary),.hn-tool[data-tool="unit-converter"] .ev-det>*:not(summary),.hn-tool[data-tool="password-generator"] .ev-det>*:not(summary),.hn-tool[data-tool="notes-checklist"] .ev-det>*:not(summary),.hn-tool[data-tool="expense-tracker"] .ev-det>*:not(summary){margin:12px 14px}
.hn-tool[data-tool="weather-forecast"] .ev-det .t-code,.hn-tool[data-tool="qr-code-generator"] .ev-det .t-code,.hn-tool[data-tool="qr-code-scanner"] .ev-det .t-code,.hn-tool[data-tool="barcode-generator"] .ev-det .t-code,.hn-tool[data-tool="currency-converter"] .ev-det .t-code,.hn-tool[data-tool="world-clock"] .ev-det .t-code,.hn-tool[data-tool="unit-converter"] .ev-det .t-code,.hn-tool[data-tool="password-generator"] .ev-det .t-code,.hn-tool[data-tool="notes-checklist"] .ev-det .t-code,.hn-tool[data-tool="expense-tracker"] .ev-det .t-code{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px}
.hn-tool[data-tool="weather-forecast"] .ev-cx,.hn-tool[data-tool="qr-code-generator"] .ev-cx,.hn-tool[data-tool="qr-code-scanner"] .ev-cx,.hn-tool[data-tool="barcode-generator"] .ev-cx,.hn-tool[data-tool="currency-converter"] .ev-cx,.hn-tool[data-tool="world-clock"] .ev-cx,.hn-tool[data-tool="unit-converter"] .ev-cx,.hn-tool[data-tool="password-generator"] .ev-cx,.hn-tool[data-tool="notes-checklist"] .ev-cx,.hn-tool[data-tool="expense-tracker"] .ev-cx{display:grid;gap:4px;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,#06162E,#0C2244);color:#DCE8F7;min-width:0}
.hn-tool[data-tool="weather-forecast"] .ev-cx>span,.hn-tool[data-tool="qr-code-generator"] .ev-cx>span,.hn-tool[data-tool="qr-code-scanner"] .ev-cx>span,.hn-tool[data-tool="barcode-generator"] .ev-cx>span,.hn-tool[data-tool="currency-converter"] .ev-cx>span,.hn-tool[data-tool="world-clock"] .ev-cx>span,.hn-tool[data-tool="unit-converter"] .ev-cx>span,.hn-tool[data-tool="password-generator"] .ev-cx>span,.hn-tool[data-tool="notes-checklist"] .ev-cx>span,.hn-tool[data-tool="expense-tracker"] .ev-cx>span{font-size:.95rem;color:#A8BAD3;overflow-wrap:anywhere}
.hn-tool[data-tool="weather-forecast"] .ev-cx>b,.hn-tool[data-tool="qr-code-generator"] .ev-cx>b,.hn-tool[data-tool="qr-code-scanner"] .ev-cx>b,.hn-tool[data-tool="barcode-generator"] .ev-cx>b,.hn-tool[data-tool="currency-converter"] .ev-cx>b,.hn-tool[data-tool="world-clock"] .ev-cx>b,.hn-tool[data-tool="unit-converter"] .ev-cx>b,.hn-tool[data-tool="password-generator"] .ev-cx>b,.hn-tool[data-tool="notes-checklist"] .ev-cx>b,.hn-tool[data-tool="expense-tracker"] .ev-cx>b{font-family:var(--f-display);font-size:clamp(1.7rem,5vw,2.6rem);line-height:1.1;color:#fff;overflow-wrap:anywhere}
.hn-tool[data-tool="weather-forecast"] .ev-cx>b small,.hn-tool[data-tool="qr-code-generator"] .ev-cx>b small,.hn-tool[data-tool="qr-code-scanner"] .ev-cx>b small,.hn-tool[data-tool="barcode-generator"] .ev-cx>b small,.hn-tool[data-tool="currency-converter"] .ev-cx>b small,.hn-tool[data-tool="world-clock"] .ev-cx>b small,.hn-tool[data-tool="unit-converter"] .ev-cx>b small,.hn-tool[data-tool="password-generator"] .ev-cx>b small,.hn-tool[data-tool="notes-checklist"] .ev-cx>b small,.hn-tool[data-tool="expense-tracker"] .ev-cx>b small{font-size:.5em;color:#00AEE6}
.hn-tool[data-tool="weather-forecast"] .ev-cx>em,.hn-tool[data-tool="qr-code-generator"] .ev-cx>em,.hn-tool[data-tool="qr-code-scanner"] .ev-cx>em,.hn-tool[data-tool="barcode-generator"] .ev-cx>em,.hn-tool[data-tool="currency-converter"] .ev-cx>em,.hn-tool[data-tool="world-clock"] .ev-cx>em,.hn-tool[data-tool="unit-converter"] .ev-cx>em,.hn-tool[data-tool="password-generator"] .ev-cx>em,.hn-tool[data-tool="notes-checklist"] .ev-cx>em,.hn-tool[data-tool="expense-tracker"] .ev-cx>em{font-style:normal;color:#A8BAD3}
.hn-tool[data-tool="weather-forecast"] .ev-cx-r,.hn-tool[data-tool="qr-code-generator"] .ev-cx-r,.hn-tool[data-tool="qr-code-scanner"] .ev-cx-r,.hn-tool[data-tool="barcode-generator"] .ev-cx-r,.hn-tool[data-tool="currency-converter"] .ev-cx-r,.hn-tool[data-tool="world-clock"] .ev-cx-r,.hn-tool[data-tool="unit-converter"] .ev-cx-r,.hn-tool[data-tool="password-generator"] .ev-cx-r,.hn-tool[data-tool="notes-checklist"] .ev-cx-r,.hn-tool[data-tool="expense-tracker"] .ev-cx-r{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:8px;padding-top:10px;border-top:1px solid rgba(231,240,251,.18);font-family:var(--f-mono);font-size:.82rem;color:#DCE8F7}
.hn-tool[data-tool="weather-forecast"] .ev-2col,.hn-tool[data-tool="qr-code-generator"] .ev-2col,.hn-tool[data-tool="qr-code-scanner"] .ev-2col,.hn-tool[data-tool="barcode-generator"] .ev-2col,.hn-tool[data-tool="currency-converter"] .ev-2col,.hn-tool[data-tool="world-clock"] .ev-2col,.hn-tool[data-tool="unit-converter"] .ev-2col,.hn-tool[data-tool="password-generator"] .ev-2col,.hn-tool[data-tool="notes-checklist"] .ev-2col,.hn-tool[data-tool="expense-tracker"] .ev-2col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}
.hn-tool[data-tool="weather-forecast"] .ev-2col .t-table table,.hn-tool[data-tool="qr-code-generator"] .ev-2col .t-table table,.hn-tool[data-tool="qr-code-scanner"] .ev-2col .t-table table,.hn-tool[data-tool="barcode-generator"] .ev-2col .t-table table,.hn-tool[data-tool="currency-converter"] .ev-2col .t-table table,.hn-tool[data-tool="world-clock"] .ev-2col .t-table table,.hn-tool[data-tool="unit-converter"] .ev-2col .t-table table,.hn-tool[data-tool="password-generator"] .ev-2col .t-table table,.hn-tool[data-tool="notes-checklist"] .ev-2col .t-table table,.hn-tool[data-tool="expense-tracker"] .ev-2col .t-table table{min-width:0}
.hn-tool[data-tool="weather-forecast"] .ev-key,.hn-tool[data-tool="qr-code-generator"] .ev-key,.hn-tool[data-tool="qr-code-scanner"] .ev-key,.hn-tool[data-tool="barcode-generator"] .ev-key,.hn-tool[data-tool="currency-converter"] .ev-key,.hn-tool[data-tool="world-clock"] .ev-key,.hn-tool[data-tool="unit-converter"] .ev-key,.hn-tool[data-tool="password-generator"] .ev-key,.hn-tool[data-tool="notes-checklist"] .ev-key,.hn-tool[data-tool="expense-tracker"] .ev-key{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin-left:6px}
.hn-tool[data-tool="weather-forecast"] .ev-sbar,.hn-tool[data-tool="qr-code-generator"] .ev-sbar,.hn-tool[data-tool="qr-code-scanner"] .ev-sbar,.hn-tool[data-tool="barcode-generator"] .ev-sbar,.hn-tool[data-tool="currency-converter"] .ev-sbar,.hn-tool[data-tool="world-clock"] .ev-sbar,.hn-tool[data-tool="unit-converter"] .ev-sbar,.hn-tool[data-tool="password-generator"] .ev-sbar,.hn-tool[data-tool="notes-checklist"] .ev-sbar,.hn-tool[data-tool="expense-tracker"] .ev-sbar{height:10px}
.hn-tool[data-tool="weather-forecast"] .ev-sbar.bad i,.hn-tool[data-tool="qr-code-generator"] .ev-sbar.bad i,.hn-tool[data-tool="qr-code-scanner"] .ev-sbar.bad i,.hn-tool[data-tool="barcode-generator"] .ev-sbar.bad i,.hn-tool[data-tool="currency-converter"] .ev-sbar.bad i,.hn-tool[data-tool="world-clock"] .ev-sbar.bad i,.hn-tool[data-tool="unit-converter"] .ev-sbar.bad i,.hn-tool[data-tool="password-generator"] .ev-sbar.bad i,.hn-tool[data-tool="notes-checklist"] .ev-sbar.bad i,.hn-tool[data-tool="expense-tracker"] .ev-sbar.bad i{background:#D64541}.ev-sbar.warn i{background:#E28C00}.ev-sbar.good i{background:linear-gradient(90deg,#13A35B,#0E7A43)}
.hn-tool[data-tool="weather-forecast"] .ev-nfoot,.hn-tool[data-tool="qr-code-generator"] .ev-nfoot,.hn-tool[data-tool="qr-code-scanner"] .ev-nfoot,.hn-tool[data-tool="barcode-generator"] .ev-nfoot,.hn-tool[data-tool="currency-converter"] .ev-nfoot,.hn-tool[data-tool="world-clock"] .ev-nfoot,.hn-tool[data-tool="unit-converter"] .ev-nfoot,.hn-tool[data-tool="password-generator"] .ev-nfoot,.hn-tool[data-tool="notes-checklist"] .ev-nfoot,.hn-tool[data-tool="expense-tracker"] .ev-nfoot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding-top:6px;border-top:1px solid var(--line)}
.hn-tool[data-tool="weather-forecast"] .ev-toast,.hn-tool[data-tool="qr-code-generator"] .ev-toast,.hn-tool[data-tool="qr-code-scanner"] .ev-toast,.hn-tool[data-tool="barcode-generator"] .ev-toast,.hn-tool[data-tool="currency-converter"] .ev-toast,.hn-tool[data-tool="world-clock"] .ev-toast,.hn-tool[data-tool="unit-converter"] .ev-toast,.hn-tool[data-tool="password-generator"] .ev-toast,.hn-tool[data-tool="notes-checklist"] .ev-toast,.hn-tool[data-tool="expense-tracker"] .ev-toast{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:9999;display:flex;gap:14px;align-items:center;padding:12px 16px;border-radius:14px;background:#06162E;color:#fff;font-weight:600;font-size:.92rem;box-shadow:0 20px 40px -18px rgba(6,22,46,.6);max-width:calc(100vw - 32px)}
.hn-tool[data-tool="weather-forecast"] .ev-toast button,.hn-tool[data-tool="qr-code-generator"] .ev-toast button,.hn-tool[data-tool="qr-code-scanner"] .ev-toast button,.hn-tool[data-tool="barcode-generator"] .ev-toast button,.hn-tool[data-tool="currency-converter"] .ev-toast button,.hn-tool[data-tool="world-clock"] .ev-toast button,.hn-tool[data-tool="unit-converter"] .ev-toast button,.hn-tool[data-tool="password-generator"] .ev-toast button,.hn-tool[data-tool="notes-checklist"] .ev-toast button,.hn-tool[data-tool="expense-tracker"] .ev-toast button{border:0;background:transparent;color:#00AEE6;font:inherit;font-weight:800;cursor:pointer;padding:4px}
@media (max-width:700px){.hn-tool[data-tool="weather-forecast"] .ev-2col,.hn-tool[data-tool="qr-code-generator"] .ev-2col,.hn-tool[data-tool="qr-code-scanner"] .ev-2col,.hn-tool[data-tool="barcode-generator"] .ev-2col,.hn-tool[data-tool="currency-converter"] .ev-2col,.hn-tool[data-tool="world-clock"] .ev-2col,.hn-tool[data-tool="unit-converter"] .ev-2col,.hn-tool[data-tool="password-generator"] .ev-2col,.hn-tool[data-tool="notes-checklist"] .ev-2col,.hn-tool[data-tool="expense-tracker"] .ev-2col{grid-template-columns:1fr}}
/* weather-forecast */
.hn-tool[data-tool="weather-forecast"] .ev-wx-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.hn-tool[data-tool="weather-forecast"] .ev-wx-place{display:grid;gap:2px;min-width:0}
.hn-tool[data-tool="weather-forecast"] .ev-wx-place b{font-family:var(--f-display);font-size:1.3rem;color:var(--ink);line-height:1.25}
.hn-tool[data-tool="weather-forecast"] .ev-wx-place small{color:var(--muted);font-size:.84rem}
.hn-tool[data-tool="weather-forecast"] .ev-wx-now{display:flex;gap:18px;align-items:center;padding:14px 18px;border-radius:18px;background:linear-gradient(135deg,#EEF5FD,#F8FBFF);border:1px solid #CFE0F5}
.hn-tool[data-tool="weather-forecast"] .ev-wx-now>div{display:grid;gap:2px}
.hn-tool[data-tool="weather-forecast"] .ev-wx-t{font-family:var(--f-display);font-size:clamp(3rem,9vw,4.4rem);line-height:1;color:var(--ink);letter-spacing:-.03em}
.hn-tool[data-tool="weather-forecast"] .ev-wx-c{font-weight:700;color:var(--ink);font-size:1.1rem}
.hn-tool[data-tool="weather-forecast"] .ev-wx-now small{color:var(--muted)}
.hn-tool[data-tool="weather-forecast"] .ev-wxi{display:block;flex:none}
.hn-tool[data-tool="weather-forecast"] .ev-hours{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.hn-tool[data-tool="weather-forecast"] .ev-hr{flex:0 0 70px;display:grid;justify-items:center;gap:2px;padding:10px 4px;border:1px solid var(--line);border-radius:14px;background:#F8FAFD;scroll-snap-align:start}
.hn-tool[data-tool="weather-forecast"] .ev-hr small{font-size:.76rem;color:var(--muted);font-weight:600;white-space:nowrap}
.hn-tool[data-tool="weather-forecast"] .ev-hr b{color:var(--ink)}
.hn-tool[data-tool="weather-forecast"] .ev-hr em{font-style:normal;font-size:.7rem;color:#2F8FE0;white-space:nowrap}
.hn-tool[data-tool="weather-forecast"] .ev-days{display:grid;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.hn-tool[data-tool="weather-forecast"] .ev-day{display:grid;grid-template-columns:70px 40px minmax(0,1fr) minmax(150px,1.1fr);gap:10px;align-items:center;padding:8px 14px;border-bottom:1px solid var(--line);background:#fff}
.hn-tool[data-tool="weather-forecast"] .ev-day:last-child{border-bottom:0}
.hn-tool[data-tool="weather-forecast"] .ev-day-n{display:grid}.ev-day-n b{color:var(--ink);font-size:.92rem}.ev-day-n small{color:var(--muted);font-size:.76rem}
.hn-tool[data-tool="weather-forecast"] .ev-day-c{color:var(--ink);font-size:.9rem;display:grid;min-width:0}.ev-day-c small{color:#2F8FE0;font-size:.76rem}
.hn-tool[data-tool="weather-forecast"] .ev-day-r{display:grid;grid-template-columns:38px minmax(40px,1fr) 38px;gap:8px;align-items:center;font-size:.92rem}
.hn-tool[data-tool="weather-forecast"] .ev-day-r em{font-style:normal;color:var(--muted);text-align:right}.ev-day-r b{color:var(--ink)}
.hn-tool[data-tool="weather-forecast"] .ev-rng{position:relative;height:6px;border-radius:6px;background:#E7EEF7}
.hn-tool[data-tool="weather-forecast"] .ev-rng i{position:absolute;top:0;bottom:0;border-radius:6px;background:linear-gradient(90deg,#00AEE6,#F5A623)}
@media (max-width:560px){.hn-tool[data-tool="weather-forecast"] .ev-day{grid-template-columns:52px 34px minmax(0,1fr);padding:8px 10px}
.hn-tool[data-tool="weather-forecast"] .ev-day-r{grid-column:2/-1}
.hn-tool[data-tool="weather-forecast"] .ev-wx-now{padding:12px}
.hn-tool[data-tool="weather-forecast"] .ev-wx-now .ev-wxi{width:76px;height:76px}}
/* qr-code-generator */
.hn-tool[data-tool="qr-code-generator"] .ev-qr{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:20px;align-items:start}
.hn-tool[data-tool="qr-code-generator"] .ev-qr-prev{display:grid;gap:8px;justify-items:center;padding:14px;border:1px dashed #C9D6E6;border-radius:18px;background:#FBFCFE}
.hn-tool[data-tool="qr-code-generator"] .ev-qr-img{width:100%;display:grid;place-items:center}
.hn-tool[data-tool="qr-code-generator"] .ev-qr-cv{width:100%;max-width:270px;height:auto;image-rendering:pixelated;border-radius:6px;box-shadow:0 10px 30px -18px rgba(6,22,46,.5)}
.hn-tool[data-tool="qr-code-generator"] .ev-qr-info{display:grid;gap:12px;min-width:0}
.hn-tool[data-tool="qr-code-generator"] .t-credit{text-align:center}
.hn-tool[data-tool="qr-code-generator"] .t-credit a{color:var(--blue);font-weight:600}
@media (max-width:700px){.hn-tool[data-tool="qr-code-generator"] .ev-qr{grid-template-columns:1fr}}
/* qr-code-scanner */
.hn-tool[data-tool="qr-code-scanner"] .ev-scan{display:grid;gap:12px}
.hn-tool[data-tool="qr-code-scanner"] .ev-video{position:relative;border-radius:18px;overflow:hidden;background:#06162E;max-width:560px;width:100%;aspect-ratio:4/3}
.hn-tool[data-tool="qr-code-scanner"] .ev-video video{width:100%;height:100%;object-fit:cover;display:block}
.hn-tool[data-tool="qr-code-scanner"] .ev-frame{position:absolute;left:50%;top:46%;width:min(62%,280px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:18px;box-shadow:0 0 0 2000px rgba(6,22,46,.35);border:3px solid #00AEE6}
.hn-tool[data-tool="qr-code-scanner"] .ev-vbar{position:absolute;left:10px;right:10px;bottom:10px;display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.hn-tool[data-tool="qr-code-scanner"] .ev-vbar select{height:40px;border-radius:10px;border:1px solid var(--line);padding:0 10px;font:inherit;max-width:60%}
.hn-tool[data-tool="qr-code-scanner"] .ev-res{display:grid;gap:12px;padding:16px;border:1px solid #CFE0F5;border-radius:18px;background:#F8FBFF}
.hn-tool[data-tool="qr-code-scanner"] .ev-res-h{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.hn-tool[data-tool="qr-code-scanner"] .ev-raw{margin:0;padding:12px 14px;border-radius:12px;background:#fff;border:1px solid var(--line);font-family:var(--f-mono);font-size:.86rem;white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto;color:var(--ink)}
.hn-tool[data-tool="qr-code-scanner"] .ev-res .t-table table{min-width:0}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist{display:grid;gap:8px}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist:empty{display:none}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist-h{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist-h b{color:var(--ink)}.ev-hist-h .t-copy{margin-left:auto}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist li{display:flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:12px;background:#fff;padding:4px 4px 4px 0}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist-i{flex:1 1 auto;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:4px 10px;align-items:center;border:0;background:transparent;text-align:left;padding:8px 12px;font:inherit;color:var(--ink);cursor:pointer}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist-t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist-i small{color:var(--muted);font-size:.76rem;white-space:nowrap}
@media (max-width:560px){.hn-tool[data-tool="qr-code-scanner"] .ev-hist-i{grid-template-columns:minmax(0,1fr) auto}
.hn-tool[data-tool="qr-code-scanner"] .ev-hist-t{grid-column:1/-1;grid-row:2}}
/* barcode-generator */
.hn-tool[data-tool="barcode-generator"] .ev-bcs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:12px}
.hn-tool[data-tool="barcode-generator"] .ev-bc{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fff;min-width:0}
.hn-tool[data-tool="barcode-generator"] .ev-bc.bad{border-color:#F5C6C0;background:#FFFAF9}
.hn-tool[data-tool="barcode-generator"] .ev-bc-img{display:grid;place-items:center;min-height:20px;overflow:hidden}
.hn-tool[data-tool="barcode-generator"] .ev-bc-img svg{max-width:100%;height:auto}
.hn-tool[data-tool="barcode-generator"] .ev-bc-f{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.hn-tool[data-tool="barcode-generator"] .ev-bc-f b{font-family:var(--f-mono);font-size:.84rem;color:var(--ink);overflow-wrap:anywhere}
.hn-tool[data-tool="barcode-generator"] .ev-bc-f small{flex-basis:100%;font-size:.8rem;color:var(--muted)}
.hn-tool[data-tool="barcode-generator"] .ev-bc-a{display:flex;gap:6px;margin-left:auto}
/* currency-converter */
.hn-tool[data-tool="currency-converter"] .ev-2col .t-table td:last-child{text-align:right}
/* world-clock */
.hn-tool[data-tool="world-clock"] .ev-wc-top{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between}
.hn-tool[data-tool="world-clock"] .ev-wc-add{display:grid;gap:6px;flex:1 1 320px;min-width:0;max-width:560px}
.hn-tool[data-tool="world-clock"] .ev-wc-add>label{font-weight:700;font-size:.88rem;color:var(--ink)}
.hn-tool[data-tool="world-clock"] .ev-clocks{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:12px}
.hn-tool[data-tool="world-clock"] .ev-clk{display:grid;gap:2px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#F8FAFD;min-width:0}
.hn-tool[data-tool="world-clock"] .ev-clk.me{background:linear-gradient(135deg,#06162E,#0C2244);border-color:#0C2244;color:#DCE8F7}
.hn-tool[data-tool="world-clock"] .ev-clk-h{display:flex;align-items:center;gap:6px;min-height:28px}
.hn-tool[data-tool="world-clock"] .ev-clk-h b{color:var(--ink);font-size:1rem;margin-right:auto;overflow-wrap:anywhere}
.hn-tool[data-tool="world-clock"] .ev-clk.me .ev-clk-h b{color:#fff}
.hn-tool[data-tool="world-clock"] .ev-clk>small{color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}
.hn-tool[data-tool="world-clock"] .ev-clk.me>small,.hn-tool[data-tool="world-clock"] .ev-clk.me .ev-clk-o,.hn-tool[data-tool="world-clock"] .ev-clk.me .ev-clk-m{color:#A8BAD3}
.hn-tool[data-tool="world-clock"] .ev-clk-t{font-family:var(--f-display);font-size:1.9rem;color:var(--ink);line-height:1.15;font-variant-numeric:tabular-nums;white-space:nowrap}
.hn-tool[data-tool="world-clock"] .ev-clk.me .ev-clk-t{color:#fff}
.hn-tool[data-tool="world-clock"] .ev-clk-t span{font-size:.55em;color:var(--muted)}
.hn-tool[data-tool="world-clock"] .ev-clk-m{display:flex;gap:8px;align-items:center;color:var(--ink);font-size:.86rem}
.hn-tool[data-tool="world-clock"] .ev-clk-o{font-family:var(--f-mono);font-size:.74rem;color:var(--muted)}
.hn-tool[data-tool="world-clock"] .ev-dn{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;border-radius:6px;padding:2px 6px}
.hn-tool[data-tool="world-clock"] .ev-dn.d{background:#FFF1C9;color:#8A5A00}.ev-dn.n{background:#DCE4F5;color:#2A3D66}
.hn-tool[data-tool="world-clock"] .ev-clk.me .ev-x{color:#A8BAD3}
.hn-tool[data-tool="world-clock"] .ev-mp{display:grid;gap:10px;min-width:0}
.hn-tool[data-tool="world-clock"] .ev-mp>*,.hn-tool[data-tool="world-clock"] .ev-wc-top>*{min-width:0}
.hn-tool[data-tool="world-clock"] .ev-mp-h{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
.hn-tool[data-tool="world-clock"] .ev-mp-h b{font-family:var(--f-display);font-size:1.15rem;color:var(--ink)}
.hn-tool[data-tool="world-clock"] .ev-mp-f{display:flex;flex-wrap:wrap;gap:10px}
.hn-tool[data-tool="world-clock"] .ev-mp-f label{display:grid;gap:4px;font-weight:700;font-size:.82rem;color:var(--ink)}
.hn-tool[data-tool="world-clock"] .ev-mp-f input,.hn-tool[data-tool="world-clock"] .ev-mp-f select{height:44px;border:1px solid var(--line);border-radius:11px;padding:0 10px;font:inherit;background:#F8FAFD;color:var(--ink)}
.hn-tool[data-tool="world-clock"] .ev-mp-t{max-height:520px;overflow:auto}
.hn-tool[data-tool="world-clock"] .ev-mp-t table{min-width:0;font-size:.84rem}
.hn-tool[data-tool="world-clock"] .ev-mp-t th{position:sticky;top:0;z-index:1;white-space:nowrap}
.hn-tool[data-tool="world-clock"] .ev-mp-t td{white-space:nowrap;padding:7px 10px}
.hn-tool[data-tool="world-clock"] .ev-mp-t td.w{background:#E6F7EC;color:#0E5E35;font-weight:700}
.hn-tool[data-tool="world-clock"] .ev-mp-t td.e{background:#FFF6E2;color:#7A4800}
.hn-tool[data-tool="world-clock"] .ev-mp-t td.n{background:#EEF1F6;color:#7A879A}
.hn-tool[data-tool="world-clock"] .ev-mp-t tr.all td:not(:last-child){box-shadow:inset 0 2px 0 #13A35B,inset 0 -2px 0 #13A35B}
.hn-tool[data-tool="world-clock"] .ev-mp-t sup{font-size:.68em;margin-left:3px;color:inherit;opacity:.8}
.hn-tool[data-tool="world-clock"] .ev-key.w{background:#BDEBD0}.ev-key.e{background:#F7DDA8}.ev-key.n{background:#DCE2EC}
/* unit-converter */
.hn-tool[data-tool="unit-converter"] .ev-cats{gap:6px}
.hn-tool[data-tool="unit-converter"] .ev-cats .t-chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.hn-tool[data-tool="unit-converter"] .t-table td:last-child{font-variant-numeric:tabular-nums}
.hn-tool[data-tool="unit-converter"] .t-table table{min-width:0}
/* password-generator */
.hn-tool[data-tool="password-generator"] .ev-pws{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.hn-tool[data-tool="password-generator"] .ev-pws li{display:flex;gap:10px;align-items:center;padding:8px 8px 8px 14px;border:1px solid var(--line);border-radius:12px;background:#F8FAFD;min-width:0}
.hn-tool[data-tool="password-generator"] .ev-pws code{flex:1 1 auto;min-width:0;font-family:var(--f-mono);font-size:1rem;color:var(--ink);overflow-wrap:anywhere;word-break:break-all;line-height:1.45}
.hn-tool[data-tool="password-generator"] .ev-chk .tf{display:grid;gap:6px}
.hn-tool[data-tool="password-generator"] .ev-chk .tf>label{font-weight:700;font-size:.88rem;color:var(--ink)}
.hn-tool[data-tool="password-generator"] .ev-chk [data-res]{display:grid;gap:10px}
/* notes-checklist */
.hn-tool[data-tool="notes-checklist"] .ev-nbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.hn-tool[data-tool="notes-checklist"] .ev-search{flex:1 1 200px;min-width:0;height:44px;border:1px solid var(--line);border-radius:12px;padding:0 14px;font:inherit;background:#F8FAFD;color:var(--ink)}
.hn-tool[data-tool="notes-checklist"] .ev-ngrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:12px}
.hn-tool[data-tool="notes-checklist"] .ev-note{display:grid;gap:6px;align-content:start;text-align:left;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff;font:inherit;color:var(--ink);cursor:pointer;min-height:110px;min-width:0;transition:border-color .2s,transform .2s}
.hn-tool[data-tool="notes-checklist"] .ev-note:hover{border-color:var(--blue);transform:translateY(-2px)}
.hn-tool[data-tool="notes-checklist"] .ev-note.on{outline:3px solid rgba(10,108,208,.35)}
.hn-tool[data-tool="notes-checklist"] .ev-note>b{font-size:.98rem;overflow-wrap:anywhere}
.hn-tool[data-tool="notes-checklist"] .ev-pin{color:#E28C00}
.hn-tool[data-tool="notes-checklist"] .ev-snip{display:grid;gap:2px;color:var(--muted);font-size:.86rem;line-height:1.45;white-space:pre-line;overflow:hidden;max-height:6.2em;overflow-wrap:anywhere}
.hn-tool[data-tool="notes-checklist"] .ev-snip .dn{text-decoration:line-through;opacity:.7}
.hn-tool[data-tool="notes-checklist"] .ev-note small{color:var(--muted);font-size:.74rem}
.hn-tool[data-tool="notes-checklist"] .c-y{background:#FFF8DB!important;border-color:#F3E2A0!important}.c-g{background:#EAF8EF!important;border-color:#BFE6CC!important}.c-b{background:#EAF2FD!important;border-color:#C6DAF5!important}.c-p{background:#FDEEF3!important;border-color:#F3C9D7!important}
.hn-tool[data-tool="notes-checklist"] .ev-ned{display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 20px 40px -32px rgba(6,22,46,.45)}
.hn-tool[data-tool="notes-checklist"] .ev-ned-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.hn-tool[data-tool="notes-checklist"] .ev-title{flex:1 1 220px;min-width:0;border:0;border-bottom:2px solid var(--line);background:transparent;font-family:var(--f-display);font-size:1.25rem;font-weight:700;color:var(--ink);padding:6px 2px}
.hn-tool[data-tool="notes-checklist"] .ev-title:focus{outline:none;border-color:var(--blue)}
.hn-tool[data-tool="notes-checklist"] .ev-colors{display:flex;gap:6px}
.hn-tool[data-tool="notes-checklist"] .ev-dot{width:28px;height:28px;border-radius:50%;border:2px solid var(--line);background:#fff;cursor:pointer;padding:0}
.hn-tool[data-tool="notes-checklist"] .ev-dot.on{outline:3px solid var(--blue);outline-offset:1px}
.hn-tool[data-tool="notes-checklist"] .ev-ned textarea{width:100%;min-height:200px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;font:inherit;line-height:1.6;color:var(--ink);background:rgba(255,255,255,.7);resize:vertical}
.hn-tool[data-tool="notes-checklist"] .ev-ned textarea:focus{outline:none;border-color:var(--blue)}
.hn-tool[data-tool="notes-checklist"] .ev-items{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.hn-tool[data-tool="notes-checklist"] .ev-items li{display:flex;gap:8px;align-items:center;padding:2px 4px;border-radius:10px}
.hn-tool[data-tool="notes-checklist"] .ev-items li:hover{background:rgba(10,108,208,.05)}
.hn-tool[data-tool="notes-checklist"] .ev-items input[type=checkbox]{width:22px;height:22px;accent-color:#13A35B;flex:none}
.hn-tool[data-tool="notes-checklist"] .ev-it{flex:1 1 auto;min-width:0;border:0;background:transparent;font:inherit;color:var(--ink);padding:8px 4px;border-bottom:1px solid transparent}
.hn-tool[data-tool="notes-checklist"] .ev-it:focus{outline:none;border-bottom-color:var(--blue)}
.hn-tool[data-tool="notes-checklist"] .ev-items li.dn .ev-it{text-decoration:line-through;color:var(--muted)}
.hn-tool[data-tool="notes-checklist"] .ev-none{color:var(--muted);font-size:.88rem}
.hn-tool[data-tool="notes-checklist"] .ev-lt .tf-check{display:flex;gap:6px;align-items:center;font-weight:600;font-size:.86rem;color:var(--ink)}
.hn-tool[data-tool="notes-checklist"] .ev-ned-foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px}
.hn-tool[data-tool="notes-checklist"] .ev-del{color:#B3261E}
.hn-tool[data-tool="notes-checklist"] .ev-del:hover{background:#D64541;border-color:#D64541;color:#fff}
.hn-tool[data-tool="notes-checklist"] .ev-empty{grid-column:1/-1;display:grid;gap:4px;padding:26px;border:1px dashed #C9D6E6;border-radius:16px;text-align:center;color:var(--muted)}
.hn-tool[data-tool="notes-checklist"] .ev-empty b{color:var(--ink)}
/* expense-tracker */
.hn-tool[data-tool="expense-tracker"] .ev-ebar{display:flex;flex-wrap:wrap;gap:12px}
.hn-tool[data-tool="expense-tracker"] .ev-ebar label{display:grid;gap:4px;font-weight:700;font-size:.82rem;color:var(--ink);flex:0 1 220px}
.hn-tool[data-tool="expense-tracker"] .ev-ebar select,.hn-tool[data-tool="expense-tracker"] .ev-ebar input{height:44px;border:1px solid var(--line);border-radius:11px;padding:0 10px;font:inherit;background:#F8FAFD;color:var(--ink);width:100%}
.hn-tool[data-tool="expense-tracker"] .ev-edash{display:grid;gap:16px;min-width:0}
.hn-tool[data-tool="expense-tracker"] .t-stat b{font-size:1.25rem;overflow-wrap:normal}
.hn-tool[data-tool="expense-tracker"] .ev-acts{display:flex;gap:4px;align-items:center;margin-top:4px}
@media (max-width:560px){.hn-tool[data-tool="expense-tracker"] .t-stat b{font-size:1.05rem}
.hn-tool[data-tool="expense-tracker"] .ev-cb{grid-template-columns:minmax(0,1fr) auto 34px;gap:2px 8px}
.hn-tool[data-tool="expense-tracker"] .ev-cb>span:first-child{grid-column:1/-1}
.hn-tool[data-tool="expense-tracker"] .ev-cb .t-bar{grid-column:1}}
.hn-tool[data-tool="expense-tracker"] .ev-mnav{display:flex;align-items:center;justify-content:center;gap:14px}
.hn-tool[data-tool="expense-tracker"] .ev-mnav b{font-family:var(--f-display);font-size:1.2rem;color:var(--ink);min-width:170px;text-align:center}
.hn-tool[data-tool="expense-tracker"] .ev-cbars{display:grid;gap:8px}
.hn-tool[data-tool="expense-tracker"] .ev-cb{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(50px,1fr) auto 38px;gap:10px;align-items:center;font-size:.88rem;color:var(--ink)}
.hn-tool[data-tool="expense-tracker"] .ev-cb>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hn-tool[data-tool="expense-tracker"] .ev-cb small{color:var(--muted);text-align:right}
.hn-tool[data-tool="expense-tracker"] .ev-chart{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;height:190px;padding:10px 4px 0;border-bottom:1px solid var(--line)}
.hn-tool[data-tool="expense-tracker"] .ev-col{display:grid;grid-template-rows:minmax(0,1fr) auto auto;justify-items:center;gap:2px;cursor:pointer;border-radius:10px;padding:0 2px}
.hn-tool[data-tool="expense-tracker"] .ev-col.on{background:#EEF5FD}
.hn-tool[data-tool="expense-tracker"] .ev-bars{position:relative;display:flex;align-items:flex-end;gap:3px;height:100%;width:100%;justify-content:center}
.hn-tool[data-tool="expense-tracker"] .ev-bars i{display:block;width:40%;max-width:22px;min-height:2px;border-radius:5px 5px 0 0}
.hn-tool[data-tool="expense-tracker"] .ev-bars i.s,.hn-tool[data-tool="expense-tracker"] .ev-key.s{background:var(--blue)}
.hn-tool[data-tool="expense-tracker"] .ev-bars i.n,.hn-tool[data-tool="expense-tracker"] .ev-key.n{background:#13A35B}
.hn-tool[data-tool="expense-tracker"] .ev-key.b{background:#D64541;height:3px}
.hn-tool[data-tool="expense-tracker"] .ev-col small{font-size:.74rem;color:var(--muted)}
.hn-tool[data-tool="expense-tracker"] .ev-col b{font-size:.7rem;color:var(--ink);font-family:var(--f-mono)}
.hn-tool[data-tool="expense-tracker"] .ev-budline{position:absolute;left:-6px;right:-6px;border-top:2px dashed #D64541;pointer-events:none;z-index:1}
.hn-tool[data-tool="expense-tracker"] .t-table table{min-width:0}
.hn-tool[data-tool="expense-tracker"] .ev-sm{display:block;color:var(--muted);font-size:.8rem}
.hn-tool[data-tool="expense-tracker"] .ev-inc{color:#0E7A43}
.hn-tool[data-tool="expense-tracker"] .ev-nowrap{white-space:nowrap}
/* ===== Finance and banking tools (64-finance.js). Every selector uses the unique fn- prefix. ===== */
.hn-tool.fn-tool .fn-form{gap:14px}
.hn-tool .fn-sec{border:1px solid var(--line);border-radius:16px;padding:14px 16px 16px;margin:0;min-width:0;background:#FBFCFE}
.hn-tool .fn-sec[hidden]{display:none}
.hn-tool .fn-sec>legend{padding:0 8px;margin-left:-6px;font-weight:800;font-size:.86rem;color:var(--blue);letter-spacing:.02em}
.hn-tool .fn-sec .tf-grid{gap:12px 14px}
.hn-tool .fn-sec .tf[hidden]{display:none}
.hn-tool .fn-intro{margin:0 0 10px}
.hn-tool .fn-sec textarea{font-family:var(--f-mono,monospace);font-size:.92rem}
/* rows editor */
.hn-tool .fn-rows{display:grid;gap:10px;min-width:0}
.hn-tool .fn-rows-list{display:grid;gap:8px;min-width:0}
.hn-tool .fn-row{display:grid;grid-template-columns:26px minmax(0,1.4fr) minmax(0,1fr) minmax(0,.8fr) minmax(0,1fr) 36px;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff}
.hn-tool .fn-row-n{align-self:center;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#EEF5FD;color:var(--blue);font-weight:800;font-size:.78rem}
.hn-tool .fn-cell{display:grid;gap:4px;min-width:0}
.hn-tool .fn-cell span{font-size:.74rem;font-weight:700;color:var(--muted)}
.hn-tool .fn-cell input{width:100%;min-width:0;height:44px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font:inherit;font-size:.98rem;color:var(--ink);background:#F8FAFD}
.hn-tool .fn-cell input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,108,208,.14);background:#fff}
.hn-tool .fn-cell input.fn-bad{border-color:#D64541;background:#FFF7F6}
.hn-tool .fn-rows-err{margin:0;color:#C0362F;font-size:.82rem;font-weight:600}
.hn-tool .fn-add{justify-self:start}
.hn-tool .fn-x{border:0;background:transparent;color:var(--muted);font-size:1.35rem;line-height:1;cursor:pointer;width:36px;height:40px;border-radius:9px;flex:none}
.hn-tool .fn-x:hover{color:#B3261E;background:#FFF1EF}
.hn-tool .fn-x:disabled{opacity:.3;cursor:not-allowed;background:transparent}
@media (max-width:640px){
  .hn-tool .fn-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);position:relative;padding:12px 10px 10px}
  .hn-tool .fn-row .fn-c-name{grid-column:1/-1;padding-right:70px}
  .hn-tool .fn-row-n{position:absolute;top:10px;right:46px}
  .hn-tool .fn-row .fn-x{position:absolute;top:4px;right:4px}
  .hn-tool .fn-sec{padding:12px 12px 14px}
}
/* results */
.hn-tool .fn-headline{margin:0;padding:12px 14px;border-radius:12px;background:#EEF5FD;color:var(--ink);font-size:1rem;line-height:1.5}
.hn-tool .fn-chartbox{border:1px solid var(--line);border-radius:16px;padding:12px 14px;background:#fff;display:grid;gap:8px;min-width:0}
.hn-tool .fn-ct{font-size:.9rem;color:var(--ink)}
.hn-tool .fn-chart{position:relative;min-width:0;width:100%}
.hn-tool .fn-chart svg{display:block;max-width:100%;height:auto;overflow:visible}
.hn-tool .fn-chart text{font-family:inherit;font-size:11px;fill:#5B6B82}
.hn-tool .fn-chart .fn-bl{font-size:12px;font-weight:700;fill:var(--ink)}
.hn-tool .fn-chart .fn-bv{font-size:11.5px;font-weight:700;fill:var(--ink)}
.hn-tool .fn-chart .fn-ml{font-size:11px;font-weight:700;fill:#0E7A43}
.hn-tool .fn-grid{stroke:#E7EEF7;stroke-width:1}
.hn-tool .fn-ax0{stroke:#9AAAC0;stroke-width:1.2}
.hn-tool .fn-mark{stroke:#13A35B;stroke-width:1.4;stroke-dasharray:4 4}
.hn-tool .fn-guide{stroke:#06162E;stroke-opacity:.35;stroke-width:1}
.hn-tool .fn-tip{position:absolute;top:0;z-index:2;display:grid;gap:2px;pointer-events:none;background:#06162E;color:#fff;border-radius:10px;padding:8px 10px;font-size:.78rem;box-shadow:0 12px 24px -12px rgba(6,22,46,.6);white-space:nowrap}
.hn-tool .fn-tip[hidden]{display:none}
.hn-tool .fn-tip span,.hn-tool .fn-legend span{display:inline-flex;align-items:center;gap:6px}
.hn-tool .fn-tip i,.hn-tool .fn-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none}
.hn-tool .fn-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.8rem;color:var(--muted);font-weight:600}
.hn-tool .fn-det{border:1px solid var(--line);border-radius:14px;background:#fff;min-width:0}
.hn-tool .fn-det>summary{cursor:pointer;padding:12px 14px;font-weight:700;font-size:.9rem;color:var(--ink);list-style-position:inside}
.hn-tool .fn-det>summary small{color:var(--muted);font-weight:600}
.hn-tool .fn-det[open]>summary{border-bottom:1px solid var(--line)}
.hn-tool .fn-det .t-table{border:0;border-radius:0 0 14px 14px;max-height:460px;overflow:auto}
.hn-tool .fn-det .t-table th{position:sticky;top:0;z-index:1}
.hn-tool .fn-det .t-note,.hn-tool .fn-tbl .t-note{padding:8px 14px 12px}
.hn-tool .fn-tbl{display:grid;gap:8px;min-width:0}
.hn-tool .fn-tbl .t-table table,.hn-tool .fn-det .t-table table{font-variant-numeric:tabular-nums}
.hn-tool .fn-tbl .t-table td,.hn-tool .fn-det .t-table td{white-space:nowrap}
.hn-tool .fn-tbl .t-table td:last-child{white-space:normal}
.hn-tool .fn-cmp table{min-width:440px}
.hn-tool .fn-cmp td:first-child{position:sticky;left:0;background:#fff;z-index:1;white-space:normal;min-width:120px}
.hn-tool .fn-cmp td:last-child{white-space:nowrap}
.hn-tool .fn-best{font-weight:800;color:#0E7A43}
.hn-tool .fn-formula{border:1px dashed #C9D6E6;border-radius:14px;padding:12px 14px;background:#FBFCFE;display:grid;gap:6px;min-width:0}
.hn-tool .fn-formula b{font-size:.86rem}
.hn-tool .fn-formula pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--f-mono,monospace);font-size:.8rem;line-height:1.6;color:var(--ink)}
.hn-tool .fn-notes .t-list{font-size:.88rem;color:var(--muted)}
.hn-tool .fn-actions{display:flex;flex-wrap:wrap;gap:8px}
.hn-tool .fn-actions .t-copy{min-height:38px}
.hn-tool .fn-actions .t-copy:disabled{opacity:.6;cursor:wait}
.hn-tool .fn-disc{font-size:.78rem}
/* IBAN result cards */
.hn-tool .fn-res.ok .t-card-h{background:#ECFBF2}
.hn-tool .fn-res.no .t-card-h{background:#FFF1EF}
.hn-tool .fn-res .t-card-h b{font-family:var(--f-mono,monospace);overflow-wrap:anywhere}
.hn-tool .fn-issue{margin:0 0 10px;color:#B3261E;font-weight:600}
.hn-tool .fn-warn{margin:0 0 10px;color:#9A5B00;font-weight:600}
.hn-tool .fn-dl{display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr);gap:6px 14px;margin:0;font-size:.9rem}
.hn-tool .fn-dl dt{color:var(--muted);font-weight:600}
.hn-tool .fn-dl dd{margin:0;font-family:var(--f-mono,monospace);overflow-wrap:anywhere}
.hn-tool .fn-tbl code{font-family:var(--f-mono,monospace);font-size:.84rem}
/* saved scenarios */
.hn-tool .fn-saved{border:1px solid var(--line);border-radius:16px;padding:14px 16px;background:#F8FAFD;display:grid;gap:10px;min-width:0}
.hn-tool .fn-saved-h{display:flex;align-items:center;gap:10px}
.hn-tool .fn-saved-h b{font-size:.92rem;margin-right:auto}
.hn-tool .fn-saved-h small{color:var(--muted);font-weight:600}
.hn-tool .fn-save-row{display:flex;gap:8px;min-width:0;flex-wrap:wrap}
.hn-tool .fn-save-row input{flex:1 1 200px;min-width:0;height:44px;border:1px solid var(--line);border-radius:10px;padding:8px 12px;font:inherit;font-size:.95rem;background:#fff;color:var(--ink)}
.hn-tool .fn-save-row input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,108,208,.14)}
.hn-tool .fn-save-row .btn{min-height:44px}
.hn-tool .fn-sc{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.hn-tool .fn-sc li{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px 4px 4px 0;min-width:0}
.hn-tool .fn-sc-load{flex:1;min-width:0;display:grid;gap:2px;text-align:left;border:0;background:transparent;padding:8px 12px;cursor:pointer;font:inherit;color:var(--ink)}
.hn-tool .fn-sc-load b{font-size:.92rem}
.hn-tool .fn-sc-load small{color:var(--muted);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hn-tool .fn-sc-load:hover b{color:var(--blue)}
@media (max-width:640px){.hn-tool.fn-tool .t-stat b{font-size:1.12rem;overflow-wrap:normal;word-break:normal}.hn-tool.fn-tool .t-stat{padding:12px}}
/* Group 70: PDF and image tools. Selectors use the unique .hpi- prefix or the tool slugs. */
.hn-tool:is([data-tool="document-scanner"],[data-tool="pdf-merger"],[data-tool="pdf-splitter"],[data-tool="pdf-compressor"],[data-tool="images-to-pdf"],[data-tool="pdf-to-images"],[data-tool="image-resizer"],[data-tool="image-cropper"],[data-tool="image-converter"],[data-tool="image-watermark"]) [hidden]{display:none!important}
/* drop zone */
.hpi-drop{position:relative}
.hpi-file{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0 0 0 0)}
.hpi-drop-l{display:grid;justify-items:center;gap:6px;text-align:center;padding:26px 18px;border:2px dashed #B9CCE4;border-radius:18px;background:#F6FAFF;cursor:pointer;transition:border-color .2s,background .2s}
.hpi-drop-l svg{width:34px;height:34px;fill:var(--blue);padding:8px;border-radius:12px;background:rgba(10,108,208,.1);box-sizing:content-box}
.hpi-drop-l b{font-size:1.05rem;color:var(--ink)}
.hpi-drop-l small{color:var(--muted);font-size:.84rem}
.hpi-drop-l:hover,.hpi-drop.over .hpi-drop-l{border-color:var(--blue);background:#EEF5FD}
.hpi-file:focus-visible+.hpi-drop-l{outline:3px solid var(--blue);outline-offset:2px}
.hpi-drop.cam .hpi-drop-l{background:linear-gradient(135deg,#0A6CD0,#00AEE6);border-color:transparent}
.hpi-drop.cam .hpi-drop-l b,.hpi-drop.cam .hpi-drop-l small{color:#fff}
.hpi-drop.cam .hpi-drop-l svg{fill:#fff;background:rgba(255,255,255,.18)}
.hpi-priv{display:flex;gap:8px;align-items:center;margin-top:-6px}
.hpi-priv:before{content:"";width:8px;height:8px;border-radius:50%;background:#13A35B;flex:none}
.hpi-bad{color:#B3261E;font-weight:600}
.hpi-warn{margin:0;padding:12px 14px;border-radius:12px;background:#FFF7E8;border:1px solid #F7DDA8;color:#7A4A00;font-size:.9rem;line-height:1.55}
.hpi-info{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#F8FAFD;overflow-wrap:anywhere}
.hpi-rv{float:right;font-family:var(--f-mono,monospace);font-size:.78rem;font-weight:600;color:var(--blue)}
.hpi-tot{align-self:center}
/* queue */
.hpi-q{display:grid;gap:8px}
.hpi-q-h{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}
.hpi-q-h b{margin-right:auto;color:var(--ink)}
.hpi-q-h .t-note{flex-basis:100%;order:3}
.hpi-qi{display:grid;grid-template-columns:auto 52px minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:14px;background:#fff}
.hpi-qi[draggable=true]{cursor:grab}
.hpi-qi.drag{opacity:.45}.hpi-qi.over{border-color:var(--blue);box-shadow:0 0 0 3px rgba(10,108,208,.14)}
.hpi-qi.err{background:#FFF7F6;border-color:#F5C6C0}
.hpi-q .hpi-qi:not(:has(.hpi-qn)){grid-template-columns:52px minmax(0,1fr) auto}
.hpi-qn{font-family:var(--f-mono,monospace);font-size:.78rem;font-weight:700;color:var(--muted);min-width:18px;text-align:center}
.hpi-qt{width:52px;height:52px;border-radius:10px;overflow:hidden;background:#EEF3F9;display:grid;place-items:center}
.hpi-qt img{width:100%;height:100%;object-fit:cover;display:block}
.hpi-qm{display:grid;gap:3px;min-width:0}
.hpi-qm b{font-size:.9rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hpi-qm small{color:var(--muted);font-size:.8rem}
.hpi-qa{display:flex;gap:4px}
.hpi-ib{width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:#F8FAFD;color:var(--ink);font-size:1rem;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}
.hpi-ib:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}
.hpi-ib:disabled{opacity:.35;cursor:default}
.hpi-ib.x:hover{border-color:#D64541;color:#D64541}
.hpi-pdfi{display:grid;place-items:center;width:40px;height:48px;border-radius:6px;background:#D64541;color:#fff;font:800 .7rem/1 var(--f-mono,monospace);letter-spacing:.05em;flex:none}
.hpi-pg{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;color:var(--muted)}
.hpi-pg input{width:min(160px,100%);height:32px;border:1px solid var(--line);border-radius:8px;padding:0 8px;font:inherit;font-size:.85rem;background:#F8FAFD}
.hpi-pg input:focus{outline:none;border-color:var(--blue)}
/* progress */
.hpi-prog{display:grid;gap:8px;padding:16px;border-radius:14px;background:#F4F8FD}
.hpi-prog-t{display:flex;gap:10px;justify-content:space-between;font-weight:600;color:var(--ink);font-size:.92rem}
.hpi-prog-t b{font-family:var(--f-mono,monospace);color:var(--blue)}
.hpi-prog .t-bar i{transition:width .2s}
/* results */
.hpi-imgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.hpi-img{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;display:grid;grid-template-rows:auto 1fr}
.hpi-img.err{grid-template-rows:1fr}
.hpi-img-p{aspect-ratio:4/3;display:grid;place-items:center;padding:8px;background:repeating-conic-gradient(#EEF2F7 0% 25%,#fff 0% 50%) 50%/16px 16px}
.hpi-img-p img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.hpi-img-p.round img{border-radius:50%}
.hpi-img-b{display:grid;gap:6px;padding:10px 12px;align-content:start}
.hpi-img-b>b{font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.hpi-img-b .t-note{overflow-wrap:anywhere}
.hpi-img-b .btn{justify-self:start;margin-top:4px}
.hpi-frs{display:grid;gap:8px}
.hpi-fr{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px 12px;border:1px solid var(--line);border-radius:14px}
.hpi-fr b{display:block;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hpi-fr small{color:var(--muted);font-size:.8rem}
/* splitter thumbnails */
.hpi-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;max-height:460px;overflow:auto;padding:4px}
.hpi-thn{grid-column:1/-1}
.hpi-th{all:unset;cursor:pointer;display:grid;gap:4px;justify-items:center;border-radius:10px;padding:5px;border:2px solid transparent}
.hpi-th:focus-visible{outline:3px solid var(--blue)}
.hpi-th-c{width:100%;aspect-ratio:3/4;display:grid;place-items:center;background:#EEF3F9;border-radius:6px;overflow:hidden;box-shadow:0 1px 3px rgba(6,22,46,.15)}
.hpi-th-c i{font-style:normal;color:var(--muted);font-weight:700}
.hpi-th-cv{max-width:100%;max-height:100%;display:block}
.hpi-th small{font-size:.76rem;font-weight:700;color:var(--muted)}
.hpi-th.on{border-color:var(--blue);background:#EEF5FD}.hpi-th.on small{color:var(--blue)}
/* shared stage + chips */
.hpi-stage{display:grid;place-items:center;padding:12px;border:1px dashed #C9D6E6;border-radius:16px;background:#FBFCFE;min-height:200px}
.hpi-bar{display:flex;flex-wrap:wrap;gap:8px}
.hpi-ratios .t-chip.on,.hpi-scan-ed .t-chip.on,.hpi-wm-pick .t-chip.on{background:var(--blue);color:#fff;border-color:var(--blue)}
/* cropper */
.hpi-crop{display:grid;gap:12px}
.hpi-cw{position:relative;line-height:0;max-width:100%;touch-action:none;user-select:none;-webkit-user-select:none}
.hpi-cv{display:block;max-width:100%;max-height:68vh;width:auto;height:auto}
.hpi-box{position:absolute;box-sizing:border-box;border:2px solid #fff;outline:1px solid rgba(6,22,46,.6);box-shadow:0 0 0 9999px rgba(6,22,46,.55);cursor:move;touch-action:none}
.hpi-crop .hpi-stage{overflow:hidden;padding:14px}
.hpi-box.round{border-radius:50%}
.hpi-box span{position:absolute;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:#fff;border:2px solid var(--blue);box-sizing:border-box;touch-action:none}
.hpi-box span[data-h=nw]{left:0;top:0;cursor:nwse-resize}.hpi-box span[data-h=n]{left:50%;top:0;cursor:ns-resize}.hpi-box span[data-h=ne]{left:100%;top:0;cursor:nesw-resize}
.hpi-box span[data-h=e]{left:100%;top:50%;cursor:ew-resize}.hpi-box span[data-h=se]{left:100%;top:100%;cursor:nwse-resize}.hpi-box span[data-h=s]{left:50%;top:100%;cursor:ns-resize}
.hpi-box span[data-h=sw]{left:0;top:100%;cursor:nesw-resize}.hpi-box span[data-h=w]{left:0;top:50%;cursor:ew-resize}
.hpi-grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 33.2%,rgba(255,255,255,.45) 33.3%,rgba(255,255,255,.45) 33.5%,transparent 33.6%,transparent 66.5%,rgba(255,255,255,.45) 66.6%,rgba(255,255,255,.45) 66.8%,transparent 66.9%),linear-gradient(transparent 33.2%,rgba(255,255,255,.45) 33.3%,rgba(255,255,255,.45) 33.5%,transparent 33.6%,transparent 66.5%,rgba(255,255,255,.45) 66.6%,rgba(255,255,255,.45) 66.8%,transparent 66.9%)}
.hpi-box.round .hpi-grid{display:none}
.hpi-xywh{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.hpi-xywh label{display:grid;gap:4px;font-size:.78rem;font-weight:700;color:var(--muted)}
.hpi-xywh input{height:40px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;font-size:.92rem;background:#F8FAFD;min-width:0;width:100%;box-sizing:border-box}
/* watermark */
.hpi-wm{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:22px;align-items:start}
.hpi-wm-ctl{min-width:0;display:grid;gap:14px}
.hpi-wm-pv{min-width:0;position:sticky;top:90px;display:grid;gap:10px}
.hpi-wm-cv{display:block;max-width:100%;max-height:70vh;width:auto;height:auto}
.hpi-wm-pick{align-items:center}
.hpi-wm-pick .t-chip{min-width:36px;justify-content:center}
/* scanner */
.hpi-scan-add{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hpi-strip{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 8px;flex-wrap:nowrap;align-items:flex-start}
.hpi-pg-n{flex:none;align-self:center;max-width:140px}
.hpi-pg-c{flex:none;width:118px;display:grid;gap:6px;padding:6px;border:2px solid var(--line);border-radius:14px;background:#fff}
.hpi-pg-c.on{border-color:var(--blue);box-shadow:0 0 0 3px rgba(10,108,208,.14)}
.hpi-pg-t{all:unset;cursor:pointer;display:grid;place-items:center;height:130px;background:#EEF3F9;border-radius:8px;overflow:hidden}
.hpi-pg-t:focus-visible{outline:3px solid var(--blue)}
.hpi-pg-t img{max-width:100%;max-height:100%;display:block}
.hpi-pg-a{display:flex;gap:3px;align-items:center}
.hpi-pg-a b{margin-right:auto;font-family:var(--f-mono,monospace);font-size:.8rem;padding-left:3px}
.hpi-pg-a .hpi-ib{width:28px;height:28px;font-size:.8rem;border-radius:8px}
.hpi-scan-ed{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.hpi-scan-col{display:grid;gap:10px;min-width:0}
.hpi-scan-h{display:grid;gap:2px}
.hpi-scan-h b{color:var(--ink)}
.hpi-qw{position:relative;width:100%;max-width:100%;line-height:0;touch-action:none;user-select:none;-webkit-user-select:none;margin:0 auto}
.hpi-qcv{display:block;width:100%;height:100%;border-radius:8px}
.hpi-qsvg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.hpi-qsvg polygon{fill:rgba(10,108,208,.16);stroke:#00AEE6;stroke-width:2.5;vector-effect:non-scaling-stroke}
.hpi-qh{position:absolute;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;background:rgba(10,108,208,.25);border:3px solid #fff;box-shadow:0 0 0 2px #0A6CD0,0 2px 8px rgba(0,0,0,.35);cursor:grab;touch-action:none;box-sizing:border-box}
.hpi-qh.on{background:#0A6CD0;transform:scale(1.2)}
.hpi-rcv{max-height:60vh;width:auto;max-width:100%;background:#fff}
.hpi-str{gap:4px}
.hpi-str label{font-weight:700;font-size:.88rem;color:var(--ink)}
.hpi-str input{width:100%;accent-color:var(--blue)}
.hpi-scan-col .t-copy{justify-self:start}
@media (max-width:900px){.hpi-wm{grid-template-columns:1fr}.hpi-wm-pv{position:static;order:-1}.hpi-scan-ed{grid-template-columns:1fr}}
@media (max-width:560px){
  .hpi-qi{grid-template-columns:auto 44px minmax(0,1fr);gap:8px 10px}
  .hpi-q .hpi-qi:not(:has(.hpi-qn)){grid-template-columns:44px minmax(0,1fr) auto}
  .hpi-q .hpi-qi:not(:has(.hpi-qn)) .hpi-qa{grid-column:auto}
  .hpi-qt{width:44px;height:44px}
  .hpi-qa{grid-column:1/-1;justify-content:flex-end}
  .hpi-scan-add{grid-template-columns:1fr}
  .hpi-drop-l{padding:20px 14px}
  .hpi-xywh{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hpi-imgs{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
  .hpi-fr{grid-template-columns:34px minmax(0,1fr)}.hpi-fr .btn{grid-column:1/-1;justify-content:center}
  .hpi-fr .hpi-pdfi{width:34px;height:42px}
}
/* ===== Productivity tools (62-productivity.js). Every selector uses the unique pd- prefix. ===== */
.hn-tool>[class*="pd-"],.hn-tool>.pd-seg,.hn-tool .pd-hgrid>*,.hn-tool .pd-hdet>*,.hn-tool .pd-hchart>*,.hn-tool .pd-feat>*,.hn-tool .pd-cgrid>*,.hn-tool .pd-pomo>*,.hn-tool .pd-panel>*{min-width:0}
.hn-tool .pd-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.hn-tool .pd-row{display:flex;gap:8px;align-items:stretch;min-width:0}
.hn-tool .pd-row input{flex:1 1 0;width:0;min-width:0;height:48px;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font:inherit;font-size:1rem;color:var(--ink);background:#F8FAFD}
.hn-tool .pd-row input:focus,.hn-tool .pd-frow input:focus,.hn-tool .pd-frow select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(10,108,208,.14);background:#fff}
.hn-tool .pd-row .btn{flex:none;min-height:48px}
.hn-tool .pd-h{display:block;font-size:.92rem;color:var(--ink);margin:0 0 8px}
.hn-tool .pd-link{border:0;background:transparent;color:var(--blue);font:inherit;font-weight:700;font-size:.88rem;cursor:pointer;padding:4px 0;justify-self:start;text-align:left}
.hn-tool .pd-panel{border:1px solid var(--line);border-radius:16px;padding:16px;background:#F8FAFD;display:grid;gap:12px}
.hn-tool .pd-file{position:relative;overflow:hidden;cursor:pointer;display:inline-block}
.hn-tool .pd-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.hn-tool .pd-x{border:0;background:transparent;color:var(--muted);font-size:1.3rem;line-height:1;cursor:pointer;padding:4px 8px;border-radius:8px;flex:none}
.hn-tool .pd-x:hover{color:#B3261E;background:#FFF1EF}
.hn-tool .pd-del{color:#B3261E}.hn-tool .pd-del:hover{background:#B3261E;border-color:#B3261E;color:#fff}
.hn-tool .t-copy:disabled{opacity:.55;cursor:not-allowed}
.hn-tool .t-copy.pd-on{background:#ECFBF2;border-color:#BDEBD0;color:#0E7A43}
.hn-tool .t-chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.hn-tool .t-chip small{opacity:.7;font-size:.75rem}
.hn-tool .pd-toast{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:9999;display:flex;gap:14px;align-items:center;padding:12px 16px;border-radius:14px;background:#06162E;color:#fff;font-weight:600;font-size:.92rem;box-shadow:0 20px 40px -18px rgba(6,22,46,.6);max-width:calc(100vw - 32px)}
.hn-tool .pd-toast button{border:0;background:transparent;color:#00AEE6;font:inherit;font-weight:800;cursor:pointer;padding:4px}
.hn-tool .t-sync{margin:0}
.hn-tool .pd-red{color:#B3261E}

/* ---------- to-do list ---------- */
.hn-tool .pd-ed>*,.hn-tool .pd-ed .tf-grid>*,.hn-tool .pd-subs,.hn-tool .pd-adv>*,.hn-tool .pd-panel>*,.hn-tool .pd-tasks>li{min-width:0}
.hn-tool .pd-tasks{grid-template-columns:minmax(0,1fr)}
.hn-tool .pd-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin;min-width:0}
.hn-tool .pd-tab{flex:none;display:grid;gap:5px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 12px;font:inherit;font-size:.9rem;font-weight:700;color:var(--ink);cursor:pointer;text-align:left;min-width:92px}
.hn-tool .pd-tab em{font-style:normal;font-weight:600;color:var(--muted);font-size:.8rem}
.hn-tool .pd-tab.on{border-color:var(--blue);background:#EEF5FD;color:var(--blue)}
.hn-tool .pd-tbar{display:block;height:4px;border-radius:4px;background:#E7EEF7;overflow:hidden}
.hn-tool .pd-tbar b{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--blue))}
.hn-tool .pd-newtab{border-style:dashed;color:var(--blue);display:flex;align-items:center}
.hn-tool .pd-add{display:grid;gap:8px}
.hn-tool .pd-add .pd-row input{height:52px;font-size:1.02rem;background:#fff;border-width:1.5px}
.hn-tool .pd-hint{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:0}
.hn-tool .pd-hint:empty{display:none}
.hn-tool .pd-adv{border:1px solid var(--line);border-radius:14px;padding:14px;background:#F8FAFD}
.hn-tool .pd-filters{display:grid;gap:10px}
.hn-tool .pd-seg{display:flex;gap:4px;padding:4px;border-radius:12px;background:#EEF3F9;overflow-x:auto;scrollbar-width:none}
.hn-tool .pd-seg button{flex:1 0 auto;border:0;background:transparent;border-radius:9px;padding:8px 12px;font:inherit;font-size:.86rem;font-weight:700;color:var(--muted);cursor:pointer;display:inline-flex;gap:6px;align-items:center;justify-content:center;white-space:nowrap}
.hn-tool .pd-seg button.on{background:#fff;color:var(--ink);box-shadow:0 2px 8px -4px rgba(6,22,46,.35)}
.hn-tool .pd-seg i{font-style:normal;font-size:.72rem;background:#DCE7F4;color:var(--ink);border-radius:9px;padding:1px 6px}
.hn-tool .pd-seg i:empty{display:none}
.hn-tool .pd-seg i.red{background:#D64541;color:#fff}
.hn-tool .pd-frow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.hn-tool .pd-frow input,.hn-tool .pd-frow select{height:44px;border:1px solid var(--line);border-radius:12px;padding:8px 12px;font:inherit;font-size:.95rem;color:var(--ink);background:#F8FAFD;min-width:0}
.hn-tool .pd-tagrow:empty{display:none}
.hn-tool .pd-lhead{display:grid;gap:8px}
.hn-tool .pd-lh1{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.hn-tool .pd-ltitle{font-family:var(--f-display);font-size:1.2rem;color:var(--ink)}
.hn-tool .pd-prog{display:grid;gap:5px}
.hn-tool .pd-prog small{color:var(--muted);font-size:.82rem}
.hn-tool .pd-tasks{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.hn-tool .pd-task{border:1px solid var(--line);border-left:4px solid var(--line);border-radius:14px;background:#fff;transition:opacity .25s,transform .25s,box-shadow .2s;min-width:0}
.hn-tool .pd-task.p1{border-left-color:#3B8BEB}.hn-tool .pd-task.p2{border-left-color:#E28C00}.hn-tool .pd-task.p3{border-left-color:#D64541}
.hn-tool .pd-task.on{box-shadow:0 18px 40px -26px rgba(6,22,46,.45);border-color:#BFD4EE}
.hn-tool .pd-task.drag{box-shadow:0 18px 40px -16px rgba(6,22,46,.5);transform:scale(1.01);z-index:2;position:relative;background:#F4F8FD}
.hn-tool .pd-task.pd-out{opacity:0;transform:translateX(24px)}
.hn-tool .pd-task.pd-new{animation:pdflash 1.2s ease}
@keyframes pdflash{0%{background:#E5F1FD}100%{background:#fff}}
.hn-tool .pd-th{display:flex;gap:8px;align-items:center;padding:6px 8px 6px 6px;min-width:0}
.hn-tool .pd-drag{flex:none;cursor:grab;color:#9AABC0;font-size:1rem;letter-spacing:-3px;padding:10px 6px 10px 4px;touch-action:none;user-select:none;-webkit-user-select:none}
.hn-tool .pd-ck{flex:none;width:22px;height:22px;accent-color:var(--blue);cursor:pointer;margin:0 2px}
.hn-tool .pd-tt{flex:1 1 auto;min-width:0;border:0;background:transparent;text-align:left;font:inherit;color:var(--ink);cursor:pointer;padding:8px 4px;display:grid;gap:4px}
.hn-tool .pd-tt b{font-weight:600;font-size:.98rem;line-height:1.35;overflow-wrap:anywhere}
.hn-tool .pd-task.dn .pd-tt b{text-decoration:line-through;color:var(--muted)}
.hn-tool .pd-meta{display:flex;flex-wrap:wrap;gap:4px}
.hn-tool .pd-meta:empty{display:none}
.hn-tool .pd-c{display:inline-flex;align-items:center;gap:3px;font-size:.74rem;font-weight:600;color:var(--muted);background:#F1F5FA;border-radius:7px;padding:2px 7px;white-space:nowrap}
.hn-tool .pd-c.today{background:#EEF5FD;color:var(--blue)}
.hn-tool .pd-c.over{background:#FFF1EF;color:#B3261E}
.hn-tool .pd-c.ok{background:#ECFBF2;color:#0E7A43}
.hn-tool .pd-c.p3{color:#B3261E}.hn-tool .pd-c.p2{color:#9A5B00}.hn-tool .pd-c.p1{color:#1F5FAE}
.hn-tool .pd-c.pd-tg{color:#5B3FB8;background:#F3EFFD}
.hn-tool .pd-c.pd-ln{background:#fff;border:1px solid var(--line)}
.hn-tool .pd-mv{flex:none;display:flex;flex-direction:column;gap:2px}
.hn-tool .pd-mv button{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:7px;width:30px;height:22px;font-size:.6rem;cursor:pointer;line-height:1}
.hn-tool .pd-mv button:hover{color:var(--blue);border-color:var(--blue)}
.hn-tool .pd-ed{border-top:1px solid var(--line);padding:14px;display:grid;grid-template-columns:minmax(0,1fr);gap:14px;background:#FBFCFE;border-radius:0 0 14px 14px}
.hn-tool .pd-sl{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:4px}
.hn-tool .pd-sl li{display:flex;gap:8px;align-items:center}
.hn-tool .pd-sl li input[type=checkbox]{width:18px;height:18px;accent-color:var(--blue);flex:none}
.hn-tool .pd-si{flex:1;min-width:0;border:1px solid transparent;background:transparent;border-radius:8px;padding:7px 8px;font:inherit;font-size:.94rem;color:var(--ink)}
.hn-tool .pd-si:focus{outline:none;border-color:var(--line);background:#fff}
.hn-tool .pd-sl li.dn .pd-si{text-decoration:line-through;color:var(--muted)}
.hn-tool .pd-edfoot{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}
.hn-tool .pd-empty{list-style:none;border:1px dashed #C9D6E6;border-radius:14px;padding:22px 16px;text-align:center;color:var(--muted);display:grid;gap:8px;justify-items:center}
.hn-tool .pd-empty b{color:var(--ink);font-size:1.05rem}
.hn-tool .pd-empty .t-chips{justify-content:center}
.hn-tool .pd-donebox{display:grid;gap:8px}
.hn-tool .pd-donebox:empty{display:none}
.hn-tool .pd-foot{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:14px}
.hn-tool .pd-alerts{display:grid;gap:8px}
.hn-tool .pd-alerts:empty{display:none}
.hn-tool .pd-alert{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:14px;background:#FFF7E8;border:1px solid #F7DDA8;animation:pdflash2 .6s ease 2}
.hn-tool .pd-alert>span:first-child{display:grid;gap:2px;color:var(--ink)}
.hn-tool .pd-alert small{color:#9A5B00;font-weight:600}
@keyframes pdflash2{50%{background:#FFE7B8}}
.hn-tool .pd-tpls{margin-top:-2px}
@media (max-width:640px){
  .hn-tool .pd-frow{grid-template-columns:1fr 132px}
  .hn-tool .pd-th{padding:4px 6px 4px 2px;gap:4px}
  .hn-tool .pd-drag{padding:10px 2px}
  .hn-tool .pd-ed{padding:12px}
  .hn-tool .pd-edfoot .btn{flex:1 1 100%}
  .hn-tool .pd-alert .pd-actions .btn{flex:1}
}

/* ---------- shared bits ---------- */
.hn-tool .pd-hbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.hn-tool .pd-seg-sm{flex:none}
.hn-tool .pd-seg-sm button{flex:0 0 auto}
.hn-tool .pd-bars{display:flex;align-items:flex-end;gap:6px;height:150px;padding:8px 4px 0;border-bottom:1px solid var(--line)}
.hn-tool .pd-bars>div{flex:1 1 0;min-width:0;height:100%;display:grid;grid-template-rows:1fr auto auto;justify-items:center;gap:2px}
.hn-tool .pd-bars i{align-self:end;width:100%;max-width:38px;min-height:2px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--cyan),var(--blue))}
.hn-tool .pd-bars b{font-size:.72rem;color:var(--ink)}
.hn-tool .pd-bars small{font-size:.68rem;color:var(--muted);white-space:nowrap;min-height:1em}
.hn-tool .pd-bars30{gap:2px;height:110px}
.hn-tool .pd-bars30 i{border-radius:3px 3px 1px 1px}
.hn-tool .pd-hchart,.hn-tool .pd-pstats,.hn-tool .pd-phist{display:grid;gap:10px}
.hn-tool .pd-hchart:empty{display:none}

/* ---------- habit tracker ---------- */
.hn-tool .pd-hsum:empty,.hn-tool .pd-hdet:empty{display:none}
.hn-tool .pd-hscroll{overflow-x:auto;border:1px solid var(--line);border-radius:16px;-webkit-overflow-scrolling:touch}
.hn-tool .pd-htab{border-collapse:separate;border-spacing:0;width:100%;font-size:.88rem}
.hn-tool .pd-htab th,.hn-tool .pd-htab td{padding:6px 3px;text-align:center;border-bottom:1px solid var(--line)}
.hn-tool .pd-htab tbody tr:last-child>*{border-bottom:0}
.hn-tool .pd-htab thead th{font-size:.74rem;color:var(--muted);font-weight:700;background:#F4F8FD;line-height:1.15}
.hn-tool .pd-htab thead th small{display:block;font-size:.66rem;font-weight:600;text-transform:uppercase}
.hn-tool .pd-htab thead th.td{color:var(--blue)}
.hn-tool .pd-htab .pd-hn{position:sticky;left:0;z-index:1;background:#fff;text-align:left;min-width:170px;max-width:240px;padding-left:8px;border-right:1px solid var(--line)}
.hn-tool .pd-htab thead .pd-hn{background:#F4F8FD;padding-left:14px}
.hn-tool .pd-hn button{border:0;background:transparent;display:flex;gap:8px;align-items:center;text-align:left;font:inherit;cursor:pointer;padding:4px;width:100%;color:var(--ink)}
.hn-tool .pd-hn button>span:last-child{display:grid;min-width:0}
.hn-tool .pd-hn b{font-size:.9rem;line-height:1.25;overflow-wrap:anywhere}
.hn-tool .pd-hn small{font-size:.72rem;color:var(--muted);font-weight:500}
.hn-tool .pd-he{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--hc) 14%,#fff);font-size:1.1rem}
.hn-tool .pd-hc{width:36px;height:36px;border-radius:10px;border:1.5px solid #D5E0EC;background:#fff;color:#fff;font-weight:900;font-size:1rem;cursor:pointer;transition:transform .12s,background .15s}
.hn-tool .pd-hc:hover{border-color:var(--hc)}
.hn-tool .pd-hc:active{transform:scale(.9)}
.hn-tool .pd-hc.on{background:var(--hc);border-color:var(--hc)}
.hn-tool .pd-hc.td{box-shadow:0 0 0 3px color-mix(in srgb,var(--hc) 22%,transparent)}
.hn-tool .pd-hc.pre{opacity:.45}
.hn-tool .pd-hscroll.wide .pd-hc{width:30px;height:30px;border-radius:8px}
.hn-tool .pd-hs{white-space:nowrap;padding:6px 8px!important}
.hn-tool .pd-hmob{display:none}
.hn-tool .pd-hs b{font-size:1rem;color:var(--ink)}
.hn-tool .pd-hs small{color:var(--muted);font-size:.7rem;margin-left:1px}
.hn-tool .pd-emo{display:flex;flex-wrap:wrap;gap:6px}
.hn-tool .pd-emo button{width:40px;height:40px;border-radius:10px;border:1px solid var(--line);background:#fff;font-size:1.2rem;cursor:pointer}
.hn-tool .pd-emo button.on{border-color:var(--blue);box-shadow:0 0 0 3px rgba(10,108,208,.2)}
.hn-tool .pd-cols{display:flex;flex-wrap:wrap;gap:8px}
.hn-tool .pd-cols button{width:32px;height:32px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--line);cursor:pointer}
.hn-tool .pd-cols button.on{box-shadow:0 0 0 3px var(--ink)}
.hn-tool .pd-hpc{display:grid;gap:8px}
.hn-tool .pd-hpc>div{display:grid;grid-template-columns:minmax(0,200px) 1fr 48px;gap:10px;align-items:center;font-size:.88rem}
.hn-tool .pd-hpc span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hn-tool .pd-hpc b{text-align:right}
.hn-tool .pd-hdet textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font:inherit;background:#fff;resize:vertical}

/* ---------- pomodoro ---------- */
.hn-tool .pd-pomo{display:grid;gap:18px;justify-items:center;padding:18px;border-radius:20px;background:linear-gradient(160deg,#EEF5FD,#fff);border:1px solid #D6E4F5;--pc:var(--blue)}
.hn-tool .pd-pomo.m-short{background:linear-gradient(160deg,#ECFBF2,#fff);border-color:#C9EBD7;--pc:#13A35B}
.hn-tool .pd-pomo.m-long{background:linear-gradient(160deg,#F3EFFD,#fff);border-color:#DDD3F6;--pc:#7B4FD6}
.hn-tool .pd-pmodes{width:100%;max-width:520px}
.hn-tool .pd-ring{position:relative;width:min(300px,100%);aspect-ratio:1}
.hn-tool .pd-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.hn-tool .pd-ring circle{fill:none;stroke-width:12}
.hn-tool .pd-ring .bg{stroke:#E1EAF4}
.hn-tool .pd-ring .fg{stroke:var(--pc);stroke-linecap:round;transition:stroke-dashoffset .3s linear}
.hn-tool .pd-rt{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:4px;text-align:center}
.hn-tool .pd-pl{font-weight:800;color:var(--pc);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}
.hn-tool .pd-time{font-family:var(--f-display);font-size:clamp(3rem,13vw,4.4rem);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.hn-tool .pd-pc{color:var(--muted);font-size:.82rem}
.hn-tool .pd-pbtns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.hn-tool .pd-pbtns .btn{min-height:52px;min-width:96px}
.hn-tool .pd-pbtns .pd-go{min-width:150px;font-size:1.08rem;background:var(--pc);border-color:var(--pc)}
.hn-tool .pd-ptask{width:100%;max-width:520px;display:grid;gap:6px}
.hn-tool .pd-ptask label{font-weight:700;font-size:.85rem;color:var(--ink)}
.hn-tool .pd-ptask input{height:46px;border:1px solid var(--line);border-radius:12px;padding:8px 12px;font:inherit;background:#fff;min-width:0;width:100%}
.hn-tool .pd-pset summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.hn-tool .pd-pset summary::after{content:'▾';color:var(--muted)}
.hn-tool .pd-pset[open] summary::after{content:'▴'}
.hn-tool .pd-pset summary::-webkit-details-marker{display:none}
.hn-tool .pd-hl{list-style:none;margin:0;padding:0;display:grid;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.hn-tool .pd-hl li{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);font-size:.9rem}
.hn-tool .pd-hl li:last-child{border-bottom:0}
.hn-tool .pd-hlt{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.hn-tool .pd-hlk{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}
.hn-tool .pd-hlk em,.hn-tool .pd-hlk small{color:var(--muted)}

/* ---------- stopwatch / timer / interval ---------- */
.hn-tool .pd-stage{position:relative;display:grid;gap:10px;justify-items:center;padding:42px 16px 22px;border-radius:22px;background:#06162E;color:#fff;transition:background .3s;min-width:0}
.hn-tool .pd-stage.k-work{background:#0E7A43}.hn-tool .pd-stage.k-rest{background:#9A5B00}.hn-tool .pd-stage.k-prep{background:#0C2244}
.hn-tool .pd-stage.ring{animation:pdring 1s steps(2) infinite}
@keyframes pdring{50%{background:#B3261E}}
.hn-tool .pd-phase{font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.85rem;color:#9FD8F5}
.hn-tool .pd-stage.k-work .pd-phase,.hn-tool .pd-stage.k-rest .pd-phase{color:#fff}
.hn-tool .pd-bigt{font-family:var(--f-mono,monospace);font-variant-numeric:tabular-nums;font-weight:700;font-size:clamp(2.7rem,13vw,6.2rem);line-height:1;letter-spacing:-.03em;max-width:100%;white-space:nowrap}
.hn-tool .pd-sub{color:#BFD3EA;font-size:.95rem;min-height:1.3em;font-variant-numeric:tabular-nums}
.hn-tool .pd-sbar{width:min(520px,100%);height:6px;border-radius:6px;background:rgba(255,255,255,.15);overflow:hidden}
.hn-tool .pd-stage.t-sw .pd-sbar{visibility:hidden}
.hn-tool .pd-sbar i{display:block;height:100%;width:0;background:#00AEE6}
.hn-tool .pd-sbtns{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:6px}
.hn-tool .pd-sbtns .btn{min-height:56px;min-width:120px;font-size:1.05rem}
.hn-tool .pd-sbtns .btn-ghost{background:rgba(255,255,255,.1)!important;color:#fff!important;border-color:rgba(255,255,255,.3)!important}
.hn-tool .pd-sbtns .btn:disabled{opacity:.4}
.hn-tool .pd-sbtns .pd-stop{background:#D64541;border-color:#D64541}
.hn-tool .pd-fs{position:absolute;top:10px;right:10px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff;border-radius:10px;padding:6px 10px;font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}
.hn-tool .pd-stage:fullscreen,.hn-tool .pd-stage.pd-fakefs{border-radius:0;place-content:center;padding:24px}
.hn-tool .pd-cfeat:fullscreen .pd-cu,.hn-tool .pd-cfeat.pd-fakefs .pd-cu{max-width:90vw}
.hn-tool .pd-stage:fullscreen .pd-bigt,.hn-tool .pd-stage.pd-fakefs .pd-bigt{font-size:min(19vw,34vh)}
.hn-tool .pd-fakefs{position:fixed!important;inset:0;z-index:9998;border-radius:0!important}
.hn-tool .pd-swbody{display:grid;gap:12px;min-width:0}
.hn-tool .pd-swbody:empty{display:none}
.hn-tool .pd-laps{display:grid;gap:10px}
.hn-tool .pd-laps .t-table table{min-width:0}
.hn-tool .pd-laps .t-table{max-height:340px;overflow:auto}
.hn-tool .pd-best{color:#0E7A43;font-weight:700}.hn-tool .pd-worst{color:#B3261E;font-weight:700}
.hn-tool .pd-tmset{display:grid;gap:12px}
.hn-tool .pd-hms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:420px}
.hn-tool .pd-hms label{display:grid;gap:4px;font-size:.8rem;font-weight:700;color:var(--muted)}
.hn-tool .pd-hms input{height:56px;border:1px solid var(--line);border-radius:12px;text-align:center;font:inherit;font-size:1.5rem;font-weight:700;color:var(--ink);background:#F8FAFD;min-width:0;width:100%}
.hn-tool .pd-sopts{justify-content:flex-start}
.hn-tool .pd-inl{display:inline-flex;gap:8px;align-items:center;font-size:.86rem;font-weight:700;color:var(--ink)}
.hn-tool .pd-inl select{height:36px;border:1px solid var(--line);border-radius:9px;padding:0 8px;font:inherit;background:#fff}
.hn-tool .pd-inl input[type=range]{width:110px;accent-color:var(--blue)}

/* ---------- countdown ---------- */
.hn-tool .pd-feat:empty{display:none}
.hn-tool .pd-cfeat{position:relative;border-radius:22px;padding:28px 18px 20px;color:#fff;display:grid;gap:8px;justify-items:center;text-align:center;overflow:hidden;min-width:0}
.hn-tool .pd-cfeat::before{content:'';position:absolute;width:320px;height:320px;border-radius:50%;background:rgba(255,255,255,.08);right:-90px;top:-120px}
.hn-tool .pd-cfeat>*{position:relative}
.hn-tool .pd-cem{font-size:2.6rem;line-height:1}
.hn-tool .pd-cname{font-family:var(--f-display);font-size:clamp(1.3rem,4vw,1.9rem);line-height:1.2;overflow-wrap:anywhere}
.hn-tool .pd-cdate{opacity:.9;font-weight:600}
.hn-tool .pd-cu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;max-width:460px;margin-top:6px}
.hn-tool .pd-cu span{display:grid;justify-items:center;min-width:0;padding:10px 8px;border-radius:14px;background:rgba(255,255,255,.16);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.hn-tool .pd-cu b{font-family:var(--f-display);font-size:clamp(1.8rem,7vw,3rem);line-height:1;font-variant-numeric:tabular-nums}
.hn-tool .pd-cu small{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;opacity:.85;margin-top:4px}
.hn-tool .pd-clab{font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;opacity:.9}
.hn-tool .pd-ctoday{font-family:var(--f-display);font-size:2.2rem;margin:10px 0}
.hn-tool .pd-cnote{opacity:.85}
.hn-tool .pd-cfeat .pd-actions{justify-content:center;margin-top:6px}
.hn-tool .pd-wbtn{border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.12);color:#fff;border-radius:10px;padding:8px 14px;font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}
.hn-tool .pd-wbtn:hover{background:#fff;color:var(--ink)}
.hn-tool .pd-cfeat:fullscreen,.hn-tool .pd-cfeat.pd-fakefs{border-radius:0;place-content:center}
.hn-tool .pd-cfeat:fullscreen .pd-cu b,.hn-tool .pd-cfeat.pd-fakefs .pd-cu b{font-size:min(12vw,18vh)}
.hn-tool .pd-clist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hn-tool .pd-ccard{border:1px solid var(--line);border-radius:16px;padding:10px;display:grid;gap:8px;background:#fff;min-width:0}
.hn-tool .pd-ccard.on{border-color:var(--blue);box-shadow:0 0 0 3px rgba(10,108,208,.12)}
.hn-tool .pd-cmain{border:0;background:transparent;display:flex;gap:10px;align-items:center;text-align:left;font:inherit;color:var(--ink);cursor:pointer;padding:2px;min-width:0}
.hn-tool .pd-cdot{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:1.3rem}
.hn-tool .pd-ctx{flex:1;display:grid;min-width:0}
.hn-tool .pd-ctx b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hn-tool .pd-ctx small{color:var(--muted);font-size:.78rem}
.hn-tool .pd-cn{flex:none;display:grid;justify-items:end}
.hn-tool .pd-cn b{font-family:var(--f-display);font-size:1.5rem;line-height:1;color:var(--blue)}
.hn-tool .pd-cn small{font-size:.72rem;color:var(--muted)}
.hn-tool .pd-ccard .pd-actions{gap:6px}
.hn-tool .pd-ccard .pd-x{margin-left:auto}
.hn-tool .pd-cpre small{opacity:.7}
@media (max-width:640px){
  .hn-tool .pd-clist{grid-template-columns:1fr}
  .hn-tool .pd-hpc>div{grid-template-columns:minmax(0,1fr) 90px 40px}
  .hn-tool .pd-htab .pd-hn{min-width:0;width:104px;max-width:104px;padding-left:4px}
  .hn-tool .pd-htab thead .pd-hn{padding-left:8px}
  .hn-tool .pd-hn button{gap:5px;padding:2px}
  .hn-tool .pd-hn b{font-size:.8rem}
  .hn-tool .pd-hn small{font-size:.66rem}
  .hn-tool .pd-hn small:not(.pd-hmob){display:none}
  .hn-tool .pd-hmob{display:block;color:var(--ink)!important;font-weight:700!important}
  .hn-tool .pd-he{display:none}
  .hn-tool .pd-htab th,.hn-tool .pd-htab td{padding:5px 1px}
  .hn-tool .pd-hc{width:27px;height:30px;border-radius:8px;font-size:.85rem}
  .hn-tool .pd-hscroll:not(.wide) .pd-hs{display:none}
  .hn-tool .pd-bars12>div:nth-child(even) small{visibility:hidden}
  .hn-tool .pd-pomo{padding:14px 10px}
  .hn-tool .pd-sbtns .btn{min-width:100px;flex:1}
  .hn-tool .pd-cu span{padding:8px 2px}
  .hn-tool .pd-cu small{font-size:.62rem;letter-spacing:.04em}
  .hn-tool .pd-hl li{grid-template-columns:auto auto minmax(0,1fr) auto;gap:8px}
}
/* ===== SEO + website developer tools (50-seo-web.js). All selectors scoped to .hn-tool ===== */
.hn-tool .sw-h{font-size:1rem;margin:6px 0 0;color:var(--ink)}
.hn-tool .sw-tabs .t-chip{font-weight:600;font-family:inherit}
.hn-tool .sw-tabs .t-chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.hn-tool .sw-sub{display:grid;gap:16px;min-width:0}
.hn-tool .sw-sub[hidden],.hn-tool [data-panel][hidden],.hn-tool .tf[hidden]{display:none}
.hn-tool .sw-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:8px 0}
.hn-tool .sw-title{font-size:1.08rem;font-weight:700;color:#1a0dab;line-height:1.35}
.hn-tool .sw-desc{color:var(--ink);line-height:1.55}
.hn-tool .sw-trunc{margin-top:8px;font-size:.84rem;color:var(--muted)}
.hn-tool .sw-trunc span{color:#1a0dab}
.hn-tool .t-bar.sw-bar-bad i{background:linear-gradient(90deg,#F2994A,#D64541)}
.hn-tool .t-bar.sw-bar-warn i{background:linear-gradient(90deg,#F7C948,#E28C00)}
.hn-tool .t-bar.sw-mini{width:90px;height:6px;margin-top:7px}
.hn-tool .sw-good{color:#0E7A43}.hn-tool .sw-warn{color:#9A5B00}.hn-tool .sw-bad{color:#B3261E}
.hn-tool .sw-meters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
.hn-tool .sw-meter{display:grid;gap:6px}
.hn-tool .sw-meter-h{display:flex;justify-content:space-between;gap:8px;font-size:.84rem;color:var(--muted);font-weight:600}
.hn-tool .sw-airow{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.hn-tool .sw-airow span{flex:1 1 260px}
.hn-tool .sw-pl{display:inline-block;font-size:.76rem;border-radius:6px;padding:2px 7px;margin:2px 2px 2px 0;white-space:nowrap}
.hn-tool .sw-pl.yes{background:#ECFBF2;color:#0E7A43}.hn-tool .sw-pl.no{background:#FFF1EF;color:#B3261E}
.hn-tool .sw-details{border:1px solid var(--line);border-radius:14px;padding:12px 16px;background:#FBFCFE}
.hn-tool .sw-details summary{cursor:pointer;font-weight:700;color:var(--ink)}
.hn-tool .sw-details p{margin:8px 0 0}
/* intent */
.hn-tool .sw-hbars{display:grid;gap:8px}
.hn-tool .sw-hbar{display:grid;grid-template-columns:110px minmax(0,1fr) 90px;gap:10px;align-items:center;font-size:.88rem}
.hn-tool .sw-hbar .t-bar{height:12px}
.hn-tool .sw-hbar b{font-size:.84rem;color:var(--ink);text-align:right}
.hn-tool .sw-int{display:inline-block;font-weight:700;font-size:.8rem;border-radius:7px;padding:3px 8px;color:#fff}
.hn-tool .sw-int-informational{background:#0A6CD0!important}.hn-tool .sw-int-commercial{background:#7B4FD6!important}.hn-tool .sw-int-transactional{background:#13A35B!important}.hn-tool .sw-int-local{background:#E28C00!important}.hn-tool .sw-int-navigational{background:#56657A!important}
.hn-tool .sw-2nd{color:var(--muted);font-size:.78rem}
/* SERP preview */
.hn-tool .sw-serp-wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;align-items:start}
.hn-tool .sw-serp-frame{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff;overflow:hidden}
.hn-tool .sw-serp-frame.m{max-width:390px;border-radius:22px;background:#fff;box-shadow:0 10px 30px -20px rgba(6,22,46,.4)}
.hn-tool .sw-serp{font-family:Arial,Helvetica,sans-serif;max-width:600px;text-align:left}
.hn-tool .sw-serp-src{display:flex;gap:10px;align-items:center;margin-bottom:4px}
.hn-tool .sw-fav{width:28px;height:28px;flex:none;border-radius:50%;background:#EEF0F3;border:1px solid #DADCE0;display:grid;place-items:center;font-size:12px;font-weight:700;color:#3C4043}
.hn-tool .sw-site{font-size:14px;color:#202124;line-height:20px}
.hn-tool .sw-crumb{font-size:12px;color:#4D5156;line-height:18px;overflow-wrap:anywhere}
.hn-tool .sw-crumb span{color:#5F6368}
.hn-tool .sw-serp-t{font-size:20px;line-height:26px;color:#1a0dab;margin:2px 0 3px;overflow-wrap:anywhere}
.hn-tool .sw-serp.m .sw-serp-t{font-size:18px;line-height:24px}
.hn-tool .sw-serp-d{font-size:14px;line-height:22px;color:#4D5156;overflow-wrap:anywhere}
.hn-tool .sw-serp-d b{color:#202124}
.hn-tool .sw-date,.hn-tool .sw-muted{color:#70757A}
.hn-tool .sw-rich{font-size:14px;color:#70757A;margin-bottom:2px}
.hn-tool .sw-stars{color:#E7711B;letter-spacing:1px}
/* robots */
.hn-tool .sw-rtest{display:grid;gap:4px;border-radius:14px;padding:14px 16px;border:1px solid}
.hn-tool .sw-rtest.ok{background:#ECFBF2;border-color:#BDEBD0}.hn-tool .sw-rtest.no{background:#FFF1EF;border-color:#F5C6C0}
.hn-tool .sw-rtest b{font-size:1.15rem}.hn-tool .sw-rtest.ok b{color:#0E7A43}.hn-tool .sw-rtest.no b{color:#B3261E}
.hn-tool .sw-rtest small{color:var(--muted)}
.hn-tool code{font-family:var(--f-mono);font-size:.86em;overflow-wrap:anywhere}
/* schema */
.hn-tool .sw-sch-form .sw-sec{grid-column:1/-1;font-weight:800;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);border-top:1px solid var(--line);padding-top:12px;margin-top:4px}
.hn-tool .sw-req{color:#B3261E!important}
.hn-tool .sw-rep{border:1px dashed #C9D6E6;border-radius:14px;padding:12px;background:#FBFCFE}
.hn-tool .sw-rows{display:grid;gap:10px}
.hn-tool .sw-rrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) 36px;gap:10px;align-items:end;padding-bottom:10px;border-bottom:1px solid var(--line)}
.hn-tool .sw-rrow:last-child{border-bottom:0;padding-bottom:0}
.hn-tool .sw-rrow .tf textarea{min-height:48px}
.hn-tool .sw-del{width:36px;height:48px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#B3261E;font-size:1.3rem;cursor:pointer}
.hn-tool .sw-del:hover{background:#FFF1EF}
.hn-tool .sw-rep>.btn{justify-self:start}
.hn-tool .tf-check-wrap{align-content:center}
/* json */
.hn-tool .sw-jerr,.hn-tool .sw-jok{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;border-radius:14px;padding:12px 16px}
.hn-tool .sw-jerr{background:#FFF1EF;border:1px solid #F5C6C0;color:#B3261E}.hn-tool .sw-jerr p{margin:0;flex-basis:100%;color:var(--ink)}
.hn-tool .sw-jok{background:#ECFBF2;border:1px solid #BDEBD0;color:#0E7A43}
.hn-tool .sw-caret{max-height:none}
.hn-tool .sw-jtree{font-family:var(--f-mono);font-size:.82rem;max-height:460px;overflow:auto;line-height:1.7}
.hn-tool .sw-jtree details>summary{cursor:pointer;list-style-position:outside}
.hn-tool .sw-jc{padding-left:18px;border-left:1px dashed var(--line);margin-left:4px}
.hn-tool .sw-jl{cursor:pointer;padding-left:14px}
.hn-tool .sw-jl:hover,.hn-tool .sw-jtree summary:hover{background:#F4F8FD}
.hn-tool .sw-jsel{background:#E3EEFB!important}
.hn-tool .sw-jk{color:#7B2C9C}.hn-tool .sw-js{color:#0E7A43}.hn-tool .sw-jn{color:#0A6CD0}.hn-tool .sw-jb{color:#B05A00}.hn-tool .sw-jz{color:#8A94A6}.hn-tool .sw-jm{color:var(--muted)}
.hn-tool .sw-jpath{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
/* url */
.hn-tool .sw-q{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) 36px}
.hn-tool .sw-qrows{display:grid;gap:10px}
.hn-tool .sw-qout{display:grid;gap:12px}
/* images */
.hn-tool .sw-imgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.hn-tool .sw-img{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;display:grid;align-content:start}
.hn-tool .sw-img-p{aspect-ratio:4/3;background:repeating-conic-gradient(#EEF2F7 0% 25%,#fff 0% 50%) 50%/16px 16px;display:grid;place-items:center;overflow:hidden}
.hn-tool .sw-img-p img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.hn-tool .sw-img-b{display:grid;gap:6px;padding:12px 14px;font-size:.9rem;color:var(--ink)}
.hn-tool .sw-img-b>b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hn-tool .sw-img-b .t-badge{justify-self:start}
.hn-tool .sw-img-b .btn{justify-self:start;margin-top:4px}
/* colours */
.hn-tool .sw-cin{display:flex;gap:8px}
.hn-tool .sw-cin input[type=color]{width:56px!important;flex:none;padding:3px}
.hn-tool .sw-cin input[type=text]{font-family:var(--f-mono);text-transform:uppercase}
.hn-tool .sw-pal{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-radius:18px;overflow:hidden;min-height:240px;border:1px solid var(--line)}
.hn-tool .sw-sw{position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:12px;min-width:0}
.hn-tool .sw-sw-b{display:grid;gap:4px}
.hn-tool .sw-sw-b b{font-family:var(--f-mono);font-size:1rem;letter-spacing:.02em}
.hn-tool .sw-sw-b small{opacity:.8;font-size:.76rem;text-transform:capitalize}
.hn-tool .sw-sw-c{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.hn-tool .sw-sw-c button,.hn-tool .sw-lock{border:1px solid currentColor;background:transparent;color:inherit;border-radius:8px;font-size:.72rem;font-weight:700;padding:4px 7px;cursor:pointer;opacity:.85}
.hn-tool .sw-sw-c button:hover,.hn-tool .sw-lock:hover{opacity:1}
.hn-tool .sw-lock{position:absolute;top:10px;left:10px}
.hn-tool .sw-lock.on{background:rgba(6,22,46,.55);border-color:transparent;color:#fff;opacity:1}
.hn-tool .sw-harm{display:grid;gap:10px}
.hn-tool .sw-hrow{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px;align-items:center}
.hn-tool .sw-hrow>span{font-weight:700;font-size:.86rem;color:var(--ink)}
.hn-tool .sw-hrow>div{display:flex;flex-wrap:wrap;gap:6px}
.hn-tool .sw-chip{border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:10px 10px;min-width:86px;font-family:var(--f-mono);font-size:.76rem;font-weight:700;cursor:pointer}
.hn-tool .sw-dot{display:inline-block;width:14px;height:14px;border-radius:4px;border:1px solid rgba(0,0,0,.15);vertical-align:-2px}
.hn-tool .sw-ccbox{border-radius:14px;padding:18px;border:1px solid var(--line);display:grid;gap:6px}
.hn-tool .sw-cc-big{font-size:24px;font-weight:700}
.hn-tool .sw-ccres{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-top:10px}
.hn-tool .sw-ccres>b{font-family:var(--f-display);font-size:1.6rem;color:var(--ink)}
.hn-tool .sw-ccout{display:grid}
@media (max-width:760px){
  .hn-tool .sw-serp-wrap,.hn-tool .sw-meters{grid-template-columns:1fr}
  .hn-tool .sw-pal{grid-template-columns:1fr;min-height:0}
  .hn-tool .sw-sw{min-height:84px;padding-left:96px}
  .hn-tool .sw-lock{top:50%;transform:translateY(-50%)}
  .hn-tool .sw-hrow{grid-template-columns:1fr}
  .hn-tool .sw-hbar{grid-template-columns:96px minmax(0,1fr) 70px}
  .hn-tool .sw-rrow{grid-template-columns:1fr 36px}
  .hn-tool .sw-rrow>.tf{grid-column:1}
  .hn-tool .sw-rrow>.sw-del{grid-column:2;grid-row:1}
  .hn-tool .sw-q{grid-template-columns:1fr 36px}
}
/* ===== Server-backed tools (10-server.js). All selectors use the .hns- prefix. ===== */
.hn-tool .hns-url{margin:0;font-size:.86rem;color:var(--muted);overflow-wrap:anywhere}
.hn-tool .hns-url a{color:var(--blue);font-weight:600}
.hn-tool .hns-muted{color:var(--muted)}
.hn-tool .hns-err{color:#B3261E;font-weight:600}
.hn-tool .hns-info{margin:0;padding:12px 14px;border-radius:12px;background:#EEF5FD;border:1px solid #CFE0F5;color:var(--ink);font-size:.92rem;line-height:1.55}
.hn-tool .hns-info .t-list{margin-top:2px}
.hn-tool .hns-ok{margin:0;padding:12px 14px;border-radius:12px;background:#ECFBF2;border:1px solid #BDEBD0;color:#0E7A43;font-weight:700}
.hn-tool .hns-h3{margin:6px 0 0;font-size:1.02rem;color:var(--ink)}
.hn-tool .hns-ring{position:relative;display:grid;justify-items:center;gap:6px;flex:none}
.hn-tool .hns-ring svg{display:block}
.hn-tool .hns-ring>b{position:absolute;top:0;left:0;right:0;aspect-ratio:1;display:grid;place-content:center;text-align:center;font-family:var(--f-display);font-size:1.7rem;line-height:1}
.hn-tool .hns-ring>b small{display:block;font-size:.72rem;font-weight:700;color:var(--muted);margin-top:4px;font-family:inherit}
.hn-tool .hns-ring>span{font-size:.8rem;font-weight:700;color:var(--muted);text-align:center}
.hn-tool .hns-hero{display:flex;gap:22px;align-items:center;flex-wrap:wrap;padding:16px;border:1px solid var(--line);border-radius:18px;background:#FBFCFE}
.hn-tool .hns-hero-r{flex:1 1 300px;min-width:0;display:grid;gap:12px}
.hn-tool .hns-rings{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-end;justify-content:center}
.hn-tool .hns-bars{display:grid;gap:8px}
.hn-tool .hns-barrow{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(60px,1fr) 34px;gap:10px;align-items:center;font-size:.86rem;color:var(--ink)}
.hn-tool .hns-barrow b{text-align:right}
.hn-tool .hns-chks{display:grid;gap:8px}
.hn-tool .hns-chk{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}
.hn-tool .hns-chk .t-badge{min-width:64px;text-align:center;margin-top:2px}
.hn-tool .hns-chk b{display:block;color:var(--ink);font-size:.93rem}
.hn-tool .hns-chk p{margin:2px 0 0;color:var(--ink);font-size:.88rem;overflow-wrap:anywhere}
.hn-tool .hns-chk small{display:block;margin-top:4px;color:var(--muted);font-size:.84rem;line-height:1.5}
.hn-tool .hns-chk.hns-fail{border-color:#F5C6C0;background:#FFFAF9}
.hn-tool .hns-chk.hns-warn{border-color:#F7DDA8;background:#FFFCF5}
.hn-tool .hns-grps{display:grid;gap:10px}
.hn-tool .hns-grp{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.hn-tool .hns-grp>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center;padding:12px 14px;background:#F4F8FD}
.hn-tool .hns-grp>summary::-webkit-details-marker{display:none}
.hn-tool .hns-grp>summary::after{content:"+";grid-column:2;grid-row:1;justify-self:end;font-weight:800;color:var(--blue);display:none}
.hn-tool .hns-gn{font-weight:700;color:var(--ink)}
.hn-tool .hns-gn::before{content:"▸";display:inline-block;margin-right:8px;color:var(--blue);transition:transform .2s}
.hn-tool .hns-grp[open] .hns-gn::before{transform:rotate(90deg)}
.hn-tool .hns-gm{display:flex;gap:6px;align-items:center}
.hn-tool .hns-gm b{font-family:var(--f-display);font-size:1.15rem;min-width:30px;text-align:right}
.hn-tool .hns-gb{grid-column:1/-1;height:6px}
.hn-tool .hns-grp>.hns-chks,.hn-tool .hns-grp>.t-table,.hn-tool .hns-grp>.hns-shot{margin:12px}
.hn-tool .hns-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
/* keywords */
.hn-tool .hns-kwbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.hn-tool .hns-kwfilter{flex:1 1 220px;min-width:0;height:40px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font:inherit;background:#F8FAFD}
.hn-tool .hns-kwgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;align-items:start}
.hn-tool .hns-kwl{list-style:none;margin:0;padding:6px 0;max-height:420px;overflow:auto}
.hn-tool .hns-kwl li{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:6px 14px;font-size:.9rem;color:var(--ink);border-bottom:1px solid #F0F4F9}
.hn-tool .hns-kwl li:last-child{border-bottom:0}
.hn-tool .hns-kwl li[hidden]{display:none}
.hn-tool .hns-dig{flex:none;border:1px solid var(--line);background:#fff;color:var(--blue);font-size:.72rem;font-weight:700;border-radius:7px;padding:3px 8px;cursor:pointer}
.hn-tool .hns-dig:hover{background:var(--blue);color:#fff}
.hn-tool .hns-filter .t-chip.on,.hn-tool .hns-devbar .t-chip.on{background:var(--blue);border-color:var(--blue);color:#fff}
.hn-tool .hns-filter .t-chip b{font-weight:800}
/* headings */
.hn-tool .hns-tree{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:560px;overflow:auto}
.hn-tool .hns-tree li{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;padding:6px 8px 6px calc(8px + var(--lv,0) * 18px);border-left:2px solid #E7EEF7;margin-left:calc(var(--lv,0) * 6px);font-size:.9rem;color:var(--ink)}
.hn-tool .hns-tree .hns-h1{border-left-color:var(--blue);font-weight:700}
.hn-tool .hns-tag{flex:none;font-family:var(--f-mono);font-size:.72rem;font-weight:800;color:#fff;background:#5B7392;border-radius:6px;padding:2px 6px}
.hn-tool .hns-h1 .hns-tag{background:var(--blue)}.hn-tool .hns-h2 .hns-tag{background:#00AEE6}
.hn-tool .hns-ht{min-width:0;overflow-wrap:anywhere}
/* redirects */
.hn-tool .hns-hops{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:hop}
.hn-tool .hns-hops li{position:relative;display:grid;gap:3px;padding:8px 0 14px 30px;border-left:2px dashed #C9D9EE;margin-left:10px}
.hn-tool .hns-hops li:last-child{border-left-color:transparent;padding-bottom:0}
.hn-tool .hns-hops li::before{counter-increment:hop;content:counter(hop);position:absolute;left:-12px;top:6px;width:22px;height:22px;border-radius:50%;background:#E28C00;color:#fff;font-size:.72rem;font-weight:800;display:grid;place-items:center}
.hn-tool .hns-hops li.g::before{background:#13A35B}.hn-tool .hns-hops li.b::before{background:#D64541}
.hn-tool .hns-hops .t-badge{justify-self:start}
.hn-tool .hns-hopu{font-family:var(--f-mono);font-size:.84rem;overflow-wrap:anywhere;color:var(--ink)}
.hn-tool .hns-hops small{font-size:.8rem}
/* speed */
.hn-tool .hns-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line)}
.hn-tool .hns-tab{border:1px solid transparent;border-bottom:0;background:none;padding:10px 18px;font:inherit;font-weight:700;color:var(--muted);cursor:pointer;border-radius:12px 12px 0 0;margin-bottom:-1px}
.hn-tool .hns-tab.on{background:#fff;border-color:var(--line);color:var(--ink)}
.hn-tool .hns-tab b{margin-left:6px}.hn-tool .hns-tab b.good{color:#0E7A43}.hn-tool .hns-tab b.warn{color:#9A5B00}.hn-tool .hns-tab b.bad{color:#B3261E}
.hn-tool .hns-panel{display:grid;gap:14px}
.hn-tool .hns-panel[hidden]{display:none}
.hn-tool .hns-panel>.hns-rings{padding:12px 0}
.hn-tool .hns-metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.hn-tool .hns-metric{border:1px solid var(--line);border-left:4px solid #C9D9EE;border-radius:12px;padding:10px 12px;display:grid;gap:2px;background:#fff}
.hn-tool .hns-metric span{font-size:.8rem;color:var(--muted);font-weight:600}
.hn-tool .hns-metric b{font-family:var(--f-display);font-size:1.35rem;color:var(--ink)}
.hn-tool .hns-metric small{font-size:.76rem;color:var(--muted)}
.hn-tool .hns-metric.good{border-left-color:#13A35B}.hn-tool .hns-metric.good b{color:#0E7A43}
.hn-tool .hns-metric.warn{border-left-color:#E28C00}.hn-tool .hns-metric.warn b{color:#9A5B00}
.hn-tool .hns-metric.bad{border-left-color:#D64541}.hn-tool .hns-metric.bad b{color:#B3261E}
.hn-tool .hns-shot{text-align:center}.hn-tool .hns-shot img{max-width:min(100%,320px);border:1px solid var(--line);border-radius:12px}
/* uptime */
.hn-tool .hns-status{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:16px;border:1px solid}
.hn-tool .hns-status b{display:block;font-family:var(--f-display);font-size:1.3rem}
.hn-tool .hns-status small{color:var(--muted);font-size:.86rem}
.hn-tool .hns-status .hns-dot{flex:none;width:16px;height:16px;border-radius:50%;box-shadow:0 0 0 6px rgba(0,0,0,.05)}
.hn-tool .hns-status.good{background:#ECFBF2;border-color:#BDEBD0}.hn-tool .hns-status.good b{color:#0E7A43}.hn-tool .hns-status.good .hns-dot{background:#13A35B}
.hn-tool .hns-status.warn{background:#FFF7E8;border-color:#F7DDA8}.hn-tool .hns-status.warn b{color:#9A5B00}.hn-tool .hns-status.warn .hns-dot{background:#E28C00}
.hn-tool .hns-status.bad{background:#FFF1EF;border-color:#F5C6C0}.hn-tool .hns-status.bad b{color:#B3261E}.hn-tool .hns-status.bad .hns-dot{background:#D64541}
/* local */
.hn-tool .hns-fields{display:flex;flex-wrap:wrap;gap:6px}
.hn-tool .hns-field{font-size:.8rem;font-weight:700;border-radius:999px;padding:4px 10px;border:1px solid}
.hn-tool .hns-field.y{background:#ECFBF2;border-color:#BDEBD0;color:#0E7A43}
.hn-tool .hns-field.n{background:#FFF1EF;border-color:#F5C6C0;color:#B3261E}
.hn-tool .hns-checklist{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.hn-tool .hns-checklist label{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;cursor:pointer}
.hn-tool .hns-checklist input{margin-top:4px;accent-color:var(--blue);flex:none}
.hn-tool .hns-snip{display:inline-block;margin-top:4px;color:var(--muted);font-size:.78rem;line-height:1.4}
/* responsive previews */
.hn-tool .hns-devices{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}
.hn-tool .hns-dev{margin:0;display:grid;gap:6px}
.hn-tool .hns-dev[hidden]{display:none}
.hn-tool .hns-dev figcaption{font-size:.8rem;font-weight:700;color:var(--muted)}
.hn-tool .hns-frame{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#F4F8FD;box-shadow:0 16px 30px -24px rgba(6,22,46,.5)}
.hn-tool .hns-frame iframe{position:absolute;top:0;left:0;border:0;background:#fff;transform-origin:0 0}
@media (max-width:640px){
  .hn-tool .hns-two{grid-template-columns:1fr}
  .hn-tool .hns-hero{justify-content:center;padding:14px}
  .hn-tool .hns-barrow{grid-template-columns:minmax(0,1fr) 70px 30px;font-size:.8rem}
  .hn-tool .hns-tab{padding:9px 12px}
  .hn-tool .hns-chk{grid-template-columns:1fr}
  .hn-tool .hns-chk .t-badge{justify-self:start}
}
.hn-tool[data-tool="domain-authority-checker"] .da-rings{justify-content:center}
.hn-tool[data-tool="domain-authority-checker"] .da-guide p{margin:0 0 12px;line-height:1.6}
.hn-tool[data-tool="domain-authority-checker"] .da-guide .t-table{margin:4px 0 14px}
.hn-tool[data-tool="domain-authority-checker"] .da-guide{padding:14px 18px 6px}
.hn-tool[data-tool="domain-authority-checker"] .da-dl .t-copy{padding:8px 14px;font-size:14px}
/* Saved reports */
.hn-tool .hns-saved{margin:14px 0 4px}
.hn-tool .hns-sv{border:1px solid var(--line,#DCE6F2);border-radius:14px;background:#F8FBFF;overflow:hidden}
.hn-tool .hns-sv>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;padding:12px 16px;color:var(--ink,#0B1F3A)}
.hn-tool .hns-sv>summary::-webkit-details-marker{display:none}
.hn-tool .hns-sv>summary:after{content:"";margin-left:auto;width:9px;height:9px;border-right:2px solid #0A6CD0;border-bottom:2px solid #0A6CD0;transform:rotate(45deg);transition:transform .2s}
.hn-tool .hns-sv[open]>summary:after{transform:rotate(-135deg)}
.hn-tool .hns-sv ul{list-style:none;margin:0;padding:0 12px 4px}
.hn-tool .hns-sv li{display:flex;align-items:center;gap:10px;padding:10px 4px;border-top:1px solid var(--line,#DCE6F2)}
.hn-tool .hns-sv-t{flex:1;min-width:0;display:grid}
.hn-tool .hns-sv-t b{font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hn-tool .hns-sv-t small{color:var(--muted,#5B6B82);font-size:.78rem}
.hn-tool .hns-sv-s{font-weight:800;font-size:1.05rem;min-width:30px;text-align:right}
.hn-tool .hns-sv-x{border:0;background:none;color:#9AA7B8;font-size:1.3rem;line-height:1;width:34px;height:34px;border-radius:50%;cursor:pointer}
.hn-tool .hns-sv-x:hover{background:#FFF1F0;color:#C62828}
.hn-tool .hns-sv .t-sync{padding:0 16px 12px}
.hn-tool .hns-replay{background:#E9F4FF;border:1px solid #BFDcff;border-radius:10px;padding:9px 12px;font-size:.88rem;color:#0B1F3A}
.hn-tool .hns-sv-link{border:0;background:none;color:#0A6CD0;font-weight:700;cursor:pointer;padding:0;text-decoration:underline}
.hn-tool .hns-sv-n{background:#0A6CD0;color:#fff;border-radius:999px;font-size:.75rem;font-weight:800;padding:2px 8px}
/* Writing + social media tools (prefixed .hnw-) */
.hnw-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:#F8FAFD}
.hnw-bar>span:first-child{font-weight:700;color:var(--ink);margin-right:auto}
.hnw-bar .btn{min-height:40px}
.hnw-actions{display:flex;flex-wrap:wrap;gap:10px}
.hnw-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.hnw-opts{list-style:none;margin:0;padding:0;counter-reset:hnw}
.hnw-opts>li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:start;padding:12px 16px;border-bottom:1px solid var(--line);counter-increment:hnw}
.hnw-opts>li:last-child{border-bottom:0}
.hnw-opts .hnw-txt{color:var(--ink);line-height:1.55;overflow-wrap:anywhere;white-space:pre-line}
.hnw-opts .hnw-txt:before{content:counter(hnw)". ";color:var(--muted);font-family:var(--f-mono);font-size:.78rem}
.hnw-opts .hnw-m{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;justify-content:flex-end;max-width:240px}
.hnw-opts .hnw-m .t-meta{text-align:right}
.hnw-count{font-family:var(--f-mono);font-size:.74rem;color:#0E7A43;background:#ECFBF2;border-radius:7px;padding:2px 7px;white-space:nowrap}
.hnw-count.over{color:#B3261E;background:#FFF1EF}
.hnw-pre{white-space:pre-wrap;line-height:1.6;color:var(--ink)}
.hnw-doc{max-height:560px;overflow:auto}
.hnw-doc h1{font-size:1.45rem;margin:0 0 12px;line-height:1.25}
.hnw-doc h2{font-size:1.15rem;margin:22px 0 8px}
.hnw-doc h3{font-size:1rem;margin:16px 0 6px}
.hnw-doc p{margin:0 0 10px;color:var(--ink)}
.hnw-doc ul{margin:0 0 12px;padding-left:1.2em}
.hnw-diff{line-height:1.75}
.hnw-diff del,.hnw-bar del,.t-meta del{background:#FFE3E0;color:#9B1C14;text-decoration:line-through}
.hnw-diff ins,.t-meta ins{background:#DDF7E7;color:#0B6B3A;text-decoration:none}
.hnw-ver{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#FBFCFE}
.hnw-ver h4{margin:0;font-size:1rem}
.hnw-ed{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;padding:4px 0}
.hnw-ed input{flex:1 1 220px;min-width:0;height:40px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;font-size:.95rem;background:#F8FAFD;color:var(--ink)}
.hnw-ed input:focus{outline:none;border-color:var(--blue);background:#fff}
.hnw-ed input.over{border-color:#D64541;background:#FFF7F6}
.hnw-sl{display:grid;gap:2px;padding:8px 0;border-bottom:1px dashed var(--line)}
.hnw-sl:last-child{border-bottom:0}
.hnw-serp{max-width:620px;font-family:Arial,sans-serif}
.hnw-serp small{font-weight:700;color:#202124;font-size:.8rem}
.hnw-serp-d{color:#202124;font-size:.85rem;margin:2px 0}
.hnw-serp-h{color:#1a0dab;font-size:1.15rem;line-height:1.3;margin:2px 0 4px}
.hnw-serp-p{color:#4d5156;font-size:.9rem;line-height:1.5}
.hnw-fb{display:grid;gap:8px}
.hnw-fbrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px}
.hnw-lbl{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;margin-right:auto}
.hnw-fbtxt{padding:10px 12px;border-radius:10px;background:#F8FAFD;line-height:1.55;overflow-wrap:anywhere}
.hnw-fade{color:var(--muted)}
.hnw-mini{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:4px 0}
.hnw-sort{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.85rem;color:var(--muted)}
.hnw-sort .t-chip.on{background:var(--blue);color:#fff;border-color:var(--blue)}
.hnw-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-bottom:12px;font-size:.8rem;color:var(--muted)}
.hnw-legend span{display:inline-flex;gap:6px;align-items:center}
.hnw-dot{display:inline-block;width:12px;height:12px;border-radius:4px;flex:none;vertical-align:middle;margin-right:6px}
.hnw-legend .hnw-dot{margin:0}
.hnw-hltext{line-height:1.85;color:var(--ink);overflow-wrap:anywhere;max-height:520px;overflow:auto}
.hnw-hl{background:none;color:inherit;border-radius:3px;padding:0 1px}
.hl-long,.hnw-hl.hl-long{background:#FFF4CC}
.hl-vlong,.hnw-hl.hl-vlong{background:#FFE2B8}
.hnw-hl.hl-passive{box-shadow:inset 0 -2px 0 #7B61FF}
.hnw-hl.hl-adverb{box-shadow:inset 0 -2px 0 #00AEE6}
.hnw-hl.hl-weak{box-shadow:inset 0 -2px 0 #9AA7B8}
.hnw-hl.hl-cliche{box-shadow:inset 0 -2px 0 #E28C00}
.hnw-hl.hl-space{background:#FFD3CF}
.hnw-hl.hl-grammar{box-shadow:inset 0 -3px 0 #D64541;background:#FFF1EF}
.hnw-dot.hl-long,.hnw-dot.hl-vlong{background:#FFD98A}.hnw-dot.hl-passive{background:#7B61FF}.hnw-dot.hl-adverb{background:#00AEE6}.hnw-dot.hl-weak{background:#9AA7B8}.hnw-dot.hl-cliche{background:#E28C00}.hnw-dot.hl-space{background:#FFB3AB}.hnw-dot.hl-grammar{background:#D64541}
.hnw-iss{border-bottom:1px solid var(--line);padding:8px 0}
.hnw-iss:last-child{border-bottom:0}
.hnw-iss summary{cursor:pointer;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:4px}
.hnw-iss summary b{margin-left:6px;color:var(--blue)}
.hnw-iss .t-list{margin-top:8px;font-size:.9rem}
.hnw-sets{display:grid;gap:12px}
.hnw-tags{margin:4px 0 0;color:var(--ink);line-height:1.6;overflow-wrap:anywhere}
.hnw-cal .t-table table{min-width:760px}
.hnw-pill{display:inline-block;font-size:.74rem;font-weight:700;border-radius:999px;padding:3px 9px;white-space:nowrap}
.hnw-pill.p-educate{background:#EEF5FD;color:#0A6CD0}.hnw-pill.p-inspire{background:#ECFBF2;color:#0E7A43}.hnw-pill.p-entertain{background:#F4EEFF;color:#5B3CC4}.hnw-pill.p-promote{background:#FFF7E8;color:#9A5B00}
.hnw-lims{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.hnw-lim{border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:8px;background:#fff}
.hnw-lim-h{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.hnw-lim-h b{font-size:.9rem;color:var(--ink);margin-right:auto}
.hnw-lim-h span{font-family:var(--f-mono);font-size:.8rem;color:var(--ink)}
.hnw-lim-h em{font-style:normal;font-size:.76rem;color:#0E7A43;font-weight:700}
.hnw-lim small{color:var(--muted);font-size:.76rem}
.hnw-lim.over{border-color:#F5C6C0;background:#FFF8F7}
.hnw-lim.over .hnw-lim-h em{color:#B3261E}
.hnw-lim.over .t-bar i{background:#D64541}
@media (max-width:640px){.hnw-opts>li{grid-template-columns:1fr}.hnw-opts .hnw-m{justify-content:flex-start;max-width:none}.hnw-bar .btn{flex:1 1 100%}}
.em-card .t-card-h{flex-wrap:wrap;gap:8px}
.em-preview{background:#EEF3F9;border-top:1px solid var(--line);padding:0}
.em-preview iframe{display:block;width:100%;height:760px;border:0;background:#EEF3F9}
.em-plain{border-top:1px solid var(--line);padding:12px 16px}.em-plain summary{cursor:pointer;font-weight:700;color:var(--ink)}
.em-plain .hnw-pre{margin-top:10px;white-space:pre-wrap;font-size:.92rem}
.em-fixed{border-color:#9EDFB9;background:#F1FBF5}.em-fixed .t-card-b{color:#0B5E33}
.em-ver{display:grid;gap:12px}
