:root,.theme-base{--color-bg: #faf7f2;--color-surface: #ffffff;--color-border: #e7e0d4;--color-text: #2b2622;--color-muted: #8a8178;--color-primary: #b08968;--color-accent: #c9a227;--color-on-accent: #ffffff;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Be Vietnam Pro", system-ui, -apple-system, sans-serif;--radius: 14px;--shadow: 0 8px 30px rgba(43, 38, 34, .08);--transition: .22s ease}.theme-bridgerton{--color-bg: #eef2fb;--color-surface: #ffffff;--color-border: #dcd3ec;--color-text: #3a2f4a;--color-muted: #8d7fa6;--color-primary: #7c6bb0;--color-accent: #c8a951;--color-on-accent: #2b2440;--font-display: "Playfair Display", Georgia, serif;--font-body: "Be Vietnam Pro", system-ui, -apple-system, sans-serif;--radius: 18px;--shadow: 0 10px 40px rgba(124, 107, 176, .18);--transition: .26s cubic-bezier(.22, 1, .36, 1)}.theme-hogwarts{--color-bg: #f3ead6;--color-surface: #fbf6ea;--color-border: #d8c6a0;--color-text: #2a2118;--color-muted: #7a6a52;--color-primary: #7b1f2b;--color-accent: #b8860b;--color-on-accent: #1c1710;--font-display: "Cinzel", "Playfair Display", serif;--font-body: "Be Vietnam Pro", system-ui, -apple-system, sans-serif;--radius: 10px;--shadow: 0 10px 40px rgba(42, 33, 24, .22);--transition: .26s ease}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;will-change:opacity,transform}.reveal--in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}body{margin:0;min-height:100dvh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased;transition:background var(--transition),color var(--transition)}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.15}a{color:var(--color-primary);text-decoration:none}.container{width:min(100% - 2rem,1080px);margin-inline:auto}.section-anchor{scroll-margin-top:5rem}.section{padding:clamp(2rem,6vh,4rem) 0}.section>h2{text-align:center;font-size:clamp(1.75rem,5vw,2.5rem);margin:0 0 2rem}.section.center{text-align:center}.section .lead{max-width:40ch;margin:0 auto;color:var(--color-muted)}.section .placeholder{max-width:40ch;margin:0 auto;color:var(--color-muted);font-style:italic}@media(prefers-reduced-motion:no-preference){::view-transition-old(root),::view-transition-new(root){animation-duration:.34s;animation-timing-function:cubic-bezier(.22,1,.36,1)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.panel{--panel-bar-h: 0px;--panel-accent: #c9a227;--panel-danger: #b3261e;--panel-ink: #23232a;--panel-muted: #6b6b73;--panel-soft: #8a8a90;--panel-line: #e3e3e8;--panel-field: #d6d6dc;--panel-bg: #f4f4f6}.panel .card{background:#fff;border:1px solid var(--panel-line);border-radius:12px;padding:1rem}.panel .head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.panel .head h1{margin:0}.panel .head-actions{display:flex;flex-wrap:wrap;gap:.6rem}.panel .error{margin:0 0 1rem;color:var(--panel-danger)}.panel .muted{color:var(--panel-muted)}.panel .stats,.panel .summary{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:.9rem;font-size:.9rem;color:#55555c}.panel .stats strong,.panel .summary strong{color:var(--panel-ink)}.panel .searchbar{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.panel .searchbar .search{flex:1 1 12rem;min-width:0}.panel .searchbar .count{font-size:.8rem;color:var(--panel-soft);white-space:nowrap}.panel .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.panel .table{width:100%;border-collapse:collapse;font-size:.92rem}.panel .table th,.panel .table td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid #eee;vertical-align:middle}.panel .table th{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--panel-soft)}.panel .table tbody tr:last-child td{border-bottom:none}.panel .row-actions{text-align:right;white-space:nowrap}.panel .grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.panel .span2{grid-column:1/-1}.panel label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;color:#44444c}.panel label.check{flex-direction:row;align-items:center;gap:.5rem}.panel label.check input{width:auto}.panel input,.panel select,.panel textarea{padding:.55rem .7rem;border:1px solid var(--panel-field);border-radius:8px;font:inherit;min-width:0}.panel input:focus,.panel select:focus,.panel textarea:focus{outline:none;border-color:var(--panel-accent)}.panel textarea{width:100%;resize:vertical}.panel .hint{font-size:.75rem;color:var(--panel-soft)}.panel .combo{position:relative}.panel .combo input{width:100%}.panel .combo-list{position:absolute;z-index:5;top:100%;left:0;right:0;margin:.2rem 0 0;padding:.25rem;list-style:none;max-height:220px;overflow-y:auto;background:#fff;border:1px solid var(--panel-field);border-radius:8px;box-shadow:0 8px 24px #0000001f}.panel .combo-list li{padding:.4rem .6rem;border-radius:6px;cursor:pointer;font-size:.88rem}.panel .combo-list li:hover{background:var(--panel-bg)}.panel .combo-list li.clear,.panel .combo-list li.none{color:var(--panel-soft)}.panel .combo-list li.none{cursor:default}.panel .combo-list li.none:hover{background:transparent}.panel .combo .chosen{margin:.35rem 0 0;font-size:.78rem;color:var(--panel-soft)}.panel .combo .chosen strong{color:var(--panel-ink)}.panel .actions{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;margin-top:1.25rem}.panel .ok{color:#1f7a39;font-weight:600;font-size:.9rem}.panel .primary{padding:.55rem 1.1rem;border:none;border-radius:8px;background:var(--panel-accent);color:var(--panel-ink);font:inherit;font-weight:600;cursor:pointer}.panel .primary:disabled{opacity:.6;cursor:default}.panel .ghost{padding:.45rem .8rem;border:1px solid var(--panel-field);border-radius:8px;background:#fff;color:#44444c;font:inherit;font-size:.85rem;cursor:pointer}.panel .ghost:hover{background:var(--panel-bg)}.panel .ghost.danger{color:var(--panel-danger);border-color:#e7c4c1}.panel .ghost.tiny{padding:.25rem .55rem;font-size:.75rem}@media(max-width:760px){.panel .card{padding:.85rem}.panel .head{flex-direction:column;align-items:stretch}.panel .head-actions>*{flex:1 1 auto}.panel .grid{grid-template-columns:1fr}.panel .actions{flex-direction:column-reverse;align-items:stretch}.panel .actions>button{width:100%;padding-block:.7rem}.panel input,.panel select,.panel textarea{font-size:16px}.panel .table th,.panel .table td{padding:.5rem .4rem}}body.theme-hogwarts{background-image:radial-gradient(ellipse at 18% 18%,rgba(120,90,40,.06),transparent 42%),radial-gradient(ellipse at 82% 28%,rgba(120,90,40,.05),transparent 46%),radial-gradient(ellipse at 50% 82%,rgba(90,60,20,.06),transparent 52%),repeating-linear-gradient(0deg,rgba(90,60,20,.02) 0 2px,transparent 2px 6px);background-attachment:fixed}body.theme-bridgerton{background-image:radial-gradient(circle at 25% 15%,rgba(124,107,176,.07),transparent 24%),radial-gradient(circle at 78% 42%,rgba(200,169,81,.06),transparent 20%),radial-gradient(circle at 45% 82%,rgba(124,107,176,.06),transparent 24%);background-size:420px 420px;background-attachment:fixed}body.theme-bridgerton .section h2:after,body.theme-hogwarts .section h2:after{content:"";display:block;width:140px;height:16px;margin:.6rem auto 0;background:center/contain no-repeat}body.theme-bridgerton .section h2:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='16' viewBox='0 0 140 16'><g stroke='%23c8a951' stroke-width='1.1' fill='none'><path d='M2 8 H56'/><path d='M84 8 H138'/></g><g fill='%23c8a951'><circle cx='70' cy='8' r='3'/><path d='M60 8 l6 -4 v8 z'/><path d='M80 8 l-6 -4 v8 z'/></g></svg>")}body.theme-hogwarts .section h2:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='16' viewBox='0 0 140 16'><g stroke='%23b8860b' stroke-width='1.1' fill='none'><path d='M2 8 H58'/><path d='M82 8 H138'/></g><path d='M70 2 l5 6 -5 6 -5 -6 z' fill='%23b8860b'/></svg>")}body.theme-bridgerton app-public-layout .hero .names:after,body.theme-hogwarts app-public-layout .hero .names:after{content:"";display:block;width:220px;height:20px;margin:.9rem auto .2rem;background:center/contain no-repeat}body.theme-bridgerton app-public-layout .hero .names:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='20' viewBox='0 0 220 20'><g stroke='%23c8a951' stroke-width='1.2' fill='none'><path d='M4 10 H88'/><path d='M132 10 H216'/></g><g fill='%23c8a951'><circle cx='110' cy='10' r='4'/><path d='M96 10 l8 -5 v10 z'/><path d='M124 10 l-8 -5 v10 z'/></g></svg>")}body.theme-hogwarts app-public-layout .hero .names:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='20' viewBox='0 0 220 20'><g stroke='%23b8860b' stroke-width='1.2' fill='none'><path d='M4 10 H92'/><path d='M128 10 H216'/></g><path d='M110 2 l7 8 -7 8 -7 -8 z' fill='%23b8860b'/></svg>")}body.theme-bridgerton app-public-layout .card{background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23c8a951' stroke-width='1.3'><path d='M3 23 V9 Q3 3 9 3 H23'/></svg>") top 10px left 10px/22px no-repeat,url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23c8a951' stroke-width='1.3'><path d='M21 1 V15 Q21 21 15 21 H1'/></svg>") bottom 10px right 10px/22px no-repeat,var(--color-surface)}body.theme-hogwarts app-public-layout .card{background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22' fill='none' stroke='%23b8860b' stroke-width='1.4'><path d='M2 16 V2 H16'/></svg>") top 10px left 10px/20px no-repeat,url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22' fill='none' stroke='%23b8860b' stroke-width='1.4'><path d='M20 6 V20 H6'/></svg>") bottom 10px right 10px/20px no-repeat,var(--color-surface)}app-public-layout main a:not([class]){background-image:linear-gradient(var(--color-accent),var(--color-accent));background-repeat:no-repeat;background-position:0 100%;background-size:0% 1.5px;transition:background-size .28s ease;text-decoration:none}app-public-layout main a:not([class]):hover{background-size:100% 1.5px}app-public-layout .claim-btn,app-public-layout .send,app-public-layout .btn.google,app-public-layout .btn.yes{transition:box-shadow .25s ease,transform .15s ease}app-public-layout .claim-btn:hover:not(:disabled),app-public-layout .send:hover:not(:disabled),app-public-layout .btn.google:hover,app-public-layout .btn.yes:hover:not(:disabled){box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,transparent),0 8px 22px color-mix(in srgb,var(--color-accent) 32%,transparent)}
