.portal-login{background:var(--cream);min-height:60vh}.login-card{border-radius:var(--radius);max-width:460px;box-shadow:var(--shadow-lg);background:#fff;margin:0 auto;padding:clamp(28px,5vw,44px)}.login-card h1{margin-bottom:8px;font-size:clamp(30px,4vw,38px)}.login-form{flex-direction:column;gap:16px;margin:28px 0 24px;display:flex}.notice.compact{margin:0;padding:12px 16px;font-size:15px}.demo-hint{border:1.5px dashed var(--green-300);border-radius:var(--radius-sm);background:var(--green-50);justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:14px 16px;display:flex}.demo-hint p{overflow-wrap:anywhere;margin:0;font-size:14.5px}.demo-hint .button{flex-shrink:0;padding:8px 16px;font-size:14.5px}.portal-hero-inner{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.portal-hero h1{margin-bottom:8px}.portal-hero .lead{margin:0;font-size:17px}.portal-body{padding-top:48px}.portal-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:40px;display:grid}.portal-heading{margin:40px 0 16px;font-size:clamp(22px,2.4vw,26px)}.consultant-card{top:calc(var(--header-height) + 24px);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:12px;padding:24px;display:flex;position:sticky}.consultant-card .eyebrow,.consultant-card p{margin:0}.consultant{align-items:center;gap:14px;display:flex}.consultant img{object-fit:cover;border-radius:999px;width:56px;height:56px}.consultant div{flex-direction:column;display:flex}.consultant strong{color:var(--green-950)}.stat-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.stat-row li{border:1px solid var(--border);border-radius:var(--radius);background:#fff;flex-direction:column;padding:20px 22px;display:flex}.stat-row strong{color:var(--green-950);font-variant-numeric:tabular-nums;font-size:34px;font-weight:800;line-height:1.1}.stat-row span{color:var(--muted);font-size:15px}.stat-row li.attention{background:#fff6f0;border-color:#f2c4a6}.stat-row li.attention strong{color:var(--orange-700)}.action-panel{border-left:4px solid var(--orange-700);border-radius:var(--radius-sm);background:#fff6f0;margin-top:24px;padding:20px 24px}.action-panel h2{margin:0 0 8px;font-size:19px}.action-panel ul{margin:0;padding-left:18px}.order-card{border:1px solid var(--border);border-radius:var(--radius);background:#fff;margin-bottom:20px;padding:24px}.order-card header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.order-card h3{margin:0 0 4px;font-size:20px}.order-card h3 a{color:var(--green-950);text-decoration:none}.order-card h3 a:hover{color:var(--brand)}.order-card header p{margin:0}.order-status{border-radius:999px;flex-shrink:0;padding:4px 12px;font-size:13.5px;font-weight:700}.order-status.active{background:var(--green-100);color:var(--green-800)}.order-status.complete{color:var(--muted);background:#eef0ec}.progress{background:#eef0ec;border-radius:999px;height:8px;margin:18px 0 6px;overflow:hidden}.progress span{border-radius:inherit;background:var(--green-500);height:100%;display:block}.order-card>.muted{margin:0 0 12px}.filing-summary{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.filing-summary li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.filing-summary li:last-child{border-bottom:0;padding-bottom:0}.filing-summary a{color:var(--text);font-weight:600;text-decoration:none}.filing-summary a:hover{color:var(--brand)}.status-chip{white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:3px 11px;font-size:13px;font-weight:700;display:inline-flex}.status-chip:before{content:"";background:currentColor;border-radius:999px;width:7px;height:7px}.status-chip.complete{background:var(--green-100);color:var(--green-800)}.status-chip.with_faa{color:#1d4f86;background:#e3edf8}.status-chip.in_progress{color:#7a5600;background:#fdf3d7}.status-chip.action_needed{color:var(--orange-800);background:#fde6d8}.status-chip.waiting,.status-chip.not_started{color:var(--muted);background:#eef0ec}.order-head h2{margin-bottom:4px}.order-head p{margin:0 0 28px}.filings{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.filing{scroll-margin-top:calc(var(--header-height) + 16px);border:1px solid var(--border);border-left:4px solid var(--green-500);border-radius:var(--radius);background:#fff;padding:22px 24px}.filing.with_faa{border-left-color:#2f6db3}.filing.in_progress{border-left-color:#d9a400}.filing.action_needed{border-left-color:var(--orange-700)}.filing.waiting,.filing.not_started{border-left-color:#c8cdc2}.filing:target{box-shadow:0 0 0 4px #6187412e}.filing header{justify-content:space-between;align-items:center;gap:12px;display:flex}.filing h3{margin:0;font-size:19px}.filing>p{color:var(--muted);margin:10px 0 0}.filing-facts{flex-wrap:wrap;gap:12px 32px;margin:14px 0 0;display:flex}.filing-facts dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:12.5px;font-weight:700}.filing-facts dd{color:var(--green-950);margin:2px 0 0;font-weight:650}.filing .filing-action{border-radius:var(--radius-sm);color:var(--text);background:#fff6f0;margin-top:14px;padding:12px 16px}.filing details{margin-top:14px}.filing summary{color:var(--brand);cursor:pointer;font-size:14.5px;font-weight:650}.timeline{border-left:2px solid var(--border);margin:12px 0 0;padding:0 0 0 18px;list-style:none}.timeline li{grid-template-columns:110px 1fr;gap:12px;padding:6px 0;font-size:15px;display:grid;position:relative}.timeline li:before{content:"";background:var(--green-300);border:2px solid #fff;border-radius:999px;width:10px;height:10px;position:absolute;top:13px;left:-26px}.timeline li:first-child:before{background:var(--green-700)}.timeline time{color:var(--muted);font-variant-numeric:tabular-nums}@media (width<=960px){.portal-grid{grid-template-columns:1fr}.consultant-card{position:static}}@media (width<=560px){.stat-row{grid-template-columns:1fr}.stat-row li{flex-direction:row;align-items:baseline;gap:12px;padding:14px 18px}.stat-row strong{font-size:26px}.order-card,.filing{padding:18px}.order-card header{flex-direction:column;gap:8px}.filing header{flex-direction:column;align-items:flex-start;gap:8px}.timeline li{grid-template-columns:1fr;gap:0}.demo-hint{flex-direction:column;align-items:stretch}}
