*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f4f7fb;color:#172033}.topbar{height:72px;background:#0b4ea2;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 22px;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:20px}.brand img{width:46px;height:46px;border-radius:12px;background:#fff;object-fit:contain}.topbar a{color:#fff;text-decoration:none;margin:0 8px}.langs a{background:rgba(255,255,255,.17);padding:7px 9px;border-radius:8px}.wrap{max-width:1240px;margin:24px auto;padding:0 16px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 10px 30px rgba(12,42,80,.07);margin-bottom:16px}.stat{font-size:32px;font-weight:800}.muted{color:#6b7280}.btn,button{background:#0b4ea2;color:#fff;border:0;border-radius:11px;padding:12px 18px;text-decoration:none;cursor:pointer;display:inline-block}input,select,textarea{width:100%;padding:12px;border:1px solid #ccd6e0;border-radius:11px;margin:7px 0 14px}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:12px;border-bottom:1px solid #eef2f7;text-align:left}.badge{padding:6px 10px;border-radius:20px;font-size:12px}.green{background:#dcfce7;color:#166534}.yellow{background:#fef9c3;color:#854d0e}.red{background:#fee2e2;color:#991b1b}.blue{background:#dbeafe;color:#1e40af}.footer{text-align:center;background:#0b1f3a;color:#fff;padding:22px;margin-top:40px}.footer a{color:#fff;text-decoration:none}@media(max-width:800px){.grid{grid-template-columns:1fr}.topbar{height:auto;flex-wrap:wrap;padding:14px}.topbar nav{display:flex;flex-wrap:wrap}}

.user-hello{background:#fff;border-bottom:1px solid #e5edf7;padding:10px 24px;color:#172033;font-size:15px}.user-hello b{color:#0b4ea2}


.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}
.birthday-panel{position:sticky;top:90px}
.birthday-card h3{margin-top:0}
.birthday-user{border-top:1px solid #eef2f7;padding:14px 0;text-align:center}
.birthday-user:first-of-type{border-top:0}
.birthday-user img{width:86px;height:86px;border-radius:50%;object-fit:cover;border:3px solid #e5edf7}
.birthday-avatar{width:86px;height:86px;border-radius:50%;background:#eef6ff;display:flex;align-items:center;justify-content:center;margin:0 auto;font-size:34px}
.birthday-name{font-weight:700;margin-top:8px;color:#172033}
.birthday-org{font-size:13px;color:#6b7280;margin-top:3px}
.birthday-age{font-size:14px;color:#0b4ea2;margin:6px 0 10px}
.like-btn{padding:8px 12px;border-radius:10px}
@media(max-width:1000px){.dashboard-layout{grid-template-columns:1fr}.birthday-panel{position:static}}



/* Birthday Premium v7 */
.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}
.birthday-panel{position:sticky;top:90px}
.birthday-title-row{display:flex;justify-content:space-between;align-items:center;gap:10px}
.birthday-title-row h3{margin:0}.birthday-title-row a{font-size:13px;color:#0b4ea2;text-decoration:none;font-weight:700}
.birthday-user{border-top:1px solid #eef2f7;padding:14px 0;text-align:center}
.birthday-user:first-of-type{border-top:0}
.birthday-user img{width:86px;height:86px;border-radius:50%;object-fit:cover;border:3px solid #e5edf7}
.birthday-avatar,.premium-avatar{width:86px;height:86px;border-radius:50%;background:linear-gradient(135deg,#eef6ff,#fff7ed);display:flex;align-items:center;justify-content:center;margin:0 auto;font-size:34px}
.birthday-name{font-weight:700;margin-top:8px;color:#172033}.birthday-org{font-size:13px;color:#6b7280;margin-top:3px}.birthday-age{font-size:14px;color:#0b4ea2;margin:6px 0 10px}
.like-btn{padding:8px 12px;border-radius:10px}.upcoming-mini{margin-top:12px;border-top:1px solid #eef2f7;padding-top:12px;color:#172033}
.birthday-premium-page{max-width:1220px;margin:0 auto}.premium-hero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#0b4ea2,#1d7cf2);color:#fff;overflow:hidden;position:relative}
.premium-hero:after{content:"🎊";position:absolute;right:160px;top:10px;font-size:72px;opacity:.18}
.premium-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:12px;opacity:.8}.premium-hero h1{margin:8px 0;font-size:34px}.premium-hero p{opacity:.9;margin:0}
.premium-count{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);padding:18px 22px;border-radius:18px;text-align:center}.premium-count span{display:block;font-size:42px;font-weight:800}.premium-count small{opacity:.9}
.premium-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px}.birthday-premium-list{display:flex;flex-direction:column;gap:14px}.birthday-premium-user{display:flex;gap:16px;border:1px solid #edf2f7;border-radius:18px;padding:16px;background:#fff}
.birthday-premium-user img{width:96px;height:96px;border-radius:20px;object-fit:cover}.premium-info h3{margin:0 0 4px}.premium-info p{margin:0 0 8px;color:#6b7280}
.premium-badges{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.premium-badges span{background:#eef6ff;color:#0b4ea2;border-radius:999px;padding:6px 10px;font-size:13px}
.premium-actions{display:flex;gap:8px;flex-wrap:wrap}.premium-actions button,.wish-box button{padding:9px 12px;border-radius:10px}.wish-box{margin-top:10px}.wish-box textarea{margin-bottom:8px}
.upcoming-row,.top-liked-row{display:flex;gap:10px;align-items:center;border-top:1px solid #eef2f7;padding:10px 0}.upcoming-row:first-of-type,.top-liked-row:first-of-type{border-top:0}
.upcoming-row img{width:42px;height:42px;border-radius:50%;object-fit:cover}.mini-avatar{width:42px;height:42px;border-radius:50%;background:#eef6ff;display:flex;align-items:center;justify-content:center}
.upcoming-row small,.top-liked-row small{display:block;color:#6b7280}.empty-premium{text-align:center;padding:30px;color:#6b7280}.empty-premium div{font-size:54px}.empty-birthday-small{background:#f8fafc;border-radius:14px;padding:14px;color:#6b7280}
.sparkle{position:fixed;left:50%;top:40%;transform:translate(-50%,-50%);font-size:72px;z-index:9999;animation:sparklePop 1.2s ease forwards;pointer-events:none}@keyframes sparklePop{0%{opacity:0;transform:translate(-50%,-30%) scale(.5)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}100%{opacity:0;transform:translate(-50%,-90%) scale(.8)}}
@media(max-width:1000px){.dashboard-layout,.premium-grid{grid-template-columns:1fr}.birthday-panel{position:static}.premium-hero{display:block}.premium-count{margin-top:16px}.birthday-premium-user{display:block;text-align:center}}

\n
.inline-assign-form{display:flex;gap:8px;align-items:center}.inline-assign-form select{min-width:260px}.wish-row{border-top:1px solid #eef2f7;padding:12px 0}.template-row{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.template-row button{font-size:12px;padding:7px 9px;background:#eef6ff;color:#0b4ea2}

@import url('/assets/css/executor_actions_extra.css');

@import url('/assets/css/pro_flow_extra.css');