:root{--paper:#f7f4eb;--ink:#253e33;--muted:#62685b;--red:#a62f36;--red-dark:#88252b;--line:#deded0;--green:#254a3b;--gold:#947339;--white:#fffdf8;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-size:17px;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #2566a0;outline-offset:4px}::selection{background:#ead6c1}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400}button{border:0}a{text-underline-offset:5px}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.topline{background:var(--green);color:#fff9e9;min-height:37px;padding:10px 20px;text-align:center;font-size:.62rem;letter-spacing:.19em;font-weight:650}.topline span{margin-left:14px;color:#dec490}.header{display:flex;align-items:center;justify-content:space-between;padding-block:28px;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none}.brand-mark{display:inline-flex;align-items:baseline;font-family:Georgia,serif;font-size:2.3rem;letter-spacing:-.13em;position:relative;padding-right:9px;color:var(--red)}.brand-mark>span:not(.brand-star){font-size:1.3rem;letter-spacing:-.15em}.brand-star{font-size:.85rem;position:absolute;right:-2px;top:-8px;letter-spacing:0}.brand-copy{font-size:.78rem;font-weight:700;letter-spacing:.14em}.brand-copy small{display:block;font-size:.56rem;letter-spacing:.24em;font-weight:500;margin-top:8px}.header nav{display:flex;align-items:center;gap:30px;font-size:.8rem}.how-link{padding:15px 0;text-decoration:none}.how-link:hover{text-decoration:underline}.text-toggle{display:flex;align-items:center;gap:10px;padding:12px 16px;background:transparent;border:1px solid #d1d5c7;border-radius:6px;min-height:46px}.text-toggle>span{font-family:Georgia,serif;font-size:1.2rem}.text-toggle[aria-pressed=true]{background:#e4e9db;border-color:var(--green)}.bigger-a{font-size:1.4rem}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:28px;align-items:center;padding-top:57px;padding-bottom:51px}.eyebrow{font-size:.64rem;font-weight:700;letter-spacing:.17em;line-height:1.7}.hero .eyebrow{display:flex;align-items:center;gap:10px}.little-star{color:var(--red);font-size:1.15rem}h1{font-size:clamp(2.8rem,4.6vw,3.7rem);line-height:1.1;letter-spacing:-.045em;margin-top:22px}h1 em{color:var(--red);font-weight:400}.hero-description{font-size:.99rem;line-height:1.75;margin-top:24px;color:#576052}.primary{background:var(--red);color:#fffdf8;border:1px solid var(--red);border-radius:5px;min-height:54px;padding:16px 24px;font-weight:600;font-size:.88rem;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:22px;line-height:1.5;transition:background .15s}.primary:hover{background:var(--red-dark)}.primary:disabled{background:#e9e4d9;border-color:#e9e4d9;color:#746f64}.hero-cta{margin-top:29px}.hero-cta>span{font-size:1.25rem}.hero-note{margin-top:19px;font-size:.66rem;line-height:1.7;color:var(--muted);display:flex;gap:8px;align-items:center}.tiny-tree{font-size:1.2rem;color:var(--green)}.hero-art{align-self:stretch;min-height:390px;background:#eeeddf;border:1px solid #e4e2d3;border-radius:140px 140px 8px 8px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(1.3deg)}.art-grain{position:absolute;inset:0;opacity:.27;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23716d51' filter='url(%23n)' opacity='.23' d='M0 0h120v120H0z'/%3E%3C/svg%3E");pointer-events:none}.art-caption{position:absolute;top:52px;left:0;right:0;text-align:center;font-size:.55rem;letter-spacing:.2em;z-index:1;color:#4e5f4b}.christmas-art{width:100%;height:auto;margin-top:14px;margin-bottom:-12px;flex:1;min-height:0}.art-footer{position:relative;display:flex;justify-content:space-between;padding:0 28px 25px;align-items:center;gap:10px}.art-footer>span:first-child{font-family:Georgia,serif;font-size:.8rem;font-style:italic}.art-year{font-size:.47rem;letter-spacing:.14em}.promise-strip{border-block:1px solid var(--line);display:flex;justify-content:center;gap:70px;padding-block:19px;font-size:.76rem}.promise-strip>span{display:flex;align-items:center;gap:10px}.promise-strip>span>span{font-size:1.25rem;color:var(--red);line-height:1}.santa-section{padding-top:54px;scroll-margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.section-heading .eyebrow{color:var(--red);font-size:.61rem}h2{font-size:2.05rem;letter-spacing:-.035em;line-height:1.25;margin-top:8px}.handwritten{font-family:Georgia,serif;font-style:italic;font-size:1rem;margin:20px 10px 0 20px;transform:rotate(-5deg);color:#6a735d}.handwritten>span{display:block;text-align:center;margin-top:1px;font-size:1.8rem;line-height:1}.santa-layout{display:grid;grid-template-columns:1.57fr 1fr;gap:32px;align-items:start}.draw-card{background:var(--white);border:1px solid var(--line);border-radius:9px;padding:29px 31px;box-shadow:0 4px 18px #26332304}.steps{display:flex;list-style:none;padding:0 0 24px;margin:0 0 28px;border-bottom:1px solid var(--line);gap:30px}.steps li{font-size:.76rem;font-weight:600;display:flex;gap:10px;align-items:center;color:#707365}.steps li>span{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:50%;background:#edece3;font-size:.7rem}.steps li[aria-current=step]{color:var(--green)}.steps li[aria-current=step]>span{background:var(--green);color:white}h3{font-size:1.42rem;line-height:1.3;letter-spacing:-.025em}.muted{color:var(--muted);font-size:.84rem;line-height:1.75;margin-top:9px}#name-form{margin-top:25px}label{display:block;font-size:.8rem;font-weight:650;line-height:1.5}.label-hint{font-size:.7rem;font-weight:400;color:var(--muted);margin-left:9px}.name-entry{display:flex;gap:9px;margin-top:8px}input,select{width:100%;min-height:52px;padding:12px 14px;background:#fffdf9;border:1px solid #b6beaf;border-radius:5px;color:var(--ink);font-size:1rem}input::placeholder{color:#74786d;opacity:1}.name-entry input{min-width:0;flex:1}.add-button{background:var(--green);color:white;padding:10px 18px;border-radius:5px;font-size:.8rem;font-weight:600;white-space:nowrap;display:flex;gap:8px;align-items:center}.add-button:hover{background:#17392b}.add-button>span{font-size:1.2rem;font-weight:400}.field-help{font-size:.67rem;line-height:1.6;color:var(--muted);margin-top:7px}.error{color:#9a252c;font-size:.78rem;line-height:1.6}.error:not(:empty){margin-top:8px}.guest-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:26px;font-size:.69rem;color:var(--muted)}.guest-heading h4{font-size:.76rem;color:var(--ink);font-weight:600}.guest-heading h4 span{display:inline-flex;min-width:23px;height:23px;align-items:center;justify-content:center;margin-left:5px;border-radius:50%;background:#eeeee5;font-size:.66rem}.guest-list{list-style:none;padding:0;margin:13px 0 0;display:flex;flex-wrap:wrap;gap:8px;max-height:280px;overflow-y:auto}.guest-list:empty{display:none}.guest-list li{display:inline-flex;align-items:center;padding-left:13px;max-width:100%;border:1px solid #e0e4d7;background:#f0f3e9;border-radius:5px;font-size:.83rem;overflow-wrap:anywhere}.guest-list button{display:flex;justify-content:center;align-items:center;flex-shrink:0;min-width:44px;min-height:44px;font-size:1.2rem;background:transparent;color:#52634c}.guest-list button:hover{background:#dfe7d6}.empty-guests{padding:20px 10px;display:flex;align-items:center;justify-content:center;gap:13px;border:1px dashed #d8dbce;border-radius:5px;margin-top:13px;color:var(--muted)}.empty-guests p{font-size:.75rem;line-height:1.7}.empty-star{font-size:2rem;color:#9b895c}.budget-row{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:24px;padding-top:22px}.budget-row .field-help{margin-top:3px}.budget-input{display:flex;position:relative;flex-shrink:0;align-items:center;width:88px}.budget-input>span{position:absolute;left:13px;color:var(--muted)}.budget-input input{padding-left:29px;min-height:46px}.draw-button{width:100%;justify-content:space-between;margin-top:24px;padding-inline:20px}.draw-button>span{font-size:1.3rem;line-height:1}.draw-note{text-align:center;font-size:.67rem;color:var(--muted);line-height:1.7;margin-top:11px}.how-card{background:#ebeee3;border:1px solid #e2e5d6;border-radius:8px;padding:29px 28px}.how-card .eyebrow{font-size:.58rem;color:#53654b}.how-card h3{font-size:1.9rem;margin-top:14px;line-height:1.15}.how-list{list-style:none;padding:0;margin:28px 0 0}.how-list li{display:flex;gap:16px;margin-top:24px}.how-list li>span{font-family:Georgia,serif;color:#698062;font-size:.88rem;padding-top:3px}.how-list h4{font-size:.8rem;line-height:1.6;font-weight:650}.how-list p{font-size:.77rem;color:#57634e;line-height:1.8;margin-top:4px}.thought-note{display:flex;gap:15px;padding:25px 18px}.thought-note>span{color:var(--red);font-size:1.8rem;line-height:1}.thought-note h4{font-size:.77rem;line-height:1.5}.thought-note p{font-size:.73rem;color:var(--muted);line-height:1.8;margin-top:5px}.closing{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:58px;margin-bottom:40px;padding:30px 10px;border-block:1px solid var(--line)}.closing p{font-family:Georgia,serif;font-size:1.07rem;text-align:center;line-height:1.7}.closing p em{color:#737b64}.closing>span{color:var(--red);font-size:1.4rem}.footer{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;padding-bottom:28px;color:var(--muted);font-size:.64rem;line-height:1.8}.footer>span{font-size:.57rem;font-weight:600;letter-spacing:.12em}.footer>span>span[aria-hidden]{margin:0 8px;color:var(--red)}.local-note{flex-basis:100%;text-align:center;font-size:.59rem;margin-top:0}#results-panel label{margin-top:24px}#person-select{margin-top:8px}#choose-panel{text-align:center}#choose-panel label{text-align:left}.ready-icon{font-size:3rem;line-height:1.5;color:var(--red)}.privacy-note{font-size:.69rem;color:var(--muted);line-height:1.7;background:#f3f1e9;padding:13px 16px;border-radius:5px;margin-top:22px;text-align:left}.reveal-panel{text-align:center;padding-top:20px}.reveal-star{font-size:3.2rem;color:#9b7842;margin-block:16px}.recipient{font-family:Georgia,serif;font-size:clamp(2rem,5vw,3.2rem);line-height:1.2;color:var(--red);margin-top:16px;overflow-wrap:anywhere}.reveal-budget{font-size:.83rem;margin-top:20px;font-weight:600}.reveal-panel .draw-button{margin-top:32px}.result-footer{border-top:1px solid var(--line);margin-top:25px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.65rem;line-height:1.7}.plain-button{background:transparent;text-decoration:underline;text-underline-offset:4px;font-size:.72rem;padding:12px 0;min-height:44px}.storage-note{font-size:.75rem;line-height:1.7;background:#fff0d5;border:1px solid #ac874c;padding:12px;margin-top:18px}.skip-link{position:fixed;left:16px;top:-100px;background:white;z-index:10;padding:16px;border:2px solid var(--green)}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}dialog{width:min(510px,calc(100% - 32px));border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink);padding:30px;box-shadow:0 16px 100px #17292033}dialog::backdrop{background:#142a20aa}dialog h2{font-size:1.9rem}dialog p:not(.eyebrow){font-size:.9rem;line-height:1.8;margin-top:18px}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.dialog-actions button{flex:1}.secondary{padding:13px 18px;min-height:54px;border:1px solid #9aa88e;border-radius:5px;background:#ecf0e4;font-size:.88rem;font-weight:600}.no-script{position:fixed;bottom:0;left:0;right:0;padding:24px;background:#fff0d5;text-align:center}.large-text{font-size:21px}.large-text .hero{grid-template-columns:1.25fr 1fr}.large-text h1{font-size:3rem}.large-text .santa-layout{grid-template-columns:1.4fr 1fr}.large-text .promise-strip{gap:34px}
@media(min-width:1450px){.wrap{width:min(1280px,calc(100% - 144px))}.hero{padding-block:65px;gap:60px}h1{font-size:4rem}.hero-art{max-height:440px}.hero-copy{padding-block:10px}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero{gap:20px}.hero-art{min-height:350px}.art-caption{top:40px;font-size:.45rem}.art-footer{padding:0 19px 22px}.art-footer>span:first-child{font-size:.65rem}.art-year{font-size:.4rem}.hero-description{font-size:.9rem}.hero-note{font-size:.6rem}.promise-strip{gap:28px}.santa-layout{gap:22px;grid-template-columns:1.35fr 1fr}.draw-card{padding:25px 23px}.how-card{padding:26px 23px}.handwritten{font-size:.85rem}.large-text .hero,.large-text .santa-layout{grid-template-columns:1fr}.large-text .hero-art{display:none}.large-text .side-notes{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.large-text .promise-strip{flex-wrap:wrap;gap:16px 30px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.topline{font-size:.49rem;letter-spacing:.13em;padding:11px 12px;min-height:34px}.topline span{margin-left:5px}.header{padding-block:21px;gap:12px}.brand{gap:10px}.brand-mark{font-size:1.9rem}.brand-copy{font-size:.62rem;letter-spacing:.1em}.brand-copy small{font-size:.45rem;letter-spacing:.16em;margin-top:5px}.header nav{gap:0}.how-link{display:none}.text-toggle{padding:9px 10px;font-size:.68rem;gap:5px;min-height:46px}.text-toggle>span{font-size:1rem}.bigger-a{font-size:1.1rem}.hero{grid-template-columns:1fr;padding-top:31px;padding-bottom:30px;gap:28px}.hero .eyebrow{font-size:.55rem;letter-spacing:.13em;gap:7px}.hero-copy{padding-inline:4px}h1{font-size:clamp(2.5rem,9vw,3.6rem);margin-top:17px;line-height:1.12}.hero-description{font-size:.92rem;margin-top:20px;line-height:1.8}.hero-cta{margin-top:23px;min-height:56px;padding-inline:22px;font-size:.9rem}.hero-note{font-size:.64rem;margin-top:14px;gap:6px}.hero-art{min-height:0;border-radius:100px 100px 6px 6px;max-width:450px;width:100%;justify-self:center;transform:rotate(1deg)}.christmas-art{margin-top:-11px;max-height:310px;margin-bottom:-22px}.art-caption{top:29px;font-size:.47rem}.art-footer{padding:0 23px 20px}.art-footer>span:first-child{font-size:.75rem}.art-year{font-size:.43rem}.promise-strip{gap:11px;padding:16px 0;justify-content:space-between}.promise-strip>span{flex-direction:column;gap:7px;max-width:33.33%;text-align:center;font-size:.59rem;line-height:1.6}.promise-strip>span>span{font-size:1.2rem}.santa-section{padding-top:34px;scroll-margin-top:12px}.section-heading{margin-bottom:20px}.section-heading .eyebrow{font-size:.54rem;letter-spacing:.13em}.section-heading h2{font-size:1.8rem;margin-top:10px}.handwritten{display:none}.santa-layout{grid-template-columns:1fr;gap:23px}.draw-card{padding:23px 19px}.steps{gap:24px;padding-bottom:22px;margin-bottom:23px}.steps li{font-size:.73rem;gap:8px}h3{font-size:1.38rem}.muted{font-size:.84rem}#name-form{margin-top:23px}label{font-size:.83rem}.label-hint{font-size:.68rem}.name-entry{gap:7px}.name-entry input{padding-inline:11px}.add-button{font-size:.74rem;padding-inline:12px;gap:5px}.guest-heading{font-size:.65rem}.guest-heading h4{font-size:.73rem}.empty-guests{gap:10px;padding:19px 8px}.empty-guests p{font-size:.7rem}.budget-row{gap:10px}.budget-row label{font-size:.79rem}.budget-row .field-help{font-size:.65rem;max-width:215px}.budget-input{width:77px}.draw-button{font-size:.84rem;padding-inline:17px;min-height:56px}.how-card{padding:25px}.how-card h3{font-size:1.85rem}.how-card h3 br{display:none}.how-list{margin-top:22px}.how-list li{margin-top:20px}.how-list h4{font-size:.84rem}.how-list p{font-size:.8rem}.thought-note{padding:23px 13px 7px}.thought-note h4{font-size:.8rem}.thought-note p{font-size:.77rem}.closing{margin-top:34px;margin-bottom:26px;gap:12px;padding-block:24px}.closing p{font-size:.97rem}.closing p em{display:block}.closing>span{font-size:1rem}.footer{flex-direction:column;text-align:center;gap:9px;padding-bottom:max(25px,env(safe-area-inset-bottom));font-size:.62rem}.footer>span{font-size:.55rem}.local-note{font-size:.6rem;max-width:250px;margin-inline:auto}.recipient{font-size:2.5rem}.large-text h1{font-size:2.6rem}.large-text .hero-art{display:flex}.large-text .brand-copy{font-size:.52rem}.large-text .brand-copy small{font-size:.4rem}.large-text .header{gap:7px}.large-text .text-toggle{font-size:.6rem;padding-inline:8px}.large-text .text-toggle>span{display:none}.large-text .side-notes{display:block}.large-text .name-entry{flex-wrap:wrap}.large-text .name-entry input{flex-basis:100%}.large-text .add-button{min-height:48px;width:100%;justify-content:center}.large-text .section-heading h2{font-size:1.65rem}.large-text .promise-strip{gap:11px}.large-text .steps{gap:13px}.large-text .steps li{font-size:.66rem}.large-text .guest-heading{flex-wrap:wrap}.large-text .budget-row{align-items:flex-start}.large-text .result-footer{font-size:.7rem}.large-text .art-caption{font-size:.4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.topline,.hero,.promise-strip,.side-notes,.closing,.footer,.header,.steps,.section-heading{display:none}.wrap{width:100%}.santa-layout{display:block}.draw-card{border:0}.santa-section{padding:0}#reveal-panel{display:none!important}#results-panel::before{content:"Your Secret Santa draw is private. Open your envelope in the browser."}.draw-button,.result-footer,#choose-panel{display:none}}

/* Keep all task instructions readable, including on small phones. */
.muted{font-size:.94rem}.field-help,.draw-note,.privacy-note,.empty-guests p,.budget-row .field-help{font-size:.82rem}.how-list p,.thought-note p{font-size:.88rem}.guest-heading h4,.guest-heading>span,label,.budget-row label,.how-list h4,.thought-note h4{font-size:.88rem}.result-footer{font-size:.78rem}.label-hint{font-size:.78rem}.text-toggle{font-size:.82rem}.draw-button,.add-button{font-size:.9rem}
@media(max-width:700px){.text-toggle{font-size:.72rem}.add-button{font-size:.79rem;padding-inline:11px}.budget-row{flex-wrap:wrap}.large-text .text-toggle{font-size:.6rem}}

.hero-description{max-width:35rem}.footer{margin-top:46px;padding-top:25px;border-top:1px solid var(--line)}#draw-update-note{margin:0 0 22px}.how-card h3{margin-top:0}

/* Account and admin sections share the existing Christmas colours. */
.account-section{padding-block:24px 40px;scroll-margin-top:24px}.account-label{font-size:.86rem;max-width:180px;overflow-wrap:anywhere}.login-card,.member-card,.admin-card{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:32px}.login-card{max-width:600px;margin:0 auto}.login-card h2{margin-top:14px;font-size:2.2rem}.login-card form{margin-top:26px}.code-entry{display:flex;gap:8px;margin-top:8px}.code-entry input{min-width:0;font-family:monospace}.remember-note{margin-top:22px;border-top:1px solid var(--line);padding-top:16px}.account-section .section-heading{display:block;margin-bottom:22px}.member-card{max-width:650px}.summary-line{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:24px}.summary-line strong{font-size:1.4rem}.member-card .field-help{margin-top:20px}.member-card .reveal-panel{padding:0 0 20px}.member-card .reveal-panel .secondary{margin-top:22px}.admin-panel{margin-top:48px}.admin-nav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.admin-nav a{padding:12px 18px;border:1px solid var(--line);border-radius:5px;font-size:.9rem;background:#ebeee3;text-decoration:none}.admin-nav a:hover{background:#dfe7d6}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.members-card{grid-column:1/-1}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.count-badge{padding:6px 10px;background:#ebeee3;border-radius:5px;font-size:.86rem}.admin-form{display:grid;grid-template-columns:1fr 170px auto;gap:12px;align-items:end;margin-top:24px}.admin-form input,.admin-form select{margin-top:7px}.admin-form .primary{min-height:52px;justify-content:center}.table-scroll{overflow-x:auto;margin-top:24px}.members-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.members-table th,.members-table td{padding:15px 10px;border-top:1px solid var(--line);vertical-align:middle}.members-table thead th{font-size:.8rem;color:var(--muted);font-weight:500}.members-table tbody th{font-weight:600;overflow-wrap:anywhere;min-width:120px}.members-table select{min-height:44px;max-width:160px;font-size:.86rem;padding:9px}.member-actions{min-width:175px}.table-button{min-height:44px;padding:9px 12px;margin:3px;border:1px solid #9aa88e;border-radius:5px;background:#ecf0e4;font-size:.8rem}.danger-button{color:#8a242b;background:#fbefec;border-color:#d5b8b8}.admin-card form:not(.admin-form){display:grid;gap:12px;margin-top:24px}.admin-card>button{margin-top:20px}.admin-card .primary{justify-content:center}.account-status{font-size:.95rem;line-height:1.6;margin-top:22px;overflow-wrap:anywhere}#new-code{width:100%;font-family:monospace;font-size:1rem;padding:12px;resize:vertical;margin-top:8px;border:1px solid #9aa88e;border-radius:5px;background:#fffdf9}#code-dialog label{margin-top:24px}#copy-status{font-size:.9rem}button:disabled{cursor:default;opacity:.55}.admin-card,.member-card{scroll-margin-top:22px}
@media(max-width:700px){.login-card,.member-card,.admin-card{padding:23px 19px}.admin-grid{grid-template-columns:1fr}.members-card{grid-column:auto}.admin-form{grid-template-columns:1fr}.account-label{display:none}.account-section{padding-top:12px}.admin-nav{gap:7px}.admin-nav a{padding:12px 14px}.members-table th,.members-table td{padding:12px 6px}.member-actions{min-width:140px}.members-table tbody th{min-width:95px}.members-table select{min-width:100px}.table-button{display:block;width:100%;margin:5px 0}.admin-panel{margin-top:34px}.large-text .code-entry{flex-wrap:wrap}.large-text .code-entry input{flex-basis:100%}}
@media print{#account,#code-dialog,#confirm-dialog{display:none!important}}

.account-section .account-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px}.account-heading>div{min-width:0}.account-heading h2{overflow-wrap:anywhere}.account-heading>button{flex-shrink:0}

/* A calm, readable account view. Browser zoom and text spacing remain unrestricted. */
.text-toggle #text-toggle-label{display:inline;font:inherit}.recipient-label{font-size:.8rem;font-weight:700;letter-spacing:.12em;line-height:1.7}.simple-help{margin-top:24px;font-size:1rem;line-height:1.7}.oldies-view{font-size:137.5%;scroll-behavior:auto;--paper:#fff;--white:#fff;--ink:#172d25;--muted:#33483f;--red:#84242c;--red-dark:#651b22;--green:#173d2c;--line:#8e9b92}.oldies-view.large-text{font-size:162.5%}.oldies-view *{animation:none!important;transition:none!important;scroll-behavior:auto!important;box-sizing:border-box}.oldies-view body{line-height:1.65}.oldies-view .wrap{width:min(36rem,calc(100% - 32px))}.oldies-view .hero,.oldies-view .footer,.oldies-view .brand-mark,.oldies-view .brand-copy small,.oldies-view .account-label,.oldies-view .eyebrow{display:none}.oldies-view .header{padding-block:20px;gap:18px;flex-wrap:wrap}.oldies-view .brand{min-height:60px;min-width:60px}.oldies-view .brand-copy{font-size:1rem;line-height:1.5;letter-spacing:.035em}.oldies-view .header nav{gap:12px;flex-wrap:wrap;min-width:0}.oldies-view h1,.oldies-view h2,.oldies-view h3{font-family:inherit;font-weight:700;letter-spacing:normal;line-height:1.35;overflow-wrap:anywhere}.oldies-view h2{font-size:1.65rem}.oldies-view h3{font-size:1.25rem}.oldies-view .account-section{padding-block:24px 40px}.oldies-view .account-heading{margin-bottom:24px}.oldies-view .member-card,.oldies-view .login-card{max-width:none;padding:24px;border:2px solid #8e9b92;box-shadow:none}.oldies-view .member-card .summary-line{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;padding-bottom:20px;margin-bottom:24px;border-color:#8e9b92}.oldies-view .summary-line strong{font-size:1.65rem;line-height:1.35}.oldies-view p,.oldies-view label,.oldies-view input,.oldies-view select,.oldies-view .muted,.oldies-view .field-help,.oldies-view .error,.oldies-view .account-status,.oldies-view .remember-note{font-size:1rem;line-height:1.7;letter-spacing:normal;overflow-wrap:anywhere}.oldies-view .muted,.oldies-view .field-help{color:#33483f}.oldies-view .member-card p{margin-top:18px}.oldies-view button,.oldies-view .text-toggle{min-width:64px;min-height:64px;padding:16px 20px;font-size:1rem;line-height:1.5;white-space:normal;overflow-wrap:anywhere;border-width:2px}.oldies-view .draw-button,.oldies-view #hide-result,.oldies-view #retry-button{width:100%;justify-content:center;margin-top:24px}.oldies-view .primary{background:#84242c;color:#fff;border-color:#84242c}.oldies-view .primary:hover{background:#651b22}.oldies-view .secondary,.oldies-view .text-toggle{background:#f0f4ef;color:#172d25;border-color:#4d6558}.oldies-view input,.oldies-view select{min-height:64px;border:2px solid #4d6558}.oldies-view .code-entry{flex-wrap:wrap;gap:14px}.oldies-view .code-entry input{flex:1 1 100%;min-width:0}.oldies-view .login-card h2{font-size:1.65rem}.oldies-view .reveal-panel{padding-top:22px;text-align:left}.oldies-view .recipient-label{font-size:1rem;line-height:1.7;letter-spacing:normal;font-weight:600}.oldies-view .recipient{font-size:2rem;color:#172d25;line-height:1.4;margin-top:12px;padding:12px 0;font-weight:700;overflow-wrap:anywhere}.oldies-view .simple-help{padding-top:24px;border-top:1px solid #8e9b92}.oldies-view .storage-note,.oldies-view .account-status:not(:empty){background:#f0f4ef;color:#172d25;border:2px solid #4d6558;border-radius:6px;padding:20px;margin-top:24px}.oldies-view .error,.oldies-view .is-error{color:#781c24}.oldies-view .account-status.is-error{border-color:#781c24;background:#fff4f3}.oldies-view :is(button,a,input,select):focus-visible,.oldies-view :is(#account,#welcome-title,#recipient-name,#account-title):focus{outline:4px solid #005a9c;outline-offset:5px}.oldies-view .skip-link{font-size:1rem;line-height:1.5}.oldies-view .member-card,.oldies-view .login-card,.oldies-view .account-heading>div{min-width:0}
@media(max-width:420px){.oldies-view .member-card,.oldies-view .login-card{padding:20px}.oldies-view .header nav,.oldies-view .text-toggle{width:100%}.oldies-view .text-toggle{justify-content:center}}
@media(forced-colors:active){.oldies-view button,.oldies-view input,.oldies-view .member-card{border-color:ButtonText}.oldies-view :focus-visible{outline-color:Highlight}}

/* A little Christmas colour beside the accessible text-size control. */
.header-tree{display:none}
.oldies-view .header nav{flex-wrap:nowrap}
.oldies-view .text-toggle{flex:1;min-width:64px;width:auto}
.oldies-view .header-tree{display:block;flex:0 0 48px;width:48px;height:60px}
