/* AugerPros Simple Portal — customer view */
.ap-portal{--red:#861316;--grey:#c0c0c0;--light:#f2f2f2;--muted:#5a5a5a;font-family:"Sinkin Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#000;line-height:1.45;margin:0 auto;max-width:1320px}
.ap-portal *{box-sizing:border-box}
.ap-portal h2,.ap-portal h3,.ap-portal h4{margin:0;line-height:1.2;color:#000}

.ap-portal-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:0 0 18px;border-bottom:4px solid var(--red);margin-bottom:28px;flex-wrap:wrap}
.ap-portal-brand{margin:0 0 6px;font-size:13px;font-weight:700;color:var(--red)}
.ap-portal-head h2{font-size:clamp(22px,3vw,32px);font-weight:700}
.ap-portal-updated{margin:0;font-size:13px;color:var(--muted)}

.ap-portal-next{background:#000;color:#fff;padding:22px 24px;margin-bottom:28px}
.ap-portal-next h3{color:#fff;font-size:14px;margin-bottom:12px;letter-spacing:.02em}
.ap-portal-next ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px 28px}
.ap-portal-next li{display:grid;grid-template-columns:auto 1fr;gap:2px 14px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.15);font-size:14px}
.ap-portal-next .ap-portal-date{font-weight:700;grid-row:span 2;align-self:center;white-space:nowrap}
.ap-portal-next .ap-portal-where{font-size:12px;color:var(--grey)}

.ap-portal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:22px}
@media(max-width:480px){.ap-portal-grid{grid-template-columns:1fr}}
.ap-portal-prop{border:1px solid var(--grey);padding:22px 24px 24px;background:#fff}
.ap-portal-prop h3{font-size:20px;font-weight:700;margin-bottom:4px}
.ap-portal-addr{margin:0 0 16px;font-size:13px;color:var(--muted)}
.ap-portal-prop h4{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--red);margin:18px 0 8px;padding-bottom:6px;border-bottom:2px solid var(--red)}

.ap-portal table{width:100%;border-collapse:collapse;font-size:13px;margin:0}
.ap-portal th,.ap-portal td{padding:8px 10px 8px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--light);border-top:0;border-left:0;border-right:0;background:none}
.ap-portal thead th{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.ap-portal tbody tr:last-child td{border-bottom:0}
.ap-portal small{color:var(--muted);font-size:12px}
.ap-nowrap{white-space:nowrap}
.ap-portal-pass{font-weight:700;color:#2c6b2c}
.ap-portal-fail{font-weight:700;color:var(--red)}
.ap-portal-muted{color:var(--muted);font-size:13px;margin:0}

.ap-portal-hist{list-style:none;margin:0;padding:0;font-size:13px}
.ap-portal-hist li{padding:6px 0;border-bottom:1px solid var(--light);display:flex;gap:12px;flex-wrap:wrap}
.ap-portal-hist li:last-child{border-bottom:0}
.ap-portal-hist .ap-portal-date{font-weight:700;min-width:100px}

.ap-portal-foot{margin-top:32px;padding-top:16px;border-top:1px solid var(--grey);font-size:13px;color:var(--muted)}
.ap-portal-foot a{color:var(--red);text-decoration:none;font-weight:700}

/* ---- customer request form */
.ap-portal-intro{font-size:15px;margin:0 0 22px;max-width:none}
.ap-portal-flash{padding:14px 18px;margin:0 0 20px;font-size:15px;font-weight:700;border-left:6px solid #000;background:var(--light)}
.ap-portal-flash-ok{background:#000;color:#fff;border-left-color:var(--red)}
.ap-portal-flash-err{border-left-color:var(--red)}
.ap-portal-pending{margin:0 0 18px}
.ap-hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}
.ap-reqform input[type=text],.ap-reqform input[type=email],.ap-reqform input[type=number],.ap-reqform select,.ap-reqform textarea{border:1px solid var(--grey);padding:8px 10px;font-size:14px;font-family:inherit;color:#000;background:#fff;min-height:38px;width:100%}
.ap-reqform input:focus,.ap-reqform select:focus,.ap-reqform textarea:focus{border-color:#000;outline:0}
.ap-reqform input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:var(--red)}
.ap-devcount{display:grid;gap:4px;font-size:12px;font-weight:700;margin-bottom:6px}
.ap-devcount input{width:110px}
.ap-devcount small{font-weight:500}
.ap-svcpick{padding:12px 0;border-bottom:1px solid var(--light)}
.ap-svcpick:last-child{border-bottom:0}
.ap-svcpick-name{display:flex;align-items:center;gap:10px;font-size:15px;cursor:pointer}
.ap-svcpick-name small{margin-left:auto;font-size:12px}
.ap-svcpick-opts{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:end;margin:10px 0 0 30px;transition:opacity .15s}
.ap-svcpick-opts label{display:grid;gap:4px;font-size:11px;font-weight:700;color:var(--muted)}
.ap-svcpick-opts .ap-custom{display:none}
.ap-svcpick-opts .ap-custom.ap-show{display:flex;align-items:center;gap:6px;font-size:12px}
.ap-svcpick-opts .ap-custom input{width:64px}
.ap-svcpick:not(.ap-on) .ap-svcpick-opts{opacity:.4}
.ap-reqfoot{margin-top:28px;display:grid;grid-template-columns:1.4fr 1fr;gap:24px;align-items:start;border-top:4px solid var(--red);padding-top:22px}
.ap-reqfoot label{display:grid;gap:5px;font-size:12px;font-weight:700}
.ap-reqfoot textarea{resize:vertical;min-height:110px}
.ap-reqfoot-who{display:grid;gap:14px}
.ap-reqform .ap-btn{background:var(--red);color:#fff;border:0;padding:14px 22px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;justify-self:start}
.ap-reqform .ap-btn:hover{background:#000}
@media(max-width:720px){.ap-reqfoot{grid-template-columns:1fr}.ap-svcpick-opts{grid-template-columns:1fr;margin-left:0}}
