:root{font-family:var(--font-sans);color:var(--fg-1);background:var(--bg-2)}
body{margin:0}
main{max-width:660px;margin:8vh auto;padding:28px;background:var(--bg-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-2)}
#brand-logo{height:36px;display:block;margin-bottom:var(--space-5)}
.eyebrow{font-weight:var(--weight-bold);font-size:var(--fs-12);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--pt-primary)}
h1{font-weight:var(--weight-light);font-size:clamp(32px,6vw,var(--fs-40));line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);color:var(--fg-1)}
p{font-weight:var(--weight-light);font-size:var(--fs-15);line-height:var(--lh-normal)}
section{border-top:1px solid var(--border-1);margin-top:30px;padding-top:24px}
label{display:block;font-weight:var(--weight-semibold);margin-bottom:12px}
button,#signin{display:inline-block;background:var(--pt-primary);color:var(--fg-on-primary);border:0;border-radius:var(--radius-md);padding:12px 18px;font-size:var(--fs-16);font-weight:var(--weight-semibold);cursor:pointer;text-decoration:none;margin:10px 10px 10px 0;transition:background var(--dur-fast) var(--ease-out)}
button:hover,#signin:hover{background:var(--pt-primary-dark)}
button:disabled{opacity:.5;cursor:wait}
input{max-width:100%;padding:10px 0}
.choice{display:flex;gap:10px;align-items:flex-start;margin:16px 0 4px;cursor:pointer}
.choice input{padding:0;margin-top:4px}
.choice .hint{display:block;font-weight:var(--weight-light);font-size:var(--fs-14);color:var(--fg-2);margin-top:2px}
a{color:var(--fg-link)}
a:hover{color:var(--fg-link-hover)}
.note,#limit{font-size:var(--fs-14);color:var(--fg-2)}
#files{list-style:none;padding:0;margin:8px 0}
#files li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:10px 0;border-bottom:1px solid var(--border-1);margin:0}
#files .name{font-weight:var(--weight-semibold);overflow-wrap:anywhere}
#files .state{font-size:var(--fs-14);color:var(--fg-2)}
#files .notice{flex-basis:100%;margin:6px 0 0;padding:10px 14px;background:var(--bg-tint);border-left:4px solid var(--pt-primary);border-radius:var(--radius-sm);font-size:var(--fs-14);font-weight:var(--weight-regular,400);color:var(--fg-1)}
.disclaimer{background:var(--bg-tint);border-left:4px solid var(--pt-primary);border-radius:var(--radius-sm);padding:14px 18px;margin:20px 0}
.disclaimer p{font-size:var(--fs-14);font-weight:var(--weight-semibold);color:var(--fg-1);margin:0}
details{margin-top:16px;font-size:var(--fs-14);color:var(--fg-2)}
details summary{cursor:pointer;color:var(--fg-link);font-weight:var(--weight-semibold)}
details summary:hover{color:var(--fg-link-hover)}
details p{font-size:var(--fs-14);margin:8px 0}
#status{font-weight:var(--weight-semibold)}
li{margin-bottom:8px}
[hidden]{display:none!important}
