:root{color-scheme:dark;font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--bg:#0d1115;--panel:#1a2129;--line:#49505a;--gold:#e8c77e;--ink:#f8f4e9;--muted:#bac2ca}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);height:100dvh;display:flex;flex-direction:column;overflow:hidden}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:var(--gold);text-underline-offset:3px}button{min-height:40px;border:1px solid #64707b;border-radius:7px;color:var(--ink);background:#202832;padding:7px 13px}button:hover{background:#303c48;border-color:var(--gold)}button:disabled{opacity:.5;cursor:default}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:8px;left:8px;z-index:100;transform:translateY(-180%);padding:10px 16px;background:var(--gold);color:#15191e}.skip:focus{transform:none}
.demo-header{min-height:70px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:10px max(20px,env(safe-area-inset-left));border-bottom:1px solid #d7be7a38;background:#10161be8;flex:none}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:.77rem;font-weight:700;letter-spacing:.17em;color:var(--ink);width:max-content}.brand img{display:block}.demo-title{display:flex;align-items:center;gap:13px}.demo-title h1{margin:0;font:400 24px/1.2 Georgia,serif}.demo-label{padding:3px 8px;border:1px solid #a49160;color:var(--gold);border-radius:4px;font-size:.69rem;font-weight:650;letter-spacing:.04em;white-space:nowrap}.icon-button{display:inline-grid;place-items:center;flex:none;width:42px;height:42px;min-height:42px;padding:0;text-decoration:none;font-size:23px;border:1px solid #64707b;border-radius:7px;background:#202832;color:var(--ink)}.icon-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.demo-header>.icon-button{justify-self:end}.demo-main{display:flex;flex:1;min-height:0;flex-direction:column;position:relative}.demo-toolbar{display:flex;align-items:center;gap:16px;padding:14px 24px 0;flex:none}.view-switch{display:flex;border:1px solid #64707b;border-radius:8px;overflow:hidden;flex:none}.view-switch button{border:0;border-radius:0;padding-inline:20px;background:transparent}.view-switch button[aria-pressed=true]{color:#12171c;background:var(--gold);font-weight:650}.create-actions{display:flex;gap:8px}.quiet-button{background:transparent;border-color:transparent;color:var(--muted);font-size:.85rem}.demo-toolbar>.quiet-button{margin-left:auto;white-space:nowrap}.demo-intro{margin:10px 24px 0;color:var(--muted);font-size:.85rem;flex:none}.demo-intro strong{font-weight:500;color:var(--gold);margin-left:4px}
.demo-viewport{flex:1;min-height:80px;overflow:hidden;position:relative;isolation:isolate;background:radial-gradient(ellipse at 47% 43%,#33485f35,transparent 60%),radial-gradient(#81909d34 .8px,transparent .8px);background-size:auto,26px 26px;touch-action:none;cursor:grab;outline-offset:-4px}.demo-viewport.is-dragging{cursor:grabbing}.demo-board{position:absolute;left:0;top:0;width:1040px;height:730px;transform-origin:0 0;will-change:transform}.demo-board>svg{position:absolute;inset:0;width:1040px;height:730px;pointer-events:none}.demo-board>svg path{stroke:#b99e63;stroke-width:1.4;opacity:.5;fill:none}.universe-card{position:absolute;width:172px;height:150px;padding:0;border:1px solid #b39d6f;border-radius:12px;background:linear-gradient(135deg,#26313d,#141b23);box-shadow:0 4px 24px #0006;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;touch-action:none;user-select:none;cursor:grab;overflow:hidden}.universe-card:hover{border-color:#ffe1a2;background:linear-gradient(135deg,#344354,#202b37)}.universe-card.is-selected{outline:3px solid #f0cd80;outline-offset:6px}.universe-card[data-kind=avatar]{border-radius:50%;width:150px}.universe-card[data-kind=ai],.universe-card[data-kind=assistant]{border-radius:24px;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.universe-card[data-kind=ai]:focus-visible,.universe-card[data-kind=assistant]:focus-visible,.universe-card[data-kind=ai].is-selected,.universe-card[data-kind=assistant].is-selected{outline:0;box-shadow:inset 0 0 0 4px #f0cd80,0 4px 24px #0006}.card-symbol{display:grid;place-items:center;width:48px;height:48px;color:var(--gold)}.card-symbol svg{width:41px;height:41px;fill:none;stroke:currentColor;stroke-width:1.3}.universe-card .card-name{position:relative;z-index:1;font-size:16px;font-weight:650;max-width:142px;overflow-wrap:anywhere;line-height:1.2}.universe-card .card-type{position:relative;z-index:1;font-size:10px;color:#d8c697;letter-spacing:.1em;text-transform:uppercase}.universe-card .card-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}.universe-card:has(.card-photo)::after{position:absolute;inset:0;content:"";background:linear-gradient(transparent,#0b121de8)}.universe-card:has(.card-photo){justify-content:flex-end;padding-bottom:16px}.universe-card:has(.card-photo) .card-name,.universe-card:has(.card-photo) .card-type{z-index:2}.empty-state{position:absolute;inset:0;display:grid;place-content:center;text-align:center;pointer-events:none}.empty-state h2{font:400 30px Georgia,serif;margin:0}.empty-state p{color:var(--muted)}
.demo-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px max(24px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom));border-top:1px solid #6c71663b;flex:none}.demo-footer p{margin:0;font-size:.73rem;color:var(--muted);line-height:1.5}.demo-footer p span{display:block}.camera-tools{display:flex;align-items:center;gap:7px;flex:none}.fit-button{font-size:.83rem;min-height:42px}.demo-files{flex:1;min-height:0;overflow:auto;padding:22px 24px}.demo-files ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:14px;list-style:none;padding:0;margin:0}.file-card{display:flex;align-items:center;gap:14px;width:100%;min-height:91px;text-align:left;background:#1c252e}.file-card .card-symbol{flex:none}.file-card .card-name{display:block;font-weight:650;overflow-wrap:anywhere}.file-card .card-type{display:block;color:var(--muted);font-size:.76rem;margin-top:3px}.no-script{position:absolute;inset:40% 20% auto;margin:0;padding:20px;background:var(--panel);border:1px solid var(--gold);text-align:center}
.card-dialog{width:min(510px,calc(100vw - 28px));max-height:calc(100dvh - 28px);margin:auto;padding:0;color:var(--ink);background:#171f28;border:1px solid #a49160;border-radius:14px;box-shadow:0 24px 100px #0008;overflow:auto}.card-dialog::backdrop{background:#060b10b8}.dialog-heading{display:flex;align-items:start;justify-content:space-between;gap:20px;padding:20px 22px 12px}.eyebrow{font-size:.65rem;letter-spacing:.13em;font-weight:700;color:var(--gold);margin:0 0 8px}.dialog-heading h2{font:400 28px/1.15 Georgia,serif;overflow-wrap:anywhere;margin:0}.dialog-body{padding:0 22px 16px}.dialog-body>p{color:var(--muted);font-size:.91rem;line-height:1.65;margin:8px 0 15px}.dialog-body img{width:100%;max-height:170px;object-fit:cover;border-radius:6px;border:1px solid #746c55}.dialog-body form{margin-top:18px}.dialog-body label{display:block;font-size:.78rem;color:var(--muted);margin-bottom:7px}.input-action{display:flex;gap:8px}.input-action input,.input-action select{min-width:0;flex:1;min-height:42px;padding:8px 10px;border:1px solid #6b7581;border-radius:6px;background:#0f161e;color:var(--ink)}.dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:0 22px 20px}.dialog-footer a{font-size:.85rem}.dialog-footer button{font-size:.77rem}.connect-invitation{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(82px,env(safe-area-inset-bottom));z-index:20;width:min(350px,calc(100vw - 28px));max-height:calc(100dvh - 100px);overflow:auto;padding:22px;border:1px solid #bba46c;border-radius:12px;background:#1b252ff5;color:var(--ink);box-shadow:0 10px 55px #0009}.connect-invitation>#dismiss-invitation{position:absolute;right:7px;top:7px;width:36px;height:36px;min-height:36px;background:transparent;border:0}.connect-invitation .eyebrow{padding-right:25px}.connect-invitation h2{font:400 26px/1.2 Georgia,serif;margin:0 20px 10px 0}.connect-invitation p:not(.eyebrow){font-size:.88rem;line-height:1.65;color:var(--muted);margin:0 0 18px}.invite-actions{display:flex;align-items:center;gap:12px}.connect-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 20px;border-radius:6px;background:var(--gold);font-size:.9rem;font-weight:650;text-decoration:none;color:#11171d}
@media(max-width:700px){.demo-header{grid-template-columns:1fr auto;min-height:65px;padding:10px 14px;gap:12px}.brand span{display:none}.brand{position:absolute;left:14px}.demo-title{margin-left:39px;gap:8px;flex-wrap:wrap}.demo-title h1{font-size:22px}.demo-label{font-size:.58rem}.demo-toolbar{padding:12px 14px 0;gap:9px}.view-switch button{padding-inline:13px}.create-actions{gap:0}.secondary-create{display:none}.demo-toolbar>.quiet-button{padding-inline:5px;font-size:.72rem}.demo-intro{margin:10px 14px 0;font-size:.73rem;line-height:1.5}.demo-intro>span{display:none}.demo-footer{padding:8px 14px max(10px,env(safe-area-inset-bottom));gap:12px}.demo-footer p{font-size:.65rem;max-width:180px}.keyboard-instructions{display:none!important}.pointer-instructions{font-size:0}.pointer-instructions::after{content:"Drag cards to move them. Tap to open.";font-size:.7rem}.camera-tools{gap:5px}.camera-tools .icon-button{width:36px;height:40px;min-height:40px}.fit-button{padding-inline:9px;min-height:40px}.demo-files{padding:18px 14px}.demo-files ul{grid-template-columns:1fr}.dialog-heading{padding:18px 17px 10px}.dialog-body{padding-inline:17px}.dialog-footer{padding-inline:17px}.connect-invitation{right:14px;bottom:80px}}
@media(max-height:500px){.demo-header{min-height:49px;padding-block:5px}.demo-header .icon-button{height:36px;min-height:36px;width:36px}.demo-toolbar{padding-top:7px}.demo-toolbar button{min-height:34px;padding-block:4px}.demo-intro{margin-top:5px;font-size:.7rem}.demo-footer{padding-block:5px}.demo-footer p{display:none}.demo-footer{justify-content:center}.camera-tools .icon-button{height:32px;min-height:32px;width:36px}.fit-button{min-height:32px}.connect-invitation{bottom:12px;max-height:calc(100dvh - 24px);padding:16px}.connect-invitation h2{font-size:22px}.connect-invitation p:not(.eyebrow){margin-bottom:10px}.connect-invitation .eyebrow{margin-bottom:5px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.create-actions{position:relative;display:block;flex:none}.create-actions summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:40px;padding:7px 13px;border:1px solid #64707b;border-radius:7px;background:#202832;cursor:pointer;list-style:none}.create-actions summary::-webkit-details-marker{display:none}.create-actions[open] summary{border-color:var(--gold)}.create-menu-items{position:absolute;z-index:15;top:calc(100% + 7px);left:0;min-width:175px;padding:7px;display:grid;gap:5px;border:1px solid #a49160;border-radius:8px;background:#19232ef5;box-shadow:0 10px 30px #0007}.create-menu-items button{text-align:left;white-space:nowrap;border-color:transparent;background:transparent}.create-menu-items button:hover{background:#303c48}.create-actions summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-height:500px){.create-actions summary{min-height:34px;padding-block:4px}}

.universe-card:is([data-kind="ai"],[data-kind="assistant"]){background:#b49b64}.universe-card:is([data-kind="ai"],[data-kind="assistant"])::before{content:"";position:absolute;inset:2px;clip-path:inherit;background:linear-gradient(135deg,#26313d,#141b23)}.universe-card .card-symbol{position:relative;z-index:1}.universe-card[data-kind="assistant"] .card-photo{inset:2px;width:calc(100% - 4px);height:calc(100% - 4px);clip-path:inherit}
