:root{color-scheme:dark;--portal-ink:#ecf2f5;--portal-muted:#a9b8c5;--portal-accent:#8ad9c3}
.portal-page{margin:0;min-height:100vh;background:radial-gradient(ellipse at top left,#183641,transparent 60%),#101923;color:var(--portal-ink);font:16px/1.6 system-ui,sans-serif}
.portal-page *{box-sizing:border-box}.portal-page a,.portal-nav a{color:var(--portal-accent)}
.auth-card{max-width:480px;margin:8vh auto;padding:38px;background:#17232fe6;border:1px solid #344653;border-radius:20px;box-shadow:0 24px 80px #0004}
.brand{font-size:22px;font-weight:750;text-decoration:none}.brand span{display:block;font-size:12px;font-weight:400;color:var(--portal-muted)}
.eyebrow{font-size:11px;letter-spacing:2px;margin-top:38px;color:var(--portal-accent)}
.portal-page h1{font-size:30px;line-height:1.2}.portal-page h2{font-size:20px}.portal-page p{color:var(--portal-muted)}
.portal-page label{display:block;margin:18px 0 6px}.portal-page input,.portal-page select{display:block;width:100%;padding:12px;margin:6px 0 12px;background:#0e1923;border:1px solid #53616c;color:var(--portal-ink);border-radius:8px;font:inherit}
.portal-page button,.portal-nav button{padding:10px 18px;background:var(--portal-accent);color:#102b28;border:0;border-radius:8px;font:inherit;cursor:pointer;font-weight:600}
.portal-page button:disabled{opacity:.5;cursor:wait}.portal-page :focus-visible,.portal-nav :focus-visible{outline:3px solid #e8c687;outline-offset:3px}
.portal-page .muted{font-size:13px}.admin-page{max-width:1000px;margin:auto;padding:32px 24px}.admin-page nav,.portal-nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.admin-page nav .brand{margin-right:auto}
.portal-panel{background:#182531;border:1px solid #344653;border-radius:12px;padding:24px;margin:20px 0}.portal-row{display:flex;gap:18px;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid #344653;overflow-wrap:anywhere}.portal-row span{min-width:0}.portal-row button{flex-shrink:0}
.portal-nav{padding:12px 24px;background:#142732;color:#ecf2f5;font:14px system-ui,sans-serif}.portal-nav .portal-account{margin-left:auto}.portal-note{padding:12px 24px;color:#b9ccd8;font:14px system-ui,sans-serif}
#feedback{white-space:pre-wrap}#invite-link[hidden]{display:none}.portal-page input[readonly]{color:#a0e7d3}
.portal-converter .dashboard-grid>.panel{min-width:0}
@media(max-width:600px){.portal-converter .app-container{padding:20px 14px}.portal-converter .panel{padding:20px 16px}.portal-converter .header-container{flex-wrap:wrap;gap:12px}.portal-converter .job-card-actions{flex-wrap:wrap}.portal-converter .job-card-footer{flex-wrap:wrap;gap:12px}.portal-converter .batch-aggregate-header{flex-wrap:wrap;gap:12px}.portal-converter .form-row{flex-wrap:wrap}.portal-converter .form-group{min-width:0}}
@media(max-width:540px){.auth-card{margin:24px 14px;padding:24px}.portal-row{align-items:flex-start;flex-direction:column}.portal-account{width:100%}.admin-page{padding:18px}}
.portal-page .remember{display:flex;align-items:center;gap:10px;margin:4px 0 14px;font-size:.95em}.portal-page .remember input{width:auto;display:inline-block;margin:0;padding:0;accent-color:#5eead4}
.portal-row-actions{display:flex;gap:10px;flex-shrink:0}
