.print-root{background:#d8d3c5;color:#111;min-height:100vh;font-family:Georgia,Times New Roman,serif;padding:24px 0}.print-page{background:#fff;width:8.5in;min-height:11in;margin:0 auto;padding:.5in .55in;box-shadow:0 2px 12px #0000004d;box-sizing:border-box;position:relative;page-break-after:always}.print-page:last-of-type{page-break-after:auto}.print-toolbar{width:8.5in;margin:0 auto 16px;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0}.print-toolbar button{background:#2d2d44;color:#e0e0e0;border:1px solid #444;border-radius:6px;padding:8px 16px;font-size:14px;cursor:pointer;font-family:inherit}.print-toolbar button:hover{background:#3d3d55}.print-toolbar .title{color:#555;font-size:13px}.sheet-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.sheet-header .script-title{font-size:30px;font-weight:400;color:#111;line-height:1.1;font-family:Georgia,serif}.sheet-header .script-author{font-size:12px;color:#555;font-style:italic;margin-top:2px}.sheet-header .logo-block{display:flex;align-items:center;gap:6px;flex-shrink:0}.sheet-header .logo-block img{width:28px;height:28px;object-fit:contain}.sheet-header .logo-block .logo-label{font-size:13px;color:#6b3410;font-weight:600}.team-section{margin-top:10px;break-inside:avoid}.team-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.team-header .label{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;font-family:Georgia,serif}.team-header .rule{flex:1;height:1px;background:#8a6f4d}.team-townsfolk .label,.team-outsider .label{color:#1d4e9b}.team-minion .label,.team-demon .label{color:#8a1c1c}.team-traveller .label{color:#5a3d8c}.team-fabled .label{color:#8a6f4d}.team-townsfolk .rule,.team-outsider .rule{background:#1d4e9b}.team-minion .rule,.team-demon .rule{background:#8a1c1c}.team-traveller .rule{background:#5a3d8c}.team-fabled .rule{background:#8a6f4d}.character-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:18px;row-gap:4px}.character-row{display:flex;align-items:flex-start;gap:8px;padding:3px 0;break-inside:avoid}.character-icon{width:38px;height:38px;object-fit:contain;flex-shrink:0}.character-icon-placeholder{width:38px;height:38px;border-radius:50%;background:#00000014;flex-shrink:0}.character-text{flex:1;min-width:0;font-size:11.5px;line-height:1.3;font-family:Georgia,serif}.character-name{font-weight:700;display:block}.team-townsfolk .character-name,.team-outsider .character-name{color:#1d4e9b}.team-minion .character-name,.team-demon .character-name{color:#8a1c1c}.team-traveller .character-name{color:#5a3d8c}.team-fabled .character-name{color:#8a6f4d}.character-ability{color:#111}.sheet-footer{position:absolute;bottom:.35in;left:.55in;right:.55in;display:flex;justify-content:space-between;font-size:10px;color:#555;font-style:italic}.nightorder-page-title{text-align:center;font-size:13px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;border-top:1px solid #8a6f4d;border-bottom:1px solid #8a6f4d;padding:6px 0;margin-bottom:14px;font-family:Georgia,serif}.nightorder-list .character-row{padding:5px 0}.nightorder-list .character-text{font-size:11.5px}.print-error{text-align:center;padding-top:48px;color:#c0392b}@media print{@page{size:Letter;margin:0}body{background:#fff!important}.print-root{background:#fff;padding:0}.print-page{box-shadow:none;width:100%;min-height:auto;padding:.5in .55in}.print-toolbar{display:none}.team-section,.character-row{break-inside:avoid;page-break-inside:avoid}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#1a1a2e;color:#e0e0e0;min-height:100vh}a{color:#7c83db}button{cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500}button.primary{background:#7c83db;color:#fff}button.primary:hover{background:#6a72c9}button.danger{background:#c0392b;color:#fff}button.danger:hover{background:#a93226}button.secondary{background:#2d2d44;color:#e0e0e0;border:1px solid #444}button.secondary:hover{background:#3d3d55}input,select,textarea{background:#16213e;border:1px solid #333;border-radius:6px;padding:8px 12px;color:#e0e0e0;font-size:14px;width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:#7c83db}label{display:block;margin-bottom:4px;font-size:13px;color:#aaa}.form-group{margin-bottom:16px}
