.pap-public{
	--pap-bg:#F5F6F8; --pap-surface:#FFFFFF; --pap-surface-2:#F0F2F5;
	--pap-ink:#20242B; --pap-muted:#5B6270; --pap-line:#E1E4EA; --pap-line-strong:#CDD3DE;
	--pap-accent:#162D4C; --pap-accent-ink:#FFFFFF; --pap-focus:#1E7FCB;
	--pap-radius:10px;
	color:var(--pap-ink);
	font-family:inherit;
	max-width:1100px;
	margin:0 auto;
}
.pap-public *{ box-sizing:border-box; }
.pap-public a{ color:inherit; }

.pap-toolbar{
	position:sticky; top:32px; z-index:5; background:var(--pap-bg);
	padding:14px 0 12px; display:flex; flex-direction:column; gap:12px;
	border-bottom:1px solid var(--pap-line); margin-bottom:4px;
}
.pap-toolbar-row{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.pap-search-box{ position:relative; flex:1 1 260px; min-width:0; }
.pap-search-box svg{
	position:absolute; left:12px; top:50%; transform:translateY(-50%);
	width:17px; height:17px; color:var(--pap-muted); pointer-events:none;
}
.pap-search-input{
	width:100%; height:44px; border-radius:999px; border:1.5px solid var(--pap-line-strong);
	background:var(--pap-surface); color:var(--pap-ink); padding:0 40px 0 38px; font-size:15px;
	font-family:inherit;
}
.pap-clear-search{
	position:absolute; right:6px; top:50%; transform:translateY(-50%);
	width:32px; height:32px; border-radius:999px; border:none; background:transparent;
	color:var(--pap-muted); display:none; align-items:center; justify-content:center; cursor:pointer;
}
.pap-search-box.has-value .pap-clear-search{ display:flex; }

.pap-sort-select{
	height:44px; border-radius:999px; border:1.5px solid var(--pap-line-strong);
	background:var(--pap-surface); color:var(--pap-ink); padding:0 34px 0 16px; font-size:14.5px;
	font-family:inherit; cursor:pointer; flex:none;
}

.pap-pill-row{ display:flex; gap:8px; flex-wrap:wrap; }
.pap-pill{
	height:36px; padding:0 15px; border-radius:999px; border:1.5px solid var(--pap-line-strong);
	background:var(--pap-surface); color:var(--pap-ink); font-size:13.5px; font-weight:600; cursor:pointer;
	display:inline-flex; align-items:center; gap:7px; white-space:nowrap;
}
.pap-pill .pap-dot{ width:8px; height:8px; border-radius:50%; flex:none; }
.pap-pill .pap-n{ color:var(--pap-muted); font-weight:500; }
.pap-pill[aria-pressed="true"]{ background:var(--pap-accent); color:var(--pap-accent-ink); border-color:var(--pap-accent); }
.pap-pill[aria-pressed="true"] .pap-n{ color:var(--pap-accent-ink); opacity:.75; }
.pap-pill-permanent{ border-color:#C9920B; }
.pap-pill-permanent[aria-pressed="true"]{ background:#C9920B; border-color:#C9920B; color:#fff; }
.pap-pill-permanent[aria-pressed="true"] .pap-n{ color:#fff; opacity:.85; }

.pap-kw-section{ padding:16px 0 4px; }
.pap-kw-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.pap-kw-head h2{ font-size:13px; text-transform:uppercase; letter-spacing:.05em; color:var(--pap-muted); font-weight:700; margin:0; }
.pap-kw-toggle{ background:none; border:none; color:var(--pap-focus); font-size:13px; font-weight:600; cursor:pointer; padding:4px 2px; }
.pap-kw-cloud{ display:flex; flex-wrap:wrap; gap:7px 8px; align-items:baseline; }
.pap-kw-chip{
	border:1.5px solid var(--pap-line-strong); background:var(--pap-surface); color:var(--pap-ink);
	border-radius:999px; padding:4px 12px; cursor:pointer; font-weight:600; font-size:13px;
}
.pap-kw-chip:hover{ border-color:var(--pap-focus); }
.pap-kw-chip[aria-pressed="true"]{ background:var(--pap-focus); border-color:var(--pap-focus); color:#fff; }
.pap-kw-chip .pap-c{ opacity:.6; font-weight:500; font-size:.85em; margin-left:4px; }

.pap-results-meta{
	padding:16px 0 4px; color:var(--pap-muted); font-size:13.5px;
}
.pap-results-meta strong{ color:var(--pap-ink); }

.pap-groups{ display:flex; flex-direction:column; gap:26px; padding-top:14px; }
.pap-group-head{ display:flex; align-items:center; gap:10px; margin-bottom:10px; padding-left:2px; }
.pap-group-head .pap-bar{ width:5px; height:20px; border-radius:3px; flex:none; }
.pap-group-head h3{ font-size:16.5px; margin:0; }
.pap-group-head .pap-cnt{ color:var(--pap-muted); font-size:13px; }
.pap-group-sub{ margin:18px 0 8px; font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--pap-muted); }

.pap-doc-list{ background:var(--pap-surface); border:1px solid var(--pap-line); border-radius:var(--pap-radius); overflow:hidden; }
.pap-doc-row{
	display:grid; grid-template-columns:92px 1fr auto 22px; gap:14px; align-items:center;
	padding:12px 16px; border-bottom:1px solid var(--pap-line); text-decoration:none; color:inherit;
}
.pap-doc-row:last-child{ border-bottom:none; }
.pap-doc-row:hover{ background:var(--pap-surface-2); }
.pap-doc-date{ font-size:13px; color:var(--pap-muted); white-space:nowrap; }
.pap-doc-main{ min-width:0; }
.pap-doc-title{ font-size:14.5px; font-weight:600; line-height:1.35; }
.pap-doc-title mark{ background:transparent; color:inherit; text-decoration:underline; text-decoration-color:var(--pap-focus); text-decoration-thickness:2px; text-underline-offset:2px; }
.pap-doc-sub{ margin-top:3px; font-size:12.5px; color:var(--pap-muted); display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.pap-numero-chip{
	border:1px solid var(--pap-line-strong); border-radius:5px; padding:1px 7px; font-size:11.5px; font-weight:700;
	color:var(--pap-muted); letter-spacing:.02em;
}
.pap-permanent-chip{
	border:1px solid #c7e0f4; background:#eaf3fb; border-radius:5px; padding:1px 7px; font-size:11.5px; font-weight:700;
	color:#1E7FCB; letter-spacing:.02em;
}
.pap-doc-link-icon{ width:16px; height:16px; color:var(--pap-muted); flex:none; }
.pap-doc-row:hover .pap-doc-link-icon{ color:var(--pap-focus); }

.pap-no-results{ padding:52px 20px; text-align:center; color:var(--pap-muted); display:flex; flex-direction:column; gap:10px; align-items:center; }
.pap-no-results svg{ width:34px; height:34px; opacity:.5; }
.pap-no-results button{
	margin-top:4px; border:1.5px solid var(--pap-line-strong); background:var(--pap-surface); color:var(--pap-ink);
	border-radius:999px; padding:8px 18px; font-weight:600; font-size:13.5px; cursor:pointer;
}

p.pap-vide{ color:var(--pap-muted); font-style:italic; }

@media (max-width:640px){
	.pap-doc-row{ grid-template-columns:1fr auto; row-gap:4px; }
	.pap-doc-date{ order:3; grid-column:1/2; }
	.pap-doc-main{ order:1; grid-column:1/3; }
	.pap-doc-link-icon{ display:none; }
	.pap-toolbar{ top:0; }
}
@media (prefers-reduced-motion: reduce){
	.pap-public *{ transition:none !important; animation:none !important; }
}
