.piirc-admin, .piirc-public {
    --piirc-ink: #15364d;
    --piirc-muted: #4a6577;
    --piirc-surface: #fff;
    --piirc-tint: #f0f7fa;
    --piirc-line: #d5e4ec;
    --piirc-action: #086e99;
    color: var(--piirc-ink);
}
.piirc-public *, .piirc-admin * { box-sizing: border-box; }
.piirc-admin { max-width: 1040px; }
.piirc-admin__hero {
    background: linear-gradient(110deg,#eaf7fc,#fff);
    border: 1px solid var(--piirc-line);
    border-right: 4px solid #de9e48;
    border-radius: 16px;
    margin: 18px 0;
    padding: 23px 25px;
}
.piirc-admin__hero h1 { font-weight: 750; margin: 4px 0; }
.piirc-admin__hero p { margin: 8px 0; }
.piirc-panel { padding: 21px; background: #fff; border: 1px solid var(--piirc-line); border-radius: 14px; margin: 14px 0; }
.piirc-panel h2 { margin-top: 0; }
.piirc-panel .widefat th, .piirc-panel .widefat td { text-align: right; }
.piirc-admin__fields, .piirc-admin__metrics {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(165px,1fr));
    gap: 12px;
    margin: 14px 0;
}
.piirc-admin__fields label, .piirc-form label { display: grid; gap: 6px; font-weight: 650; }
.piirc-admin__fields input { width: 100%; padding: 7px; min-height: 38px; }
.piirc-admin__metrics > div { display: grid; align-items: center; gap: 4px; background: var(--piirc-tint); border-radius: 9px; padding: 12px; text-align: center; }
.piirc-admin__metrics strong { font-size: 19px; }
.piirc-admin__metrics span { color: var(--piirc-muted); }
.piirc-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.piirc-admin__search, .piirc-admin__pagination { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin: 13px 0; }
.piirc-admin__search label { font-weight: 650; }
.piirc-admin__search input { max-width: 100%; width: 210px; }
.piirc-admin__table-scroll { overflow-x: auto; }
.piirc-admin__rows th, .piirc-admin__rows td { vertical-align: middle; }
.piirc-admin__rows bdi { white-space: nowrap; }
.piirc-admin__pagination { color: var(--piirc-muted); margin-bottom: 0; }

.piirc-public {
    max-width: 920px;
    margin: 18px auto 30px;
    border: 1px solid var(--piirc-line);
    border-right: 4px solid #e5a54a;
    border-radius: 16px;
    background: var(--piirc-surface);
    padding: clamp(16px,3vw,26px);
    font-family: Vazirmatn,Tahoma,sans-serif;
}
.piirc-public--account { margin-right: 0; margin-left: 0; }
.piirc-eyebrow { color: var(--piirc-action); font-size: 13px; font-weight: 750; }
.piirc-public h2, .piirc-public h3 { color: var(--piirc-ink); margin: 5px 0; }
.piirc-public h2 { font-size: clamp(18px,2vw,24px); }
.piirc-public p { margin: 6px 0 12px; color: var(--piirc-muted); }
.piirc-form {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto;
    align-items: end;
    gap: 10px;
    margin: 15px 0 0;
}
.piirc-form input:not([type="hidden"]) {
    min-height: 44px;
    width: 100%;
    color: var(--piirc-ink);
    background: var(--piirc-surface);
    border: 1px solid var(--piirc-line);
    border-radius: 9px;
    padding: 8px 10px;
    font: inherit;
    text-align: center;
}
.piirc-public .piirc-button {
    min-height: 44px;
    border: 0;
    border-radius: 9px;
    padding: 9px 15px;
    background: #086e99;
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-weight: 700;
}
.piirc-public .piirc-button:hover { background: #075977; color: #fff; }
.piirc-public :is(button,input,summary):focus-visible { outline: 2px solid #c98426; outline-offset: 2px; }
.piirc-results { display: grid; gap: 9px; margin-top: 16px; }
.piirc-result {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    padding: 11px 14px;
    border-radius: 10px;
    border: 1px solid var(--piirc-line);
    background: var(--piirc-tint);
}
.piirc-result h3 { font-size: 16px; }
.piirc-result span { color: var(--piirc-muted); font-size: 13px; }
.piirc-result form { margin: 0; }
.piirc-link { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--piirc-line); }
.piirc-link summary { cursor: pointer; color: var(--piirc-action); font-weight: 700; }
.piirc-note, .piirc-public .piirc-alert { padding: 9px 13px; border-radius: 8px; margin-top: 14px; background: var(--piirc-tint); }
.piirc-public .piirc-alert { background: #ffefeb; color: #8d2525; }
html.pii-dark .piirc-public, html[data-theme="dark"] .piirc-public, html[data-pii-theme="dark"] .piirc-public {
    --piirc-ink: #e3eff4;
    --piirc-muted: #b7ccd8;
    --piirc-surface: #132836;
    --piirc-tint: #1a3445;
    --piirc-line: #365364;
    --piirc-action: #8bd3ef;
}
@media (max-width: 660px) {
    .piirc-form { grid-template-columns: 1fr; }
    .piirc-form .piirc-button { width: 100%; }
    .piirc-panel { overflow-x: auto; }
}
