/* Puthukural search, accounts, favorites and admin.
   Loaded on top of style.css on those pages only. The greens are taken from
   the Puthukural cover: the lime of the background and the deep green of
   Valluvar's silhouette. The layout follows the job-search sample: a pill
   search box with a round filter button beside it, an "Advanced search" sheet,
   highlighted matches and tag chips. */

.theme-pk{
  --pk-deep:#2b6a2a;
  --pk-lime:#5fbf37;
  --pk-mark:#c4f07a;
  --pk-line-strong:#9db59a;

  --bg:#f5f9f3;
  --surface:#ffffff;
  --surface-2:#edf5ea;
  --line:#d8e6d3;
  --navy:#1f4d1f;
  --accent:#1f7a22;
  --accent-soft:#e8f5e1;
  --accent-on:#ffffff;
  --shadow:0 1px 2px rgb(31 77 31 / .06), 0 12px 30px -18px rgb(31 77 31 / .4);
  --pk-wide:min(1180px, 100% - 2rem);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .theme-pk{
    --pk-mark:#4d7a16;
    --pk-line-strong:#4a6a46;
    --bg:#0c140c; --surface:#121d12; --surface-2:#172517; --line:#243824;
    --accent:#86d65f; --accent-on:#0c140c; --accent-soft:#18301a;
  }
}
:root[data-theme="dark"] .theme-pk{
    --pk-mark:#4d7a16;
    --pk-line-strong:#4a6a46;
    --bg:#0c140c; --surface:#121d12; --surface-2:#172517; --line:#243824;
    --accent:#86d65f; --accent-on:#0c140c; --accent-soft:#18301a;
}

