.on-wrap{
    --o-brand:#0079B8;--o-brand-dark:#005E90;--o-brand-lt:#E2F1FA;
    --o-ink:#1B2A38;--o-ink-2:#4A5D6E;--o-ink-3:#8A9BAD;
    --o-ground:#F0F4F7;--o-surface:#FFFFFF;--o-border:#D2DCE5;--o-border-lt:#E6EDF2;
    --o-bau-bg:#FEF3E2;--o-bau-fg:#92500A;
    --o-r:6px;--o-t:130ms ease;
    color:var(--o-ink);
    padding-bottom:56px;
}
.on-wrap *{box-sizing:border-box;}

/* Back to all municipalities */
.on-back{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--o-brand);text-decoration:none;margin-bottom:14px;transition:color var(--o-t);}
.on-back:hover{color:var(--o-brand-dark);text-decoration:underline;}

/* Header */
.on-header{margin-bottom:18px;}
.on-kicker{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--o-brand);margin-bottom:4px;}
.on-title{font-family:Georgia,'Times New Roman',serif;font-size:26px;font-weight:normal;color:var(--o-ink);margin:0 0 4px;}
.on-desc{font-size:14px;color:var(--o-ink-2);}
.on-cityurl{font-size:14px;margin:2px 0 6px;}
.on-cityurl a{color:var(--o-brand);text-decoration:none;}
.on-cityurl a:hover{text-decoration:underline;}

/* Layout */
.on-content{display:grid;grid-template-columns:1fr 290px;gap:26px;align-items:start;}
.on-main{min-width:0;}
.on-side{position:sticky;top:16px;display:flex;flex-direction:column;gap:16px;}

/* Section head */
.on-section-head{display:flex;align-items:baseline;gap:10px;margin-bottom:10px;flex-wrap:wrap;}
.on-section-title{font-family:Georgia,'Times New Roman',serif;font-size:18px;font-weight:normal;color:var(--o-ink);}
.on-count{font-size:13px;color:var(--o-ink-3);}

/* Notice list */
.on-list{background:#F4F8FB;border:1px solid var(--o-border);border-radius:var(--o-r);overflow:hidden;}
.on-item{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--o-border-lt);cursor:pointer;transition:background var(--o-t);text-decoration:none;color:inherit;}
.on-item,.on-item:hover,.on-item:focus,.on-item *{text-decoration:none !important;}
.on-item:last-child{border-bottom:none;}
.on-item:hover{background:#CFE7F6;}
.on-item:hover .on-item-title{color:var(--o-brand);}
.on-item:hover .on-arrow{color:var(--o-brand);}
.on-body{padding:12px 16px;min-width:0;}
.on-meta{display:flex;align-items:center;gap:7px;margin-bottom:3px;flex-wrap:wrap;}
.on-tag{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:2px 6px;border-radius:2px;background:var(--o-brand-lt);color:var(--o-brand);}
.on-tag.bau{background:var(--o-bau-bg);color:var(--o-bau-fg);}
.on-item-title{font-size:14px;font-weight:500;color:var(--o-ink);line-height:1.4;margin-bottom:2px;}
.on-excerpt{font-size:12.5px;color:var(--o-ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:560px;}
.on-right{padding:12px 14px 12px 8px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:5px;flex-shrink:0;}
.on-date{font-size:12px;color:var(--o-ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;}
.on-arrow{color:var(--o-border);font-size:15px;line-height:1;}

/* No results / empty */
.on-empty{display:none;padding:28px 16px;text-align:center;color:var(--o-ink-3);font-size:13px;}
.on-empty.show{display:block;}

/* Sidebar widget */
.on-widget{background:#F4F8FB;border:1px solid var(--o-border);border-radius:var(--o-r);overflow:hidden;}
.on-widget-head{padding:11px 14px;border-bottom:1px solid var(--o-border-lt);display:flex;align-items:center;justify-content:space-between;}
.on-widget-title{font-size:14px;font-weight:600;color:var(--o-ink);}
.on-reset{font-size:12px;color:var(--o-brand);background:none;border:none;cursor:pointer;padding:0;text-decoration:none;}
.on-reset:hover{text-decoration:underline;}
.on-widget-body{padding:14px;display:flex;flex-direction:column;gap:9px;}
.on-field-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--o-ink-3);margin-bottom:-3px;}
.on-select,.on-input{width:100%;padding:8px 10px;border:1px solid var(--o-border);border-radius:var(--o-r);background:#FFFFFF;color:var(--o-ink);font-size:13px;font-family:inherit;outline:none;transition:border-color var(--o-t),box-shadow var(--o-t);}
.on-select{padding-right:26px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%238A9BAD' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center;cursor:pointer;}
.on-select:focus,.on-input:focus{border-color:var(--o-brand);box-shadow:0 0 0 3px rgba(0,121,184,.1);background:var(--o-surface);}
.on-input::placeholder{color:var(--o-ink-3);}

/* Keyword row: input + submit button */
.on-search-row{display:flex;gap:6px;}
.on-search-row .on-input{flex:1;min-width:0;}
.on-search-btn{flex-shrink:0;padding:8px 12px;border:none;border-radius:var(--o-r);background:var(--o-brand);color:#fff;font-size:13px;font-family:inherit;cursor:pointer;transition:background var(--o-t);}
.on-search-btn:hover{background:var(--o-brand-dark);}

/* Flash message (?success= / ?error=) */
.on-flash{padding:11px 14px;border-radius:var(--o-r);font-size:13px;margin-bottom:16px;border:1px solid transparent;}
.on-flash.ok{background:#f2fbf3;border-color:#bfe5c2;color:#1f6a2b;}
.on-flash.err{background:#fff4f4;border-color:#f3c2c2;color:#8a1f1f;}

/* Subscribe box */
.on-sub-lead{font-size:12.5px;color:var(--o-ink-2);line-height:1.45;margin:0 0 3px;}
.on-sub-btn{margin-top:3px;padding:9px 12px;border:none;border-radius:var(--o-r);background:var(--o-brand);color:#fff;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:background var(--o-t);}
.on-sub-btn:hover{background:var(--o-brand-dark);}
.on-sub-privacy{font-size:11px;color:var(--o-ink-3);text-decoration:none;text-align:center;margin-top:2px;}
.on-sub-privacy:hover{text-decoration:underline;}

/* Pager */
.on-pager{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px;}
.on-page-btn{font-size:13px;color:var(--o-brand);padding:7px 14px;border:1px solid var(--o-border);border-radius:var(--o-r);text-decoration:none;transition:all var(--o-t);white-space:nowrap;}
.on-page-btn:hover{border-color:var(--o-brand);background:var(--o-brand-lt);}
.on-page-info{font-size:13px;color:var(--o-ink-3);font-variant-numeric:tabular-nums;}

.on-rotator{width:100%;border:0;display:block;}

@media(max-width:820px){
    .on-content{grid-template-columns:1fr;gap:18px;}
    .on-side{position:static;order:-1;}
    .on-excerpt{white-space:normal;}
}
@media(prefers-reduced-motion:reduce){.on-wrap *{transition:none !important;}}
