.portal-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem max(1rem,calc((100vw - 1150px)/2));border-bottom:1px solid var(--color-border);background:var(--color-surface)}.portal-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--color-text);font-family:var(--font-display);font-size:1.8rem;line-height:1}.portal-brand small{display:block;font-family:var(--font-body);font-size:.55rem;letter-spacing:.25em;text-align:center;margin-top:.5rem}.portal-topbar .button{font-size:.8rem;padding:.6rem .8rem}.portal-main{max-width:1182px;padding:2rem 1rem;margin:0 auto;min-height:80vh}.portal-welcome{padding:2rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-gold-soft);margin-bottom:2rem;overflow-wrap:anywhere}.portal-welcome h1{margin:.6rem 0 1rem;font-size:2.2rem}.portal-welcome p{color:var(--color-muted);max-width:650px}.portal-section-heading{margin-bottom:1rem}.portal-search{display:flex;align-items:end;gap:1rem;flex-wrap:wrap;margin:1rem 0 1.5rem}.portal-search .field{flex:1;max-width:450px;min-width:180px}.portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1.25rem}.portal-kit{padding:1.5rem;min-width:0;overflow-wrap:anywhere}.portal-kit-heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:1.5rem}.portal-kit h2{font-size:1.4rem;margin:.4rem 0 1.2rem}.portal-jewel{display:flex;width:44px;height:44px;align-items:center;justify-content:center;color:var(--color-gold);background:var(--color-gold-soft);border-radius:10px}.portal-deadline{display:flex;align-items:center;gap:.8rem;padding:1rem;background:var(--color-form-highlight);border:1px solid var(--color-border);border-radius:var(--radius)}.portal-deadline small,.portal-deadline strong{display:block}.portal-deadline small{color:var(--color-muted);font-size:.8rem}.portal-facts{margin:1.3rem 0}.portal-facts>div{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--color-border);font-size:.85rem}.portal-facts dt{color:var(--color-muted)}.portal-facts dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere}.portal-footer{padding:2rem 1rem;text-align:center;font-size:.8rem;color:var(--color-muted)}.portal-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:1rem}.portal-detail-header{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.portal-detail-header>div{min-width:0;overflow-wrap:anywhere}.portal-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.5rem;align-items:start}.portal-stack{display:grid;gap:1.25rem;min-width:0}.portal-panel{padding:1.5rem;min-width:0}.portal-items{font-size:.8rem;min-width:640px}.portal-items th[scope=row]{min-width:160px}.portal-items td:nth-child(n+4){white-space:nowrap}.portal-items th[scope=row]{text-align:left;max-width:240px;overflow-wrap:anywhere}.portal-items small{display:block;font-weight:400;font-size:.75rem;color:var(--color-muted)}.portal-document{padding:1rem 0;border-bottom:1px solid var(--color-border)}.portal-document strong,.portal-document small{display:block;overflow-wrap:anywhere}.portal-document small{font-size:.75rem;color:var(--color-muted)}.portal-actions{display:flex;align-items:start;gap:1rem;flex-wrap:wrap;margin-top:.6rem;font-size:.8rem}.portal-actions a{display:inline-flex;min-height:44px;align-items:center}.portal-link-ready{padding:1rem;margin:1rem 0;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-success-soft);font-size:.85rem}.portal-issued{margin-bottom:1.5rem}.portal-issued .form-stack{margin-top:1rem}.portal-issued input{font-family:monospace;font-size:.85rem}.portal-issued p{overflow-wrap:anywhere}.portal-panel p.muted{font-size:.85rem;margin-top:.4rem}
@media(max-width:900px){.portal-detail-grid{grid-template-columns:1fr}}
@media(max-width:600px){.portal-main{padding:1rem}.portal-welcome,.portal-kit,.portal-panel{padding:1.2rem}.portal-welcome h1,.portal-detail-header h1{font-size:1.7rem}.portal-search{gap:.75rem}.portal-search .field{max-width:none;min-width:100%}.portal-detail-header>.portal-deadline{width:100%}.portal-topbar{padding:.8rem 1rem}.portal-brand{font-size:1.5rem}}

.portal-logo{display:block;width:130px;height:auto}.portal-topbar{padding-top:.5rem;padding-bottom:.5rem}
.portal-share-actions{display:flex;gap:.65rem;flex-wrap:wrap}.portal-qr{margin:0;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius);max-width:430px}.portal-qr canvas{display:block;width:280px;max-width:100%;height:auto;margin:0 auto}.portal-qr figcaption{text-align:center;font-weight:600;margin:.5rem 0 1rem}.portal-qr .portal-share-actions{justify-content:center}.portal-issued [hidden]{display:none}.portal-issued .button{min-height:44px}
