:root{--hub-ground:#eef1f6;--hub-surface:#fff;--hub-ink:#14263b;--hub-ink-soft:#55667c;--hub-line:#d5dbe6;--hub-accent:#f2a922;--hub-accent-ink:#14263b;--hub-good:#2f8f6b;--hub-danger:#b3261e;--hub-radius:14px;--hub-display:"Familjen Grotesk", "Trebuchet MS", system-ui, sans-serif;--hub-body:"Atkinson Hyperlegible", system-ui, sans-serif;--hub-shadow:0 1px 2px #14263b0f, 0 8px 24px #14263b12}@media (prefers-color-scheme:dark){:root{--hub-ground:#0f1a28;--hub-surface:#18283a;--hub-ink:#eaf0f8;--hub-ink-soft:#9db0c6;--hub-line:#2a3d54;--hub-accent-ink:#14263b;--hub-good:#6cc5a0;--hub-danger:#ff8a80;--hub-shadow:0 1px 2px #0000004d, 0 8px 24px #00000040}}html.hub{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;background:var(--hub-ground);color:var(--hub-ink);font:17px/1.45 var(--hub-body);-webkit-text-size-adjust:100%}@media (prefers-color-scheme:dark){html.hub{--lightningcss-light: ;--lightningcss-dark:initial}}html.hub *,html.hub :before,html.hub :after{box-sizing:border-box}html.hub body{min-height:100dvh;margin:0}html.hub h1,html.hub h2,html.hub h3{font-family:var(--hub-display);letter-spacing:-.01em;margin:0 0 .5em;line-height:1.15}html.hub h1{font-size:clamp(1.9rem,6vw,2.6rem);font-weight:700}html.hub h2{font-size:1.25rem;font-weight:600}html.hub h3{text-transform:uppercase;letter-spacing:.08em;color:var(--hub-ink-soft);margin-top:1.2em;font-size:.8rem;font-weight:600}html.hub p{margin:0 0 .8em}html.hub a{color:inherit}html.hub small{color:var(--hub-ink-soft);font-size:.85rem;font-weight:400}html.hub :focus-visible{outline:3px solid var(--hub-accent);outline-offset:2px;border-radius:6px}html.hub .hub-shell{min-height:100dvh}html.hub .hub-top{padding:calc(12px + env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 12px max(16px, env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:12px;max-width:960px;margin:0 auto;display:flex}html.hub .hub-brand{font:700 1.1rem var(--hub-display);align-items:center;gap:8px;text-decoration:none;display:inline-flex}html.hub .hub-top-nav{gap:6px;display:flex}html.hub .hub-top-nav a,html.hub .hub-top-app .hub-brand{color:var(--hub-ink-soft);border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:.95rem;text-decoration:none;display:inline-flex}html.hub .hub-top-nav a:hover,html.hub .hub-top-app .hub-brand:hover{background:var(--hub-surface);color:var(--hub-ink)}html.hub .hub-top-app .hub-brand{margin-left:-12px;font-weight:600}html.hub .hub-top-title{font:600 1rem var(--hub-display);color:var(--hub-ink-soft)}html.hub .hub-main{max-width:960px;padding:12px 16px calc(48px + env(safe-area-inset-bottom));margin:0 auto}html.hub .hub-narrow{max-width:560px}html.hub .hub-hello{margin:12px 0 24px}html.hub .hub-section{margin-top:36px}html.hub .hub-muted{color:var(--hub-ink-soft)}html.hub .hub-error{color:var(--hub-danger);font-weight:700}html.hub .hub-loading{text-align:center;color:var(--hub-ink-soft);padding:30dvh 16px}html.hub .hub-empty{text-align:center;padding-top:18dvh}html.hub .hub-doors{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px 16px;display:grid}html.hub .hub-doors-small{grid-template-columns:repeat(auto-fill,minmax(112px,1fr))}html.hub .hub-door{aspect-ratio:3/4.3;text-align:center;background:var(--door);color:var(--door-ink);border-radius:50% 50% var(--hub-radius) var(--hub-radius) / 42% 42% var(--hub-radius) var(--hub-radius);box-shadow:inset 0 0 0 5px color-mix(in srgb, var(--door-ink) 14%, transparent), var(--hub-shadow);transform-origin:0;flex-direction:column;justify-content:space-between;align-items:center;padding:16% 10px 12px;text-decoration:none;transition:transform .25s,box-shadow .25s;display:flex;position:relative}html.hub .hub-door:after{content:"";background:var(--door-accent);border-radius:50%;width:11px;height:11px;position:absolute;top:58%;right:13%;box-shadow:0 1px 2px #00000059}html.hub .hub-door:hover,html.hub .hub-door:focus-visible{transform:perspective(700px)rotateY(-9deg)}html.hub .hub-door-window{aspect-ratio:1;background:color-mix(in srgb, var(--door-ink) 12%, transparent);border-radius:50%;place-items:center;width:54%;display:grid}html.hub .hub-door-window img{width:68%;height:auto}html.hub .hub-door-plate{flex-direction:column;gap:2px;padding:0 4px;display:flex}html.hub .hub-door-plate strong{font:700 1.05rem/1.15 var(--hub-display)}html.hub .hub-door-plate span{opacity:.8;font-size:.78rem;line-height:1.25}html.hub .hub-door-plate small{color:inherit;opacity:.8;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}html.hub .hub-doors-small .hub-door-plate span{display:none}html.hub .hub-doors-small .hub-door-plate strong{font-size:.9rem}html.hub .hub-card{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:var(--hub-radius);box-shadow:var(--hub-shadow);margin:0 0 16px;padding:18px}html.hub .hub-row{justify-content:space-between;align-items:center;gap:12px;display:flex}html.hub .hub-row h2{margin:0}html.hub .hub-btn{background:var(--hub-accent);min-height:46px;color:var(--hub-accent-ink);font:700 1rem var(--hub-body);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;text-decoration:none;display:inline-flex}html.hub .hub-btn:hover{filter:brightness(1.05)}html.hub .hub-btn:disabled{opacity:.5;cursor:default;filter:none}html.hub .hub-btn-quiet{color:var(--hub-ink);box-shadow:inset 0 0 0 2px var(--hub-line);background:0 0}html.hub .hub-btn-danger{background:var(--hub-danger);color:#fff}html.hub .hub-btn-block{width:100%}html.hub .hub-icon-btn{width:40px;height:40px;color:var(--hub-ink-soft);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}html.hub .hub-icon-btn:hover{background:var(--hub-ground);color:var(--hub-danger)}html.hub .hub-field{margin:0 0 14px;display:block}html.hub .hub-field>span{margin-bottom:5px;font-size:.92rem;font-weight:700;display:block}html.hub .hub-field>small{margin-top:4px;display:block}html.hub .hub-input{border:2px solid var(--hub-line);background:var(--hub-surface);width:100%;min-height:46px;color:var(--hub-ink);font:inherit;border-radius:10px;padding:10px 12px}html.hub textarea.hub-input{resize:vertical;min-height:96px}html.hub .hub-input:focus{border-color:var(--hub-accent);outline:none}html.hub .hub-select{width:auto}html.hub .hub-checks{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}html.hub .hub-checks label,html.hub .hub-check{background:var(--hub-ground);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:.95rem;display:inline-flex}html.hub .hub-checks input,html.hub .hub-check input{width:18px;height:18px;accent-color:var(--hub-good)}html.hub .hub-list{margin:0 0 12px;padding:0;list-style:none}html.hub .hub-list li{border-bottom:1px solid var(--hub-line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}html.hub .hub-list li:last-child{border-bottom:0}html.hub .hub-list li>span{flex-direction:column;min-width:0;display:flex}html.hub .hub-link{gap:8px;margin-top:12px;display:grid}html.hub .hub-share{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));align-items:center;gap:8px;display:grid}html.hub .hub-chip{background:var(--hub-ground);border-radius:999px;padding:3px 10px;font-size:.82rem;font-weight:700;display:inline-block}html.hub .hub-auth{text-align:center;max-width:420px;margin:0 auto;padding:14dvh 20px 40px}html.hub .hub-auth-logo{margin-bottom:12px}html.hub .hub-auth .hub-btn{margin:12px 0 18px}html.hub .hub-sheet-backdrop{z-index:50;background:#0a142080;justify-content:center;align-items:flex-end;animation:.15s hub-fade;display:flex;position:fixed;inset:0}html.hub .hub-sheet{width:min(100%,560px);max-height:90dvh;padding:22px 18px calc(22px + env(safe-area-inset-bottom));background:var(--hub-surface);border-radius:22px 22px 0 0;animation:.2s hub-rise;overflow:auto}@media (width>=640px){html.hub .hub-sheet-backdrop{align-items:center}html.hub .hub-sheet{border-radius:22px}}html.hub .hub-toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:60;background:var(--hub-ink);color:var(--hub-ground);box-shadow:var(--hub-shadow);border-radius:999px;max-width:calc(100vw - 32px);padding:10px 18px;font-weight:700;animation:.2s hub-rise;position:fixed;transform:translate(-50%)}html.hub .hub-photo-pick{aspect-ratio:4/3;cursor:pointer;border:2px dashed var(--hub-line);border-radius:var(--hub-radius);background:var(--hub-ground);color:var(--hub-ink-soft);place-items:center;display:grid;position:relative;overflow:hidden}html.hub .hub-photo-pick img{object-fit:cover;width:100%;height:100%}html.hub .hub-photo-pick .prompt{flex-direction:column;align-items:center;gap:6px;display:flex}html.hub .hub-photo-pick .busy{color:#fff;text-align:center;background:#0000008c;padding:6px;position:absolute;inset:auto 0 0}html.hub .hub-photo-pick input{opacity:0;cursor:pointer;position:absolute;inset:0}@keyframes hub-fade{0%{opacity:0}}@keyframes hub-rise{0%{opacity:0;translate:0 12px}}.hub-banner{z-index:40;box-sizing:border-box;padding:calc(6px + env(safe-area-inset-top)) 12px 6px;color:#fff;background:#14263b;align-items:center;gap:10px;font:700 14px/1.2 system-ui,sans-serif;display:flex;position:sticky;top:0}.hub-banner svg{flex:none;width:18px;height:18px}.hub-banner-home{color:#fff;background:#ffffff1f;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.hub-banner-text{flex:1;align-items:center;gap:6px;min-width:0;display:inline-flex}.hub-banner-text em{color:#14263b;white-space:nowrap;background:#f2a922;border-radius:999px;padding:2px 8px;font-style:normal;font-weight:400}.hub-banner-btn{color:#fff;font:inherit;cursor:pointer;background:#ffffff24;border:0;border-radius:999px;padding:7px 12px}.hub-banner-btn:hover{background:#ffffff3d}.hub-home{color:inherit;align-items:center;gap:6px;font-weight:700;text-decoration:none;display:inline-flex}.hub-home svg{width:20px;height:20px}@media (prefers-reduced-motion:reduce){html.hub .hub-door{transition:none}html.hub .hub-door:hover,html.hub .hub-door:focus-visible{transform:none}html.hub .hub-sheet,html.hub .hub-sheet-backdrop,html.hub .hub-toast{animation:none}}
