/* ==========================================================================
   CHARACTER COUNTER — ch.css
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box;}
input,textarea,select,button{font-family:var(--font-body,inherit);font-size:inherit;color:inherit;}

.ucv-tool{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;width:100%;max-width:820px;margin:0 auto;}

/* category tabs */

/* inputs */
.ucv-field{display:flex;flex-direction:column;gap:0.3rem;min-width:0;}
.ucv-field>label,.ucv-label{font-size:0.72rem;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;color:var(--text-muted,rgba(255,255,255,0.45));}
.ucv-input,.ucv-select{width:100%;height:46px;color:var(--text-primary,#fff);background:rgba(255,255,255,.06);border:0.5px solid var(--glass-border,rgba(255,255,255,0.14));border-radius:var(--radius-sm,8px);padding:0 0.8em;font-size:1rem;}
.ucv-select{appearance:none;-webkit-appearance:none;cursor:pointer;text-overflow:ellipsis;padding-right:2em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23ffffff99' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.8em center;}
.ucv-select option{background:#15131f;color:#fff;}
.ucv-input:focus,.ucv-select:focus{outline:none;border-color:var(--accent,#c084fc);box-shadow:0 0 0 2px rgba(192,132,252,0.15);}

.ucv-note{font-size:0.78rem;color:var(--text-muted,rgba(255,255,255,0.55));line-height:1.4;margin:0;text-align:center;}
#ucv-error{display:none;color:#f87171;font-size:0.82rem;padding:0.45rem 0.7rem;background:rgba(248,113,113,0.08);border:0.5px solid rgba(248,113,113,0.25);border-radius:var(--radius-sm,8px);}

/* result */

/* all units */

.ucv-security-note{font-size:0.7rem;color:var(--text-muted,rgba(255,255,255,0.3));line-height:1.4;text-align:center;margin:0;}


/* ── USP pills — force single row, no wrap, correct font size ──────────── */
.u-usp-row{flex-wrap:nowrap !important;gap:0.35rem !important;justify-content:center;}
.u-usp-pill{white-space:nowrap;padding:0.28em 0.75em !important;}
@media (max-width: 600px){.u-usp-row{flex-wrap:wrap !important;}}
@media (max-width: 440px) {
  .u-nav .u-container { gap: .4rem; }
  .u-nav .u-brand { gap: .25em; }
  .u-nav .u-brand-prefix { font-size: .7rem; letter-spacing: .1em; }
  .u-nav .u-brand-name { font-size: .92rem; }
}
@media (max-width: 340px) {
  .u-nav .u-brand-prefix { font-size: .6rem; letter-spacing: .06em; }
  .u-nav .u-brand-name { font-size: .78rem; }
}

main{overflow-x:clip!important;}

/* ── Date calculator ── */
.ucv-tool{gap:1rem;}
.dcv-row{display:flex;gap:0.6rem;flex-wrap:wrap;align-items:flex-end;}
.dcv-row .ucv-field{flex:1 1 220px;}
.dcv-chips{display:flex;flex-wrap:wrap;gap:0.4rem;}
.dcv-chip{height:34px;padding:0 0.85em;border-radius:999px;border:0.5px solid rgba(255,255,255,0.18);background:rgba(255,255,255,0.05);color:var(--text-secondary,rgba(255,255,255,0.8));font-size:0.82rem;font-weight:600;cursor:pointer;white-space:nowrap;}
.dcv-chip:hover{background:rgba(255,255,255,0.1);}
.dcv-chip.is-on{background:rgba(192,132,252,0.22);border-color:rgba(192,132,252,0.7);color:#fff;}
.dcv-chip:focus-visible{outline:2px solid var(--accent,#c084fc);outline-offset:2px;}
.dcv-chip-s{height:30px;font-size:0.78rem;}
.dcv-sentence{display:flex;flex-wrap:wrap;align-items:center;gap:0.55rem 0.6rem;font-size:1.15rem;line-height:1.3;color:#fff;justify-content:center;text-align:center;padding:0.8rem 0.4rem;}
.dcv-in{width:7.2em;max-width:100%;height:50px;text-align:center;font-size:1.25rem;font-weight:700;color:#fff;background:rgba(255,255,255,.07);border:1px solid rgba(192,132,252,0.5);border-radius:10px;padding:0 0.5em;font-variant-numeric:tabular-nums;}
.dcv-in:focus{outline:none;border-color:#c084fc;box-shadow:0 0 0 3px rgba(192,132,252,0.22);}
.dcv-out{border:1px solid rgba(192,132,252,0.4);background:rgba(192,132,252,0.08);border-radius:12px;padding:1.1rem 1rem;text-align:center;display:flex;flex-direction:column;gap:0.35rem;}
.dcv-out.is-empty{border-color:rgba(255,255,255,0.12);background:rgba(255,255,255,0.03);}
.dcv-main-l{font-size:0.72rem;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;color:var(--text-muted,rgba(255,255,255,0.55));}
.dcv-main{font-size:clamp(2rem,8vw,3.2rem);font-weight:800;color:#fff;line-height:1.1;font-variant-numeric:tabular-nums;word-break:break-word;}
.dcv-cap{margin:0;color:var(--text-secondary,rgba(255,255,255,0.8));font-size:0.95rem;line-height:1.45;}
.dcv-rows{list-style:none;margin:0.4rem auto 0;padding:0;width:100%;max-width:420px;display:flex;flex-direction:column;gap:0.3rem;}
.dcv-rows li{display:flex;justify-content:space-between;gap:0.8rem;font-size:0.88rem;border-bottom:0.5px solid rgba(255,255,255,0.08);padding-bottom:0.3rem;}
.dcv-rows li span:first-child{color:var(--text-muted,rgba(255,255,255,0.6));text-align:left;}
.dcv-rows li span:last-child{font-weight:700;color:#fff;font-variant-numeric:tabular-nums;text-align:right;}
.dcv-act{display:flex;gap:0.5rem;flex-wrap:wrap;justify-content:center;}
.dcv-act .u-btn{height:40px;font-size:0.86rem;padding:0 1.1em;}
.dcv-act .u-btn:disabled{opacity:.45;cursor:default;}
.dcv-det{border:0.5px solid rgba(255,255,255,0.1);border-radius:var(--radius-sm,8px);background:rgba(255,255,255,0.03);text-align:left;}
.dcv-det>summary{cursor:pointer;padding:0.7rem 0.9rem;font-weight:600;font-size:0.9rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:.6rem;min-height:44px;}
.dcv-det>summary::-webkit-details-marker{display:none;}
.dcv-det>summary::after{content:"+";font-size:1.2rem;line-height:1;color:var(--text-muted,rgba(255,255,255,0.6));}
.dcv-det[open]>summary::after{content:"−";}
.dcv-steps{margin:0;padding:0 0.9rem 0.9rem 2.2rem;display:flex;flex-direction:column;gap:0.35rem;font-size:0.92rem;color:var(--text-secondary,rgba(255,255,255,0.85));font-variant-numeric:tabular-nums;}
.dcv-lbl{font-size:0.72rem;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;color:var(--text-muted,rgba(255,255,255,0.45));margin:0 0 0.4rem;}
@media(max-width:700px){
  .ucv-tool{padding:1rem;}
  .dcv-sentence{font-size:1.02rem;}
  .dcv-in{width:6.2em;height:48px;font-size:1.15rem;}
  .dcv-act .u-btn{flex:1;}
}
html,body{overflow-x:clip;max-width:100%;}
.dcv-tabs{display:flex;flex-wrap:wrap;gap:0.4rem;justify-content:center;}
.dcv-tab{height:38px;padding:0 1em;border-radius:999px;border:0.5px solid rgba(255,255,255,0.18);background:rgba(255,255,255,0.05);color:var(--text-secondary,rgba(255,255,255,0.8));font-size:0.86rem;font-weight:600;cursor:pointer;}
.dcv-tab:hover{background:rgba(255,255,255,0.1);}
.dcv-tab.is-on{background:rgba(192,132,252,0.22);border-color:rgba(192,132,252,0.7);color:#fff;}
.dcv-tab:focus-visible{outline:2px solid var(--accent,#c084fc);outline-offset:2px;}
.dcv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0.8rem;text-align:left;}
.dcv-grid3{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));}
.dcv-field-row{display:flex;gap:0.4rem;align-items:flex-end;}
.dcv-field-row .ucv-field{flex:1;}
.dcv-in,.dcv-sel{width:100%;height:46px;color:#fff;background:rgba(255,255,255,.07);border:0.5px solid rgba(255,255,255,0.18);border-radius:8px;padding:0 0.7em;font-size:1rem;font-family:inherit;color-scheme:dark;}
.dcv-sel{appearance:none;-webkit-appearance:none;padding-right:2em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23ffffff99' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.8em center;}
.dcv-sel option{background:#15131f;color:#fff;}
.dcv-in:focus,.dcv-sel:focus{outline:none;border-color:#c084fc;box-shadow:0 0 0 3px rgba(192,132,252,0.22);}
.dcv-mini{height:46px;padding:0 0.8em;border-radius:8px;border:0.5px solid rgba(255,255,255,0.18);background:rgba(255,255,255,0.05);color:var(--text-secondary,rgba(255,255,255,0.85));font-size:0.8rem;font-weight:600;cursor:pointer;white-space:nowrap;}
.dcv-mini:hover{background:rgba(255,255,255,0.1);}
.dcv-chk{display:flex;align-items:center;gap:0.55rem;font-size:0.86rem;color:var(--text-secondary,rgba(255,255,255,0.8));cursor:pointer;text-align:left;min-height:40px;}
.dcv-chk input{width:18px;height:18px;flex:0 0 18px;accent-color:#a855f7;}
.dcv-main{font-size:clamp(1.6rem,6.5vw,2.6rem);}
