@font-face{font-family:Anek Kannada;src:url(/fonts/AnekKannada-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--bg: #0f1020;--card: #1b1c33;--accent: #7c5cff;--text: #f2f2f7;--muted: #a0a0b8;--err: #ff5c7c}*{box-sizing:border-box}body{margin:0;font-family:Anek Kannada,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem}.topbar h1{margin:0;font-size:1.4rem}.link{color:var(--accent);text-decoration:none;font-weight:600}.page{max-width:480px;margin:0 auto}.register{position:relative;min-height:100vh;max-width:560px;margin:0 auto;display:flex;flex-direction:column;align-items:center;padding:2.5rem 1rem 3rem}.register:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(/background_portrait/background_portrait_2x.webp) center / cover no-repeat}.register .title{width:70%;max-width:320px;height:auto;margin-bottom:1.75rem}.register .welcome{text-align:center;margin-bottom:1.5rem}.register .welcome h2{margin:0 0 .35rem;color:#e1132c;font-size:1.6rem;font-weight:800}.register .welcome p{margin:0;color:#333;font-size:1rem}.register .welcome .hl{color:#e1132c}.register .welcome.appear{animation:welcome-appear .6s cubic-bezier(.16,1,.3,1) both}@keyframes welcome-appear{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.register .error{width:100%;margin:0 0 1rem}.form-wrap{width:100%;display:flex;flex-direction:column;align-items:center}.glass{position:relative;width:100%;display:flex;flex-direction:column;gap:1.1rem;padding:1.9rem 1.6rem;border-radius:28px;background:linear-gradient(135deg,#b4b6bc29,#b4b6bc12);border:1.5px solid rgba(255,255,255,.9);backdrop-filter:blur(2px) saturate(130%);-webkit-backdrop-filter:blur(2px) saturate(130%);box-shadow:inset 0 1px 1px #ffffffd9,inset 0 -1px 1px #ffffff40,inset 0 0 30px #ffffff1f}.glass:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(160deg,#ffffff40,#ffffff0a,#fff0 40%);mix-blend-mode:screen}.field{position:relative;z-index:1;display:flex;flex-direction:column;gap:.4rem;font-size:.95rem;color:#2a2a2a;text-shadow:0 1px 1px rgba(255,255,255,.4)}.field input{background:#ffffff0f;border:1px solid rgba(255,255,255,.75);color:#1a1a1a;border-radius:999px;padding:.75rem 1.1rem;font-size:1rem;font-family:inherit;box-shadow:inset 0 1px 2px #fff9,0 1px 2px #0000000f;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px)}.field input:focus{outline:none;border-color:#e1132cb3;background:#ffffff8c}.textarea-wrap{position:relative;z-index:1}.textarea-wrap textarea{width:100%;background:transparent;border:none;color:#1a1a1a;font-size:1.05rem;font-family:inherit;line-height:1.5;padding:.25rem .25rem 1.5rem;resize:none}.textarea-wrap textarea::placeholder{color:#555}.textarea-wrap textarea:focus{outline:none}.textarea-wrap .counter{position:absolute;right:.4rem;bottom:.2rem;font-size:.85rem;color:#3c3c3c8c}.btn-img{position:relative;z-index:1;background:none;border:none;padding:0;margin:1.25rem auto 0;cursor:pointer;line-height:0}.btn-img img{width:240px;max-width:70vw;height:auto}.btn-img:disabled{opacity:.6;cursor:default}label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--muted)}input,textarea{background:#0f1020;border:1px solid #33344f;color:var(--text);border-radius:10px;padding:.7rem;font-size:1rem;font-family:inherit;resize:vertical}input:focus,textarea:focus{outline:none;border-color:var(--accent)}button{background:var(--accent);color:#fff;border:none;border-radius:10px;padding:.8rem;font-size:1rem;font-weight:600;cursor:pointer}button:disabled{opacity:.6;cursor:default}.counter{text-align:right;font-size:.8rem;color:var(--muted);margin-top:-.5rem}.row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.error{background:#ff5c7c26;color:var(--err);margin:0 1.5rem;padding:.75rem 1rem;border-radius:10px;font-size:.9rem}.empty{text-align:center;color:var(--muted);margin-top:4rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;padding:0 1.5rem 2rem}.greeting{background:var(--card);border-radius:16px;padding:1.2rem;display:flex;flex-direction:column;gap:.8rem}.greeting .body{margin:0;font-size:1.05rem;line-height:1.4}.greeting footer{display:flex;flex-direction:column;gap:.1rem;font-size:.85rem}.greeting .who{font-weight:600}.greeting .ig{color:var(--accent)}.board{position:relative;min-height:100vh;padding:1.5rem 2rem 3rem}.board:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(/background_landscape/background_landscape_2x.webp) center / cover no-repeat}.board-title{display:block;width:260px;max-width:40vw;height:auto;margin:0 auto 1.75rem}.board-add{position:absolute;top:1.5rem;left:2rem;color:#e1132c;text-decoration:none;font-weight:700;font-size:.95rem}.board-empty{text-align:center;color:#444;margin-top:4rem;font-size:1.1rem}.board-wall{position:relative;width:100%;max-width:1400px;height:calc(100vh - 200px);margin:0 auto;overflow:hidden}.board-card{position:absolute;top:0;left:0;width:300px;will-change:transform}.card-inner{height:100%;padding:1rem 1.2rem;gap:.4rem;overflow:hidden;opacity:var(--fade, 1);transform:scale(var(--scale, 1));filter:brightness(var(--bright, 1)) blur(var(--blur, 0))}.card-inner>*{position:relative;z-index:1}.card-head{display:flex;align-items:center;gap:.7rem}.avatar{flex:none;width:38px;height:38px;border-radius:50%;background:#e1132c;color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.05rem}.who-block{display:flex;flex-direction:column;line-height:1.2}.who-block .who{font-weight:700;color:#1a1a1a}.who-block .ig{color:#555;font-size:.85rem}.submitted{color:#666;font-size:.8rem}.card-body{margin:.3rem 0 0;color:#1a1a1a;font-size:.9rem;line-height:1.35}.admin-login{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem}.admin-login:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(/background_portrait/background_portrait_2x.webp) center / cover no-repeat}.admin-login h1{color:#e1132c;font-size:1.8rem;font-weight:800;margin:0 0 1.5rem}.admin-login .form-wrap{max-width:400px}.btn-primary{background:#e1132c;color:#fff;border:none;border-radius:999px;padding:.8rem 2.75rem;font-size:1rem;font-weight:700;cursor:pointer;margin-top:1.25rem;box-shadow:0 4px 14px #e1132c59}.btn-primary:disabled{opacity:.6;cursor:default}.admin-page{position:relative;min-height:100vh;padding:2rem 1.5rem 3rem}.admin-page:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(/background_landscape/background_landscape_2x.webp) center / cover no-repeat}.admin-panel{max-width:1180px;margin:0 auto;padding:1.5rem 2rem 2.5rem;border-radius:28px;background:linear-gradient(135deg,#ffffff3d,#ffffff1a);border:1.5px solid rgba(255,255,255,.9);backdrop-filter:blur(6px) saturate(130%);-webkit-backdrop-filter:blur(6px) saturate(130%);box-shadow:inset 0 1px 1px #fffc,inset 0 0 40px #ffffff1f}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:1.1rem;margin-bottom:1.75rem;border-bottom:1.5px solid rgba(0,0,0,.13)}.admin-header h1{margin:0;color:#1a1a1a;font-size:1.9rem;font-weight:800}.admin-id{display:flex;align-items:center;gap:.9rem}.admin-who{color:#444;font-size:.9rem;font-weight:600}.btn-ghost{background:#ffffff73;border:1px solid rgba(0,0,0,.18);color:#333;border-radius:999px;padding:.4rem 1rem;font-size:.85rem;font-weight:600;cursor:pointer}.btn-ghost:hover{background:#ffffffb3}.admin-section{margin-bottom:2.25rem}.pill{display:inline-flex;align-items:center;gap:.5rem;background:#e1132c;color:#fff;font-size:.95rem;font-weight:700;padding:.4rem 1.15rem;border-radius:999px;margin:0 0 1.1rem;box-shadow:0 3px 10px #e1132c4d}.pill-n{background:#ffffffe6;color:#e1132c;font-size:.78rem;border-radius:999px;padding:0 .45rem;min-width:1.2rem;text-align:center}.admin-empty{color:#555;margin:.25rem 0 0}.mod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,350px));justify-content:start;gap:1.25rem}.mod-card{position:relative;display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#ffffff8c,#ffffff52);border:1.5px solid rgba(255,255,255,.95);backdrop-filter:blur(2px) saturate(130%);-webkit-backdrop-filter:blur(2px) saturate(130%);box-shadow:inset 0 1px 1px #ffffffd9,0 6px 18px #00000014}.mod-card .card-pad{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 1.2rem 1.2rem;flex:1}.mod-card .card-body{margin:.35rem 0 0;white-space:pre-wrap;word-break:break-word}.mod-foot{display:grid;grid-template-columns:1fr 1fr;border-top:1.5px solid rgba(0,0,0,.13)}.mod-foot button{display:flex;align-items:center;justify-content:center;gap:.5rem;background:transparent;border:none;border-radius:0;padding:.85rem;font-size:.95rem;font-weight:700;cursor:pointer;color:#1a1a1a}.mod-foot .approve{color:#1a7f43;border-right:1.5px solid rgba(0,0,0,.13)}.mod-foot .reject{color:#c20d22}.mod-foot button:hover{background:#ffffff73}.mod-foot svg{width:18px;height:18px}.mod-card .pull{position:absolute;top:.65rem;right:.7rem;z-index:2;background:#ffffff8c;border:1px solid rgba(0,0,0,.15);color:#555;font-size:.72rem;font-weight:700;padding:.2rem .6rem;border-radius:999px;cursor:pointer}.mod-card .pull:hover{color:#c20d22;border-color:#c20d2280;background:#fffc}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.admin-tabs{display:inline-flex;gap:.4rem;background:#ffffff73;border:1px solid rgba(0,0,0,.12);border-radius:999px;padding:.3rem}.admin-tabs .tab{display:inline-flex;align-items:center;gap:.45rem;background:transparent;border:none;color:#555;font-size:.9rem;font-weight:700;padding:.45rem 1.05rem;border-radius:999px;cursor:pointer}.admin-tabs .tab.on{background:#e1132c;color:#fff;box-shadow:0 3px 10px #e1132c4d}.admin-tabs .tab-n{background:#0000001a;color:inherit;font-size:.72rem;border-radius:999px;padding:0 .45rem;min-width:1.15rem;text-align:center}.admin-tabs .tab.on .tab-n{background:#ffffffe6;color:#e1132c}.btn-export{background:#1a7f43;border:none;color:#fff;border-radius:999px;padding:.5rem 1.2rem;font-size:.88rem;font-weight:700;cursor:pointer;box-shadow:0 3px 10px #1a7f4347}.btn-export:hover{background:#156536}.btn-export:disabled{background:#9aa;box-shadow:none;cursor:not-allowed;opacity:.6}.admin-search{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.admin-search input{flex:1;min-width:0;border:1px solid rgba(0,0,0,.12);background:#fff9;border-radius:999px;padding:.55rem 1.1rem;font-size:.9rem;color:#000;outline:none}.admin-search input:focus{border-color:#e1132c;background:#ffffffd9}.admin-search-n{color:#555;font-size:.82rem;white-space:nowrap}.table-wrap{overflow-x:auto;border-radius:16px;border:1px solid rgba(0,0,0,.1);background:#ffffff80}.msg-table{width:100%;border-collapse:collapse;font-size:.9rem}.msg-table th,.msg-table td{text-align:left;padding:.8rem 1rem;vertical-align:top;border-bottom:1px solid rgba(0,0,0,.08)}.msg-table thead th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#777;background:#ffffff80;position:sticky;top:0}.msg-table tbody tr:hover{background:#ffffff80}.msg-table tbody tr:last-child td{border-bottom:none}.cell-who{display:flex;align-items:center;gap:.6rem;min-width:160px}.avatar.sm{width:30px;height:30px;font-size:.85rem}.cell-body{white-space:pre-wrap;word-break:break-word;max-width:460px;color:#1a1a1a}.cell-date{white-space:nowrap;color:#666;font-size:.82rem}.status-badge{display:inline-block;font-size:.72rem;font-weight:700;padding:.18rem .6rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.status-badge.s-pending{background:#d69e002e;color:#946a00}.status-badge.s-approved{background:#1a7f4329;color:#1a7f43}.status-badge.s-rejected{background:#c20d2224;color:#c20d22}.bb-dot{display:block;margin-top:.3rem;font-size:.68rem;font-weight:700;color:#e1132c}.col-act{white-space:nowrap}.row-act{display:flex;gap:.4rem}.row-act button{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(0,0,0,.14);background:#fff9;border-radius:999px;padding:.35rem .75rem;font-size:.8rem;font-weight:700;cursor:pointer}.row-act .approve{color:#1a7f43}.row-act .reject,.row-act .pull{color:#c20d22}.row-act button:hover{background:#fff}.row-act button svg{width:15px;height:15px}.row-act-none{color:#aaa}
