:root{--bg: #0f0f14;--bg-panel: #16161c;--accent-1: #7c5cff;--accent-2: #6b4fe0;--text: #f5f5f7;--text-dim: #9a9aa8}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}#root{min-height:100dvh}.page{position:relative;min-height:100dvh;display:flex;align-items:center;justify-content:center;isolation:isolate}.page:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background:radial-gradient(60% 50% at 50% 38%,#7c5cff29,#7c5cff00 70%),radial-gradient(45% 40% at 85% 85%,#6b4fe014,#6b4fe000 70%),var(--bg)}.bg-noise{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.045;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.site-header{position:fixed;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;padding:20px 24px}.header-logo{height:20px;width:auto;display:block;opacity:0;animation:fade-up .7s ease-out .15s forwards}.content{width:100%;max-width:480px;padding:24px;display:flex;flex-direction:column;align-items:center;text-align:center}.logo{margin:0;font-size:clamp(2.6rem,11vw,4.2rem);font-weight:900;letter-spacing:-.05em;line-height:1;background:linear-gradient(135deg,#ffffff 0%,#ffffff 55%,var(--accent-1) 130%);-webkit-background-clip:text;background-clip:text;color:transparent}.logo-anim{display:inline-block;opacity:0;animation:logo-intro .9s cubic-bezier(.22,1,.36,1) .1s forwards}@keyframes logo-intro{0%{opacity:0;transform:translateY(28px) scale(1)}55%{opacity:1;transform:translateY(0) scale(1)}78%{transform:translateY(0) scale(1.06)}to{opacity:1;transform:translateY(0) scale(1)}}.subtitle{margin:18px 0 0;font-size:clamp(.95rem,2.4vw,1.1rem);color:var(--text-dim);opacity:0;animation:fade-up .7s ease-out .5s forwards}.notify-form{margin-top:36px;width:100%;display:flex;flex-wrap:wrap;gap:10px;background:var(--bg-panel);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:8px;opacity:0;animation:fade-up .7s ease-out .65s forwards}.notify-form .notify-input{flex:1 1 180px;min-width:0}.notify-input{background:transparent;border:none;outline:none;color:var(--text);font-family:inherit;font-size:.95rem;padding:12px 14px}.notify-input::placeholder{color:#5c5c6a}.notify-form .notify-button{flex:1 1 auto}.notify-button{border:none;cursor:pointer;border-radius:12px;padding:13px 20px;font-family:inherit;font-size:.92rem;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--accent-1),var(--accent-2));transition:filter .15s ease,transform .15s ease;white-space:nowrap}.notify-button:hover{filter:brightness(1.08)}.notify-button:active{transform:scale(.97)}.notify-button:disabled{opacity:.7;cursor:default}.notify-status{margin:14px 0 0;min-height:1.2em;font-size:.88rem;color:var(--accent-1);opacity:0;transition:opacity .3s ease}.notify-status.visible{opacity:1}.notify-status.is-error{color:#ff6b6b}.socials{margin-top:48px;display:flex;gap:14px;opacity:0;animation:fade-up .7s ease-out .8s forwards}.social-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-panel);border:1px solid rgba(255,255,255,.06);color:var(--text-dim);text-decoration:none;transition:color .15s ease,border-color .15s ease}.social-icon svg{width:18px;height:18px}.social-icon:hover{color:var(--text);border-color:#7c5cff66}.survey-trigger{margin-top:20px;background:none;border:none;color:var(--text-dim);font-family:inherit;font-size:.85rem;cursor:pointer;opacity:0;animation:fade-up .7s ease-out .9s forwards;transition:color .15s ease}.survey-trigger:hover{color:var(--accent-1)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:20px;background:#08080bb3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-up .2s ease-out forwards}.modal-panel{position:relative;width:100%;max-width:460px;max-height:90vh;overflow-y:auto;background:var(--bg-panel);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:28px 24px 24px}.modal-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.08);background:transparent;color:var(--text-dim);cursor:pointer;font-size:.9rem}.modal-close:hover{color:var(--text)}.modal-title{margin:0 0 4px;font-size:1.25rem;font-weight:700}.modal-subtitle{margin:0 0 20px;color:var(--text-dim);font-size:.9rem}.survey-form{display:flex;flex-direction:column}.survey-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;font-size:.85rem;color:var(--text-dim)}.survey-field textarea{resize:vertical;background:var(--bg);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px;color:var(--text);font-family:inherit;font-size:.9rem;outline:none}.survey-field textarea:focus{border-color:#7c5cff80}.survey-toggle{display:flex;gap:8px}.toggle-option{flex:1;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:var(--bg);color:var(--text-dim);font-family:inherit;font-size:.9rem;cursor:pointer}.toggle-option.active{border-color:var(--accent-1);color:var(--text);background:#7c5cff1f}.survey-input{border:1px solid rgba(255,255,255,.08);border-radius:10px;background:var(--bg)}.modal-thanks{display:flex;flex-direction:column;align-items:flex-start;gap:16px;font-size:.95rem}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.logo-anim,.header-logo,.subtitle,.notify-form,.socials,.survey-trigger{animation:none;opacity:1;transform:none}}@media(max-width:420px){.notify-form{flex-direction:column}.notify-button{width:100%}}.admin-page{min-height:100dvh;padding:32px 24px 60px;max-width:1000px;margin:0 auto}.admin-page h1{font-weight:900;letter-spacing:-.03em;margin:0 0 24px}.admin-login{display:flex;align-items:center;justify-content:center;padding:24px}.admin-login-form{width:100%;max-width:320px;display:flex;flex-direction:column;gap:12px}.admin-login-form h1{margin:0 0 8px;text-align:center}.admin-section{margin-bottom:40px}.admin-section h2{font-size:1rem;color:var(--text-dim);margin:0 0 12px;font-weight:600}.admin-empty{color:var(--text-dim);font-size:.9rem}.admin-table-wrap{overflow-x:auto;border:1px solid rgba(255,255,255,.08);border-radius:12px}.admin-table{width:100%;border-collapse:collapse;font-size:.85rem;white-space:nowrap}.admin-table th,.admin-table td{text-align:left;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.admin-table th{background:var(--bg-panel);color:var(--text-dim);font-weight:600;position:sticky;top:0}.admin-table tr:last-child td{border-bottom:none}.feed-composer{display:flex;flex-direction:column;gap:10px;margin-bottom:24px;padding:16px;background:var(--bg-panel);border:1px solid rgba(255,255,255,.08);border-radius:14px;max-width:480px}.feed-author-input{border:1px solid rgba(255,255,255,.08);border-radius:10px;background:var(--bg);max-width:200px}.feed-textarea{resize:vertical;background:var(--bg);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px;color:var(--text);font-family:inherit;font-size:.95rem;outline:none}.feed-textarea:focus{border-color:#7c5cff80}.feed-list{display:flex;flex-direction:column;gap:12px;max-width:480px}.feed-post{background:var(--bg-panel);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px 16px}.feed-post header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px;font-size:.85rem}.feed-post-author{font-weight:700}.feed-post-date{color:var(--text-dim);font-size:.75rem}.feed-post p{margin:0 0 10px;font-size:.92rem;line-height:1.4}.feed-post footer{display:flex;gap:12px}.feed-like,.feed-delete{background:none;border:none;cursor:pointer;font-family:inherit;font-size:.82rem;color:var(--text-dim);padding:0}.feed-like:hover{color:var(--accent-1)}.feed-delete:hover{color:#ff6b6b}.feed-section{width:100%;max-width:480px;margin:32px auto 60px;padding:0 24px;display:flex;flex-direction:column;gap:12px}.feed-section .feed-composer,.feed-section .feed-list{max-width:none}.real-feed-post header{justify-content:flex-start;align-items:center;gap:10px}.feed-post-meta{display:flex;flex-direction:column;gap:1px}.feed-like.liked{color:var(--accent-1);font-weight:700}.avatar-circle{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;color:#0f0f14;flex-shrink:0}.avatar-image{object-fit:cover;background:var(--bg-panel)}.avatar-picker{position:relative;width:fit-content;margin:0 auto 4px;cursor:pointer}.avatar-picker .avatar-circle{box-shadow:0 0 0 3px #7c5cff59,0 0 24px #7c5cff40;transition:box-shadow .15s ease}.avatar-picker:hover .avatar-circle{box-shadow:0 0 0 3px #7c5cff99,0 0 32px #7c5cff66}.avatar-picker-edit{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,var(--accent-1),var(--accent-2));color:#fff;font-size:.62rem;font-weight:700;padding:3px 10px;border-radius:999px;white-space:nowrap;box-shadow:0 4px 12px #7c5cff66}.app-page{min-height:100dvh;position:relative;isolation:isolate}.app-glow{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;--mx: 50vw;--my: 30vh;background:radial-gradient(500px circle at var(--mx) var(--my),rgba(124,92,255,.32) 0%,rgba(124,92,255,0) 70%),radial-gradient(40% 35% at 20% 80%,#6b4fe029,#6b4fe000 70%)}@media(prefers-reduced-motion:reduce){.app-glow{background:radial-gradient(50% 40% at 50% 30%,#7c5cff47,#7c5cff00 70%),radial-gradient(40% 35% at 20% 80%,#6b4fe029,#6b4fe000 70%)}}.app-auth{min-height:100dvh;position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:32px}.app-auth-logo{height:22px;width:auto}.app-auth-form{width:100%;max-width:340px;display:flex;flex-direction:column;gap:14px;background:var(--bg-panel);border:1px solid rgba(124,92,255,.25);border-radius:28px;padding:32px 26px;box-shadow:0 0 0 1px #7c5cff14,0 30px 60px -20px #7c5cff59,0 0 60px -10px #7c5cff40}.app-auth-form h1{margin:0 0 4px;font-size:1.2rem;text-align:center}.app-auth-illustration{width:96px;height:96px;margin:0 auto 4px;display:block}.app-pill-input{border-radius:999px!important;padding-left:20px!important;padding-right:20px!important;text-align:center}.app-pill-button{border-radius:999px!important}.app-auth-switch{background:none;border:none;color:var(--text-dim);font-family:inherit;font-size:.82rem;cursor:pointer;margin-top:4px}.app-auth-switch:hover{color:var(--accent-1)}.app-page-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px}.app-page-logo{position:static;height:18px}.app-profile-card{max-width:420px;margin:60px auto 0;padding:36px 26px;background:var(--bg-panel);border:1px solid rgba(124,92,255,.25);border-radius:28px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;box-shadow:0 0 0 1px #7c5cff14,0 30px 60px -20px #7c5cff59,0 0 60px -10px #7c5cff40}.app-profile-card h1{margin:12px 0 0;font-size:1.3rem}.app-profile-bio{color:var(--text-dim);font-size:.9rem;margin:0}.app-profile-hint{margin-top:16px;color:var(--text-dim);font-size:.82rem}
