:root{color:#443b39;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--wine:#7e3045;--wine-dark:#652538;--wine-soft:#f4e9e9;--ink:#443b39;--muted:#92877f;--border:#e9e3db;--paper:#fffdfa;--serif:"Songti SC", "STSong", "Noto Serif CJK SC", "SimSun", Georgia, serif;background:#f8f6f2;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{min-width:360px;margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{opacity:.42;cursor:not-allowed}input,textarea{color:var(--ink)}input::placeholder,textarea::placeholder{color:#a79b93}input:disabled{cursor:not-allowed}button,a,input,textarea,select{outline-offset:4px}:focus-visible{outline:2px solid var(--wine)}input,textarea{outline-offset:1px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}svg{flex-shrink:0}::selection{color:#642838;background:#efd3d8}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:#dcd1c9;border-radius:10px}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app{min-height:100vh}.site-header{border-bottom:1px solid var(--border);background:#fcfaf7;height:88px}.header-inner{justify-content:space-between;align-items:center;gap:20px;max-width:1360px;height:100%;margin:0 auto;padding:0 40px;display:flex}.brand{flex-shrink:0;align-items:center;gap:13px;display:flex}.brand-emblem{width:46px;height:46px;color:var(--wine);outline-offset:4px;border:1px solid #cfb9b1;border-radius:50%;outline:1px solid #e6d9d1;place-items:center;display:grid}.brand strong{font-family:var(--serif);letter-spacing:3px;color:var(--wine);font-size:24px;font-weight:600;line-height:1.4;display:block}.brand-dot{font-family:Georgia,serif;font-size:32px;line-height:.5}.brand small{letter-spacing:1.8px;color:#9c8d83;margin-top:3px;font-size:8px;display:block}.header-actions{align-items:center;gap:15px;display:flex}.saved-indicator{color:#847f72;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.saved-indicator>span{background:#849179;border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #85937810}.saved-indicator.save-error{color:#ad5f32}.saved-indicator.save-error>span{background:#ad5f32}.header-divider{background:var(--border);width:1px;height:20px;margin:0 3px}.button{letter-spacing:.3px;white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:39px;padding:9px 15px;font-size:12px;font-weight:500;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}.button:not(:disabled):active{transform:translateY(1px)}.button-primary{background:var(--wine);color:#fff9f5;border-color:var(--wine)}.button-primary:not(:disabled):hover{background:var(--wine-dark);border-color:var(--wine-dark)}.button-secondary{background:#fffdf9;border-color:#dfd5cb}.button-secondary:not(:disabled):hover{background:#f6efe8;border-color:#c9b9ad}.button-quiet{color:var(--wine);background:#f6f1eb}.button-quiet:hover{background:#efe6df}.icon-button{color:#8b7c72;border-radius:5px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .2s;display:inline-flex}.icon-button:not(:disabled):hover{color:var(--wine);background:#efe6df}.text-button{color:var(--wine);justify-content:center;align-items:center;gap:6px;padding:4px 0;font-size:12px;line-height:1.5;display:inline-flex}.text-button:not(:disabled):hover{color:var(--wine-dark);text-underline-offset:4px;text-decoration:underline}.text-button.muted{color:#8c8077}.main-layout{max-width:1360px;margin:0 auto;padding:0 40px}.page-intro{justify-content:space-between;align-items:center;gap:32px;padding:38px 0 33px;display:flex}.intro-eyebrow{letter-spacing:2.1px;color:#9b8876;align-items:center;gap:8px;font-family:Georgia,serif;font-size:10px;display:flex}.intro-eyebrow>span{background:#b29a83;width:17px;height:1px}.page-intro h1{width:fit-content;font-size:38px;line-height:1.65;font-family:var(--serif);letter-spacing:2px;color:#493b34;font-weight:500;position:relative}.page-intro h1>span{color:var(--wine)}.page-intro h1>.management-label{vertical-align:middle;letter-spacing:1px;color:#937c69;border:1px solid #e2d4c9;border-radius:4px;margin-left:16px;padding:5px 9px;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:11px;line-height:1.4;display:inline-block}.wedding-signature{text-align:center;flex-direction:column;align-items:center;gap:6px;max-width:45%;padding-top:3px;display:flex}.eyebrow{letter-spacing:1.6px;color:#a38e7a;font-family:Georgia,serif;font-size:9px}.wedding-signature .eyebrow{letter-spacing:1.5px;font-size:8px}.wedding-signature>div{color:#ab8878;align-items:center;gap:10px;margin-top:5px;display:flex}.signature-line{background:#d9c7b6;width:37px;height:1px}.wedding-signature strong{color:var(--wine);font-family:var(--serif);letter-spacing:2px;overflow-wrap:anywhere;font-size:23px;font-weight:500}.wedding-signature>span:last-child{color:#a08e80;letter-spacing:1px;font-size:10px}.management-stats{border:1px solid var(--border);background:#fffcf8;border-radius:9px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px;display:grid}.management-stats>div{align-items:center;gap:12px;min-width:0;padding:23px;display:flex;position:relative}.management-stats>div+div:before{content:"";background:var(--border);width:1px;height:36px;position:absolute;left:0}.overview-icon{color:#947858;background:#f1e9df;border-radius:50%;flex-shrink:0;place-items:center;width:37px;height:37px;display:grid}.management-stats>div:nth-child(2) .overview-icon{color:#7b8669;background:#edf0e7}.management-stats>div:nth-child(3) .overview-icon{color:var(--wine);background:#f5e8e8}.management-stats>div>span:not(.overview-icon){color:#827366;white-space:nowrap;font-size:13px}.management-stats strong{font-variant-numeric:tabular-nums;color:#5a453c;margin-left:auto;font-family:Georgia,serif;font-size:32px;font-weight:400}.management-stats small{color:#9a8779;margin-left:7px;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:11px}.management-layout{grid-template-columns:310px minmax(0,1fr);align-items:stretch;gap:24px;display:grid}.management-layout>.history-panel{grid-area:1/2;min-width:0}.management-layout>.guest-panel{grid-area:1/1;height:100%;min-height:570px;max-height:740px}.paper-panel{background:var(--paper);border:1px solid var(--border);border-radius:9px}.guest-panel{flex-direction:column;min-height:550px;max-height:610px;display:flex;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:10px;padding:23px 21px 18px;display:flex}.heading-with-icon{color:#7c6255;align-items:center;gap:8px;display:flex}.heading-with-icon h2{letter-spacing:1px;color:#4e443c;white-space:nowrap;font-size:14px;font-weight:600}.small-label{letter-spacing:1.2px;color:#b1a194;font-size:9px}.count-badge{color:#927b68;text-align:center;font-variant-numeric:tabular-nums;background:#f2ede5;border-radius:4px;min-width:21px;padding:2px 6px;font-size:10px}.add-guests{min-height:41px;margin:0 20px 15px}.search-box{color:#a79889;background:#f8f5f0;border:1px solid #eee8e0;border-radius:5px;align-items:center;gap:9px;height:36px;margin:0 20px;padding:0 10px;display:flex}.search-box input{background:0 0;border:0;width:100%;min-width:0;height:100%;font-size:11px}.search-box:focus-within{border-color:#b98f92}.search-box input:focus{outline:none}.search-box button{padding:0;font-size:20px}.guest-filters{border-bottom:1px solid var(--border);gap:18px;margin:16px 20px 0;display:flex}.guest-filters button{color:#9e9186;white-space:nowrap;padding:0 0 12px;font-size:11px;position:relative}.guest-filters button.active{color:var(--wine)}.guest-filters button.active:after{content:"";background:var(--wine);height:2px;position:absolute;bottom:-1px;left:0;right:0}.guest-filters button>span{margin-left:5px;font-size:10px}.guest-scroll{flex:1;min-height:260px;padding:0 20px;overflow-y:auto}.guest-empty{flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:290px;padding-bottom:15px;display:flex}.empty-illustration{color:#b2947b;outline-offset:5px;background:#f8f3ec;border:1px solid #e6d7c8;border-radius:50%;outline:1px dashed #e8ddcf;place-items:center;width:78px;height:78px;margin-bottom:24px;display:grid;position:relative}.little-star{color:#b99d80;position:absolute}.star-one{font-size:23px;top:-7px;right:-5px}.star-two{font-size:11px;bottom:4px;left:-13px}.guest-empty h3{font-family:var(--serif);letter-spacing:1px;font-size:17px;font-weight:500}.guest-empty p{color:#a09286;text-align:center;margin:12px 0 20px;font-size:11px;line-height:1.9}.guest-empty .text-button{gap:10px;font-size:11px}.guest-panel-footer{border-top:1px solid var(--border);color:#a19181;background:#fbf8f3;justify-content:center;align-items:center;gap:7px;padding:15px 16px;font-size:10px;display:flex}.guest-list{margin:0;padding:4px 0 9px;list-style:none}.guest-list li{border-bottom:1px dashed #eee7dd;align-items:center;gap:9px;min-height:45px;display:flex}.guest-list li:last-child{border-bottom:0}.guest-number{color:#b2a396;font-variant-numeric:tabular-nums;min-width:15px;font-size:9px}.guest-avatar{color:#9c806c;width:27px;height:27px;font-family:var(--serif);background:#eee7dd;border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;display:grid}.guest-list li:nth-child(3n+2) .guest-avatar{color:#8a7b6f;background:#efebe5}.guest-list li:nth-child(3n) .guest-avatar{color:#a37571;background:#f3e6e1}.guest-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.guest-remove{opacity:0;color:#ae9d91;width:23px;height:27px}.guest-list li:hover .guest-remove,.guest-remove:focus-visible{opacity:1}.won-mark{color:#aa7680;align-items:center;gap:2px;font-size:9px;display:inline-flex}.has-won .guest-name{color:#9d8a7f}.has-won .guest-avatar{opacity:.65}.no-results{color:#a39080;flex-direction:column;justify-content:center;align-items:center;gap:15px;min-height:200px;font-size:11px;display:flex}.load-more{width:100%;padding:10px}.draw-column{flex-direction:column;gap:16px;min-width:0;display:flex}.stats-row{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.stats-row>div{border:1px solid var(--border);background:#fffcf8;border-radius:7px;align-items:center;gap:9px;min-height:64px;padding:12px 19px;display:flex}.stat-icon{color:#a08465;background:#f4eee5;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.stats-row>div:nth-child(2) .stat-icon{color:#a66e78;background:#f5e9e7}.stat-label{color:#9a8a7d;white-space:nowrap;font-size:11px}.stats-row strong{color:#625047;font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-family:Georgia,serif;font-size:26px;font-weight:400;line-height:1}.stats-row small{color:#a19080;margin-left:6px;font:10px -apple-system,PingFang SC,sans-serif}.raffle-stage{isolation:isolate;background:#fcf6ea;border:1px solid #d6b5a5;border-radius:8px;flex-direction:column;flex:1;min-height:390px;padding:27px 32px 23px;display:flex;position:relative;overflow:hidden;box-shadow:0 3px 14px #74512c04}.raffle-stage:before{content:"";z-index:-2;opacity:.49;background:url(/images/wedding-botanicals.png) 50%/cover;position:absolute;inset:0}.raffle-stage:after{content:"";z-index:-1;background:radial-gradient(#fdf8edc9 20%,#fdf8ed22 66%,#0000 100%);position:absolute;inset:0}.stage-inner-border{pointer-events:none;border:1px solid #bf9c7e55;border-radius:4px;position:absolute;inset:9px}.stage-topline,.stage-bottomline{color:#9f7965;letter-spacing:1.5px;justify-content:space-between;align-items:center;gap:15px;font-family:Georgia,serif;font-size:9px;display:flex}.stage-round{letter-spacing:1.6px;color:var(--wine);background:#fcf6eba6;border:1px solid #bca08b7a;border-radius:3px;padding:8px 13px;font-size:16px}.stage-topline{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.stage-topline>svg{justify-self:end}.stage-tagline{letter-spacing:2.2px;font-size:8px}.stage-content{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:18px 35px 22px;display:flex}.stage-monogram{color:#9c7358;outline-offset:4px;border:1px solid #bda589;border-radius:48% 48% 50% 50%;outline:1px solid #be9c6c55;place-items:center;width:47px;height:47px;margin-bottom:16px;display:grid;position:relative;transform:rotate(-8deg)}.monogram-star{color:#a18561;font-size:16px;position:absolute;top:17px}.monogram-star.left{left:-28px}.monogram-star.right{right:-28px}.stage-overline{font-family:Georgia, var(--serif);letter-spacing:2.8px;color:#a08570;margin:1px 0 12px;font-size:9px}.stage-content>h2{font-family:var(--serif);color:var(--wine);letter-spacing:2px;font-size:clamp(23px,2.6vw,38px);font-weight:500;line-height:1.65}.stage-content>h2>span{margin-left:-6px}.stage-flourish{color:#a88d66;align-items:center;gap:12px;margin:15px 0 13px;font-size:12px;display:flex}.stage-flourish>span{background:#cbb598;width:32px;height:1px}.stage-bottomline{letter-spacing:1.2px;font-size:8px}.stage-bottomline>span:nth-child(2){font-size:13px}.stage-bottomline>span:last-child{font-family:var(--serif);letter-spacing:2px;font-size:10px}.mobile-break{display:none}.draw-controls{border:1px solid var(--border);background:var(--paper);border-radius:7px;padding:17px 20px}.draw-configuration{grid-template-columns:141px minmax(160px,320px);justify-content:space-between;align-items:end;gap:20px;display:grid}.count-field>label{color:#978373;letter-spacing:.7px;margin-bottom:8px;font-size:10px;display:block}.stepper{background:#fbf9f5;border:1px solid #e7ded3;border-radius:5px;align-items:center;height:40px;padding:3px;display:flex}.stepper button{color:#a48d79;border-radius:3px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.stepper button:not(:disabled):hover{background:#eee4d8}.stepper input{text-align:right;font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:0;width:35px;min-width:0;padding:0 5px 0 0;font-size:13px}.stepper input::-webkit-outer-spin-button{appearance:none;margin:0}.stepper input::-webkit-inner-spin-button{appearance:none;margin:0}.stepper>span{color:#a08b79;flex:1;padding-right:7px;font-size:11px}.draw-button{background:var(--wine);color:#fff8ef;border-color:var(--wine);letter-spacing:2px;gap:12px;height:42px;font-size:14px;box-shadow:0 3px 6px #67283b12}.draw-button>svg:last-child{margin-left:auto}.draw-button>svg:first-child{margin-right:auto}.draw-button:not(:disabled):hover{background:var(--wine-dark)}.draw-button:disabled{opacity:.7;box-shadow:none;background:#b17d85;border-color:#b17d85}.stop-button{animation:1.5s ease-in-out infinite breathe}kbd{color:#998773;background:#fcf9f4;border:1px solid #e6dcd1;border-bottom-width:2px;border-radius:3px;padding:0 4px;font-family:inherit;font-size:9px;line-height:16px}.history-panel{flex-direction:column;min-height:365px;display:flex;overflow:hidden}.history-panel .panel-heading{border-bottom:1px solid #eee7df;padding:20px 24px 17px}.history-actions{align-items:center;gap:17px;display:flex}.history-actions .text-button{font-size:12px}.action-divider{background:var(--border);width:1px;height:12px}.history-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;min-height:260px;padding:35px 24px;display:flex}.history-empty-icon{color:#ac9271;background:#f8f3eb;border:1px solid #e7d9c7;border-radius:50%;place-items:center;width:58px;height:58px;display:grid}.history-empty p{font-family:var(--serif);letter-spacing:.5px;color:#8c7764;margin-bottom:7px;font-size:18px}.history-empty span{color:#ad9c8a;font-size:11px}.history-footnote{color:#ad9b8b;background:#fbf8f3;border-top:1px solid #f1eae1;align-items:center;gap:6px;margin-top:auto;padding:11px 25px;font-size:11px;display:flex}.round-list{flex:1;max-height:540px;padding:0 25px;overflow-y:auto}.round-row{border-bottom:1px dashed #e9dfd3;grid-template-columns:36px 110px minmax(0,1fr) auto;align-items:center;gap:15px;padding:18px 0;display:grid}.round-row:last-child{border-bottom:0}.round-icon{color:#a27569;background:#f7ebe7;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.round-meta{flex-shrink:0;min-width:0}.round-meta h3{color:var(--wine);overflow-wrap:anywhere;margin-bottom:6px;font-size:14px;font-weight:500}.round-meta>span{color:#a9998b;font-size:11px}.round-meta>span>span{padding:0 4px}.history-winners{flex-wrap:wrap;flex:1;gap:7px;min-width:0;display:flex}.history-winners>span{color:#7d6357;overflow-wrap:anywhere;background:#f5f0e9;border:1px solid #e9dfd2;border-radius:3px;max-width:100%;padding:7px 12px;font-size:14px}.round-count{color:#a48c79;white-space:nowrap;font-size:11px}.site-footer{color:#b5a28e;justify-content:space-between;align-items:center;padding:25px 0 24px;display:flex}.site-footer>span{letter-spacing:.6px;align-items:center;gap:5px;font-size:8px;display:flex}.site-footer>span:first-child{letter-spacing:1.4px;font-family:Georgia,serif}.site-footer p{font-family:var(--serif);letter-spacing:2px;font-size:12px}.storage-warning{color:#88623b;background:#fff5df;border:1px solid #ddc49b;border-radius:6px;align-items:center;gap:10px;margin-top:18px;padding:12px 15px;font-size:12px;line-height:1.8;display:flex}.storage-warning .text-button{white-space:nowrap;margin-left:auto}.result-heading{letter-spacing:2px;color:#a37d57;justify-content:center;align-items:center;gap:9px;margin-bottom:16px;font-size:14px;line-height:1.5;display:flex}.result-heading>span{background:#c9b190;width:25px;height:1px}.stage-content>.result-prize{letter-spacing:4px;overflow-wrap:anywhere;max-width:100%;margin:8px 0 16px;font-size:24px}.winner-display{grid-template-columns:repeat(var(--name-columns), minmax(0, 1fr));gap:12px 27px;width:100%;padding:3px 20px;display:grid}.name-slot{min-width:0;height:2.6em;font-family:var(--serif);color:var(--wine);place-items:center;font-size:clamp(22px,3vw,39px);font-weight:600;line-height:1.2;display:grid;container-type:inline-size}.name-slot>span{font-size:min(1em, calc(92cqi / var(--name-line-length)));letter-spacing:.06em;overflow-wrap:anywhere;word-break:break-all;width:100%}.single-winner>span{font-size:clamp(37px,4.8vw,64px)}.many-winners{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px 22px}.many-winners>span{font-size:22px}.confetti{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.confetti i{top:-20px;left:var(--x);opacity:0;width:6px;height:11px;animation:confetti-fall 3.2s ease-in var(--delay) forwards;transform:rotate(var(--r));background:#c99372;position:absolute}.confetti i:nth-child(3n){background:#973e55;width:5px;height:8px}.confetti i:nth-child(3n+1){background:#cfb17d;border-radius:50%;width:6px;height:6px}@keyframes confetti-fall{0%{opacity:0;transform:translateY(0) rotate(var(--r))}12%{opacity:.8}to{opacity:0;transform:translate(30px, 560px) rotate(calc(var(--r) + 390deg))}}@keyframes breathe{0%,to{opacity:1}50%{opacity:.7}}.modal{width:min(580px,100% - 32px);max-height:calc(100dvh - 48px);color:var(--ink);background:#fffdf9;border:1px solid #ddd0c3;border-radius:12px;padding:29px 30px 25px;position:fixed;overflow-y:auto;box-shadow:0 20px 100px #3c1e2033}.modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#3f2c2a65}.modal-wide{width:min(700px,100% - 32px)}.modal-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.modal-header h2{font-family:var(--serif);color:var(--wine);overflow-wrap:anywhere;margin-top:8px;font-size:24px;font-weight:500;line-height:1.5}.modal-description{color:#998778;margin:12px 0 24px;font-size:12px;line-height:1.9}.field-label{color:#6a584e;align-items:center;gap:6px;margin:17px 0 9px;font-size:12px;display:flex}.field-label>span{color:#aa9684;margin-left:auto;font-size:10px}.modal textarea,.form-input{background:#fbf8f2;border:1px solid #e0d6c9;border-radius:6px;width:100%;padding:12px 14px;font-size:13px;line-height:1.8}.modal textarea{resize:vertical;min-height:140px;max-height:350px}.form-input{height:43px;padding:8px 12px}.import-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.import-toolbar>span{color:#9d8471;text-align:right;font-size:10px;line-height:1.8}.import-toolbar .button{font-size:11px}.help-note{color:#9f8266;background:#f7efe5;border-radius:5px;gap:9px;margin-top:20px;padding:13px 14px;display:flex}.help-note p{font-size:11px;line-height:1.9}.help-note svg{margin-top:3px}.modal-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:25px;padding-top:20px;display:flex}.modal-actions .button{min-width:80px}.settings-fields{margin-bottom:25px}.prize-settings{padding-inline:0;border:0;min-width:0;margin-inline:0;padding-bottom:0}.prize-settings legend{color:#76604f;padding:0 10px 0 0;font-size:13px;font-weight:500}.prize-editor{gap:9px;max-height:220px;display:grid;overflow-y:auto}.prize-editor-row{grid-template-columns:20px minmax(0,1fr) 32px;align-items:center;gap:10px;display:grid}.prize-editor-row input[type=radio]{width:16px;height:16px;accent-color:var(--wine);cursor:pointer;margin:0}.add-prize{margin-top:12px}.draw-validation{color:var(--wine);margin-top:10px;font-size:11px}.settings-section{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.settings-section h3{color:#76604f;font-size:13px;font-weight:500}.settings-section p{color:#a18b77;margin:9px 0 13px;font-size:11px;line-height:1.9}.backup-actions{gap:10px;display:flex}.reset-actions{gap:25px;display:flex}.danger-section h3{color:#a57870}.confirmation-note{color:#a07b5f;background:#f7eee7;border:1px solid #ede0d2;border-radius:5px;gap:10px;padding:13px;font-size:11px;line-height:1.7;display:flex}.toast{z-index:100;color:#fff9f0;background:#704033;border-radius:8px;align-items:center;gap:10px;width:max-content;max-width:calc(100vw - 32px);padding:13px 14px 13px 18px;font-size:12px;line-height:1.8;display:flex;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 6px 30px #3e1f2822}.toast button{color:#e2cbb9;align-items:center;margin-left:5px;padding:5px;display:flex}.presentation-toolbar{justify-content:space-between;align-items:center;display:flex;position:absolute;top:25px;left:4vw;right:4vw}.presentation-toolbar>span{font-family:var(--serif);color:var(--wine);overflow-wrap:anywhere;align-items:center;gap:10px;max-width:70%;font-size:28px;display:flex}.presentation-toolbar .button{min-height:44px;font-size:16px}.presentation-toolbar svg{width:22px;height:22px}.presentation-actions{align-items:center;gap:12px;display:flex}.presentation-actions .icon-button{width:44px;height:44px}.audio-settings{margin-top:22px}.audio-track{background:linear-gradient(120deg,#f6eee1,#fdf9f1);border:1px solid #e7d8c6;border-radius:8px;align-items:center;gap:14px;padding:18px;display:flex}.audio-track-icon{width:48px;height:48px;color:var(--wine);border:1px solid #cbb69c;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.audio-track strong{font-family:var(--serif);color:var(--wine);font-size:22px;font-weight:500}.audio-track p,.audio-playback-status,.audio-note{color:#8b7564;font-size:14px;line-height:1.7}.audio-playback-status{white-space:nowrap;margin-left:auto}.audio-channel{border-bottom:1px solid var(--border);padding:23px 0}.audio-toggle{cursor:pointer;color:#70584a;align-items:center;gap:11px;font-size:18px;display:flex}.audio-toggle small{color:#927e6f;margin-top:5px;font-size:14px;display:block}.audio-toggle input{appearance:none;cursor:pointer;background:#cec4b9;border-radius:20px;flex-shrink:0;width:44px;height:26px;margin-left:auto;padding:3px}.audio-toggle input:before{content:"";background:#fffdf9;border-radius:50%;width:20px;height:20px;display:block;box-shadow:0 1px 3px #54382b26}.audio-toggle input:checked{background:var(--wine)}.audio-toggle input:checked:before{transform:translate(18px)}.audio-volume{color:#8b7564;align-items:center;gap:13px;margin-top:20px;font-size:14px;display:flex}.audio-volume input{min-width:0;height:24px;accent-color:var(--wine);cursor:pointer;flex:1}.audio-volume output{text-align:right;font-variant-numeric:tabular-nums;width:42px}.audio-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:22px;display:flex}.audio-actions .button,.audio-actions .text-button{font-size:14px}.audio-retry{width:100%;margin-top:20px}.audio-note{margin-top:18px}.presentation-mode{background:#f8f3e9;min-height:100dvh}.presentation-mode .site-header{display:none}.presentation-mode .main-layout{max-width:1700px;padding:90px 4vw 25px}.presentation-mode .draw-column{gap:16px}.presentation-mode .stats-row{width:100%;max-width:620px;margin:0 auto}.presentation-mode .stats-row>div{min-height:72px}.presentation-mode .stat-label{color:#7e6858;font-size:18px}.presentation-mode .stats-row strong{font-size:34px}.presentation-mode .stats-row small{font-size:16px}.presentation-mode .raffle-stage{min-height:max(420px,100dvh - 365px);padding:30px 40px}.presentation-mode .stage-round{padding:10px 18px;font-size:30px}.presentation-mode .stage-tagline,.presentation-mode .stage-overline{color:#84634e;font-size:16px}.presentation-mode .stage-topline>svg{width:22px;height:22px}.presentation-mode .stage-bottomline,.presentation-mode .stage-bottomline>span:last-child{color:#84634e;font-size:18px}.presentation-mode .stage-bottomline>span:nth-child(2){font-size:22px}.presentation-mode .result-heading{color:#896444;font-size:22px}.presentation-mode .result-heading>svg{width:22px;height:22px}.presentation-mode .stage-content{min-height:300px}.presentation-mode .stage-content>h2{font-size:clamp(35px,4vw,70px)}.presentation-mode .winner-display>span{font-size:clamp(32px,4vw,70px)}.presentation-mode .single-winner>span{font-size:clamp(55px,7vw,120px)}.presentation-mode .many-winners>span{font-size:clamp(26px,2.1vw,38px)}.presentation-mode .many-winners{grid-template-columns:repeat(5,minmax(0,1fr))}.presentation-mode .stage-content>.result-prize{font-size:30px}.presentation-mode .draw-controls{width:min(680px,100%);margin:0 auto}.presentation-mode .draw-configuration{grid-template-columns:180px minmax(0,1fr)}.presentation-mode .count-field>label{color:#7e6858;font-size:18px}.presentation-mode .stepper,.presentation-mode .draw-button{height:52px}.presentation-mode .stepper button{width:38px;height:40px}.presentation-mode .stepper input{width:45px;font-size:22px}.presentation-mode .stepper>span{font-size:18px}.presentation-mode .draw-button{font-size:20px}.presentation-mode .draw-controls svg{width:22px;height:22px}.presentation-mode .storage-warning{margin-bottom:16px}@media (width>=1600px){.header-inner,.main-layout{max-width:1440px}.raffle-stage{min-height:420px}.guest-panel{max-height:640px}}@media (width<=1120px){.management-layout{grid-template-columns:280px minmax(0,1fr);gap:20px}.management-stats>div{gap:8px;padding:18px}.management-stats strong{font-size:28px}.overview-icon{width:32px;height:32px}.header-inner,.main-layout{padding-left:28px;padding-right:28px}.guest-panel .small-label{display:none}.stats-row{gap:8px}.stats-row>div{gap:7px;padding:11px}.stat-icon{width:27px;height:27px}.stats-row strong{font-size:23px}.stats-row small{display:none}.stat-label{font-size:10px}.raffle-stage{padding:23px}.stage-content{padding:18px 10px}.stage-tagline{letter-spacing:1.5px;font-size:7px}.draw-controls{padding:16px 15px 12px}.draw-configuration{grid-template-columns:126px minmax(142px,1fr);gap:12px}.draw-button{gap:7px;padding:9px 12px;font-size:13px}.stepper button{width:25px}}@media (width<=900px){.management-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.management-stats>div:nth-child(3):before{display:none}.management-stats>div:nth-child(n+3){border-top:1px solid var(--border)}.management-layout{grid-template-columns:minmax(0,1fr)}.management-layout>.history-panel,.management-layout>.guest-panel{grid-area:auto/1}.management-layout>.guest-panel{min-height:410px;max-height:460px}.saved-indicator,.header-divider{display:none}.header-actions{gap:12px}.wedding-signature{max-width:42%}.page-intro h1{font-size:32px}.wedding-signature .eyebrow{font-size:6px}.stat-icon{display:none}.stats-row>div{min-height:56px}.stage-tagline{visibility:hidden}.stage-content>h2{font-size:28px}.mobile-break{display:block}.stage-overline{letter-spacing:2px;font-size:8px}.draw-configuration{grid-template-columns:125px minmax(0,1fr)}.guest-panel{max-height:662px}}@media (width<=700px){.management-stats{margin-bottom:18px}.management-stats>div{padding:16px 12px}.management-stats>div>span:not(.overview-icon){font-size:12px}.management-stats strong{font-size:24px}.management-stats small{display:none}.history-panel .panel-heading{flex-wrap:wrap;gap:14px}.history-panel{min-height:330px}.history-empty{min-height:210px}.site-header{height:75px}.header-inner,.main-layout{padding-left:20px;padding-right:20px}.brand{gap:10px}.brand-emblem{outline-offset:3px;width:35px;height:35px}.brand-emblem svg{width:24px}.brand strong{letter-spacing:2px;font-size:18px}.brand small{display:none}.header-inner{gap:12px}.header-actions{gap:8px}.fullscreen-button{border-color:var(--border);min-height:33px;padding:8px}.sound-button{width:26px}.page-intro{padding:28px 0 25px}.page-intro h1{font-size:30px;line-height:1.8}.intro-eyebrow{font-size:8px}.wedding-signature{display:none}.draw-column{order:-1;gap:12px}.stats-row{gap:9px}.stats-row>div{gap:5px;padding:12px}.stats-row strong{font-size:24px}.stats-row small{margin-left:5px;font-size:9px;display:inline}.raffle-stage{min-height:370px;padding:25px}.stage-content{padding:25px 5px 22px}.stage-content>h2{font-size:29px}.stage-bottomline{font-size:7px}.stage-bottomline>span:last-child{font-size:9px}.draw-controls{padding:18px}.draw-configuration{grid-template-columns:135px minmax(0,1fr);gap:15px}.draw-button{height:45px;font-size:14px}.guest-panel{min-height:auto;max-height:430px}.guest-scroll{min-height:140px;max-height:240px}.guest-empty{min-height:205px}.empty-illustration{width:46px;height:46px;margin:18px 0}.empty-illustration>svg{width:26px}.guest-empty h3{font-size:16px}.guest-empty p{margin:8px 0;font-size:10px}.guest-empty p br{display:none}.guest-panel .small-label{display:inline}.guest-remove{opacity:1}.panel-heading{padding-top:18px}.history-panel .panel-heading{align-items:flex-start;padding:18px 17px 15px}.history-actions{gap:10px}.history-actions .text-button{font-size:9px}.history-actions .text-button svg{display:none}.history-empty{gap:12px;padding:20px}.history-empty-icon{flex-shrink:0;width:36px;height:36px}.history-empty p{font-size:14px}.history-empty span{font-size:10px}.history-footnote{align-items:flex-start;padding:12px 16px;font-size:8px;line-height:1.7}.history-footnote svg{margin-top:1px}.round-list{padding:0 17px}.round-row{grid-template-columns:36px minmax(0,1fr) auto;gap:10px}.round-meta{flex:1}.history-winners{grid-area:2/2/auto/-1}.round-count{grid-area:1/3;font-size:11px}.site-footer{flex-wrap:wrap;justify-content:center;gap:14px;padding:24px 0}.site-footer p{text-align:center;flex-basis:100%;order:-1}.site-footer>span{font-size:7px}.winner-display{gap:14px 20px;padding:0}.winner-display:not(.single-winner){grid-template-columns:repeat(2,minmax(0,1fr))}.winner-display>span{font-size:28px}.single-winner>span{font-size:49px}.many-winners{grid-template-columns:repeat(2,minmax(0,1fr))}.many-winners>span{font-size:20px}.stage-content>.result-prize{font-size:25px}.modal{padding:23px 22px}.modal-header h2{font-size:22px}.modal-description,.field-label{font-size:11px}.field-label>span{font-size:9px}.modal textarea{font-size:14px}.form-input{font-size:16px}.modal-actions .button{font-size:12px}.import-toolbar{gap:10px}.import-toolbar .button{padding:8px 10px}.import-toolbar>span{font-size:9px}.storage-warning{flex-wrap:wrap}.storage-warning>span{flex:1}.storage-warning .text-button{margin-left:28px}.presentation-toolbar{gap:10px;top:18px}.presentation-actions{flex-shrink:0;gap:8px}.audio-track{flex-wrap:wrap;gap:10px;padding:14px}.audio-track strong{font-size:20px}.presentation-toolbar>span{max-width:55%;font-size:18px}.presentation-toolbar .button{padding:6px 10px;font-size:14px}.presentation-mode .main-layout{padding-top:80px}.presentation-mode .raffle-stage{padding:22px}.presentation-mode .stage-content>h2{font-size:30px}.presentation-mode .winner-display>span{font-size:35px}.presentation-mode .single-winner>span{font-size:55px}.presentation-mode .many-winners>span{font-size:23px}.presentation-mode .many-winners{grid-template-columns:repeat(2,minmax(0,1fr))}.presentation-mode .stage-bottomline{flex-wrap:wrap;justify-content:center;gap:8px 12px;font-size:14px}.presentation-mode .stage-bottomline>span:last-child{font-size:16px}.presentation-mode .stage-overline{letter-spacing:1px;font-size:14px}.presentation-mode .draw-configuration{grid-template-columns:125px minmax(0,1fr);gap:12px}.presentation-mode .stepper button{width:25px}.presentation-mode .stepper input{width:35px;font-size:18px}.presentation-mode .stepper>span,.presentation-mode .draw-button,.presentation-mode .count-field>label,.presentation-mode .stat-label{font-size:16px}.presentation-mode .draw-button{letter-spacing:1px}.presentation-mode .draw-button>svg{display:none}}
