:root{--accent:#d94f86;--accent2:#b45ee4;--accent-soft:#ffe5f0;--bg:#fff8fc;--surface:rgba(255,255,255,.86);--surface-solid:#fff;--text:#332630;--muted:#806f78;--line:rgba(213,124,164,.2);--success:#35a862;--danger:#d84b5b;--shadow:0 18px 55px rgba(113,45,76,.12);--radius:24px;--safe-bottom:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:Tahoma,"Noto Sans Thai",sans-serif;color:var(--text);background:radial-gradient(circle at 0 0,#ffe5f1 0,transparent 34%),radial-gradient(circle at 100% 15%,#f1e6ff 0,transparent 30%),var(--bg);line-height:1.6;overflow-x:hidden}button,input,select,textarea{font:inherit}.app-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.78);backdrop-filter:blur(22px);border-bottom:1px solid rgba(255,255,255,.9)}.header-inner{max-width:1220px;margin:auto;min-height:72px;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand-lockup{display:flex;align-items:center;gap:11px;color:var(--text);text-decoration:none}.brand-lockup b,.brand-lockup small{display:block}.brand-lockup b{font-size:1.06rem}.brand-lockup small{font-size:.68rem;color:var(--muted)}.brand-mark{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,var(--accent),var(--accent2));box-shadow:0 11px 24px rgba(202,65,132,.25)}.header-tools{display:flex;align-items:center;gap:9px}.icon-button{width:46px;height:46px;border:0;border-radius:16px;background:#fff;color:var(--text);box-shadow:0 8px 22px rgba(85,45,63,.09);cursor:pointer}.profile-chip{display:none;align-items:center;gap:8px;text-decoration:none;color:var(--text);background:#fff;padding:5px 12px 5px 5px;border-radius:999px}.profile-chip span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,var(--accent),var(--accent2))}.desktop-nav{display:none}.app-main{max-width:1180px;margin:auto;padding:18px 14px calc(96px + var(--safe-bottom));position:relative}.ambient{position:fixed;z-index:-1;border-radius:50%;filter:blur(70px);opacity:.14;pointer-events:none}.ambient-a{width:300px;height:300px;background:#ff5f9e;left:-150px;top:30%}.ambient-b{width:360px;height:360px;background:#a85ee9;right:-190px;bottom:5%}.bottom-nav{position:fixed;z-index:70;left:10px;right:10px;bottom:calc(9px + var(--safe-bottom));height:72px;padding:7px;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.9);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.95);border-radius:25px;box-shadow:0 18px 50px rgba(93,42,67,.2)}.bottom-nav a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;color:#8e7a84;border-radius:18px;min-width:0}.bottom-nav a span{font-size:1.18rem;line-height:1}.bottom-nav a b{font-size:.65rem;white-space:nowrap}.bottom-nav a.active{color:var(--accent);background:linear-gradient(145deg,#fff0f6,#f8efff)}.bottom-nav a.active:before{content:"";position:absolute;top:4px;width:25px;height:3px;border-radius:20px;background:linear-gradient(90deg,var(--accent),var(--accent2))}.hero,.premium-hero{position:relative;overflow:hidden;min-height:235px;padding:25px;border-radius:32px;background:linear-gradient(135deg,#fff 0,#ffeaf3 48%,#f3eaff 100%);border:1px solid rgba(255,255,255,.95);box-shadow:0 25px 70px rgba(151,64,104,.15);display:flex;align-items:center;justify-content:space-between;gap:20px}.premium-hero:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;right:-105px;top:-110px;background:linear-gradient(145deg,#ff7cae,#b768e5);opacity:.22}.hero h1{font-size:clamp(1.7rem,7vw,2.4rem);line-height:1.18;margin:6px 0}.hero p{margin:5px 0 15px;color:var(--muted)}.hero-orb{display:none}.eyebrow{font-size:.7rem;letter-spacing:.16em;font-weight:800;color:#b53e73}.hero-pills{display:flex;gap:9px;flex-wrap:wrap}.hero-pills span,.coin-pill{padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.8);font-weight:700;box-shadow:0 7px 18px rgba(90,48,67,.08)}.section-head,.page-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:25px 2px 14px}.section-head h2,.page-title h1{margin:0;font-size:1.35rem}.capsule-progress{width:130px;height:34px;border-radius:999px;background:#f0dce6;position:relative;overflow:hidden;flex-shrink:0}.capsule-progress span,.progress span{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent2))}.capsule-progress b{position:absolute;inset:0;display:grid;place-items:center;font-size:.74rem}.stat-grid,.menu-grid,.card-grid,.mission-grid,.two-col,.insight-grid{display:grid;grid-template-columns:1fr;gap:14px}.stat-card,.menu-card,.content-card,.goal-card,.mission-card,.appointment-card,.insight-card{background:var(--surface);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow);border-radius:var(--radius)}.stat-card,.content-card,.goal-card,.insight-card{padding:20px}.stat-card strong{display:block;font-size:2rem;color:var(--accent)}.menu-card{min-height:96px;padding:18px;display:grid;grid-template-columns:62px 1fr;align-items:center;gap:15px;color:var(--text);text-decoration:none}.menu-card>span,.mission-icon{width:58px;height:58px;border-radius:19px;display:grid;place-items:center;font-size:1.7rem;background:linear-gradient(145deg,#ffe2ee,#eee4ff);box-shadow:inset 0 0 0 1px #fff}.menu-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px}.menu-card strong,.menu-card small{display:block}.menu-card strong{line-height:1.35;white-space:normal;overflow-wrap:anywhere}.menu-card small{color:var(--muted);font-size:.78rem;line-height:1.45;white-space:normal;overflow-wrap:anywhere}.mission-card{padding:17px;display:grid;grid-template-columns:58px 1fr;align-items:center;gap:13px}.mission-card.completed{background:linear-gradient(145deg,#effff4,#fff)}.mission-copy h3,.mission-copy p{margin:0}.mission-copy p{font-size:.8rem;color:var(--muted)}.mission-copy span{font-weight:800;color:var(--accent)}.mission-check{grid-column:1/-1;width:100%;height:46px;border-radius:15px;display:grid;place-items:center;background:#e7f8ec;color:var(--success);font-weight:900}.mission-form,.mission-card>a{grid-column:1/-1}.appointment-card{padding:20px;border-left:7px solid var(--accent);display:flex;flex-direction:column;align-items:stretch;gap:14px}.appointment-card h2{margin:.4rem 0}.badge,.status-badge{display:inline-flex;padding:5px 11px;border-radius:999px;background:#ffe4ef;color:#a93669;font-size:.73rem;font-weight:800}.btn{min-height:48px;padding:11px 18px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;text-decoration:none;font-weight:800;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 10px 24px rgba(194,65,128,.23)}.btn.small{min-height:42px;padding:8px 14px}.btn.wide{width:100%;margin-top:10px}.btn.ghost{background:#fff;color:var(--accent);border:1px solid #edc3d6;box-shadow:none}.btn.danger{background:linear-gradient(135deg,#e95d68,#bd3347)}.speaker{width:48px;height:48px;border:0;border-radius:16px;background:#fff0f6;cursor:pointer}.speaker.big{width:62px;height:62px;font-size:1.6rem}.stack{display:grid;gap:14px}form{display:grid;gap:9px}label{font-weight:800}input,select,textarea{width:100%;min-height:50px;padding:12px 14px;border:1.5px solid #e7c6d5;border-radius:15px;background:rgba(255,255,255,.9);color:var(--text);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(217,79,134,.11)}textarea{min-height:110px}.grid-form{display:grid;grid-template-columns:1fr;gap:12px}.checks{display:grid;grid-template-columns:1fr;gap:8px}.checks label{padding:11px;border-radius:14px;background:#fff5f9}.checks input{width:auto;min-height:auto}.video-wrap{position:relative;padding-top:56.25%;overflow:hidden;border-radius:18px;background:#111}.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-card{padding:0;overflow:hidden}.video-body{padding:18px}.video-heading,.row-actions,.form-row,.reward-meta,.media-row,.profile-summary{display:flex;gap:12px;align-items:center}.video-heading{justify-content:space-between}.video-heading h2{font-size:1.05rem}.watch-progress{display:flex;gap:10px;align-items:center}.progress{height:16px;border-radius:999px;background:#f2dfe8;position:relative;overflow:hidden;flex:1}.done{padding:12px;border-radius:14px;text-align:center;background:#e9f9ee;color:#287443;font-weight:800}.empty-state{text-align:center;padding:38px 20px;border:1px dashed #dfaec5;border-radius:24px;background:rgba(255,255,255,.58);grid-column:1/-1}.empty-state>span{font-size:2.8rem}.memory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.memory-card{aspect-ratio:1;border:0;border-radius:18px;background:#f5c8db;font-size:1.8rem}.memory-card.matched{background:#ddf5e5}.alert{position:relative;z-index:20;margin-bottom:14px;padding:14px 16px;border-radius:16px;font-weight:700}.alert.success{background:#e8f8ed;color:#286d40}.alert.error{background:#ffe9ec;color:#973240}.auth-shell{min-height:90vh;display:flex;align-items:center;justify-content:center}.auth-card{width:min(470px,100%);padding:28px 20px;border-radius:30px;background:rgba(255,255,255,.9);box-shadow:0 25px 70px rgba(124,53,85,.18);text-align:center}.auth-card.large{width:min(780px,100%)}.logo-circle{width:78px;height:78px;border-radius:26px;margin:auto;display:grid;place-items:center;color:#fff;font-size:2rem;background:linear-gradient(145deg,var(--accent),var(--accent2))}.auth-links{display:flex;justify-content:space-between;gap:15px;margin-top:18px}.admin-menu{display:flex;gap:9px;overflow:auto;padding-bottom:7px}.table-wrap{overflow:auto}.table-wrap table{min-width:720px}table{width:100%;border-collapse:collapse}th,td{padding:13px;text-align:left;border-bottom:1px solid var(--line)}.media-row{align-items:flex-start;flex-direction:column}.media-row img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px}.media-info{width:100%}.form-row{flex-direction:column;align-items:stretch}.profile-summary{align-items:center}.avatar-ring{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,var(--accent),var(--accent2));font-size:1.6rem}.insight-card strong{display:block;font-size:1.8rem;color:var(--accent)}.chart-box{min-height:220px}.theme-blue{--accent:#3e80d0;--accent2:#5d6fe9;--accent-soft:#e6f1ff;--bg:#f5f9ff}.theme-green{--accent:#3c9a65;--accent2:#59b5a1;--accent-soft:#e3f7eb;--bg:#f6fff8}.theme-highcontrast{--accent:#ffd400;--accent2:#ff8a00;--bg:#000;--surface:#111;--surface-solid:#111;--text:#fff;--muted:#ddd;--line:#fff}.theme-highcontrast body{background:#000}.theme-highcontrast input,.theme-highcontrast select,.theme-highcontrast textarea{background:#000;color:#fff;border-color:#fff}.theme-highcontrast .bottom-nav,.theme-highcontrast .app-header,.theme-highcontrast .desktop-nav{background:#111;border-color:#fff}.theme-highcontrast .menu-card,.theme-highcontrast .content-card,.theme-highcontrast .stat-card,.theme-highcontrast .mission-card,.theme-highcontrast .appointment-card{border-color:#fff}
@media(min-width:620px){.app-main{padding:24px 22px 105px}.stat-grid,.menu-grid,.card-grid,.mission-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr 1fr}.grid-form{grid-template-columns:1fr 1fr}.grid-form .full{grid-column:1/-1}.checks{grid-template-columns:repeat(2,1fr)}.mission-check{grid-column:auto;width:45px;height:45px;border-radius:50%}.mission-card{grid-template-columns:58px 1fr auto}.mission-form,.mission-card>a{grid-column:auto}.media-row{flex-direction:row}.media-row img{width:170px}.form-row{flex-direction:row}.profile-chip{display:flex}}
@media(min-width:900px){.app-header{position:relative}.desktop-nav{display:block;position:sticky;top:0;z-index:55;background:rgba(255,242,248,.82);backdrop-filter:blur(20px);border-bottom:1px solid rgba(216,125,166,.15)}.desktop-nav-inner{max-width:1220px;margin:auto;padding:10px 18px;display:flex;gap:7px;overflow:auto}.desktop-nav a{white-space:nowrap;padding:9px 13px;border-radius:13px;text-decoration:none;color:#6f5964;font-weight:800;font-size:.82rem}.desktop-nav a.active{background:#fff;color:var(--accent);box-shadow:0 8px 22px rgba(107,48,74,.09)}.desktop-nav .admin-link{margin-left:auto}.bottom-nav{display:none}.app-main{padding:28px 24px 55px}.hero,.premium-hero{padding:34px;min-height:270px}.hero-orb{display:grid;width:145px;height:145px;border-radius:50%;place-items:center;background:linear-gradient(145deg,var(--accent),var(--accent2));box-shadow:0 22px 45px rgba(180,65,132,.27);position:relative;z-index:2}.hero-orb>span{font-size:3rem;color:#fff}.hero-orb .speaker{position:absolute;right:-6px;bottom:2px}.stat-grid{grid-template-columns:repeat(4,1fr)}.menu-grid{grid-template-columns:repeat(3,1fr)}.card-grid,.mission-grid{grid-template-columns:repeat(2,1fr)}.insight-grid{grid-template-columns:2fr 1fr 1fr}.appointment-card{flex-direction:row;align-items:center;justify-content:space-between}.capsule-progress{width:240px;height:38px}.sticky-card{position:sticky;top:78px;align-self:start}.admin-mode .app-main{max-width:1280px}}
@media(prefers-reduced-motion:no-preference){.menu-card,.content-card,.stat-card,.mission-card,.btn{transition:transform .22s ease,box-shadow .22s ease}.menu-card:hover,.content-card:hover,.stat-card:hover,.mission-card:hover{transform:translateY(-4px);box-shadow:0 26px 65px rgba(113,45,76,.16)}.btn:hover{transform:translateY(-2px)}}

.heading-audio{display:flex;align-items:center;gap:10px;min-width:0}.heading-audio h1,.heading-audio h2,.heading-audio h3{margin-top:0;margin-bottom:0;min-width:0}.heading-audio.compact{gap:7px;justify-content:space-between}.speaker.mini{width:36px;height:36px;min-width:36px;font-size:.95rem;display:inline-grid;place-items:center;flex:0 0 auto}.menu-speaker{margin-left:auto;position:relative;z-index:2}.auth-heading{justify-content:center;margin-bottom:8px}.mission-copy .heading-audio{align-items:flex-start}.video-heading>.heading-audio{flex:1}.reward-card>.heading-audio{justify-content:center}.goal-card .heading-audio{width:100%}@media(max-width:560px){.heading-audio{gap:8px}.speaker.mini{width:34px;height:34px;min-width:34px}.menu-card{grid-template-columns:auto minmax(0,1fr) auto}.page-title>.heading-audio{flex:1}}

.coin-reward-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:24px;background:rgba(42,18,31,0);backdrop-filter:blur(0);opacity:0;pointer-events:none;transition:opacity .28s ease,background .28s ease,backdrop-filter .28s ease}.coin-reward-overlay.show{opacity:1;background:rgba(42,18,31,.28);backdrop-filter:blur(6px)}.coin-reward-card{position:relative;z-index:2;width:min(310px,88vw);padding:29px 22px 25px;text-align:center;border-radius:31px;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(255,240,248,.96));border:1px solid rgba(255,255,255,.95);box-shadow:0 30px 90px rgba(91,31,61,.34),inset 0 1px 0 #fff;transform:translateY(28px) scale(.68) rotate(-3deg);opacity:0;transition:transform .48s cubic-bezier(.2,1.45,.4,1),opacity .25s ease}.coin-reward-overlay.show .coin-reward-card{transform:translateY(0) scale(1) rotate(0);opacity:1}.coin-reward-icon{width:92px;height:92px;margin:-68px auto 12px;display:grid;place-items:center;border-radius:50%;font-size:3.2rem;background:linear-gradient(145deg,#fff8bf,#ffc83d);border:6px solid rgba(255,255,255,.95);box-shadow:0 18px 38px rgba(205,139,17,.35);animation:coinRewardBounce .75s cubic-bezier(.18,1.55,.4,1) both}.coin-reward-label{font-size:.75rem;letter-spacing:.15em;font-weight:900;color:#b04a75}.coin-reward-card strong{display:block;margin:4px 0 2px;font-size:2.15rem;line-height:1.2;background:linear-gradient(135deg,#ce3f7d,#8d52dc);-webkit-background-clip:text;background-clip:text;color:transparent}.coin-reward-card span{display:block;color:var(--muted);font-size:.88rem}.coin-reward-particles{position:absolute;width:260px;height:260px;z-index:1;pointer-events:none}.coin-reward-particles i{--angle:calc(var(--i) * 22.5deg);position:absolute;left:50%;top:50%;font-style:normal;color:#ffd44d;font-size:calc(12px + (var(--i) % 3) * 4px);opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0) scale(.3)}.coin-reward-overlay.show .coin-reward-particles i{animation:rewardSpark 1s ease-out calc(var(--i) * 18ms) both}@keyframes coinRewardBounce{0%{transform:translateY(28px) scale(.45) rotate(-25deg)}60%{transform:translateY(-7px) scale(1.12) rotate(7deg)}100%{transform:translateY(0) scale(1) rotate(0)}}@keyframes rewardSpark{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0) scale(.2)}24%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-125px) scale(1.15)}}@media(prefers-reduced-motion:reduce){.coin-reward-card,.coin-reward-icon,.coin-reward-particles i{animation:none!important;transition:none!important}.coin-reward-overlay.show .coin-reward-card{opacity:1;transform:none}}

.goal-overview{display:grid;gap:15px}.goal-premium-card{padding:19px;border-radius:25px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,244,250,.9));border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow)}.goal-premium-card.goal-completed{background:linear-gradient(145deg,#effff4,#fff)}.goal-card-top{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:13px;align-items:center}.goal-symbol{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-size:1.55rem;background:linear-gradient(145deg,#ffe3ef,#eee6ff)}.goal-main-copy{min-width:0}.goal-main-copy h2,.goal-main-copy p{margin:0}.goal-main-copy p{font-size:.78rem;color:var(--muted);overflow-wrap:anywhere}.goal-percent{font-size:1.18rem;font-weight:900;color:var(--accent)}.goal-progress-track{height:14px;margin:16px 0 12px;border-radius:999px;background:#f0dce6;overflow:hidden}.goal-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .45s ease}.goal-card-bottom{display:flex;flex-direction:column;gap:10px;color:var(--muted);font-size:.78rem}.goal-card-bottom .row-actions{align-self:stretch}.goal-card-bottom form{display:block}.goal-layout{margin-top:20px}.compact-empty{padding:22px 14px}.chart-box{height:290px}.goal-done-summary{margin:9px 0 0;font-weight:800;color:var(--success)}.insight-card small{display:block;margin-top:8px;color:var(--muted);font-size:.72rem;line-height:1.5}.status-completed{background:#e7f8ec;color:#23733c}.status-cancelled{background:#ffe8eb;color:#a52e40}.status-scheduled{background:#e9efff;color:#405da2}@media(min-width:620px){.goal-card-bottom{flex-direction:row;justify-content:space-between;align-items:center}.goal-card-bottom .row-actions{align-self:auto}}@media(max-width:560px){.goal-card-top{grid-template-columns:48px minmax(0,1fr)}.goal-symbol{width:48px;height:48px}.goal-percent{grid-column:1/-1;text-align:right}.goal-card-bottom .row-actions{display:grid;grid-template-columns:1fr 1fr}.goal-card-bottom .btn{width:100%}}

.line-admin-grid{display:grid;gap:18px}.line-connected-card,.line-connect-card{text-align:center;max-width:680px;margin:auto}.line-state-icon{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;background:#e6faed;color:#179447;font-size:2.3rem;font-weight:900}.masked-id{display:inline-block;padding:10px 16px;border-radius:999px;background:var(--soft);font-family:monospace;margin:8px 0 18px}.stack-actions{display:grid;gap:10px}.step-list{display:grid;gap:13px;text-align:left;margin-bottom:20px}.connect-step{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start}.connect-step>span{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,var(--accent),var(--accent2));color:#fff;font-weight:900}.connect-step b,.connect-step p{margin:0}.connect-step p{color:var(--muted);font-size:.82rem;margin-top:3px}.line-green{background:#06c755!important}.notice-box{padding:14px;border-radius:18px;background:#fff7df;color:#765918;margin:15px 0}.connection-code{font-size:2.6rem;letter-spacing:.24em;font-weight:950;color:var(--accent);padding:18px 10px;margin:15px 0;border:2px dashed #efb6cc;border-radius:22px;background:#fff8fb}.code-help{color:var(--muted)}.webhook-url{display:flex;gap:8px;align-items:center;padding:12px;border-radius:16px;background:var(--soft);overflow:auto}.webhook-url code{flex:1;white-space:nowrap}.webhook-url button{border:0;border-radius:12px;padding:9px 12px;background:#fff;font-weight:800}.setup-checklist{margin-top:15px}.setup-checklist p{margin:7px 0}.line-group-list{display:grid;gap:12px}.line-group-item{display:flex;flex-direction:column;gap:12px;padding:15px;border-radius:18px;background:rgba(255,255,255,.7);border:1px solid var(--border)}.line-group-item.selected{border-color:#74d695;background:#f1fff5}.line-group-item small{display:block;color:var(--muted);margin-top:4px}.settings-link-card{display:grid!important;grid-template-columns:55px 1fr auto;align-items:center;gap:13px;text-decoration:none;color:inherit;margin-top:16px}.settings-link-icon{width:55px;height:55px;border-radius:18px;display:grid;place-items:center;background:#06c755;color:#fff;font-weight:900}.settings-link-card h2,.settings-link-card p{margin:0}.settings-link-card p{color:var(--muted);font-size:.8rem}@media(min-width:850px){.line-admin-grid{grid-template-columns:1fr 1fr}.line-group-item{flex-direction:row;justify-content:space-between;align-items:center}}

.reminder-item.inactive{opacity:.68}.reminder-top{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:11px;align-items:start}.reminder-category{width:48px;height:48px;border-radius:16px;background:var(--soft);display:grid;place-items:center;font-size:1.35rem}.reminder-top h2,.reminder-top p{margin:0}.reminder-top p{font-size:.78rem;color:var(--muted)}.cron-job-links{display:grid;gap:9px;margin-top:16px}.cron-job-links>div{display:grid;gap:4px;padding:11px;border-radius:14px;background:var(--soft)}.cron-job-links code{font-size:.72rem;overflow-wrap:anywhere}.cron-setup-card{border:1px solid rgba(34,197,94,.25)}@media(max-width:560px){.reminder-top{grid-template-columns:44px minmax(0,1fr)}.reminder-top>.status-badge{grid-column:2}.reminder-item .row-actions{display:grid;grid-template-columns:repeat(3,1fr)}.reminder-item .btn{width:100%;padding-left:5px;padding-right:5px}}

.appointment-card.appointment-past{opacity:.72;border-left-color:#a9a1a5;background:rgba(248,246,247,.92)}.status-past{background:#ece8ea;color:#6f666a}.btn.disabled{background:#c9c2c6;color:#fff;box-shadow:none;cursor:not-allowed;pointer-events:none;transform:none}.appointment-past h2,.appointment-past p{color:#766d71}


/* V7 configurable game and coin effects */
.effect-tier-list{display:grid;gap:12px;margin-top:20px}.effect-tier{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:14px;border:1px solid rgba(217,79,134,.18);border-radius:16px;background:rgba(255,255,255,.72)}.effect-tier>b{min-width:150px}.effect-tier>span{flex:1}.coin-reward-overlay.effect-sparkle .coin-reward-card{animation:rewardPop .55s ease both,fxGlow 1s ease-in-out infinite alternate}.coin-reward-overlay.effect-burst .coin-reward-particles i{font-size:1.45rem;animation-duration:1.15s}.coin-reward-overlay.effect-explosion .coin-reward-card{transform:scale(1.08);box-shadow:0 0 70px rgba(255,176,0,.75)}.coin-reward-overlay.effect-explosion .coin-reward-particles i{font-size:1.8rem}.coin-reward-overlay.effect-legendary{background:radial-gradient(circle,rgba(255,215,0,.28),rgba(80,20,100,.62))}.coin-reward-overlay.effect-legendary .coin-reward-card{border:3px solid #ffd45c;box-shadow:0 0 90px rgba(255,211,70,.9);animation:rewardPop .55s ease both,legendaryPulse .8s ease-in-out infinite alternate}.coin-reward-overlay.effect-legendary .coin-reward-icon{font-size:5.3rem}@keyframes fxGlow{to{box-shadow:0 0 65px rgba(255,120,190,.8)}}@keyframes legendaryPulse{to{transform:scale(1.06) rotate(.5deg)}}


/* V9 video quiz */
.quiz-admin-box,.video-quiz-box{margin:18px 0;padding:18px;border:1px solid rgba(229,91,132,.22);border-radius:18px;background:linear-gradient(135deg,rgba(255,246,250,.98),rgba(255,255,255,.98))}.quiz-admin-box h3,.video-quiz-box h3{margin:0 0 12px}.admin-quiz-summary{display:flex;flex-direction:column;gap:5px;margin:10px 0;padding:11px 13px;border-radius:13px;background:#fff5f8}.admin-quiz-summary small{color:#7d5361}.quiz-bonus{display:inline-flex;padding:7px 12px;margin-bottom:10px;border-radius:999px;background:#fff0b8;font-weight:800;color:#7b5a00}.quiz-answer-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.quiz-done{display:flex;align-items:center;gap:12px;margin-top:14px;padding:14px;border-radius:16px;background:#eefbf3;border:1px solid #bfe8cc}.quiz-done>span{font-size:30px}.quiz-done p{margin:3px 0 0;color:#52705c}.video-card:target{outline:3px solid rgba(229,91,132,.28);scroll-margin-top:90px}.muted{color:#876c75;font-size:.92rem}
@media(max-width:560px){.quiz-answer-buttons{grid-template-columns:1fr}.quiz-answer-buttons .btn{width:100%}}

/* V10 Video Quiz Engine */
.count-badge{display:inline-flex;padding:.25rem .65rem;border-radius:999px;background:#fff0f6;color:#b42363;font-size:.82rem;vertical-align:middle}.question-editor{display:grid;gap:.75rem}.choice-fields{display:none;padding:1rem;border-radius:18px;background:#fff7fb}.align-end{display:flex;align-items:flex-end}.question-row{display:flex;gap:1rem;align-items:flex-start}.question-number{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#ff7eb3,#ff4f91);color:#fff;font-weight:800;flex:0 0 auto}.quiz-status-strip{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.quiz-status-strip span{padding:.4rem .7rem;background:#fff4f8;border:1px solid #ffd3e3;border-radius:999px;font-size:.84rem}.quiz-question{padding:1rem 0;border-bottom:1px solid #f1dce5}.quiz-question:last-of-type{border-bottom:0}.quiz-options{display:grid;gap:.55rem;margin-top:.75rem}.quiz-options label{display:flex;gap:.65rem;align-items:center;padding:.75rem .9rem;border:1px solid #ead7df;border-radius:14px;cursor:pointer;background:#fff}.quiz-options label:has(input:checked){border-color:#ff5b98;background:#fff2f7}.quiz-options input{width:20px;height:20px}.notice.warning{padding:1rem;border-radius:16px;background:#fff6df;color:#775500;margin-top:1rem}


/* V11.2: ปุ่มเปิดแบบทดสอบหลังดูวิดีโอจบ */
.claim-btn.ready {
    animation: quizReadyPulse 1.25s ease-in-out infinite;
}
.quiz-open-help {
    display: block;
    margin-top: 8px;
    text-align: center;
    opacity: .72;
    line-height: 1.5;
}
@keyframes quizReadyPulse {
    0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(255, 105, 180, .28); }
    50% { transform: scale(1.015); box-shadow: 0 0 0 10px rgba(255, 105, 180, 0); }
}

/* V12.2 reward history and coin ledger */
.reward-history-section,.coin-ledger-section{margin-top:32px}.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.section-heading-row h2{margin:2px 0 0}.section-heading-row p{margin:4px 0 0;color:var(--muted,#6b7280)}.reward-history-summary{margin-bottom:16px}.reward-history-summary .stat-card{min-height:112px}.history-filter-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:thin}.history-filter-tab{white-space:nowrap;padding:9px 14px;border-radius:999px;border:1px solid rgba(148,163,184,.35);background:#fff;color:inherit;text-decoration:none;font-weight:700;font-size:.9rem}.history-filter-tab.active{background:var(--primary,#ec4899);border-color:var(--primary,#ec4899);color:#fff}.history-card{padding:18px}.redemption-timeline{display:grid;gap:0}.redemption-history-item{display:grid;grid-template-columns:44px 1fr;gap:14px;position:relative;padding:10px 0 20px}.redemption-history-item:not(:last-child):after{content:"";position:absolute;left:21px;top:48px;bottom:0;width:2px;background:rgba(148,163,184,.25)}.timeline-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f3f4f6;font-weight:900;z-index:1}.timeline-icon.pending{background:#fff7ed}.timeline-icon.approved,.timeline-icon.completed{background:#ecfdf5}.timeline-icon.preparing,.timeline-icon.shipped{background:#eff6ff}.timeline-icon.cancelled{background:#fef2f2}.timeline-content{min-width:0}.timeline-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.timeline-head h3{margin:0 0 3px}.history-id{font-size:.78rem;color:var(--muted,#6b7280)}.history-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted,#6b7280);font-size:.9rem;margin-top:8px}.status-badge.preparing,.status-badge.shipped{background:#dbeafe;color:#1d4ed8}.status-badge.completed,.status-badge.approved{background:#d1fae5;color:#047857}.status-badge.cancelled{background:#fee2e2;color:#b91c1c}.status-badge.pending{background:#ffedd5;color:#c2410c}.compact-empty{padding:24px}.ledger-card{padding:0;overflow:hidden}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:14px 16px;border-bottom:1px solid rgba(148,163,184,.2);text-align:left}.data-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;background:rgba(248,250,252,.8)}.number-col{text-align:right!important;white-space:nowrap}.coin-amount{font-weight:900}.coin-amount.credit{color:#047857}.coin-amount.debit{color:#b91c1c}.btn:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.25)}
@media(max-width:700px){.reward-history-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-head{display:block}.timeline-head .status-badge{display:inline-flex;margin-top:8px}.data-table th,.data-table td{padding:11px 12px}.section-heading-row{align-items:flex-start}.coin-ledger-section .section-heading-row{flex-wrap:wrap}}
.admin-redemption-section{margin-top:38px}.reward-admin-summary{margin-bottom:16px}.admin-history-filter{padding:18px;margin-bottom:16px}.filter-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;align-items:end}.filter-actions{display:flex;gap:8px;grid-column:1/-1}.admin-redemption-list{display:grid;gap:14px}.admin-redemption-item{padding:18px}.redemption-main{display:flex;gap:14px}.redemption-order-icon{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;flex:0 0 auto}.redemption-order-icon.pending{background:#fff7ed}.redemption-order-icon.approved,.redemption-order-icon.completed{background:#ecfdf5}.redemption-order-icon.preparing,.redemption-order-icon.shipped{background:#eff6ff}.redemption-order-icon.cancelled{background:#fef2f2}.redemption-info{min-width:0;flex:1}.redemption-title-row{display:flex;justify-content:space-between;gap:12px}.redemption-title-row h3{margin:2px 0 0}.admin-note-display,.refund-note{margin-top:10px;padding:10px 12px;border-radius:10px;background:#f8fafc}.refund-note{background:#ecfdf5;color:#047857}.redemption-update-form{display:grid;grid-template-columns:minmax(160px,220px) 1fr auto;gap:10px;align-items:end;margin-top:16px;padding-top:14px;border-top:1px solid rgba(148,163,184,.22)}.redemption-update-form label{font-size:.82rem}.result-limit-note{text-align:center;color:var(--muted,#6b7280);font-size:.85rem}.btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:850px){.filter-grid{grid-template-columns:1fr 1fr}.redemption-update-form{grid-template-columns:1fr}.redemption-title-row{flex-direction:column}.reward-admin-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.filter-grid{grid-template-columns:1fr}.filter-actions{flex-direction:column}.redemption-main{align-items:flex-start}}

img {
  width: 100%;
  height: auto;
}
