*,:before,:after{box-sizing:border-box}html,body{background:var(--wb-surface-page);height:100%;color:var(--wb-content-primary);font-family:var(--font-space-grotesk), sans-serif;margin:0;padding:0;overflow:hidden}.home-pixel-field{pointer-events:none;z-index:0;position:fixed;inset:0}.home-nav{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;padding:20px 28px;display:flex;position:fixed;top:0;left:0;right:0}.home-nav>*{pointer-events:auto}.nav-logo{min-height:24px;color:var(--wb-content-primary);align-items:center;gap:10px;text-decoration:none;display:flex}.nav-logo svg{width:115px;height:auto;display:block}.nav-avatar{background:var(--wb-accent-solid);width:44px;height:44px;font-size:var(--wb-text-base);font-weight:700;font-family:var(--font-ibm-plex-mono), monospace;color:var(--wb-accent-on-solid);cursor:pointer;outline-offset:7px;box-shadow:0 0 0 3px var(--wb-surface-page), 0 0 0 5px color-mix(in srgb, var(--wb-accent-solid) 45%, transparent), 0 8px 24px #00000038;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:transform .14s,box-shadow .14s;display:flex}.nav-avatar:hover,.nav-avatar[aria-expanded=true]{box-shadow:0 0 0 3px var(--wb-surface-page), 0 0 0 5px var(--wb-accent-solid), 0 12px 28px #00000047;transform:translateY(-1px)}.nav-avatar:focus-visible{outline:var(--wb-focus-ring-width) solid var(--wb-focus-ring)}.home-main{z-index:1;flex-direction:column;align-items:center;min-height:100dvh;padding:136px 24px 64px;display:flex;position:relative}.home-hero{text-align:center;flex-direction:column;align-items:center;gap:16px;margin-bottom:52px;animation:.5s both slideUp;display:flex}.home-heading{font-size:var(--wb-text-2xl);font-weight:700;line-height:var(--wb-leading-2xl);min-height:var(--wb-leading-2xl);margin:0}.home-heading.fade-out{animation:.35s forwards hFadeOut}.home-heading.fade-in{animation:.45s forwards hFadeIn}@keyframes hFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@keyframes hFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.home-subheading{font-size:var(--wb-text-md);color:var(--wb-content-tertiary);margin:0}.home-cta{border-radius:var(--wb-r-pill);background:var(--wb-accent-solid);color:var(--wb-accent-on-solid);border:1px solid var(--wb-accent-solid);font:700 var(--wb-text-md) var(--font-space-grotesk), sans-serif;cursor:pointer;align-items:center;gap:10px;margin-top:8px;padding:14px 28px;transition:background .14s,transform .12s,box-shadow .14s;display:inline-flex}.home-cta:hover{transform:translateY(-2px);box-shadow:0 8px 32px #5ed0b82e}.home-cta svg{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;flex-shrink:0;width:18px;height:18px}.home-projects{width:min(560px,100%);animation:.5s 80ms both slideUp}.home-empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:8px 24px 24px;display:flex}.home-empty-icon{border-radius:var(--wb-r-lg);background:#3edcac14;border:1.5px solid #3edcac2e;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:8px;display:flex}.home-empty-icon svg{fill:none;width:26px;height:26px;stroke:var(--wb-content-tertiary);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.home-empty-title{font-size:var(--wb-text-md);margin:0;font-weight:700}.home-empty-copy{font-size:var(--wb-text-base);color:var(--wb-content-tertiary);max-width:300px;margin:0;line-height:1.6}.home-proj-list{flex-direction:column;gap:8px;display:flex}.home-proj-item{border-radius:var(--wb-r-lg);background:color-mix(in srgb, var(--wb-surface-panel) 90%, transparent);border:1px solid var(--wb-border-subtle);cursor:pointer;text-align:left;width:100%;color:var(--wb-content-primary);align-items:center;gap:14px;padding:14px 16px;transition:background .12s,transform .1s;display:flex;position:relative}.home-proj-opener{color:inherit;font:inherit;text-align:left;cursor:inherit;background:0 0;border:0;padding:0}.home-proj-opener:after{content:"";border-radius:var(--wb-r-lg);position:absolute;inset:-1px}.home-proj-opener:focus-visible{outline:none}.home-proj-opener:focus-visible:after{outline:var(--wb-focus-ring-width) solid var(--wb-focus-ring);outline-offset:var(--wb-focus-ring-offset)}.home-proj-delete{z-index:1;position:relative}.home-proj-delete:focus-visible{opacity:1}.home-proj-item:hover{background:color-mix(in srgb, var(--wb-accent-solid) 7%, transparent);transform:translate(3px)}.home-proj-info{flex:auto;gap:2px;min-width:0;display:grid}.home-proj-name{font-weight:700;font-size:var(--wb-text-md);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.home-proj-meta{font-size:var(--wb-text-sm);color:var(--wb-content-tertiary)}.home-proj-item{cursor:pointer}.home-proj-arrow{color:var(--wb-content-tertiary);flex-shrink:0;align-items:center;display:flex}.home-proj-arrow svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.home-proj-delete{border-radius:var(--wb-r-xs);width:28px;height:28px;color:var(--wb-content-tertiary);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .12s,background .12s,color .12s;display:flex}.home-proj-item:hover .home-proj-delete{opacity:1}.home-proj-delete:hover{background:var(--wb-danger-subtle);color:var(--wb-danger-content)}.home-proj-delete svg{width:15px;height:15px}.home-view-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:12px 0 0;display:flex}.home-view-all{border-radius:var(--wb-r-md);border:1px dashed var(--wb-border-subtle);color:var(--wb-content-tertiary);font-size:var(--wb-text-base);justify-content:center;align-items:center;gap:6px;padding:10px 16px;text-decoration:none;transition:color .14s,border-color .14s;display:flex}.home-view-all:hover{color:var(--wb-accent-content);border-color:var(--wb-accent-solid)}.home-view-all svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.home-view-archived{border-radius:var(--wb-r-md);color:var(--wb-content-tertiary);font-size:var(--wb-text-base);justify-content:center;align-items:center;gap:6px;padding:10px 16px;text-decoration:none;transition:color .14s;display:flex}.home-view-archived:hover{color:var(--wb-accent-content)}.home-view-archived svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.modal-scrim{z-index:50;-webkit-backdrop-filter:blur(var(--wb-blur-sm));backdrop-filter:blur(var(--wb-blur-sm));opacity:0;pointer-events:none;background:#000000d1;place-items:center;padding:24px;transition:opacity .22s;display:grid;position:fixed;inset:0}.modal-scrim.open{opacity:1;pointer-events:auto}.modal-panel{background:var(--wb-surface-panel);border:1.5px solid var(--wb-border-subtle);border-radius:var(--wb-r-xl);gap:20px;width:min(420px,100%);padding:28px;transition:transform .22s;display:grid;transform:translateY(12px);box-shadow:0 24px 64px #00000080}.modal-scrim.open .modal-panel{transform:translateY(0)}.modal-title{font-size:var(--wb-text-lg);margin:0;font-weight:700}.modal-subtitle{font-size:var(--wb-text-base);color:var(--wb-content-tertiary);margin:0}.modal-error{font-size:var(--wb-text-base);color:var(--wb-danger-content);margin:0}.modal-field{gap:8px;display:grid}.modal-label{font-size:var(--wb-text-sm);color:var(--wb-content-tertiary);text-transform:uppercase;letter-spacing:.08em}.modal-input{border-radius:var(--wb-r-md);background:var(--wb-surface-page);width:100%;color:var(--wb-content-primary);font:inherit;font-size:var(--wb-text-md);border:1.5px solid #3edcac38;padding:12px 16px;transition:border-color .14s}.modal-input:focus{border-color:var(--wb-accent-solid)}.modal-input::placeholder{color:#ffffff40}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.modal-btn{border-radius:var(--wb-r-pill);font:600 var(--wb-text-base) var(--font-space-grotesk), sans-serif;cursor:pointer;border:none;padding:10px 20px;transition:background .12s,transform .1s}.modal-btn:hover{transform:translateY(-1px)}.modal-btn-cancel{color:var(--wb-content-tertiary);border:1px solid var(--wb-border-subtle);background:#ffffff14}.modal-btn-cancel:hover{color:var(--wb-content-primary)}.modal-btn-create{background:var(--wb-accent-solid);color:var(--wb-accent-on-solid);border:1px solid var(--wb-accent-solid)}.modal-btn-create:disabled{background:var(--wb-surface-sunken);color:var(--wb-content-tertiary);border-color:var(--wb-border-subtle);cursor:not-allowed;transform:none}.modal-btn-delete{background:var(--wb-danger-solid);color:var(--wb-danger-on-solid);border:1px solid var(--wb-danger-solid)}@keyframes slideUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes pageExit{0%{opacity:1}to{opacity:0}}@keyframes home-zoom-enter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}body.home-zoom-enter{animation:.42s cubic-bezier(.16,1,.3,1) forwards home-zoom-enter}.home-proj-item[data-disabled]{cursor:default}.home-proj-item[data-disabled]:not(.is-opening){opacity:.55}.home-proj-item.is-opening{border-color:var(--wb-accent-solid)}