.vh{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.pk [hidden]{ display:none !important; }
.pk-grow{ flex:1; }
.pk-muted{ color:var(--ink-faint); font-weight:400; }
.pk-nowrap{ white-space:nowrap; }
.pk mark{ background:var(--pk-mark); color:inherit; border-radius:3px; padding:0 .08em; }

/* ------------------------------------------------------------------- hero */
.pk-hero{
  color:#fff;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='96'%3E%3Cg fill='%23ffffff' fill-opacity='.10' font-family='monospace' font-size='14'%3E%3Ctext x='4' y='16'%3E1 0 1 1 0 1 0%3C/text%3E%3Ctext x='4' y='40'%3E0 1 0 0 1 1 1%3C/text%3E%3Ctext x='4' y='64'%3E1 1 0 1 0 0 1%3C/text%3E%3Ctext x='4' y='88'%3E0 0 1 0 1 1 0%3C/text%3E%3C/g%3E%3C/svg%3E"),
    linear-gradient(135deg, #3d9230 0%, var(--pk-deep) 70%);
  border-bottom:3px solid var(--pk-lime);
  padding:.7rem 0 .75rem;
}
.pk-hero-in{ width:var(--pk-wide); margin-inline:auto; display:flex; align-items:center; gap:1rem; }
.pk-hero-in > div{ flex:1; min-width:0; }
.pk-hero h1{ font-size:clamp(1.15rem,1rem+.7vw,1.45rem); margin:0; font-weight:800; line-height:1.3; }
.pk-hero .kicker{ color:#d9f7c6; margin:0; font-weight:700; letter-spacing:.08em; font-size:.68rem; line-height:1.4; }
.pk-hero .kicker a{ color:inherit; }
.pk-sub{ margin:0; opacity:.92; max-width:70ch; font-size:.85rem; line-height:1.5; }
.pk-lang{
  flex:none; padding:.25rem .8rem; border-radius:999px; color:#fff; text-decoration:none; font-size:.9rem;
  border:1.5px solid rgb(255 255 255 / .7); font-family:var(--font-display); font-weight:700;
}
.pk-lang:hover{ background:#fff; color:var(--pk-deep); text-decoration:none; }

.pk-body{ width:var(--pk-wide); margin:1.6rem auto 3rem; }
.pk-note{ padding:1rem 1.2rem; background:var(--accent-soft); border-inline-start:4px solid var(--accent); border-radius:0 12px 12px 0; }
.pk h2{ font-family:var(--font-display); }

/* ----------------------------------------------------------- search bar */
.pk-search{ display:flex; gap:.75rem; align-items:center; max-width:760px; }
.pk-pill{
  flex:1; display:flex; align-items:center; gap:.5rem; min-width:0;
  height:52px; padding:0 .6rem 0 1.1rem; border-radius:999px;
  background:var(--surface); border:1.5px solid var(--pk-line-strong);
}
.pk-pill:focus-within{ border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent); }
.pk-pill input{
  flex:1; min-width:0; border:0; outline:0; background:transparent; color:var(--ink);
  font:inherit; font-size:1.05rem; height:100%;
}
.pk-pill input::-webkit-search-cancel-button{ display:none; }
.pk-ico, .pk-clear svg, .pk-filter svg, .pk-x svg, .pk-link svg, .pk-heart svg{
  fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round;
}
.pk-ico{ width:22px; height:22px; color:var(--ink-soft); flex:none; }
.pk-clear{ width:36px; height:36px; border:0; background:none; color:var(--ink); cursor:pointer; border-radius:50%; display:grid; place-items:center; }
.pk-clear svg{ width:24px; height:24px; }
.pk-clear:hover{ background:var(--surface-2); }

.pk-filter{
  position:relative; flex:none; width:52px; height:52px; border-radius:50%; cursor:pointer;
  background:var(--surface); color:var(--accent); border:2px solid var(--accent); display:grid; place-items:center;
}
.pk-filter svg{ width:24px; height:24px; }
.pk-filter:hover, .pk-filter[aria-expanded="true"]{ background:var(--accent); color:var(--accent-on); }
.pk-dot{ position:absolute; top:4px; inset-inline-end:4px; width:11px; height:11px; border-radius:50%; background:var(--pk-lime); border:2px solid var(--surface); }

.pk-links{ display:flex; flex-wrap:wrap; gap:.4rem 1.6rem; margin:.7rem 0 0 .4rem; }
.pk-link{
  display:inline-flex; align-items:center; gap:.4rem; padding:.2rem 0; border:0; background:none; cursor:pointer;
  color:var(--accent); font:600 1rem var(--font-display); text-decoration:none;
}
.pk-link svg{ width:20px; height:20px; }
.pk-link:hover{ text-decoration:underline; }

.pk-active{ display:flex; flex-wrap:wrap; gap:.45rem; margin:1rem 0 0; }
.pk-active:empty{ display:none; }
.pk-fchip{
  display:inline-flex; align-items:center; gap:.35rem; padding:.25rem .45rem .25rem .8rem; border-radius:999px;
  background:var(--accent-soft); color:var(--accent); border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);
  font:600 .88rem var(--font-display); cursor:pointer;
}
.pk-fchip b{ color:var(--ink-soft); font-weight:600; }
.pk-fchip span[aria-hidden]{ display:grid; place-items:center; width:20px; height:20px; border-radius:50%; background:var(--surface); font-size:.9rem; line-height:1; }
.pk-count{ margin:1rem 0 .5rem; color:var(--ink-soft); font-family:var(--font-display); font-weight:600; }

/* --------------------------------------------------------- buttons */
.pk-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.4rem;
  min-height:46px; padding:0 1.4rem; border-radius:12px; cursor:pointer;
  background:var(--accent); color:var(--accent-on); border:1px solid var(--accent);
  font:700 1rem var(--font-display);
}
.pk-btn:hover{ background:var(--pk-deep); border-color:var(--pk-deep); color:#fff; }
.pk-btn.pk-wide{ width:100%; }
.pk-text{ border:0; background:none; cursor:pointer; color:var(--accent); font:600 1rem var(--font-display); padding:.5rem .6rem; border-radius:10px; }
.pk-text:hover{ background:var(--accent-soft); }
.pk-danger{ color:#b3261e; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .pk-danger{ color:#ff8a80; } }
:root[data-theme="dark"] .pk-danger{ color:#ff8a80; }
.pk-x{
  width:40px; height:40px; flex:none; border-radius:50%; border:0; background:none; cursor:pointer;
  color:var(--ink); display:grid; place-items:center;
}
.pk-x svg{ width:24px; height:24px; }
.pk-x:hover{ background:var(--surface-2); }
.pk-x:disabled{ opacity:.3; cursor:default; background:none; }

/* ----------------------------------------------------------------- grid */
.pk-grid-wrap{ border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); box-shadow:var(--shadow); overflow-x:auto; }
.pk-grid-wrap:empty{ display:none; }
.pk-grid{ width:100%; border-collapse:collapse; font-size:.97rem; line-height:1.7; }
.pk-grid thead th{
  background:var(--pk-deep); color:#fff; text-align:start; padding:.65rem .8rem; font-size:.88rem; font-weight:700; white-space:nowrap;
}
.pk-grid td{ padding:.75rem .8rem; border-top:1px solid var(--line); vertical-align:top; }
.pk-grid tbody tr{ cursor:pointer; }
.pk-grid tbody tr:hover{ background:var(--accent-soft); }
.pk-grid tbody tr.pk-sel{ background:var(--accent-soft); box-shadow:inset 4px 0 0 var(--accent); }
.pk-id a{ font-family:var(--font-display); font-weight:700; color:var(--accent); white-space:nowrap; text-decoration:none; }
.pk-id a:hover{ text-decoration:underline; }
.pk-lines{ font-size:1.02rem; color:var(--ink); min-width:min(24rem, 60vw); }
.pk-tagcell{ min-width:10rem; }
.pk-lines .pk-en{ display:block; margin-top:.2rem; font-size:.9rem; color:var(--ink-soft); font-family:var(--font-display); }
.pk-type{ color:var(--ink-soft); white-space:nowrap; }
.pk-src{ color:var(--ink-soft); font-size:.92rem; }
.pk-chips{ display:flex; flex-wrap:wrap; gap:.3rem; }
.pk-chip{
  display:inline-block; padding:.05rem .65rem; border-radius:999px; border:0; cursor:pointer;
  background:var(--surface-2); color:var(--ink); font:500 .86rem/1.8 var(--font-display);
}
.pk-chip:hover{ background:var(--accent-soft); color:var(--accent); }
.pk-heartcell{ width:56px; text-align:center; }
.pk-heart{
  width:40px; height:40px; border-radius:50%; cursor:pointer; display:inline-grid; place-items:center;
  background:var(--surface); color:var(--accent); border:1.5px solid var(--pk-line-strong);
}
.pk-heart svg{ width:20px; height:20px; }
.pk-heart:hover{ border-color:var(--accent); }
.pk-heart[aria-pressed="true"]{ background:var(--accent-soft); border-color:var(--accent); }
.pk-heart[aria-pressed="true"] svg{ fill:currentColor; }
.pk-none{ padding:1.4rem; color:var(--ink-soft); }

/* phones: each row becomes a card */
@media (max-width:760px){
  .pk-grid thead{ display:none; }
  .pk-grid, .pk-grid tbody{ display:block; }
  .pk-grid tbody tr{
    display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.2rem .8rem; padding:.9rem 1rem;
    border-top:1px solid var(--line);
  }
  .pk-grid tbody tr:first-child{ border-top:0; }
  .pk-grid td{ display:block; padding:0; border:0; min-width:0; }
  .pk-grid td.pk-id{ grid-column:1; }
  .pk-grid td.pk-heartcell{ grid-column:2; grid-row:1 / span 2; width:auto; }
  .pk-grid td.pk-lines, .pk-grid td.pk-tagcell, .pk-grid td.pk-src{ grid-column:1 / -1; }
  .pk-grid td.pk-type{ grid-column:1; font-size:.85rem; }
  .pk-grid td.pk-tagcell{ margin-top:.3rem; }
  .pk-grid td.pk-src:empty{ display:none; }
  .pk-search{ gap:.5rem; }
}

.pk-pager{ display:flex; align-items:center; justify-content:center; gap:.6rem; margin:1.2rem 0 0; flex-wrap:wrap; }
.pk-pager:empty{ display:none; }
.pk-pager button{
  min-height:42px; padding:0 1rem; border-radius:999px; cursor:pointer;
  background:var(--surface); color:var(--accent); border:1.5px solid var(--pk-line-strong); font:600 .95rem var(--font-display);
}
.pk-pager button:hover:not(:disabled){ border-color:var(--accent); background:var(--accent-soft); }
.pk-pager button:disabled{ opacity:.4; cursor:default; }
.pk-pager span{ color:var(--ink-soft); font-family:var(--font-display); }

/* --------------------------------------------- dialogs: sheet and detail */
.pk dialog{
  padding:0; border:0; color:var(--ink); background:var(--surface);
  box-shadow:0 30px 80px -20px rgb(0 0 0 / .45);
}
.pk dialog::backdrop{ background:rgb(10 25 10 / .45); }

.pk-sheet{ width:min(560px, 100% - 1.5rem); max-height:calc(100dvh - 2rem); border-radius:24px; overflow:auto; }
.pk-sheet-head{ display:flex; align-items:center; gap:1rem; padding:1.4rem 1.4rem .4rem 1.6rem; }
.pk-sheet-head h2{ margin:0; flex:1; font-size:1.6rem; font-weight:700; }
.pk-fields{ display:grid; gap:1rem; padding:.6rem 1.6rem 1rem; }
.pk-fields label, .pk-form label{ display:grid; gap:.35rem; }
.pk-fields label > span:first-child, .pk-form label > span:first-child{ font:600 1rem var(--font-display); color:var(--ink); }
.pk-fields input, .pk-fields select, .pk-form input, .pk-newlist input, .pk-adm-search input{
  width:100%; min-height:50px; padding:.5rem .9rem; border-radius:10px;
  border:1.5px solid var(--pk-line-strong); background:var(--surface); color:var(--ink); font:inherit; font-size:1rem;
}
.pk-fields input:focus, .pk-fields select:focus, .pk-form input:focus, .pk-newlist input:focus, .pk-adm-search input:focus{
  outline:0; border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);
}
.pk-sheet-foot{
  position:sticky; bottom:0; display:flex; align-items:center; gap:.6rem; padding:1rem 1.6rem 1.4rem;
  background:var(--surface); border-top:1px solid var(--line);
}
@media (max-width:560px){
  .pk-sheet{ width:100%; max-width:100%; margin:auto 0 0; border-radius:24px 24px 0 0; max-height:92dvh; }
}

/* the detail panel slides in from the side, or up from the bottom on a phone */
.pk-detail{
  margin:0 0 0 auto; width:min(580px, 100%); height:100dvh; max-height:100dvh; max-width:100%;
  border-radius:24px 0 0 24px; display:none; flex-direction:column;
}
.pk-detail[open]{ display:flex; animation:pk-in .22s ease-out; }
@keyframes pk-in{ from{ transform:translateX(40px); opacity:0; } }
.pk-d-head{ display:flex; align-items:center; gap:.3rem; padding:.8rem .9rem; border-bottom:1px solid var(--line); }
.pk-d-id{ margin:0 .3rem; font:800 1.15rem var(--font-display); color:var(--accent); }
.pk-d-body{ padding:1.3rem 1.6rem 2rem; overflow:auto; flex:1; }
.pk-d-type{ font:700 .78rem var(--font-display); letter-spacing:.1em; text-transform:uppercase; color:var(--ink-faint); margin:0 0 .6rem; }
.pk-d-kural{
  margin:0 0 1rem; padding:1rem 1.2rem; background:var(--accent-soft);
  border-inline-start:5px solid var(--pk-lime); border-radius:0 16px 16px 0;
  font-size:1.18rem; line-height:1.95; font-weight:500;
}
.pk-d-en{ margin:0 0 1.2rem; font:500 1.05rem/1.6 var(--font-display); color:var(--ink-soft); font-style:italic; }
.pk-d-body h3{ margin:1.3rem 0 .4rem; font-size:.82rem; letter-spacing:.1em; text-transform:uppercase; color:var(--accent); }
.pk-d-desc{ margin:0; line-height:1.95; }
.pk-d-other summary{ cursor:pointer; color:var(--accent); font:600 .95rem var(--font-display); margin-top:1rem; }
.pk-d-other p{ color:var(--ink-soft); font-size:.97rem; }
.pk-d-meta{ display:grid; grid-template-columns:auto 1fr; gap:.35rem 1rem; margin:1rem 0 0; font-size:.95rem; }
.pk-d-meta dt{ color:var(--ink-faint); font-family:var(--font-display); font-weight:600; }
.pk-d-meta dd{ margin:0; }
.pk-d-actions{ display:flex; align-items:center; gap:.8rem; margin:1.4rem 0 0; padding-top:1.2rem; border-top:1px solid var(--line); flex-wrap:wrap; }
.pk-d-actions .pk-heart{ width:auto; height:44px; padding:0 1rem; border-radius:999px; gap:.45rem; display:inline-flex; font:600 .95rem var(--font-display); }
.pk-d-lists{ margin:.9rem 0 0; display:grid; gap:.45rem; }
.pk-d-lists label{ display:flex; align-items:center; gap:.6rem; font-family:var(--font-display); cursor:pointer; }
.pk-d-lists input[type=checkbox]{ width:20px; height:20px; accent-color:var(--accent); }
.pk-d-new{ display:flex; gap:.5rem; margin-top:.4rem; }
.pk-d-new input{ flex:1; min-height:42px; padding:.3rem .8rem; border-radius:10px; border:1.5px solid var(--pk-line-strong); background:var(--surface); color:var(--ink); font:inherit; }
.pk-d-new .pk-btn{ min-height:42px; padding:0 1rem; }
@media (max-width:640px){
  .pk-detail{ margin:auto 0 0; height:auto; max-height:92dvh; width:100%; border-radius:24px 24px 0 0; }
  @keyframes pk-in{ from{ transform:translateY(40px); opacity:0; } }
}

/* ------------------------------------------------------------ favorites */
.pk-fav{ display:grid; grid-template-columns:270px 1fr; gap:1.6rem; align-items:start; }
.pk-lists{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:1rem; box-shadow:var(--shadow); }
.pk-lists h2, .pk-listhead h2{ margin:0 0 .6rem; font-size:1.1rem; }
.pk-lists ul{ list-style:none; margin:0 0 1rem; padding:0; display:grid; gap:.15rem; }
.pk-lists li button{
  width:100%; display:flex; align-items:center; gap:.5rem; padding:.55rem .7rem; border-radius:10px; border:0; cursor:pointer;
  background:none; color:var(--ink); font:600 .98rem var(--font-display); text-align:start;
}
.pk-lists li button:hover{ background:var(--surface-2); }
.pk-lists li button[aria-current="true"]{ background:var(--accent-soft); color:var(--accent); }
.pk-lists li .n{ margin-inline-start:auto; color:var(--ink-faint); font-weight:500; font-size:.88rem; }
.pk-newlist{ display:flex; gap:.4rem; }
.pk-newlist input{ min-height:44px; }
.pk-newlist .pk-btn{ min-height:44px; padding:0 .9rem; }
.pk-listview{ min-width:0; }
.pk-listhead{ display:flex; align-items:center; gap:.4rem; flex-wrap:wrap; }
.pk-listhead h2{ margin:0; font-size:1.4rem; }
.pk-err{ color:#b3261e; background:#fdecea; padding:.6rem .9rem; border-radius:10px; margin:.6rem 0; font-size:.95rem; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .pk-err{ color:#ffb4ab; background:#3b1512; } }
:root[data-theme="dark"] .pk-err{ color:#ffb4ab; background:#3b1512; }
.pk-rm{ width:36px; height:36px; }
@media (max-width:860px){ .pk-fav{ grid-template-columns:1fr; } }

/* ---------------------------------------------------- login / register */
.pk-auth{ padding:clamp(1.5rem,5vw,3.5rem) 1rem 3.5rem; background:linear-gradient(180deg, var(--accent-soft), var(--bg) 60%); }
.pk-card{
  width:min(460px, 100%); margin:0 auto; padding:clamp(1.4rem,4vw,2.2rem); background:var(--surface);
  border:1px solid var(--line); border-top:5px solid var(--pk-lime); border-radius:var(--radius); box-shadow:var(--shadow);
}
.pk-card .kicker{ color:var(--accent); }
.pk-card h1{ margin:.2rem 0 .3rem; font-size:1.8rem; font-weight:800; }
.pk-card .pk-sub{ color:var(--ink-soft); margin-bottom:1rem; }
.pk-form{ display:grid; gap:1rem; margin-top:.6rem; }
.pk-either{ border:1px dashed var(--pk-line-strong); border-radius:14px; padding:.6rem 1rem 1rem; margin:0; display:grid; gap:.8rem; }
.pk-either legend{ padding:0 .4rem; color:var(--ink-soft); font:600 .9rem var(--font-display); }
.pk-req{ color:#b3261e; }
.pk-ferr{ color:#b3261e; font-size:.9rem; }
.pk-hint{ color:var(--ink-faint); font-size:.88rem; }
.pk-form input[aria-invalid="true"]{ border-color:#b3261e; }
.pk-alt{ margin:1.2rem 0 0; text-align:center; }
.pk-fine{ margin:.6rem 0 0; font-size:.84rem; color:var(--ink-faint); text-align:center; line-height:1.6; }
.pk-hp{ position:absolute; left:-9999px; }

/* --------------------------------------------------------- account menu */
.acct .acct-dot{
  display:inline-grid; place-items:center; width:26px; height:26px; margin-inline-end:.4rem; border-radius:50%;
  background:var(--accent); color:var(--accent-on); font-size:.8rem; font-weight:800; vertical-align:middle;
}
.acct .sub{ inset-inline:auto 0; }
.acct-login{ border:1.5px solid var(--accent); color:var(--accent) !important; }
.linkish{
  width:100%; text-align:start; padding:.55rem .7rem; border-radius:10px; border:0; background:none; cursor:pointer;
  color:var(--ink-soft); font:500 .98rem var(--font-display);
}
.linkish:hover{ background:var(--accent-soft); color:var(--accent); }

/* ------------------------------------------------------------------ admin */
.pk-admin .pk-body h2{ margin:2rem 0 .6rem; font-size:1.25rem; }
.pk-stats{ display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:.8rem; }
.pk-stats div{ background:var(--surface); border:1px solid var(--line); border-top:4px solid var(--pk-lime); border-radius:16px; padding:.9rem 1rem; box-shadow:var(--shadow); }
.pk-stats b{ display:block; font:800 1.8rem var(--font-display); color:var(--accent); line-height:1.2; }
.pk-stats span{ color:var(--ink-soft); font-size:.9rem; font-family:var(--font-display); }
.pk-adm-search{ display:flex; gap:.6rem; align-items:center; margin:1.4rem 0 0; max-width:560px; }
.pk-table{ font-size:.92rem; }
.pk-table thead th{ background:var(--pk-deep); color:#fff; }
.pk-table td{ padding:.6rem .8rem; border-top:1px solid var(--line); vertical-align:top; }
.pk-table tr.pk-failed td{ background:color-mix(in srgb, #b3261e 7%, transparent); }
.pk-badge{ display:inline-block; padding:0 .5rem; border-radius:999px; background:var(--accent-soft); color:var(--accent); font:700 .74rem/1.7 var(--font-display); letter-spacing:.05em; vertical-align:middle; }
.pk-badge.pk-off{ background:#fdecea; color:#b3261e; }
.pk-panel{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:1rem 1.2rem; box-shadow:var(--shadow); margin:0 0 1rem; }
.pk-dl{ display:grid; grid-template-columns:max-content 1fr; gap:.3rem 1.4rem; margin:0; }
.pk-dl dt{ color:var(--ink-faint); font-family:var(--font-display); font-weight:600; }
.pk-dl dd{ margin:0; }
.pk-adm-list summary{ cursor:pointer; display:flex; gap:.8rem; align-items:baseline; flex-wrap:wrap; }
.pk-adm-list .tablewrap{ margin:.8rem 0 0; box-shadow:none; }

/* ------------------------------------------------------------------ share */
.pk-heartcell{ white-space:nowrap; }
.pk-heartcell .pk-heart + .pk-heart, .pk-heartcell .pk-rm + .pk-heart{ margin-inline-start:.35rem; }
.pk-sharebtn svg{ fill:none; }
.pk-d-share svg{ fill:none !important; }
.pk-share .pk-sheet-head h2{ font-size:1.25rem; }
.pk-share-id{ color:var(--accent); font-weight:800; }
.pk-share-body{ padding:.2rem 1.6rem 1.5rem; display:grid; gap:.8rem; }
.pk-share-text{ margin:0; padding:.7rem .9rem; background:var(--accent-soft); border-inline-start:4px solid var(--pk-lime); border-radius:0 12px 12px 0; white-space:pre-line; line-height:1.7; }
.pk-share-link{ display:flex; gap:.5rem; }
.pk-share-link input{ flex:1; min-width:0; min-height:44px; padding:.3rem .8rem; border-radius:10px; border:1.5px solid var(--pk-line-strong); background:var(--surface); color:var(--ink); font:inherit; font-size:.92rem; }
.pk-share-link .pk-btn{ min-height:44px; padding:0 1rem; }
.pk-share-done{ margin:0; color:var(--accent); font:600 .92rem var(--font-display); }
.pk-share-apps{ display:flex; flex-wrap:wrap; gap:.5rem; }
.pk-share-apps a, .pk-share-apps button{
  display:inline-flex; align-items:center; min-height:40px; padding:0 1rem; border-radius:999px; cursor:pointer; text-decoration:none;
  background:var(--surface); color:var(--accent); border:1.5px solid var(--pk-line-strong); font:600 .92rem var(--font-display);
}
.pk-share-apps a:hover, .pk-share-apps button:hover{ border-color:var(--accent); background:var(--accent-soft); text-decoration:none; }
@media (max-width:760px){
  .pk-grid td.pk-heartcell{ display:flex; flex-direction:row; align-items:flex-start; gap:.35rem; grid-row:1; }
  .pk-heartcell .pk-heart + .pk-heart, .pk-heartcell .pk-rm + .pk-heart{ margin:0; }
  .pk-hero h1{ font-size:1.1rem; }
}

/* -------------------------------------------- codes, account, newsletters */
.pk-ok{ color:#1f6b25; background:#e6f4e1; padding:.6rem .9rem; border-radius:10px; margin:.6rem 0; font-size:.95rem; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .pk-ok{ color:#b7f0a0; background:#173a1a; } }
:root[data-theme="dark"] .pk-ok{ color:#b7f0a0; background:#173a1a; }
.pk-code{ font:700 1.6rem/1 var(--font-display) !important; letter-spacing:.35em; text-align:center; }
.pk-card-wide{ width:min(620px, 100%); }
.pk-card h2{ margin:1.6rem 0 .3rem; font-size:1.15rem; }
.pk-card .pk-note{ margin:.6rem 0; font-size:.93rem; }
.pk-forgot{ margin:-.4rem 0 0; text-align:end; font-size:.92rem; }
.pk-check{ display:flex !important; grid-template-columns:none !important; gap:.7rem; align-items:flex-start; cursor:pointer; }
.pk-check input{ width:20px !important; min-height:20px !important; height:20px; margin-top:.25rem; accent-color:var(--accent); flex:none; }
.pk-check span{ display:grid; gap:.1rem; }
.pk-check small{ color:var(--ink-soft); font-size:.88rem; line-height:1.5; }
.pk-news .pk-btn{ justify-self:start; }

/* ------------------------------------------------------ submitted kurals */
.pk-form textarea, .pk-form select{
  width:100%; padding:.6rem .9rem; border-radius:10px; border:1.5px solid var(--pk-line-strong);
  background:var(--surface); color:var(--ink); font:inherit; font-size:1rem; line-height:1.6;
}
.pk-form select{ min-height:50px; }
.pk-form textarea:focus, .pk-form select:focus{ outline:0; border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent); }
.pk-sub-form{ max-width:52rem; }
.pk-sub-row{ display:grid; gap:1rem; grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); align-items:end; }
.pk-sub-inline{ padding-bottom:.8rem; }
.pk-sub-review{ padding:.9rem 1rem; border-radius:14px; border:2px solid var(--accent); background:color-mix(in srgb, var(--accent) 8%, transparent); }
.pk-sub-actions{ display:flex; gap:.6rem; align-items:center; flex-wrap:wrap; }
.pk-danger{ color:#b3261e; }
.pk-tabs-row{ display:flex; gap:.5rem; flex-wrap:wrap; }
.pk-tabs-row .pk-chip{ text-decoration:none; }
.pk-tabs-row .pk-on{ background:var(--accent); color:var(--accent-on, #fff); border-color:var(--accent); }
.pk-sub-item{ margin:.8rem 0; }
.pk-sub-item .pk-d-kural{ margin:0 0 .4rem; }
.pk-sub-item form{ margin:0; }
