@font-face{font-family:Kalam;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Kalam-Regular.ttf)format("truetype")}@font-face{font-family:Kalam;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Kalam-Bold.ttf)format("truetype")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#212121;background:#fafafa;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{background:#f1f3f5;min-height:100vh;margin:0}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{color:#fff;background:#1a73e8;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;display:flex}.logo{font-size:1.4rem;font-weight:700}.nav-bar{flex-wrap:wrap;gap:10px;display:flex}.nav-button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff8f;border-radius:999px;padding:10px 16px;transition:background .2s}.nav-button:hover,.nav-button.active{background:#ffffff29}.content-area{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:24px}section{background:#fff;border-radius:20px;padding:24px;box-shadow:0 10px 30px #0f172a14}h1{margin-top:0}.form-card{gap:18px;margin-top:18px;display:grid}label{gap:8px;font-weight:600;display:grid}input,textarea{width:100%;font:inherit;background:#f8fafc;border:1px solid #d7dee5;border-radius:12px;padding:14px 16px}textarea{resize:vertical}button{appearance:none;color:#fff;cursor:pointer;background:#1a73e8;border:none;border-radius:14px;padding:12px 18px;font-weight:700;transition:transform .15s,background .15s}button:hover{background:#1668c5;transform:translateY(-1px)}.message{border-radius:14px;margin-top:18px;padding:16px}.message.success{color:#1b5e20;background:#eef6ef}.message.error{color:#b91717;background:#fdecea}.home-actions{gap:14px;margin-top:24px;display:grid}.home-actions button{width:100%}.wish-grid,.display-grid{background-color:#d7ccc8;background-image:radial-gradient(#00000014 15%,#0000 16%),radial-gradient(#00000014 15%,#0000 16%);background-position:0 0,15px 15px;background-size:30px 30px;border:1px solid #bcaaa4;border-radius:12px;gap:24px;margin-top:24px;padding:32px;display:grid;box-shadow:inset 0 4px 12px #00000026}.wish-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.display-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.wish-card,.display-card{aspect-ratio:5/3;background-color:#fffdf3;background-image:linear-gradient(#0000 38px,#ef53504d 38px 39px,#0000 39px),linear-gradient(#0000 23px,#2196f314 23px 24px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:100% 100%,100% 24px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #00000014;border-radius:4px;padding:24px 18px 18px;transition:transform .2s,box-shadow .2s;position:relative;overflow-y:auto;box-shadow:0 4px 8px #0000000d,0 10px 20px #00000014}.wish-card:before,.display-card:before{content:"";z-index:5;background:radial-gradient(circle at 4px 4px,#ff5252 20%,#c62828 80%);border-radius:50%;width:14px;height:14px;position:absolute;top:-8px;left:50%;transform:translate(-50%);box-shadow:0 10px 8px #0000004d,inset -2px -2px 4px #0006}.wish-card:after,.display-card:after{content:"";z-index:4;background:#0000004d;width:2px;height:10px;position:absolute;top:4px;left:calc(50% + 2px);transform:rotate(15deg)}.wish-card:nth-child(2n),.display-card:nth-child(2n){transform:rotate(.8deg)}.wish-card:nth-child(odd),.display-card:nth-child(odd){transform:rotate(-1deg)}.wish-card:nth-child(3n),.display-card:nth-child(3n){transform:rotate(1.2deg)}.wish-card:nth-child(5n),.display-card:nth-child(5n){transform:rotate(-.6deg)}.wish-card:hover,.display-card:hover{z-index:10;box-shadow:0 15px 30px #00000026;transform:translateY(-4px)scale(1.02)rotate(0)!important}.wish-id{color:#7f8c8d;font-family:Inter,sans-serif;font-size:.75rem;font-weight:700;position:absolute;top:10px;left:12px}.wish-text{color:#2c3e50;word-wrap:break-word;margin:18px 0 0;font-family:Kalam,Architects Daughter,Georgia,serif;font-size:1.15rem;line-height:24px}.wish-actions{justify-content:flex-end;margin-top:14px;display:flex}@media (width>=720px){.content-area{padding:32px}}.device-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:20px;margin-top:24px;display:grid}.device-frame{background:#f2f5fb;border:1px solid #d7dee5;border-radius:24px;overflow:hidden;box-shadow:0 14px 40px #0f172a14}.device-header{background:#fff;border-bottom:1px solid #e4e9f0;padding:16px 18px;font-weight:700}.device-nav{flex-wrap:wrap;gap:8px;padding:16px;display:flex}.device-content{background:#fff;min-height:520px;padding:16px}.user-area{color:#fff;align-items:center;gap:12px;display:flex}.secondary-button{color:#1a73e8;background:#f1f3f5;border:1px solid #e4e9f0}.secondary-button:hover{background:#e8f0fe;transform:translateY(-1px)}.tab-buttons{gap:10px;margin-top:16px;display:flex}.note-box{color:#1a3c72;background:#eef5ff;border-radius:14px;margin-top:18px;padding:16px}.account-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.microtext{color:#556275;margin-top:10px;font-size:.85rem}.identity-stickers{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.wish-card .identity-stickers,.display-card .identity-stickers{float:right;z-index:2;gap:6px;margin-top:18px;margin-bottom:6px;margin-left:10px;position:relative}.sticker-heart-shadow{filter:drop-shadow(0 2px 4px #00000026);display:inline-flex}.sticker-heart{width:24px;height:24px;-webkit-mask:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 37.5C20 37.5 5 26 5 14C5 8.5 9 5 14 5C17.5 5 20 7.5 20 10C20 7.5 22.5 5 26 5C31 5 35 8.5 35 14C35 26 20 37.5 20 37.5Z' fill='black'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 37.5C20 37.5 5 26 5 14C5 8.5 9 5 14 5C17.5 5 20 7.5 20 10C20 7.5 22.5 5 26 5C31 5 35 8.5 35 14C35 26 20 37.5 20 37.5Z' fill='black'/%3E%3C/svg%3E") 50%/contain no-repeat}.sticker-flag{border-radius:4px;width:28px;height:18px;box-shadow:0 2px 4px #00000026}.sticker-icon{color:#1a73e8;background:#fff;border:2px solid #e4e9f0;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex;box-shadow:0 2px 4px #00000026}.sticker-icon svg{width:16px;height:16px}.female-icon{color:#d81b60;background:#fdf2f6;border-color:#fce4ec}.male-icon{color:#1e88e5;background:#f0f7ff;border-color:#e3f2fd}.flag-straight{background:linear-gradient(#000 16.6%,#333 16.6% 33.3%,#666 33.3% 50%,#999 50% 66.6%,#ccc 66.6% 83.3%,#fff 83.3%)}.flag-rainbow{background:linear-gradient(#e40303 16.6%,#ff8c00 16.6% 33.3%,#ffed00 33.3% 50%,#008026 50% 66.6%,#24408e 66.6% 83.3%,#732982 83.3%)}.flag-lesbian{background:linear-gradient(#d52d00 20%,#ef7627 20% 40%,#fff 40% 60%,#d162a4 60% 80%,#b55690 80%)}.flag-bisexual{background:linear-gradient(#d60270 40%,#9b4f96 40% 60%,#0038a8 60%)}.flag-pansexual{background:linear-gradient(#ff218c 33.3%,#ffd800 33.3% 66.6%,#21b1ff 66.6%)}.flag-asexual{background:linear-gradient(#000 25%,#a3a3a3 25% 50%,#fff 50% 75%,purple 75%)}.flag-trans{background:linear-gradient(#5bcefa 20%,#f5a9b8 20% 40%,#fff 40% 60%,#f5a9b8 60% 80%,#5bcefa 80%)}.flag-nonbinary{background:linear-gradient(#fcf434 25%,#fff 25% 50%,#9c59d1 50% 75%,#2c2c2c 75%)}@media (width>=1600px){.display-grid{grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:40px}.display-card .wish-text{font-size:2.2rem;line-height:48px}.display-card{background-color:#fffdf3;background-image:linear-gradient(#0000 60px,#ef53504d 60px 62px,#0000 62px),linear-gradient(#0000 47px,#2196f314 47px 48px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:100% 100%,100% 48px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.display-card .wish-id{font-size:1.2rem;top:18px;left:24px}.display-card .identity-stickers{float:right;gap:20px;margin-top:24px;margin-bottom:12px;margin-left:20px}.sticker-heart{width:64px;height:64px}.sticker-flag{border-radius:8px;width:72px;height:48px;box-shadow:0 4px 10px #0003}.sticker-icon{border:4px solid #e4e9f0;width:64px;height:64px;box-shadow:0 4px 10px #0003}.sticker-icon svg{stroke-width:3px;width:40px;height:40px}}.display-header-bar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.app-shell.page-display .content-area{max-width:100%;margin:0;padding:16px 24px}.kiosk-mode{background-color:#d7ccc8;height:100vh;overflow:hidden}.kiosk-mode .kiosk-content{box-sizing:border-box;flex-direction:column;width:100%;height:100vh;padding:24px;display:flex;overflow:hidden}.kiosk-mode .kiosk-content section.display-section{box-shadow:none;background:0 0;border-radius:0;flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.kiosk-mode .display-grid{flex:1;align-content:start;overflow:hidden}.kiosk-mode .kiosk-content section.display-section p:not(.wish-text),.kiosk-mode .kiosk-content section.display-section h1{display:none}.kiosk-modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;background:#0f172a66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.kiosk-modal{background:#fff;border-radius:16px;width:90%;max-width:440px;padding:32px;animation:.2s cubic-bezier(.34,1.56,.64,1) kioskModalScale;box-shadow:0 20px 50px #0003}@keyframes kioskModalScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.kiosk-modal h2{color:#0f172a;margin-top:0;margin-bottom:8px;font-size:1.5rem}.kiosk-modal-sub{color:#556275;margin-bottom:24px;font-size:.95rem}.kiosk-modal label{margin-bottom:16px}.kiosk-modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.kiosk-modal-error{color:#b91717;background:#fdecea;border-radius:8px;margin-bottom:16px;padding:12px;font-size:.9rem;font-weight:500}
