/* Scoped portal additions; existing website styles are not modified. */
[hidden]{display:none!important}
.portal-main{min-height:75vh}
.portal-main h1{font-size:clamp(2.3rem,5vw,4rem)}
.portal-auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:48px;align-items:start;margin-top:30px}
.portal-auth-layout h2,.portal-dashboard h2{margin-top:0}
.portal-auth-layout ul{color:var(--muted,#a9c4d2)}
.portal-auth-widget{min-width:0;max-width:100%;color-scheme:light}
.portal-auth-widget>div{max-width:100%}
.portal-status{padding:16px 20px;border:1px solid var(--line,#28506b);background:var(--panel,#0b2134);border-radius:4px}
.portal-dev-label{display:inline-block;color:var(--accent,#62dfeb);border:1px solid var(--line,#28506b);padding:4px 10px;font-size:.8rem;border-radius:4px}
.portal-account{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:24px 0 36px}
.portal-account p{margin:0;flex:1;overflow-wrap:anywhere}
.portal-button{font:inherit;font-weight:650;border:1px solid var(--accent,#62dfeb);border-radius:4px;background:transparent;color:var(--accent,#62dfeb);padding:9px 17px;cursor:pointer}
.portal-button:hover{background:rgba(98,223,235,.1)}
.portal-button:focus-visible{outline:2px solid var(--accent,#62dfeb);outline-offset:4px}
.portal-button:disabled{opacity:.5;cursor:wait}
.portal-empty{padding:44px 28px;border:1px dashed var(--line,#28506b);border-radius:4px;text-align:center;background:rgba(7,24,39,.8)}
.portal-empty p{margin-inline:auto;color:var(--muted,#a9c4d2)}
.portal-workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px;padding:0;list-style:none;counter-reset:step}
.portal-workflow li{margin:0;padding:20px;border:1px solid var(--line,#28506b);background:var(--panel,#0b2134);border-radius:4px;counter-increment:step}
.portal-workflow li:before{content:'0' counter(step);display:block;color:var(--accent,#62dfeb);font:600 .8rem ui-monospace,monospace;margin-bottom:10px}
.portal-workflow small{display:block;margin-top:6px}
@media(max-width:800px){.portal-auth-layout{grid-template-columns:minmax(0,1fr);gap:24px}.portal-auth-widget{justify-self:center;width:min(100%,400px)}.portal-workflow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.portal-workflow{grid-template-columns:minmax(0,1fr)}}
/* Keep global website heading rules out of the Clerk widget. */
.portal-auth-widget h1,.portal-auth-widget h2{font-size:1.5rem!important;line-height:1.3!important;letter-spacing:normal!important;margin:0 0 12px!important}
.portal-auth-widget h2::before{display:none!important}
.portal-notice{border-left:3px solid #62dfeb;padding:16px 20px;background:#0d2c40;margin-bottom:24px}
.portal-notice p{margin:8px 0 0}
.portal-card{padding:26px;border:1px solid #28506b;border-radius:6px;background:rgba(7,24,39,.94);min-width:0}
.portal-card h2{font-size:1.55rem;letter-spacing:normal;margin:0 0 18px}
.portal-card h2::before{display:none}
.portal-card h3{font-size:1.1rem;overflow-wrap:anywhere;margin-top:26px}
.portal-card label{display:block;font-weight:600;margin-bottom:10px}
.portal-input-row{display:flex;gap:12px;flex-wrap:wrap}
.portal-input-row input{flex:1;min-width:180px;max-width:100%;border:1px solid #28506b;border-radius:4px;padding:12px;background:#071827;color:#e4f4fc;font:inherit}
.portal-input-row input:focus-visible{outline:2px solid #62dfeb;outline-offset:2px}
.portal-primary{background:#62dfeb;color:#061725}
.portal-primary:hover{background:#9ceff5}
.portal-workspace{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.5fr);gap:24px;margin-top:24px;align-items:start}
.portal-section-head{display:flex;gap:16px;align-items:start;justify-content:space-between;flex-wrap:wrap}
.portal-job-list{display:grid;gap:12px}
.portal-job{display:grid;gap:7px;width:100%;text-align:left;border:1px solid #28506b;background:#0c2639;color:#e4f4fc;border-radius:4px;padding:16px;font:inherit;cursor:pointer;overflow-wrap:anywhere}
.portal-job:hover,.portal-job:focus-visible{border-color:#62dfeb;outline:1px solid #62dfeb}
.portal-job span{font-size:.85rem;color:#62dfeb}.portal-job small{color:#a9c4d2}
.portal-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;font-size:.9rem}
.portal-fields dt{color:#a9c4d2}.portal-fields dd{margin:0;overflow-wrap:anywhere}
.portal-check{border-top:1px solid #28506b;padding:16px 0}.portal-check p{margin:8px 0 0;color:#a9c4d2;font-size:.9rem}
.portal-logs{white-space:pre-wrap;overflow-wrap:anywhere;background:#04131e;padding:16px;font-size:.8rem;line-height:1.7;color:#b7d8e7}
.portal-revision{font: .75rem ui-monospace,monospace;overflow-wrap:anywhere}
#workflow-status{overflow-wrap:anywhere}#workflow-status:empty{display:none}
@media(max-width:850px){.portal-workspace{grid-template-columns:minmax(0,1fr)}}
@media(max-width:480px){.portal-card{padding:18px}.portal-input-row input{width:100%}.portal-input-row .portal-button{width:100%}.portal-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
