.aksharkosh-templates { margin: 1.5em auto 3em; color: inherit; font-family: inherit; line-height: 1.55; }
.aksharkosh-templates .tpl-head { padding: 1.7em 2em; border: 1px solid var(--aksharkosh-border, #dedbd1); border-radius: 14px; background: #fff; }
.aksharkosh-templates .tpl-head h2 { margin: .1em 0; font-family: inherit; font-size: clamp(1.8em, 3vw, 2.55em); }
.aksharkosh-templates .tpl-head p { margin: .4em 0; }
.aksharkosh-templates .tpl-category { color: var(--dl-accent, #3b47c4); font-size: .9em; font-weight: 600; }
.aksharkosh-templates .tpl-english { font-weight: 700; }
.aksharkosh-templates .tpl-back { display: inline-block; margin-bottom: 1em; }
.aksharkosh-templates .tpl-group { margin-top: 2em; }
.aksharkosh-templates .tpl-group h3 { border-bottom: 1px solid #dedbd1; padding-bottom: .3em; }
.aksharkosh-templates .tpl-group h3 span { font-size: .7em; opacity: .6; }
.aksharkosh-templates .tpl-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: 1em; }
.aksharkosh-templates .tpl-card { display: flex; flex-direction: column; gap: .35em; padding: 1.2em; border: 1px solid var(--aksharkosh-border, #dedbd1); border-radius: 12px; background: #fff; color: inherit; text-decoration: none; transition: border-color .15s, transform .15s; }
.aksharkosh-templates .tpl-card:hover { border-color: var(--dl-accent, #3b47c4); transform: translateY(-2px); }
.aksharkosh-templates .tpl-card strong { font-family: inherit; font-size: 1.35em; }
.aksharkosh-templates .tpl-card span { font-weight: 650; }
.aksharkosh-templates .tpl-card small { font-size: .9em; opacity: .7; }
.aksharkosh-templates .tpl-workspace { display: grid; grid-template-columns: minmax(17rem, .9fr) minmax(22rem, 1.1fr); gap: 1.5em; margin-top: 1.5em; align-items: start; }
.aksharkosh-templates [data-tpl-form], .aksharkosh-templates .tpl-preview { padding: 1.4em; border: 1px solid var(--aksharkosh-border, #dedbd1); border-radius: 12px; background: #fff; }
.aksharkosh-templates h3 { margin-top: 0; }
.aksharkosh-templates .tpl-field { margin: 1em 0; }
.aksharkosh-templates .tpl-field label { display: block; margin-bottom: .35em; font-weight: 650; }
.aksharkosh-templates .tpl-field label small { display: block; font-size: .85em; font-weight: 400; opacity: .7; }
.aksharkosh-templates .tpl-field b { color: #a63a2c; }
.aksharkosh-templates .tpl-field :is(input, select, textarea) { box-sizing: border-box; width: 100%; padding: .65em .75em; border: 1px solid #bdbbb4; border-radius: 6px; background: #fff; color: inherit; font: inherit; }
.aksharkosh-templates button { padding: .5em .85em; border: 1px solid var(--dl-accent, #3b47c4); border-radius: 6px; background: #fff; color: var(--dl-accent, #3b47c4); font: inherit; font-weight: 650; cursor: pointer; }
.aksharkosh-templates button:hover, .aksharkosh-templates .tpl-primary { background: var(--dl-accent, #3b47c4); color: #fff; }
.aksharkosh-templates button:disabled { opacity: .5; cursor: wait; }
.aksharkosh-templates :is(button, input, select, textarea, .tpl-paper, a):focus-visible { outline: 2px solid var(--dl-accent, #3b47c4); outline-offset: 2px; }
.aksharkosh-templates .tpl-paper { min-height: 24em; padding: 2em; border: 1px solid var(--aksharkosh-border, #dedbd1); background: #fff; white-space: pre-wrap; overflow-wrap: anywhere; font-family: inherit; font-size: 1.12em; line-height: 1.8; }
.aksharkosh-templates .tpl-unsure { border-bottom: 2px dotted #b76a31; cursor: pointer; }
.aksharkosh-templates .tpl-actions { display: flex; flex-wrap: wrap; gap: .5em; margin-top: 1em; }
.tpl-choices { position: fixed; z-index: 1000; display: flex; flex-direction: column; min-width: 8em; max-height: 50vh; overflow: auto; padding: .25em; border: 1px solid var(--aksharkosh-border, #bbb); border-radius: 6px; background: #fff; box-shadow: 0 6px 20px #0002; }
.tpl-choices button { padding: .35em .65em; border: 0; border-radius: 4px; background: #fff; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.tpl-choices button:hover, .tpl-choices button:focus-visible { background: #e9ebfa; }
.aksharkosh-templates [data-tpl-status] { min-height: 1.5em; }
@media (max-width: 760px) { .aksharkosh-templates .tpl-workspace { grid-template-columns: 1fr; } .aksharkosh-templates .tpl-paper { padding: 1.2em; } }
