@import"https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Nunito:wght@400;600;700&display=swap";:root{--pk-bg: #e8eef5;--pk-bg-sub: #dbe4f0;--pk-bg-card: #ffffff;--pk-text: #1a2b3c;--pk-text-muted: #64748b;--pk-border: #94a3b8;--pk-border-light: #cbd5e1;--pk-accent: #2563eb;--pk-accent-hover: #1d4ed8;--pk-red: #e3350d;--pk-red-hover: #c22d0b;--pk-danger: #e3350d;--pk-yellow: #facc15;--pk-green: #22c55e;--pk-shadow: rgba(30, 41, 59, .12);--pk-shadow-strong: rgba(30, 41, 59, .2);font-family:Nunito,sans-serif;line-height:1.6;font-weight:400;color:var(--pk-text);background-color:var(--pk-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-pixel{font-family:Fredoka,sans-serif}body{margin:0;min-width:280px;min-height:100vh;min-height:-webkit-fill-available;display:flex;align-items:center;justify-content:center;padding:max(.5rem,env(safe-area-inset-top)) max(.5rem,env(safe-area-inset-right)) max(.5rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));box-sizing:border-box;-webkit-tap-highlight-color:transparent}@media(min-width:400px){body{padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left))}}#root{width:100%;max-width:480px;min-height:0}a{color:var(--pk-accent);font-weight:600;text-decoration:none}a:hover{color:var(--pk-accent-hover);text-decoration:underline}h1,h2{font-family:Fredoka,sans-serif;font-size:clamp(.9rem,4vw,1.15rem);line-height:1.4;letter-spacing:.02em}h1{font-size:clamp(1rem,5vw,1.35rem)}button{font-family:Nunito,Fredoka,sans-serif;cursor:pointer;border:2px solid var(--pk-border);background:var(--pk-bg-card);color:var(--pk-text);border-radius:12px;box-shadow:0 2px 4px var(--pk-shadow);transition:transform .15s ease,box-shadow .15s ease;min-height:44px;touch-action:manipulation}button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px var(--pk-shadow-strong)}button:active:not(:disabled){transform:translateY(0)}button:focus-visible{outline:3px solid var(--pk-yellow);outline-offset:2px}input,select{font-family:Nunito,sans-serif;min-height:44px;font-size:16px}@media(max-width:360px){:root{font-size:15px}}.card{padding:.75rem;width:100%;box-sizing:border-box}@media(min-width:400px){.card{padding:1.5rem}}.card-inner{background:var(--pk-bg-card);border:3px solid var(--pk-border);border-radius:20px;box-shadow:0 4px 12px var(--pk-shadow);padding:1rem;position:relative}@media(min-width:400px){.card-inner{padding:1.5rem}}.login-wrap{margin-top:1rem}.login-wrap iframe,.login-wrap div[role=button]{margin:0 auto}.login-wrap [style*=background]{border-radius:12px!important;border:2px solid var(--pk-border)!important;box-shadow:0 2px 4px var(--pk-shadow)!important;font-family:Nunito,Fredoka,sans-serif!important}.budget-states{--budget-progress: 100%;text-align:left;padding:1rem;margin-bottom:.75rem;max-width:100%;width:100%;margin-left:auto;margin-right:auto;background:var(--pk-bg-card);border:2px solid var(--pk-border);border-radius:16px;box-shadow:0 2px 8px var(--pk-shadow);position:relative;overflow:visible;box-sizing:border-box}@media(min-width:400px){.budget-states{padding:1.25rem 1.5rem;margin-bottom:1rem;max-width:360px}}.budget-states--damage{animation:budget-states-shake .5s ease-out}.budget-states--damage .budget-states__damage-flash{animation:budget-states-flash .5s ease-out}@keyframes budget-states-shake{0%,to{transform:translate(0)}10%{transform:translate(-4px)}20%{transform:translate(4px)}30%{transform:translate(-3px)}40%{transform:translate(3px)}50%{transform:translate(-2px)}60%{transform:translate(2px)}70%{transform:translate(-1px)}80%{transform:translate(1px)}}.budget-states__damage-flash{position:absolute;inset:0;pointer-events:none;background:transparent;border-radius:0;opacity:0}@keyframes budget-states-flash{0%{background:#b8545066;opacity:1}30%{background:#b8545040;opacity:.8}to{background:transparent;opacity:0}}.budget-states__floating-damage{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:"Press Start 2P",cursive;font-size:clamp(.55rem,2.5vw,.7rem);color:var(--pk-red);text-shadow:1px 1px 0 var(--pk-text);animation:budget-states-float-damage 1s ease-out forwards;pointer-events:none;z-index:2}@keyframes budget-states-float-damage{0%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}50%{opacity:1;transform:translate(-50%,-60%) scale(1.1)}to{opacity:0;transform:translate(-50%,-80%) scale(1)}}.budget-states__remaining--damage{color:var(--pk-red);animation:budget-states-number-flash .15s ease-out 3}@keyframes budget-states-number-flash{0%,to{color:var(--pk-red)}50%{color:var(--pk-text)}}.budget-states:before{content:"";position:absolute;inset:2px;border-radius:14px;border:1px solid var(--pk-border-light);pointer-events:none}.budget-states__name{margin:0 0 .5rem;font-size:clamp(.8rem,2.2vw,1rem);font-family:Fredoka,sans-serif;font-weight:600;color:var(--pk-text)}@media(min-width:400px){.budget-states__name{margin:0 0 .75rem}}.budget-states__amounts{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.budget-states__remaining{font-size:clamp(.95rem,2.8vw,1.1rem);font-weight:600;color:var(--pk-text);transition:color .1s;word-break:break-all}.budget-states__max{font-size:clamp(.75rem,2.2vw,.85rem);color:var(--pk-text-muted)}.budget-states__bar-wrap{height:12px;border-radius:6px;border:2px solid var(--pk-border);background:var(--pk-bg-sub);overflow:hidden}.budget-states__bar{height:100%;width:var(--budget-progress);border-radius:4px;background:#4ade80;transition:width .3s ease,background .2s ease}.budget-states__bar--mid{background:#facc15}.budget-states__bar--low{background:#ef4444}.footer{margin-top:1.5rem;padding:1rem 0;border-top:2px solid var(--pk-border)}@media(min-width:400px){.footer{margin-top:2rem;padding:1.25rem 0}}.footer__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;align-items:stretch;max-width:100%;margin:0 auto}@media(min-width:400px){.footer__actions{gap:.75rem;max-width:480px}}.footer__btn{flex:1;min-width:0;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem .5rem;font-family:Nunito,Fredoka,sans-serif;font-weight:700;font-size:clamp(.6rem,2vw,.75rem);border-radius:12px;border:2px solid var(--pk-border);background:var(--pk-bg-card);color:var(--pk-text);box-shadow:0 2px 4px var(--pk-shadow);touch-action:manipulation}@media(min-width:400px){.footer__btn{min-width:140px;padding:.75rem 1rem}}.footer__btn:hover{background:var(--pk-bg-sub);border-color:var(--pk-accent);color:var(--pk-accent)}.footer__btn-icon{font-size:1em;line-height:1}@media(max-width:360px){.footer__actions{flex-direction:column}.footer__btn{min-width:100%;width:100%}}.pixel-char{display:flex;align-items:flex-end;gap:.5rem;justify-content:center;margin:0 auto .75rem;flex-wrap:wrap}@media(min-width:400px){.pixel-char{gap:.75rem;margin:0 auto 1rem;flex-wrap:nowrap}}.pixel-char--left{justify-content:flex-start}.pixel-char--left .pixel-char__dialog:before,.pixel-char--left .pixel-char__dialog:after{left:-8px;right:auto;border-right-color:var(--pk-border);border-left-color:transparent}.pixel-char--left .pixel-char__dialog:after{left:-4px;border-right-color:var(--pk-bg-card);border-left-color:transparent}.pixel-char--right{justify-content:flex-end}.pixel-char--small .pixel-char__sprite-wrap{width:40px;height:55px}.pixel-char--medium .pixel-char__sprite-wrap{width:52px;height:71px}.pixel-char--large .pixel-char__sprite-wrap{width:72px;height:99px}@media(min-width:400px){.pixel-char--small .pixel-char__sprite-wrap{width:48px;height:66px}.pixel-char--medium .pixel-char__sprite-wrap{width:64px;height:88px}.pixel-char--large .pixel-char__sprite-wrap{width:96px;height:132px}}.pixel-char__sprite-wrap{flex-shrink:0;image-rendering:pixelated;image-rendering:crisp-edges}.pixel-char__sprite{width:100%;height:100%;display:block;filter:drop-shadow(2px 2px 0 var(--pk-shadow))}.pixel-char__cap{fill:#e3350d}.pixel-char__visor{fill:#fff}.pixel-char__face{fill:#ffdbac}.pixel-char__eye--left,.pixel-char__eye--right{fill:var(--pk-text)}.pixel-char__eye-closed--left,.pixel-char__eye-closed--right{fill:var(--pk-text);opacity:0}.pixel-char__sprite--blink .pixel-char__eye--left,.pixel-char__sprite--blink .pixel-char__eye--right{opacity:0}.pixel-char__sprite--blink .pixel-char__eye-closed--left,.pixel-char__sprite--blink .pixel-char__eye-closed--right{opacity:1}@keyframes blink{0%,45%,55%,to{opacity:1}48%,52%{opacity:0}}.pixel-char__eye--left,.pixel-char__eye--right{animation:blink 4s ease-in-out infinite}.pixel-char__jacket{fill:#2563eb}.pixel-char__badge{fill:#facc15}.pixel-char__leg{fill:#1e40af}@keyframes pixel-char-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.pixel-char__sprite-wrap{animation:pixel-char-bounce 2s ease-in-out infinite}.pixel-char__dialog{flex:1 1 100%;min-width:0;max-width:100%;padding:.6rem .75rem;background:var(--pk-bg-card);border:2px solid var(--pk-border);border-radius:12px;box-shadow:0 2px 8px var(--pk-shadow);position:relative}@media(min-width:400px){.pixel-char__dialog{flex:1 1 auto;max-width:280px;padding:.75rem 1rem}}.pixel-char__dialog:before{content:"";position:absolute;left:-8px;bottom:12px;border:6px solid transparent;border-right-color:var(--pk-border);border-left:0}.pixel-char__dialog:after{content:"";position:absolute;left:-4px;bottom:14px;border:5px solid transparent;border-right-color:var(--pk-bg-card);border-left:0}.pixel-char--right .pixel-char__dialog:before{left:auto;right:-8px;border-right-color:transparent;border-left-color:var(--pk-border)}.pixel-char--right .pixel-char__dialog:after{left:auto;right:-4px;border-right-color:transparent;border-left-color:var(--pk-bg-card)}.pixel-char__message{font-family:Nunito,sans-serif;font-size:clamp(.8rem,2.2vw,.9rem);line-height:1.6;color:var(--pk-text);display:block}.pixel-char__message.typewriter{overflow:hidden;white-space:nowrap;border-right:2px solid var(--pk-text);animation:typewriter-cursor .6s step-end infinite}@keyframes typewriter-cursor{50%{border-color:transparent}}.purchase-modal__backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:max(.5rem,env(safe-area-inset-top)) max(.5rem,env(safe-area-inset-right)) max(.5rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));background:#2c181099;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow-y:auto;-webkit-overflow-scrolling:touch}@media(min-width:400px){.purchase-modal__backdrop{padding:1rem}}.purchase-modal__dialog{max-width:min(400px,calc(100vw - 1rem));width:100%;max-height:min(90vh,calc(100dvh - 2rem));overflow:auto;margin:auto;background:var(--pk-bg-card);color:var(--pk-text);border:2px solid var(--pk-border);border-radius:20px;box-shadow:0 8px 24px var(--pk-shadow-strong);position:relative;-webkit-overflow-scrolling:touch}.purchase-modal__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:2px solid var(--pk-border)}@media(min-width:400px){.purchase-modal__header{padding:1rem 1.25rem}}.purchase-modal__title{margin:0;font-size:clamp(.85rem,2.5vw,1rem);font-family:Fredoka,sans-serif;font-weight:600}.purchase-modal__close{width:2.5rem;height:2.5rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:0;font-size:1.25rem;line-height:1;border:2px solid var(--pk-border);border-radius:12px;background:var(--pk-bg-sub);color:var(--pk-text);font-family:Nunito,sans-serif;font-weight:700;flex-shrink:0;touch-action:manipulation}.purchase-modal__close:hover{background:var(--pk-danger);color:var(--pk-bg-card);border-color:var(--pk-danger)}.purchase-modal__body{padding:1rem}@media(min-width:400px){.purchase-modal__body{padding:1.25rem}}.purchase-modal__form{display:flex;flex-direction:column;gap:1.25rem;margin-top:.5rem}.purchase-modal .pixel-char{margin-bottom:.5rem}.purchase-modal__field{display:flex;flex-direction:column;gap:.5rem}.purchase-modal__label{font-size:.85rem;font-weight:500;color:var(--pk-text-muted)}.purchase-modal__select,.purchase-modal__input{padding:.75rem;min-height:44px;font-size:16px;border:2px solid var(--pk-border);border-radius:12px;background:var(--pk-bg);color:var(--pk-text);font-family:Nunito,sans-serif;box-sizing:border-box}.purchase-modal__select:focus,.purchase-modal__input:focus{outline:none;border-color:var(--pk-accent);box-shadow:0 0 0 2px var(--pk-bg-card)}.purchase-modal__input::-webkit-outer-spin-button,.purchase-modal__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.purchase-modal__input[type=number]{-moz-appearance:textfield}.purchase-modal__submit{margin-top:.5rem;padding:.75rem 1rem;min-height:48px;font-size:clamp(.9rem,2.2vw,1rem);font-family:Nunito,Fredoka,sans-serif;font-weight:700;color:var(--pk-bg-card);background:var(--pk-accent);border:2px solid var(--pk-border);border-radius:12px;box-shadow:0 2px 6px var(--pk-shadow);touch-action:manipulation}.purchase-modal__submit:hover:not(:disabled){background:var(--pk-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--pk-shadow-strong)}.purchase-modal__submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.purchase-modal__submit--secondary{background:var(--pk-bg-sub);color:var(--pk-text)}.purchase-modal__submit--secondary:hover:not(:disabled){background:var(--pk-border-light);transform:translateY(-2px)}.purchase-modal__confirm{display:flex;flex-direction:column;gap:1.25rem;margin-top:.5rem}.purchase-modal__confirm-message{margin:0;line-height:1.7;color:var(--pk-text)}.purchase-modal__confirm-message strong{font-weight:600;color:var(--pk-accent)}.purchase-modal__confirm-actions{display:flex;gap:.75rem;margin-top:.5rem}.purchase-modal__confirm-actions .purchase-modal__submit{flex:1;margin-top:0}.add-budget-modal__backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:max(.5rem,env(safe-area-inset-top)) max(.5rem,env(safe-area-inset-right)) max(.5rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));background:#2c181099;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow-y:auto;-webkit-overflow-scrolling:touch}@media(min-width:400px){.add-budget-modal__backdrop{padding:1rem}}.add-budget-modal__dialog{max-width:min(400px,calc(100vw - 1rem));width:100%;max-height:min(90vh,calc(100dvh - 2rem));overflow:auto;margin:auto;background:var(--pk-bg-card);color:var(--pk-text);border:2px solid var(--pk-border);border-radius:20px;box-shadow:0 8px 24px var(--pk-shadow-strong);position:relative;-webkit-overflow-scrolling:touch}.add-budget-modal__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:2px solid var(--pk-border)}@media(min-width:400px){.add-budget-modal__header{padding:1rem 1.25rem}}.add-budget-modal__title{margin:0;font-size:clamp(.85rem,2.5vw,1rem);font-family:Fredoka,sans-serif;font-weight:600}.add-budget-modal__close{width:2.5rem;height:2.5rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:0;font-size:1.25rem;line-height:1;border:2px solid var(--pk-border);border-radius:12px;background:var(--pk-bg-sub);color:var(--pk-text);font-family:Nunito,sans-serif;font-weight:700;flex-shrink:0;touch-action:manipulation}.add-budget-modal__close:hover{background:var(--pk-danger);color:var(--pk-bg-card);border-color:var(--pk-danger)}.add-budget-modal__body{padding:1rem}@media(min-width:400px){.add-budget-modal__body{padding:1.25rem}}.add-budget-modal__form{display:flex;flex-direction:column;gap:1.25rem;margin-top:.5rem}.add-budget-modal .pixel-char{margin-bottom:.5rem}.add-budget-modal__field{display:flex;flex-direction:column;gap:.5rem}.add-budget-modal__label{font-size:.85rem;font-weight:500;color:var(--pk-text-muted)}.add-budget-modal__input{padding:.75rem;min-height:44px;font-size:16px;border:2px solid var(--pk-border);border-radius:12px;background:var(--pk-bg);color:var(--pk-text);font-family:Nunito,sans-serif;box-sizing:border-box}.add-budget-modal__input:focus{outline:none;border-color:var(--pk-accent);box-shadow:0 0 0 2px var(--pk-bg-card)}.add-budget-modal__input::-webkit-outer-spin-button,.add-budget-modal__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.add-budget-modal__input[type=number]{-moz-appearance:textfield}.add-budget-modal__error{margin:0;font-size:.875rem;color:var(--pk-red)}.add-budget-modal__submit{margin-top:.5rem;padding:.75rem 1rem;min-height:48px;font-size:clamp(.9rem,2.2vw,1rem);font-family:Nunito,Fredoka,sans-serif;font-weight:700;color:var(--pk-bg-card);background:var(--pk-accent);border:2px solid var(--pk-border);border-radius:12px;box-shadow:0 2px 6px var(--pk-shadow);touch-action:manipulation}.add-budget-modal__submit:hover:not(:disabled){background:var(--pk-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--pk-shadow-strong)}.add-budget-modal__submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.home{width:100%;max-width:420px;margin:0 auto;padding:0 .25rem 1.25rem;text-align:center;box-sizing:border-box}@media(min-width:400px){.home{padding:0 .5rem 1.5rem}}.home__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--pk-border)}@media(min-width:400px){.home__header{gap:.75rem;margin-bottom:1.25rem;padding-bottom:1rem}}.home__greeting{margin:0;font-size:clamp(.875rem,2.2vw,.95rem);font-weight:500;color:var(--pk-text-muted);text-align:left;line-height:1.4;word-break:break-all}.home__logout{padding:.5rem .75rem;font-size:.65rem;border-radius:12px;font-family:Nunito,Fredoka,sans-serif;font-weight:700;min-height:44px;flex-shrink:0}@media(min-width:400px){.home__logout{font-size:.8rem}}.home__title{margin:0 0 1rem;font-size:clamp(.7rem,3.2vw,.95rem);font-weight:600;line-height:1.5;color:var(--pk-text)}@media(min-width:400px){.home__title{margin:0 0 1.5rem}}.home__budgets{margin-bottom:.5rem}.home__budgets:empty+.home__empty{display:block}.home__empty{display:none;padding:1.25rem .75rem;border:3px dashed var(--pk-border);background:var(--pk-bg-sub);color:var(--pk-text-muted);font-size:clamp(.85rem,2.2vw,.9rem);margin:0 0 1rem}@media(min-width:400px){.home__empty{padding:1.5rem 1rem}}.welcome{text-align:center;padding:1.25rem .5rem;margin-bottom:.75rem}@media(min-width:400px){.welcome{padding:2rem 1rem;margin-bottom:1rem}}.welcome__logo{font-size:clamp(1.5rem,10vw,2.5rem);color:var(--pk-text);margin:0 0 .5rem;text-shadow:2px 2px 0 var(--pk-border-light);letter-spacing:.1em}.welcome__tagline{font-family:Nunito,sans-serif;font-size:clamp(.95rem,2.5vw,1.1rem);color:var(--pk-text-muted);margin:0 0 .25rem}.welcome__sub{font-size:clamp(.85rem,2.2vw,.9rem);color:var(--pk-text-muted);margin:0;opacity:.9}.join-house-modal__backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:max(.5rem,env(safe-area-inset-top)) max(.5rem,env(safe-area-inset-right)) max(.5rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));background:#2c181099;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow-y:auto;-webkit-overflow-scrolling:touch}@media(min-width:400px){.join-house-modal__backdrop{padding:1rem}}.join-house-modal__dialog{max-width:min(400px,calc(100vw - 1rem));width:100%;max-height:min(90vh,calc(100dvh - 2rem));overflow:auto;margin:auto;background:var(--pk-bg-card);color:var(--pk-text);border:2px solid var(--pk-border);border-radius:20px;box-shadow:0 8px 24px var(--pk-shadow-strong);position:relative;-webkit-overflow-scrolling:touch}.join-house-modal__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:2px solid var(--pk-border)}@media(min-width:400px){.join-house-modal__header{padding:1rem 1.25rem}}.join-house-modal__title{margin:0;font-size:clamp(.85rem,2.5vw,1rem);font-family:Fredoka,sans-serif;font-weight:600}.join-house-modal__close{width:2.5rem;height:2.5rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:0;font-size:1.25rem;line-height:1;border:2px solid var(--pk-border);border-radius:12px;background:var(--pk-bg-sub);color:var(--pk-text);font-family:Nunito,sans-serif;font-weight:700;flex-shrink:0;touch-action:manipulation}.join-house-modal__close:hover{background:var(--pk-danger);color:var(--pk-bg-card);border-color:var(--pk-danger)}.join-house-modal__body{padding:1rem}@media(min-width:400px){.join-house-modal__body{padding:1.25rem}}.join-house-modal__form{display:flex;flex-direction:column;gap:1.25rem;margin-top:.5rem}.join-house-modal .pixel-char{margin-bottom:.5rem}.join-house-modal__field{display:flex;flex-direction:column;gap:.5rem}.join-house-modal__label{font-size:.85rem;font-weight:500;color:var(--pk-text-muted)}.join-house-modal__input{padding:.75rem;min-height:44px;font-size:16px;border:2px solid var(--pk-border);border-radius:12px;background:var(--pk-bg);color:var(--pk-text);font-family:Nunito,sans-serif;box-sizing:border-box}.join-house-modal__input:focus{outline:none;border-color:var(--pk-accent);box-shadow:0 0 0 2px var(--pk-bg-card)}.join-house-modal__error{margin:0;font-size:.875rem;color:var(--pk-red)}.join-house-modal__submit{margin-top:.5rem;padding:.75rem 1rem;min-height:48px;font-size:clamp(.9rem,2.2vw,1rem);font-family:Nunito,Fredoka,sans-serif;font-weight:700;color:var(--pk-bg-card);background:var(--pk-accent);border:2px solid var(--pk-border);border-radius:12px;box-shadow:0 2px 6px var(--pk-shadow);touch-action:manipulation}.join-house-modal__submit:hover:not(:disabled){background:var(--pk-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--pk-shadow-strong)}.join-house-modal__submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.house-setup{width:100%;max-width:420px;margin:0 auto;padding:0 .25rem 1rem;text-align:center;box-sizing:border-box}@media(min-width:400px){.house-setup{padding:0 .5rem 1.25rem}}.house-setup__title{margin:0 0 .5rem;font-size:clamp(1rem,4vw,1.35rem);line-height:1.4}.house-setup__description{margin:0 0 1rem;color:var(--pk-text-muted);font-size:clamp(.85rem,2.8vw,.95rem);line-height:1.6}.house-setup__actions{display:grid;gap:.75rem;margin-top:1rem}.house-setup__button{width:100%}.house-setup__button--secondary{background:var(--pk-bg-sub)}
