/* Agent Authority portal. Plain and official, after the U.S. Web Design System: square corners, no shadows, one blue. */

/* Layout */
#view>.narrow{max-width:640px}#view>.welcome{max-width:960px}

/* Type */
h1,h2,h3{color:var(--ink);font-weight:700;line-height:1.2}
h1{font-size:40px;margin:0 0 16px}h2{font-size:24px;margin:0 0 12px}h3{font-size:19px;margin:0 0 10px}
p{margin:0 0 16px;max-width:68ch}.lead{font-size:20px;line-height:1.5;color:var(--text);margin:0 0 32px}
p.subtle,.subtle{color:var(--hint);font-size:15px}.loading{color:var(--hint)}

/* Home */
.hero{display:grid;grid-template-columns:1fr 160px;gap:48px;align-items:center;padding:16px 0 48px;border-bottom:1px solid var(--line)}
.hero:after{content:"";width:160px;height:160px;background:url(/static/logo.svg) center/contain no-repeat}
.eyebrow{font-size:14px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);margin:0 0 12px}
.display{font-size:48px;line-height:1.15;max-width:640px;margin:0 0 20px}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}
.assurances{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:0;margin:40px 0 0;max-width:960px}
.assurances li{font-size:16px;color:var(--muted);padding-top:16px;border-top:4px solid var(--primary)}
.assurances strong{display:block;font-size:18px;color:var(--ink);margin-bottom:4px}
.choices{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:8px 0 24px}
.choice{display:block;text-decoration:none;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);padding:24px;color:inherit}
.choice:hover{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);color:inherit}.choice:hover strong{text-decoration:underline}
.agent-card{display:flex;gap:16px;align-items:flex-start}.agent-card:before{content:"";width:32px;height:32px;flex-shrink:0;background:url(/static/logo.svg) center/contain no-repeat}.agent-card h2{overflow-wrap:anywhere}.agent-card>div{flex:1;min-width:0}.agent-card .card-view{align-self:center;white-space:nowrap}
.choice h2{font-size:22px;margin-bottom:8px}.choice p{font-size:16px;color:var(--muted);margin:0 0 24px}.choice strong{color:var(--primary);font-size:16px}

/* Containers */
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:32px;margin:24px 0;box-shadow:var(--shadow)}
.narrow>.panel{margin:32px 0}
.split{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:28px}
.row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:0}.row h3{margin:0 0 4px}
.empty{padding:48px;text-align:center;color:var(--muted);background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius)}

/* Step indicator */

/* Forms */
form{display:grid;gap:22px;margin:24px 0 0;max-width:480px}.panel form,.narrow form{max-width:none}.panel>form:first-child{margin-top:0}
label{display:grid;gap:8px;font-size:16px;font-weight:600;color:var(--ink)}
input,select,textarea{width:100%;min-width:0;min-height:48px;padding:10px 12px;border:1px solid var(--field);border-radius:0;font:inherit;font-weight:400;background:var(--surface);color:var(--ink)}

select{appearance:auto}textarea{resize:vertical}
.check{display:flex;align-items:flex-start;gap:12px;font-weight:400}.check input{width:22px;min-height:22px;height:22px;margin:1px 0 0;flex-shrink:0;accent-color:var(--primary)}
.password-field{display:grid;gap:8px}.password-field>label{display:block}
.password-input{position:relative}.password-input input{padding-right:56px}
.password-toggle{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:44px;height:44px;min-height:44px;padding:0;border:0;background:transparent;color:var(--muted);border-radius:8px;box-shadow:none}
.password-toggle:hover{background:var(--bg-alt);color:var(--ink)}
.password-toggle .password-slash{display:none}.password-toggle.revealed .password-slash{display:block}

