:root{color:oklch(92% .012 190);font-synthesis:none;text-rendering:optimizelegibility;--surface:oklch(16.5% .012 235);--surface-raised:oklch(20% .014 235);--surface-soft:oklch(18% .013 235);--line:oklch(31% .016 235);--line-soft:oklch(25% .014 235);--text:oklch(92% .012 190);--muted:oklch(70% .018 210);--quiet:oklch(57% .018 210);--accent:oklch(78% .085 190);--accent-strong:oklch(84% .08 190);--focus:oklch(81% .12 190);--danger:oklch(72% .12 29);--danger-surface:oklch(24% .045 29);--warning:oklch(79% .115 78);--warning-surface:oklch(22% .035 78);--success:oklch(76% .085 165);--canvas:oklch(12.5% .012 235);background:oklch(12.5% .012 235);font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}*,:before,:after{box-sizing:border-box}html,body,#app{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;color:var(--text);background:var(--canvas);overflow-x:hidden}button,textarea,select{font:inherit}button,a,select,textarea{touch-action:manipulation}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}h1,h2,h3,p,dl,dd{margin-top:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}h1{letter-spacing:-.05em;margin-bottom:0;font-size:clamp(2.15rem,6vw,4.7rem);font-weight:580;line-height:.98}h2{letter-spacing:-.015em;margin-bottom:0;font-size:1.05rem;font-weight:680}h3{letter-spacing:.08em;text-transform:uppercase;margin-bottom:0;font-size:.78rem}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;color:oklch(18% .02 235);background:var(--accent-strong);border-radius:.55rem;min-height:44px;padding:.7rem 1rem;font-weight:750;position:fixed;inset-block-start:.75rem;inset-inline-start:-999px}.skip-link:focus{inset-inline-start:.75rem}.eyebrow{color:var(--accent);letter-spacing:.13em;text-transform:uppercase;margin-bottom:.7rem;font-size:.7rem;font-weight:760}.reference{color:inherit;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82em}.button{min-height:44px;color:var(--text);text-align:center;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.65rem;justify-content:center;align-items:center;padding:.68rem 1rem;font-weight:720;line-height:1.15;text-decoration:none;display:inline-flex}.button:disabled{cursor:wait;opacity:.62}.button--primary{color:oklch(16% .02 235);background:var(--accent-strong)}.button--secondary{border-color:var(--line);background:var(--surface-raised)}.button--quiet{border-color:var(--line-soft);color:var(--muted)}.button--danger{border-color:color-mix(in oklch, var(--danger) 62%, var(--line));color:oklch(86% .08 29);background:var(--danger-surface)}.button--danger-solid{color:oklch(99% .005 29);background:oklch(50% .14 29)}.button--wide{width:100%}@media (hover:hover){.button:not(:disabled):hover,.portal-nav a:hover{filter:brightness(1.1)}}.brand-lockup{letter-spacing:-.02em;align-items:center;gap:.65rem;min-width:0;font-size:1rem;font-weight:760;display:flex}.brand-mark{color:oklch(18% .02 235);background:var(--accent-strong);border:1px solid oklch(45% .03 190);border-radius:.65rem;flex:none;place-items:center;width:2.25rem;height:2.25rem;font-size:.88rem;font-weight:850;display:grid}.environment-pill,.count-pill{border:1px solid var(--line);min-width:1.65rem;min-height:1.65rem;color:var(--muted);background:var(--surface-soft);border-radius:999px;justify-content:center;align-items:center;padding-inline:.55rem;font-size:.7rem;font-weight:720;display:inline-flex}.sign-in-page{grid-template-columns:minmax(0,1fr) minmax(18rem,.72fr);align-items:center;gap:clamp(2rem,8vw,7rem);width:min(100% - 2rem,72rem);min-height:100vh;margin-inline:auto;padding-block:clamp(2rem,8vw,6rem);display:grid}.sign-in-panel{gap:1.5rem;max-width:34rem;display:grid}.sign-in-copy{gap:1rem;margin-block:1.4rem .2rem;display:grid}.sign-in-copy p,.sign-in-context p,.sign-in-context li,.page-intro,.standalone-state>p{color:var(--muted);line-height:1.65}.sign-in-copy h1{max-width:11ch}.sign-in-copy p{max-width:55ch;margin-bottom:0}.sign-in-footnote{color:var(--quiet);text-align:center;margin-bottom:0;font-size:.76rem}.sign-in-context{border:1px solid var(--line-soft);background:var(--surface-raised);border-radius:1rem;padding:clamp(1.5rem,4vw,2.5rem)}.sign-in-context h2{max-width:19ch;margin-bottom:1.5rem;font-size:clamp(1.45rem,3vw,2.1rem);line-height:1.12}.boundary-list{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.boundary-list li{padding-inline-start:1.5rem;position:relative}.boundary-list li:before{border:1px solid var(--success);content:"";border-radius:50%;width:.55rem;height:.55rem;position:absolute;inset-block-start:.58rem;inset-inline-start:0}.portal-product{background:var(--canvas);min-height:100vh}.portal-header{z-index:40;min-height:4.5rem;padding-block:.75rem;padding-inline:max(1rem, env(safe-area-inset-left)) max(1rem, env(safe-area-inset-right));border-block-end:1px solid var(--line-soft);background:oklch(14.5% .012 235/.96);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:sticky;inset-block-start:0}.account-actions{align-items:center;gap:.8rem;min-width:0;display:flex}.account-reference{min-width:0;color:var(--quiet);overflow-wrap:anywhere;font-size:.74rem}.portal-action-error{padding:.7rem max(1rem, env(safe-area-inset-left));border-block-end:1px solid var(--danger);color:oklch(88% .045 29);background:var(--danger-surface);text-align:center;margin:0;font-size:.82rem}.portal-frame{grid-template-columns:13rem minmax(0,1fr);width:min(100%,92rem);min-height:calc(100vh - 4.5rem);margin-inline:auto;display:grid}.portal-nav{border-inline-end:1px solid var(--line-soft);flex-direction:column;align-self:stretch;gap:.35rem;padding:1.25rem 1rem;display:flex}.portal-nav a{min-height:44px;color:var(--muted);border:1px solid #0000;border-radius:.6rem;align-items:center;padding-inline:.9rem;font-weight:680;text-decoration:none;display:flex}.portal-nav a[aria-current=page]{border-color:var(--line);color:var(--text);background:var(--surface-raised)}.portal-main{width:min(100%,76rem);padding:clamp(1.5rem,4vw,3.5rem)}.page-heading{margin-bottom:1.2rem}.page-heading h1{font-size:clamp(2rem,5vw,4rem)}.page-heading h1:focus-visible{outline-offset:.55rem}.page-intro{max-width:68ch;margin-bottom:2rem}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-block-start:2rem;display:grid}.metric-card,.section-block,.device-card,.entitlement-summary,.access-card,.empty-state,.loading-panel,.notice,.projection-form,.preview-panel,.context-panel,.review-service-state{border:1px solid var(--line-soft);background:var(--surface-raised);border-radius:.85rem}.metric-card{align-content:space-between;gap:.8rem;min-width:0;min-height:10rem;padding:1.2rem;display:grid}.metric-card--wide{grid-column:span 2}.metric-card>span,.metric-card small,.detail-grid dt{color:var(--quiet);font-size:.76rem}.metric-card strong{letter-spacing:-.045em;overflow-wrap:anywhere;font-size:clamp(1.8rem,4vw,3.15rem);font-weight:590}.metric-card--wide strong,.metric-card__date{letter-spacing:-.02em!important;font-size:clamp(1rem,2.2vw,1.35rem)!important}.section-block,.entitlement-summary,.access-card,.empty-state,.loading-panel,.notice{padding:1.25rem}.section-block,.entitlement-summary{margin-block-start:1rem}.section-heading,.device-card__identity,.review-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.section-heading h2{margin-bottom:0}.empty-inline{color:var(--muted);margin-bottom:0;line-height:1.55}.blocker-list{color:oklch(88% .035 78);gap:.75rem;margin-block:1.1rem 0;padding-inline-start:1.25rem;display:grid}.status-badge{border:1px solid var(--line);min-height:1.8rem;color:var(--muted);background:var(--surface-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:.45rem;padding-inline:.65rem;font-size:.72rem;font-weight:720;display:inline-flex}.status-badge__mark{background:currentColor;border-radius:50%;width:.45rem;height:.45rem}.status-badge--active{border-color:color-mix(in oklch, var(--success) 50%, var(--line));color:var(--success)}.status-badge--revoked,.status-badge--expired{border-color:color-mix(in oklch, var(--danger) 50%, var(--line));color:oklch(82% .08 29)}.status-badge--empty{color:var(--warning)}.device-list{gap:1rem;display:grid}.device-card{gap:1.25rem;padding:1.25rem;display:grid}.device-card__identity h2{margin-bottom:.35rem}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:0;display:grid}.detail-grid>div{min-width:0}.detail-grid dt{margin-bottom:.35rem}.detail-grid dd{overflow-wrap:anywhere;margin-bottom:0}.device-card>.button{justify-self:start}.permission-note,.support-reference{color:var(--quiet);margin-bottom:0;font-size:.76rem}.entitlement-summary{grid-template-columns:minmax(0,.7fr) minmax(0,1fr);align-items:center;gap:2rem;margin-block-end:1rem;display:grid}.entitlement-summary h2{margin-block-start:.8rem;font-size:clamp(1.55rem,3vw,2.4rem)}.access-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.access-card ul{gap:.6rem;margin-block:1rem 0;padding:0;list-style:none;display:grid}.access-card li{border-block-end:1px solid var(--line-soft);padding-block:.65rem}.access-card li:last-child{border-block-end:0}.notice{justify-content:space-between;align-items:center;gap:1rem;display:flex}.notice h2{margin-bottom:.4rem}.notice p:last-child{margin-bottom:0}.notice--warning{color:oklch(88% .045 78);background:var(--warning-surface)}.notice--error{color:oklch(88% .045 29);background:var(--danger-surface)}.loading-panel,.empty-state{align-content:center;min-height:11rem}.loading-panel p,.empty-state p{color:var(--muted);margin-bottom:0}.empty-state{justify-items:start;gap:.9rem;display:grid}.standalone-state{align-content:center;justify-items:start;gap:1rem;width:min(100% - 2rem,42rem);min-height:100vh;margin-inline:auto;padding-block:2rem;display:grid}.standalone-state h1{max-width:13ch}.loading-mark{border:2px solid var(--line);border-block-start-color:var(--accent);border-radius:50%;width:2rem;height:2rem}@media (prefers-reduced-motion:no-preference){.loading-mark{animation:.8s linear infinite spin}}@keyframes spin{to{transform:rotate(360deg)}}.dialog-overlay{z-index:100;background:oklch(5% .01 235/.76);position:fixed;inset:0}.dialog-content{z-index:110;overscroll-behavior:contain;border:1px solid var(--line);width:min(100% - 2rem,31rem);max-height:calc(100vh - 2rem);color:var(--text);background:var(--surface-raised);border-radius:.9rem;gap:1rem;padding:1.25rem;display:grid;position:fixed;inset-block-start:50%;inset-inline-start:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 1.5rem 5rem oklch(4% .01 235/.55)}.dialog-content>p{color:var(--muted);margin-bottom:0;line-height:1.55}.field-label{margin-block-end:-.4rem;font-size:.8rem;font-weight:720}select,textarea{border:1px solid var(--line);width:100%;color:var(--text);background:var(--canvas);border-radius:.6rem;padding:.8rem}.dialog-actions{background:var(--surface-raised);justify-content:flex-end;gap:.75rem;padding-block:.5rem 1.25rem;display:flex;position:sticky;inset-block-end:-1.25rem}.form-error{color:oklch(84% .09 29);min-height:1.25rem;margin-bottom:0}.review-shell,.review-page{width:min(100% - 2rem,74rem);margin-inline:auto;padding-block:clamp(2.5rem,8vw,6rem)}.review-shell{max-width:44rem}.review-shell--wide{max-width:56rem}.review-shell h1{margin-bottom:1rem}.review-service-state,.projection-form{gap:.9rem;margin-block-start:2rem;padding:1.25rem;display:grid}.review-service-state{justify-items:start}.review-service-state p{color:var(--muted);margin-bottom:0}.projection-form label{font-size:.82rem;font-weight:720}.projection-form textarea{resize:vertical;line-height:1.5}.projection-form .button{justify-self:start}.review-header{align-items:flex-end}.review-header h1{margin-bottom:.6rem;font-size:clamp(2rem,5vw,4rem)}.review-id,.viewer-state,.report-item span{color:var(--muted)}.review-boundary{border-inline-start:2px solid var(--warning);color:oklch(84% .045 78);margin-block:1.5rem;padding-inline-start:.85rem;font-size:.82rem;line-height:1.55}.review-grid{grid-template-columns:minmax(0,1fr) minmax(16rem,21rem);gap:1rem;display:grid}.preview-panel,.context-panel{min-width:0;padding:1rem}.preview-panel h2,.context-panel h2{margin-bottom:1rem}.viewer-host{background:oklch(10.5% .014 235);border-radius:.65rem;min-height:32rem;overflow:hidden}.remote-review-proxy{width:100%;height:32rem;display:block}.viewer-state{margin-block:.75rem 0;font-size:.8rem}.thumbnail,.thumbnail-placeholder{object-fit:cover;width:100%;min-height:9.5rem;color:var(--quiet);text-align:center;background:oklch(10.5% .014 235);border-radius:.55rem;place-items:center;font-size:.78rem;display:grid}.context-panel h3{color:var(--muted);margin-block:1.4rem .4rem}.report-item{border-block-start:1px solid var(--line-soft);gap:.35rem;padding-block:.8rem;font-size:.8rem;display:grid}@media (width<=52rem){.portal-header{flex-direction:column;align-items:flex-start;position:static}.account-actions{justify-content:space-between;width:100%}.portal-frame{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-content:start}.portal-nav{z-index:30;border-inline-end:0;border-block-end:1px solid var(--line-soft);background:oklch(14.5% .012 235/.96);grid-template-columns:repeat(3,minmax(0,1fr));padding:.6rem 1rem;display:grid;position:sticky;inset-block-start:0}.portal-nav a{justify-content:center;padding-inline:.5rem}.portal-main{padding-block-start:2rem}.metric-grid,.access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entitlement-summary{grid-template-columns:minmax(0,1fr)}.entitlement-summary .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=38rem){.sign-in-page{grid-template-columns:minmax(0,1fr);align-content:center;gap:2rem}.account-actions,.notice,.review-header,.device-card__identity,.dialog-actions{flex-direction:column;align-items:stretch}.account-actions .button,.dialog-actions .button{width:100%}.account-reference{max-width:100%}.portal-main{padding-inline:1rem}.metric-grid,.access-grid,.detail-grid,.entitlement-summary{grid-template-columns:minmax(0,1fr)}.metric-card--wide{grid-column:auto}.viewer-host{min-height:22rem}.remote-review-proxy{height:22rem}}@media (forced-colors:active){.status-badge__mark,.brand-mark,.boundary-list li:before{border:1px solid}}
