.character-sheet{width:210mm;min-height:297mm;max-height:297mm;position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#2d3748;display:flex;overflow:hidden;isolation:isolate}.character-sheet-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.sidebar-container{position:relative}.sidebar-background{background-image:url(/images/sidebar-desaturated-small.jpg);background-size:105mm;width:15mm;height:100%;flex-shrink:0}.sidebar-overlay{position:absolute;top:0;left:0;width:15mm;height:100%;background-color:#0003;pointer-events:none;mix-blend-mode:multiply}.sidebar-section{flex:1;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;text-orientation:mixed;padding:3mm 0}.sidebar-label{font-size:3.5mm;font-weight:600;letter-spacing:.5mm;color:#eee;text-shadow:.3mm .3mm .5mm rgba(0,0,0,.3)}.sheet-content{position:relative;padding:5mm 0 3mm;display:flex;flex-direction:column;min-width:0}.character-column-spacer{min-height:13mm}.sheet-header-container{display:flex;align-items:center}.sheet-header{text-align:center;margin:0 0 4mm;padding:0 10mm;display:flex;align-items:center;justify-content:center}.sheet-header span{font-weight:lighter;letter-spacing:0mm;filter:drop-shadow(.2mm .1mm 0 #222d) drop-shadow(0mm 0mm .1mm #2228);word-spacing:-3mm;background:var(--header-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-family:Unlovable,serif;font-weight:100;font-size:14mm;padding:2mm 8mm;margin:0 -8mm;mix-blend-mode:multiply}.swirl-divider{width:35mm;mix-blend-mode:soft-light}.flip{transform:scaleX(-1)}.sheet-author{font-family:Goudy Old Style,Goudy Oldstyle,Goudy,Georgia,serif;font-size:3.5mm;font-weight:700;text-align:center;margin:-5mm 0 3mm;color:#333}.characters-grid{display:flex;flex-direction:column;gap:2.5mm;flex:1;padding:0 10mm 0 0}.character-section{display:flex;break-inside:avoid;min-height:20mm}.section-title{font-family:Dumbledor,serif;font-weight:lighter;padding:0 3.5mm;color:#eee;margin:-2mm 0 -2mm -15mm;min-width:15mm;text-align:center;z-index:1;text-orientation:upright;writing-mode:vertical-lr;letter-spacing:-.6mm;font-size:4mm;line-height:2;filter:drop-shadow(.1mm .1mm .3mm #222a) drop-shadow(-.1mm .1mm .3mm #2228) drop-shadow(.1mm -.1mm .3mm #222a) drop-shadow(-.1mm -.1mm .3mm #222a)}.section-divider{height:.8mm;opacity:1;margin-left:-50%;width:150%;mix-blend-mode:soft-light}.character-list{display:flex;margin-left:8mm;gap:5mm}.character-column{flex:1 1 0px;display:flex;flex-direction:column;justify-content:space-between}.character-card{display:flex;align-items:center;gap:2.5mm;break-inside:avoid;margin-bottom:2.5mm}.character-info{padding-left:2mm;display:flex;flex-direction:column}.character-icon-wrapper{display:flex;flex-shrink:0}.character-icon,.character-icon-placeholder{width:13mm;max-height:13mm;object-fit:contain;filter:drop-shadow(1px 1px 2px #0004)}.character-icon-placeholder{display:flex;align-items:center;justify-content:center;color:#eee;font-weight:700;font-size:6mm}.character-name{font-family:Goudy Old Style,Goudy Oldstyle,Goudy,Georgia,serif;font-size:3.5mm;font-weight:700;margin:0 0 .5mm;color:#1a202c;display:flex;align-items:center;gap:1mm}.inline-jinx-icons{display:inline-flex;gap:.5mm;align-items:center;margin-left:1mm}.inline-jinx-icon,.inline-jinx-icon-placeholder{width:5mm;height:5mm;object-fit:contain;filter:drop-shadow(.5px .5px .5px #0004);scale:1.7;margin:-100% .5mm -100% 0}.inline-jinx-icon-placeholder{display:inline-flex;align-items:center;justify-content:center;color:#eee;font-weight:700;font-size:1.8mm;border-radius:50%;background-color:#666}.character-ability{font-family:Trade Gothic,Trade Gothic Next,Helvetica Neue,Arial,sans-serif;font-size:3.1mm;line-height:1.2;margin:0;color:#222;display:inline-block}.appearance-compact .character-card{margin-bottom:1mm}.appearance-compact .sheet-header span{font-size:13mm}.appearance-super-compact .character-ability{font-size:2.7mm}.appearance-super-compact .character-name{font-size:3.2mm}.appearance-super-compact .character-icon,.appearance-super-compact .character-icon-placeholder{width:12mm;max-height:12mm}.appearance-super-compact .character-card{margin-bottom:.5mm}.appearance-super-compact .sheet-header span{font-size:12mm}.appearance-mega-compact .character-ability{font-size:2.4mm}.appearance-mega-compact .character-name{font-size:2.8mm}.appearance-mega-compact .sheet-header span{font-size:11mm}.appearance-mega-compact .character-icon,.appearance-mega-compact .character-icon-placeholder{width:11mm;max-height:11mm}.appearance-mega-compact .character-card{margin-bottom:.3mm}.appearance-mega-compact .inline-jinx-icon,.appearance-mega-compact .inline-jinx-icon-placeholder{width:4mm;height:4mm;font-size:1.3mm}.sheet-footer{text-align:center;font-family:Goudy Old Style,Goudy Oldstyle,Goudy,Georgia,serif;font-size:3.5mm;color:#222;opacity:.7}.asterisk{font-size:5mm}.author-credit{position:absolute;bottom:3mm;right:3mm;font-family:Goudy Old Style,Goudy Oldstyle,Goudy,Georgia,serif;font-size:3.2mm;color:#222;opacity:.6;text-align:right}.author-credit p{font-size:2.5mm;margin:0}.setup-ability{display:inline-block;white-space:normal;font-family:Goudy Old Style,Goudy Oldstyle,Goudy,Georgia,serif}.jinxes-section{display:flex;break-inside:avoid;margin-top:1mm}.jinxes-list{margin-left:8mm;display:flex;flex-direction:column;width:100%}.jinxes-two-columns{flex-direction:row;gap:5mm}.jinx-column{flex:1;display:flex;flex-direction:column}.jinx-item{display:flex;gap:2.5mm;align-items:center;break-inside:avoid;margin-bottom:2mm}.jinx-icons{display:flex;gap:1mm;flex-shrink:0;align-items:center}.jinx-icon-wrapper{display:flex;flex-shrink:0;align-items:center}.jinx-icon,.jinx-icon-placeholder{width:3.5mm;height:3.5mm;object-fit:contain;scale:2.8}.jinx-icon-placeholder{display:flex;align-items:center;justify-content:center;color:#eee;font-weight:700;font-size:2mm}.jinx-divider{font-family:Dumbledor,serif;font-size:4.6mm;color:#1a202c;line-height:3.5mm;margin:0 .5mm}.jinx-text{font-family:Trade Gothic,Trade Gothic Next,Helvetica Neue,Arial,sans-serif;font-size:2.6mm;line-height:1.2;margin:0;color:#222;padding-top:.5mm}.jinx-text.loric-text{padding-top:0}.jinx-item.loric{margin-bottom:1mm}.loric-name{font-family:Goudy Old Style;font-size:3mm;padding-top:0}.loric-spacer{min-width:4mm}.sheet-backing{position:relative;width:210mm;min-height:297mm;max-height:297mm}.sheet-background{width:210mm;min-height:297mm;max-height:297mm;background-image:url(/images/sidebar-desaturated-small.jpg);background-repeat:repeat;background-size:105mm;display:flex;flex-direction:column;align-items:center;justify-content:center}.sheet-back-overlay{position:absolute;top:0;left:0;width:100%;height:100%;mix-blend-mode:multiply;pointer-events:none}.sheet-backing h1{font-family:Unlovable,serif;mix-blend-mode:normal;font-weight:100;font-size:30mm;color:#ae9d7f;text-wrap:wrap;z-index:1;flex-shrink:1;text-align:center;padding:10mm;background-image:url(/images/parchment_texture.jpg);background-clip:text;-webkit-background-clip:text;color:transparent;background-size:100mm;filter:drop-shadow(.5mm .5mm black) drop-shadow(0mm 0mm 1mm black);word-spacing:-10mm;flex:0 1 130mm;display:flex;flex-wrap:wrap;justify-content:center}.sheet-backing h1 .ampersand{font-size:45mm;line-height:30mm;vertical-align:-5mm}.back-info-container{position:absolute;display:flex;gap:10mm;align-items:center;bottom:0;flex-direction:column-reverse;justify-content:space-between;height:100%;width:100%;padding:20mm}.title-container{z-index:1;display:flex;justify-content:center}.minor-word{padding:0 8mm;font-size:15mm;word-spacing:-6mm;display:flex}.night-orders-container{background-image:url(/images/parchment_texture.jpg);background-position:0 -50%;font-family:Dumbledor;z-index:1;background-size:200mm;box-shadow:inset 0 0 5px #000;padding:2mm}.night-orders-container p{width:26mm;text-align:end;margin:0;flex-shrink:0;color:#222;font-size:5mm}.night-order:not(:last-child){margin-bottom:2mm}.night-order{padding:2mm;display:flex;align-items:center;gap:2mm}.icon-row{box-sizing:border-box;display:flex;flex-wrap:wrap;column-gap:2mm;row-gap:4mm}.icon{width:6mm;box-sizing:border-box;scale:2.1;filter:drop-shadow(0px 0px 2px #2224)}.player-count-container{background-image:url(/images/parchment_texture.jpg);background-position:0 -50%;font-family:Dumbledor;z-index:1;background-size:200mm;padding:4mm;box-shadow:inset 0 0 5px #000;display:flex;gap:5mm;max-width:130mm;flex-direction:row;color:#222;font-size:6mm}.count-column{display:flex;flex-direction:column;align-items:center}.count-column.titles{align-items:end}.good-count{color:#00469e}.evil-count{color:#580709}.night-sheet{width:210mm;min-height:297mm;max-height:297mm;display:flex;flex-direction:column;position:relative;overflow:hidden;color:#222}.night-sheet-heading{display:flex;align-items:center;justify-content:space-between}.night-sheet .night-title{font-family:Dumbledor;font-size:7mm;margin:0}.night-sheet .script-title{font-family:Unlovable,serif;font-weight:lighter;background:var(--header-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:11mm;line-height:9mm;margin:-20mm -7mm;padding:7mm;max-width:50%;text-align:center;word-spacing:-4mm;filter:drop-shadow(.2mm .1mm 0 #222d) drop-shadow(0mm 0mm .1mm #2228)}.night-sheet .sheet-content{padding:10mm;gap:5mm}.night-sheet-order{display:flex;flex-direction:column;gap:1mm}.night-sheet-entry{display:flex;align-items:center;min-height:10mm}.reminder-name{font-family:Goudy Old Style,Goudy Oldstyle,Goudy,Georgia,serif;font-weight:700;font-size:3.3mm}.reminder-text{font-family:Trade Gothic;font-size:3mm}.night-sheet-entry p{margin:0}.night-sheet-entry p strong{font-family:Trade Gothic Bold}.night-sheet-entry>img{width:7mm;height:7mm;flex-shrink:0;scale:2;margin-right:3mm}.reminder-icon{width:10px;scale:1;opacity:.8;margin-right:4px;margin-bottom:-1px}.info-author-credit{font-family:Goudy Old Style,Goudy Oldstyle,Goudy,Georgia,serif;font-size:3.2mm;color:#222;opacity:.6;text-align:right;padding-bottom:3mm;padding-right:3mm;position:absolute;right:0;top:-50%}.info-author-credit p{font-size:2.5mm;margin:0}.info-footer-container{position:relative}.info-footer-background{background-image:url(/images/sidebar-desaturated-small.jpg);background-size:105mm;width:100%;height:20mm}.info-footer-overlay{position:absolute;top:0;left:0;width:100%;height:20mm;background-color:#0003;mix-blend-mode:multiply}.spacer{flex:1 0 0px}.print-only{visibility:hidden;display:none}@media print{.print-only{visibility:visible;display:block}}*{box-sizing:border-box}body{margin:0;padding:0;display:flex;flex-direction:column;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:var(--text-primary)}.site-header{background:linear-gradient(135deg,#1e3c72,#2a5298);padding:.75rem 1.5rem;box-shadow:0 2px 4px #0000001a;width:100%;display:flex;align-items:center;justify-content:space-between}.site-header a{color:#fff;text-decoration:none;font-size:.9rem;font-weight:600;opacity:.95;transition:opacity .2s ease}.site-header a:hover{opacity:1}:root{--bg-gradient-start: #f7fafc;--bg-gradient-end: #edf2f7;--card-bg: white;--text-primary: #2d3748;--text-secondary: #4a5568;--text-tertiary: #718096;--border-color: #e2e8f0;--button-bg: #667eea;--button-hover: #5568d3;--button-text: #ffffff;--error-bg: #fed7d7;--error-text: #c53030;--error-border: #fc8181;--warning-bg: #fef5e7;--warning-text: #d68910;--warning-border: #f39c12;--shadow: rgba(0, 0, 0, .2);--shadow-light: rgba(0, 0, 0, .1)}@media(prefers-color-scheme:dark){:root{--bg-gradient-start: #1a202c;--bg-gradient-end: #2d3748;--card-bg: #2d3748;--text-primary: #f7fafc;--text-secondary: #e2e8f0;--text-tertiary: #cbd5e0;--border-color: #4a5568;--button-bg: #5568d3;--button-hover: #667eea;--button-text: #ffffff;--error-bg: #742a2a;--error-text: #feb2b2;--error-border: #fc8181;--warning-bg: #744210;--warning-text: #fbd38d;--warning-border: #f39c12;--shadow: rgba(0, 0, 0, .5);--shadow-light: rgba(0, 0, 0, .3)}}@font-face{font-family:Unlovable;src:url(/fonts/LHF%20Unlovable/LHF%20Unlovable.eot);src:url(/fonts/LHF%20Unlovable/LHF%20Unlovable.eot?#iefix) format("embedded-opentype"),url(/fonts/LHF%20Unlovable/LHF%20Unlovable.woff) format("woff"),url(/fonts/LHF%20Unlovable/LHF%20Unlovable.woff2) format("woff2"),url(/fonts/LHF%20Unlovable/LHF%20Unlovable.ttf) format("truetype"),url(/fonts/LHF%20Unlovable/LHF%20Unlovable.svg#LHF\ Unlovable) format("svg")}@font-face{font-family:Trade Gothic;src:url(/fonts/TradeGothic/TradeGothic.otf)}@font-face{font-family:Trade Gothic Bold;src:url(/fonts/TradeGothic/TradeGothicBold.otf)}@font-face{font-family:Goudy Old Style;src:url(/fonts/GoudyOldStyle/GoudyOldStyle.ttf)}@font-face{font-family:Dumbledor;src:url(/fonts/Dumbledor/Dumbledor.ttf)}@font-face{font-family:Dumbledor Thin;src:url(/fonts/Dumbledor/DumbledorThin.ttf)}@font-face{font-family:Dumbledor Wide;src:url(/fonts/Dumbledor/DumbledorWide.ttf)}.app{max-width:1400px;margin:0 auto;padding:40px 20px;display:flex;gap:20px}.app-title{text-align:center;font-size:36px;margin:0 0 30px;text-shadow:2px 2px 4px var(--shadow-light);color:var(--text-primary)}.controls{background:var(--card-bg);border-radius:12px;padding:30px;box-shadow:0 10px 30px var(--shadow);display:flex;flex-direction:column;min-height:0;align-items:center}.control-panel{display:flex;flex-direction:column;gap:20px}.print-warning{text-align:center;font-size:14px;font-style:italic}.upload-section{display:flex;justify-content:space-evenly;gap:10px;align-items:center}.upload-label{display:inline-block;padding:14px 32px;background:var(--button-bg);color:var(--button-text);border-radius:8px;cursor:pointer;font-weight:600;font-size:16px;transition:all .2s;box-shadow:0 2px 8px var(--shadow-light);text-wrap:nowrap}.upload-label:hover{background:var(--button-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow)}.paste-hint{opacity:.7;font-style:italic;text-align:center}.or{text-align:center}.example-section{display:flex;justify-content:center;align-items:center;margin-top:20px}.file-input{display:none}.controls-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:10px}@media(max-width:768px){.controls-grid{grid-template-columns:1fr}}.control-group{background:var(--card-bg);border:2px solid var(--border-color);border-radius:8px;padding:16px}.control-group-label{display:block;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:6px}.control-group-content{display:flex;flex-direction:column;gap:12px}.color-picker-section{display:flex;align-items:center;gap:12px}.color-label{font-weight:600;color:var(--text-secondary);font-size:14px}.color-input{width:60px;height:40px;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:border-color .2s}.color-input:hover{border-color:var(--button-bg)}.color-values{font-size:12px;color:var(--text-secondary);display:flex;flex-direction:column;gap:4px}.color-value-line{font-family:Courier New,monospace}.slider-section{display:flex;flex-direction:column;gap:6px}.slider-label{font-weight:600;color:var(--text-secondary);font-size:12px}.toggle-section{display:flex;align-items:center}.toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-input{cursor:pointer;accent-color:var(--button-bg)}.toggle-input[type=checkbox]{width:18px;height:18px}.toggle-input[type=range]{width:100%}select.toggle-input{padding:2px 4px;border:2px solid var(--border-color);border-radius:6px;background:var(--card-bg);color:var(--text-secondary);font-size:14px;font-weight:600;transition:border-color .2s;min-width:150px}select.toggle-input:hover{border-color:var(--button-bg)}select.toggle-input:focus{outline:none;border-color:var(--button-bg);box-shadow:0 0 0 3px #667eea1a}.number-input{cursor:pointer;padding:2px 4px;border:2px solid var(--border-color);border-radius:6px;background:var(--card-bg);color:var(--text-secondary);font-size:14px;font-weight:600;transition:border-color .2s;width:3rem;text-align:center}.number-input:hover{border-color:var(--button-bg)}.number-input:focus{outline:none;border-color:var(--button-bg);box-shadow:0 0 0 3px #667eea1a}.toggle-text{font-size:14px;font-weight:600;color:var(--text-secondary)}.sort-button,.print-button{padding:12px 20px;background:var(--button-bg);color:var(--button-text);border:none;border-radius:8px;font-weight:600;font-size:15px;cursor:pointer;transition:all .2s;box-shadow:0 2px 6px var(--shadow-light)}.sort-button:hover,.print-button:hover{background:var(--button-hover);transform:translateY(-1px);box-shadow:0 4px 10px var(--shadow)}.sort-button:active,.print-button:active{transform:translateY(0)}.script-editor-section{margin-top:20px;display:flex;flex-direction:column;gap:8px;flex:1;min-height:0;width:100%}.script-editor-header{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.script-editor-label{font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.script-editor-buttons{display:flex;gap:8px}.update-button{padding:8px 16px;background:var(--button-bg);color:var(--button-text);border:none;border-radius:6px;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px var(--shadow-light)}.update-button:hover{background:var(--button-hover);transform:translateY(-1px);box-shadow:0 3px 8px var(--shadow)}.update-button:active{transform:translateY(0)}.script-editor-textarea{width:100%;padding:12px;border:2px solid var(--border-color);border-radius:8px;font-family:Courier New,Consolas,Monaco,monospace;font-size:13px;line-height:1.5;resize:vertical;background:var(--card-bg);color:var(--text-primary);transition:border-color .2s;min-height:200px;flex:1}.script-editor-textarea:focus{outline:none;border-color:var(--button-bg);box-shadow:0 0 0 3px #667eea1a}.warning-message{margin-top:20px;padding:14px 16px;background:var(--warning-bg);color:var(--warning-text);border-radius:8px;border-left:4px solid var(--warning-border);font-size:14px;line-height:1.5}.error-message{margin-top:20px;padding:14px 16px;background:var(--error-bg);color:var(--error-text);border-radius:8px;border-left:4px solid var(--error-border);font-size:14px;line-height:1.5}.preview-section{background:var(--card-bg);border-radius:12px;padding:30px;box-shadow:0 10px 30px var(--shadow)}.preview-title{margin:0 0 20px;color:var(--text-primary);font-size:24px;text-align:center}.sheet-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff}.placeholder{background:var(--card-bg);border-radius:12px;padding:80px 40px;text-align:center;box-shadow:0 10px 30px var(--shadow);min-width:210mm}.placeholder-icon{width:80px;height:80px;color:var(--text-tertiary);margin:0 auto 20px;opacity:.5}.placeholder-text{color:var(--text-tertiary);font-size:18px;margin:0 0 12px}.placeholder-hint{color:var(--text-tertiary);font-size:14px;margin:0;opacity:.7;font-style:italic}.example-button{display:inline-block;padding:14px 32px;background:var(--button-bg);color:var(--button-text);border:none;border-radius:8px;font-weight:600;font-size:16px;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px var(--shadow-light);text-wrap:nowrap}.example-button:hover{background:var(--button-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow)}.example-button:active{transform:translateY(0)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--card-bg);border-radius:16px;padding:40px;max-width:900px;width:90%;max-height:90vh;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;align-items:center;text-align:center;animation:slideUp .3s ease-out;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-spinner{width:60px;height:60px;border:4px solid var(--border-color);border-top-color:var(--button-bg);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:24px}@keyframes spin{to{transform:rotate(360deg)}}.modal-success-icon{width:80px;height:80px;color:#48bb78;margin-bottom:20px;animation:scaleIn .3s ease-out}.modal-error-icon{width:80px;height:80px;color:#f56565;margin-bottom:20px;animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.modal-title{font-size:28px;font-weight:700;margin:0 0 12px;color:var(--text-primary)}.modal-text{font-size:16px;color:var(--text-secondary);margin:0 0 28px;line-height:1.5}.pdf-preview-container{width:100%;margin:20px 0;border:2px solid var(--border-color);border-radius:8px;overflow:hidden;box-shadow:0 4px 12px var(--shadow-light)}.pdf-preview{width:100%;height:600px;border:none;display:block}@media(max-width:768px){.pdf-preview{height:400px}}.modal-buttons{display:flex;gap:12px;width:100%}.modal-button{flex:1;padding:14px 24px;border:none;border-radius:8px;font-weight:600;font-size:16px;cursor:pointer;transition:all .2s;box-shadow:0 2px 6px var(--shadow-light)}.modal-button-primary{background:var(--button-bg);color:var(--button-text)}.modal-button-primary:hover{background:var(--button-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow)}.modal-button-secondary{background:var(--border-color);color:var(--text-secondary)}.modal-button-secondary:hover{background:var(--text-tertiary);color:var(--card-bg);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow)}.modal-button:active{transform:translateY(0)}@media print{html{visibility:hidden}.sheet-wrapper{visibility:visible;position:absolute;left:0;top:0}.modal-overlay{display:none}}