/* Buttons */
button,.button{font:inherit;font-size:17px;font-weight:700;line-height:1;padding:14px 22px;min-height:48px;border:0;border-radius:var(--radius);color:#fff;background:var(--primary);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;justify-self:start}
button:hover,.button:hover{background:var(--primary-dark);color:#fff}button:active,.button:active{background:var(--primary-darker)}
button:disabled{opacity:.45;cursor:not-allowed}
.copied,.copied:hover,.copied:disabled{background:var(--success-dark);color:#fff;box-shadow:none;opacity:1;animation:copied .3s ease-out}@keyframes copied{50%{transform:scale(1.06)}}@media (prefers-reduced-motion:reduce){.copied{animation:none}}
.secondary{background:var(--surface);color:var(--primary);box-shadow:inset 0 0 0 2px var(--primary)}.secondary:hover{background:var(--surface);color:var(--primary-dark);box-shadow:inset 0 0 0 2px var(--primary-dark)}
.danger{background:var(--error)}.danger:hover{background:#8a1a12}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:24px}
.actions+.hint{margin-top:12px}.spaced li{margin-bottom:8px}.message>.button,.message>button{margin-top:4px}

/* Alerts, tags, tabs */
#notice:not(:empty){padding:16px 20px;background:var(--warning-light);border-left:8px solid var(--warning);margin-bottom:32px;overflow-wrap:anywhere}
.message{background:var(--info-light);padding:16px 20px;border-left:8px solid var(--info);margin:24px 0}.message p:last-child{margin-bottom:0}
.badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.badge{display:inline-flex;align-items:center;gap:6px;background:var(--bg-alt);padding:2px 8px;border-radius:2px;font-size:14px;font-weight:600;color:var(--ink)}
.badge.good{background:var(--success-light);color:var(--success-dark);box-shadow:inset 4px 0 0 var(--success)}
.badge.warn{background:var(--warning-light);color:var(--warning-dark);box-shadow:inset 4px 0 0 var(--warning)}
.tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin:24px 0}.tabs a{padding:12px 0;text-decoration:none;color:var(--muted);font-weight:600}
.tabs a:hover{color:var(--ink)}.tabs a.active{color:var(--primary);box-shadow:inset 0 -4px 0 var(--primary)}

/* Records */
dl{display:grid;grid-template-columns:200px 1fr;gap:12px 20px;font-size:16px}dt{color:var(--muted);font-weight:600}dd{margin:0;overflow-wrap:anywhere}
code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;overflow-wrap:anywhere}
pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--bg-alt);border-radius:var(--radius);padding:16px;font-size:13px;max-height:420px;overflow:auto}
details{margin:24px 0}summary{cursor:pointer;color:var(--primary);font-weight:600}
.item{padding:20px 0;border-top:1px solid var(--line)}.item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:8px}.item-head h3{margin:0}.item .message{margin:16px 0}
.inbox{text-decoration:none;color:var(--ink);font-weight:600}.inbox .subtle{display:block;font-weight:400;margin-top:4px}.inbox:hover{color:var(--primary)}
details.task{margin:0;padding:18px 0;border-top:1px solid var(--line)}details.task summary{font-size:18px}details.task form{margin-top:20px}details.task+:not(details.task){margin-top:24px}
.agreement{font-size:16px;line-height:1.7;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-alt);max-height:320px;overflow:auto}.agreement>:first-child{margin-top:0}.agreement h3,.agreement h4,.agreement h5,.agreement h6{font-size:17px;margin:20px 0 8px}.agreement ul,.agreement ol{padding-left:24px}.agreement li{margin-bottom:4px}
/* The agent name check keeps one line reserved, so typing never moves the form. */
/* Keeps a hint visually attached to its input instead of the 22px form gap. */
.field{display:grid;gap:6px}.field p{margin:0}.field-more{margin:0;font-size:15px}.field-more summary{font-weight:400}
.field-check{min-height:1.5em;margin:4px 0 0}.field-check.bad{color:var(--error)}.field-check.changed{animation:field-check .2s ease-out}@keyframes field-check{from{opacity:0}}
.recovery-codes{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--bg-alt);border-radius:var(--radius);padding:24px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:17px;letter-spacing:.5px}
.qr{width:210px;height:210px;display:block;margin:12px 0}


@media(max-width:960px){.hero{grid-template-columns:1fr 112px;gap:24px}.hero:after{width:112px;height:112px}}
@media(max-width:800px){
 h1{font-size:32px}.display{font-size:34px}.lead{font-size:18px}
 .hero{grid-template-columns:1fr;padding:0 0 32px}.hero:after{display:none}
 .assurances{grid-template-columns:1fr;gap:20px;margin-top:28px}
 .choices{grid-template-columns:1fr;gap:16px}.choice{padding:22px}
 .panel{padding:20px}.steps li{font-size:13px}
 .split{flex-wrap:wrap}.row{align-items:start;flex-wrap:wrap}
 dl{grid-template-columns:1fr;gap:4px}dd{margin-bottom:12px}
 .tabs{gap:18px;font-size:15px;overflow-x:auto}
 .recovery-codes{font-size:14px;gap:8px;padding:16px}
 .empty{padding:24px}
}
#workspace-label select{display:block;width:100%;margin-top:6px;text-transform:none;letter-spacing:0;font-weight:600;color:var(--text)}
