/* Kundenportal SEC-EXPERT – ergänzt css/site.css */
.pt-user{background:var(--petrol-l);border-bottom:1px solid var(--line);padding:0}
.pt-user[hidden]{display:none}
.pt-user .wrap{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;justify-content:space-between;min-height:54px}
.pt-user .who{color:var(--muted);font-size:.95rem}
.pt-user nav{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.pt-user nav a,.pt-user nav button{background:none;border:0;font:600 .95rem var(--font);color:var(--petrol);text-decoration:none;padding:8px 12px;border-radius:999px;cursor:pointer}
.pt-user nav a:hover,.pt-user nav button:hover,.pt-user nav a[aria-current=page]{background:var(--white)}
.pt-sec{padding:clamp(36px,5vw,64px) 0}

/* Anmeldung */
.pt-login{display:grid;grid-template-columns:1fr minmax(0,460px);gap:clamp(28px,5vw,64px);align-items:start}
.pt-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-l);padding:clamp(20px,3vw,32px)}
.pt-tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--paper);border-radius:999px;padding:4px;margin-bottom:20px}
.pt-tabs button{border:0;background:none;border-radius:999px;padding:10px;font:650 .97rem var(--font);color:var(--muted);cursor:pointer}
.pt-tabs button[aria-selected=true]{background:var(--white);color:var(--petrol-d);box-shadow:0 2px 8px rgba(10,57,64,.12)}
.pt-card .btn{width:100%}
.pt-small{font-size:.9rem;color:var(--muted)}
.pt-feat{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:14px}
.pt-feat li{display:grid;grid-template-columns:40px 1fr;gap:14px;align-items:start}
.pt-feat li>span{width:40px;height:40px;border-radius:12px;background:var(--petrol-l);display:grid;place-items:center;color:var(--petrol)}
.pt-feat b{display:block;color:var(--petrol-d)}
.pt-feat p{margin:0;color:var(--muted);font-size:.97rem}
.pt-urgent{margin-top:26px;background:#FDF0EE;border-left:6px solid #C0392B;border-radius:12px;padding:16px 18px}
.pt-urgent b{color:#8E2A1E}
.pt-urgent p{margin:4px 0 0}
.pt-urgent a{font-weight:700;color:#8E2A1E}

/* Meldungen */
.pt-note{border-radius:var(--radius-s);padding:11px 14px;margin-bottom:14px;font-size:.97rem}
.pt-note.err{background:#FBE9E4;color:#7F2E1A}
.pt-note.info{background:var(--petrol-l);color:var(--petrol-d)}
.pt-note.ok{background:#E6F3EC;color:#2E6B4F}

/* Liste */
.pt-head{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;margin-bottom:20px}
.pt-head h2{margin:0}
.pt-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.pt-filter button{background:var(--white);border:1px solid var(--line);border-radius:999px;padding:7px 14px;font:600 .92rem var(--font);color:var(--muted);cursor:pointer}
.pt-filter button[aria-pressed=true]{background:var(--petrol);border-color:var(--petrol);color:var(--white)}
.pt-list{display:grid;gap:12px}
.pt-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 18px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:16px 20px;text-decoration:none;color:var(--ink)}
.pt-row:hover{border-color:var(--petrol);color:var(--ink)}
.pt-row h3{margin:0;font-size:1.08rem;color:var(--petrol-d)}
.pt-row .meta{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--muted);font-size:.9rem}
.pt-row .nr{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.85rem;color:var(--muted)}
.pt-row.need{border-left:6px solid var(--amber)}
.pt-empty{background:var(--white);border:1px dashed #BCC9C8;border-radius:14px;padding:32px;text-align:center;color:var(--muted)}
.pt-badge{display:inline-block;border-radius:999px;padding:3px 11px;font-size:.8rem;font-weight:700;white-space:nowrap;align-self:start}
.st-neu{background:var(--amber-l);color:#7A5410}
.st-bearb{background:var(--petrol-l);color:var(--petrol-d)}
.st-rueck{background:#FDE7C4;color:#7A4A06;box-shadow:inset 0 0 0 1px var(--amber)}
.st-geloest{background:#E6F3EC;color:#2E6B4F}
.st-zu{background:#EDF0F0;color:#5C6E72}
.pt-prio{font-weight:650}
.pt-prio.kritisch{color:#B4462D}
.pt-prio.hoch{color:#8A5A0F}
.pt-frist{font-weight:650}
.pt-frist.ok{color:#2E6B4F}
.pt-frist.soon{color:#8A5A0F}
.pt-frist.over{color:#B4462D}

/* Formular Neues Ticket */
.pt-form fieldset{border:0;padding:0;margin:0 0 26px}
.pt-form legend{font:700 1.15rem var(--font-d);color:var(--petrol-d);margin-bottom:12px;padding:0}
.pt-areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pt-areas label{display:flex;flex-direction:column;gap:4px;border:1px solid #BCC9C8;border-radius:12px;padding:14px;cursor:pointer;background:var(--paper)}
.pt-areas label:hover{border-color:var(--petrol)}
.pt-areas input{position:absolute;opacity:0;pointer-events:none}
.pt-areas b{color:var(--petrol-d)}
.pt-areas span{font-size:.88rem;color:var(--muted)}
.pt-areas label:has(input:checked){border-color:var(--petrol);background:var(--petrol-l);box-shadow:inset 0 0 0 1px var(--petrol)}
.pt-areas label:has(input:focus-visible){outline:3px solid var(--amber);outline-offset:2px}
.pt-urg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pt-urg label{border:1px solid #BCC9C8;border-radius:12px;padding:10px 12px;cursor:pointer;background:var(--paper);display:flex;flex-direction:column}
.pt-urg input{position:absolute;opacity:0;pointer-events:none}
.pt-urg b{font-size:.97rem}
.pt-urg span{font-size:.85rem;color:var(--muted)}
.pt-urg label:has(input:checked){border-color:var(--petrol);background:var(--petrol-l);box-shadow:inset 0 0 0 1px var(--petrol)}
.pt-urg label.krit:has(input:checked){border-color:#C0392B;background:#FDF0EE;box-shadow:inset 0 0 0 1px #C0392B}
.pt-urg label:has(input:focus-visible){outline:3px solid var(--amber);outline-offset:2px}
.pt-alert{background:#FDF0EE;border-left:6px solid #C0392B;border-radius:12px;padding:14px 16px;margin:14px 0 0}
.pt-alert b{color:#8E2A1E}
.pt-alert p{margin:4px 0 0}
.pt-alert a{color:#8E2A1E;font-weight:700}
.pt-alert[hidden],.pt-fristin[hidden]{display:none}
.pt-fristin{background:var(--amber-l);border:1px solid #F0DDB8;border-radius:12px;padding:16px;margin-top:14px}
.pt-fristin .fld{margin-bottom:8px}
.pt-fristin p{margin:0;font-size:.95rem}
.pt-privacy{background:var(--paper);border-radius:10px;padding:12px 14px;font-size:.92rem;color:var(--muted);margin:0 0 18px}
.pt-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* Ticketansicht */
.pt-detail{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}
.pt-detail h2{margin:0 0 4px}
.pt-facts{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pt-facts li{display:flex;flex-direction:column}
.pt-facts span{font-size:.85rem;color:var(--muted)}
.pt-facts b{font-weight:600}
.pt-fristbox{border-radius:12px;padding:14px 16px;margin:0 0 18px;display:flex;flex-direction:column;gap:3px;border-left:6px solid}
.pt-fristbox.ok{background:#E6F3EC;border-color:#3E8E6A}
.pt-fristbox.soon{background:var(--amber-l);border-color:var(--amber)}
.pt-fristbox.over{background:#FDF0EE;border-color:#C0392B}
.pt-fristbox small{color:var(--muted)}
.pt-thread{display:grid;gap:14px;margin:18px 0 24px}
.pt-msg{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:14px 18px;max-width:92%}
.pt-msg.sec{border-left:5px solid var(--petrol);justify-self:start}
.pt-msg.kunde{border-right:5px solid var(--amber);justify-self:end;background:#FFFDF8}
.pt-msg.sys{max-width:100%;justify-self:stretch;background:var(--paper);border-style:dashed;font-size:.92rem}
.pt-msg header{display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:space-between;font-size:.88rem;color:var(--muted);margin-bottom:6px}
.pt-msg header b{color:var(--petrol-d);font-size:.95rem}
.pt-reply textarea{min-height:130px}
.pt-side{position:sticky;top:108px}
.pt-side .btn{width:100%;text-align:center;margin-top:10px}
.pt-closed{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:16px;color:var(--muted)}

/* Admin */
.ad-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-bottom:16px}
.ad-bar .fld{margin:0;min-width:160px}
.ad-bar .fld.grow{flex:1;min-width:220px}
.ad-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}
.ad-stats div{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:12px 14px;border-top:4px solid var(--petrol)}
.ad-stats div.warn{border-top-color:var(--amber)}
.ad-stats div.crit{border-top-color:#C0392B}
.ad-stats b{display:block;font-size:1.6rem;color:var(--petrol-d);line-height:1.1}
.ad-stats span{font-size:.85rem;color:var(--muted)}
.ad-grid{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:20px;align-items:start}
.ad-grid .pt-row{cursor:pointer;width:100%;text-align:left;font:inherit}
.ad-grid .pt-row[aria-current=true]{border-color:var(--petrol);box-shadow:inset 0 0 0 1px var(--petrol)}
.ad-detail{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-l);padding:22px;position:sticky;top:100px;max-height:calc(100vh - 120px);overflow:auto}
.ad-detail .pt-msg{max-width:100%}
.ad-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ad-btns .btn{padding:11px 16px;font-size:.95rem}
.btn.warn{background:var(--amber);color:var(--petrol-d)}
.btn.ok{background:#3E8E6A}

@media (max-width:980px){.pt-detail,.ad-grid{grid-template-columns:1fr}.pt-side,.ad-detail{position:static;max-height:none}.ad-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.pt-login{grid-template-columns:1fr}.pt-areas,.pt-urg{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.pt-areas,.pt-urg{grid-template-columns:1fr}.pt-msg{max-width:100%}.ad-stats{grid-template-columns:1fr 1fr}}
