*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,Helvetica Neue,Arial,sans-serif;background:#f4f1ec;color:#1a1a1a;min-height:100vh;line-height:1.6}.app-container{max-width:1400px;margin:0 auto;padding:2rem;padding-top:calc(2rem + env(safe-area-inset-top,0px));padding-bottom:calc(2rem + env(safe-area-inset-bottom,0px));padding-left:calc(2rem + env(safe-area-inset-left,0px));padding-right:calc(2rem + env(safe-area-inset-right,0px))}.header{text-align:center;margin-bottom:3rem;border-bottom:4px solid #1a1a1a;padding-bottom:2rem}.header h1{font-size:3.5rem;font-weight:900;letter-spacing:.08em;color:#1a1a1a;text-transform:uppercase;margin-bottom:.25rem;font-family:Impact,Arial Black,Helvetica Neue,sans-serif}.header .subtitle{font-size:1rem;color:#7b2d3b;font-style:normal;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.login-container{max-width:500px;margin:4rem auto;background:#fff;border:2px solid #1a1a1a;border-radius:4px;padding:3rem;box-shadow:6px 6px #0000001a}.login-container h2{font-size:1.8rem;margin-bottom:2rem;color:#1a1a1a;text-align:center;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-size:.9rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.form-group input,.form-group select{width:100%;padding:.75rem;background:#f9f8f5;border:2px solid #ddd;border-radius:3px;color:#1a1a1a;font-family:inherit;font-size:1rem}.form-group select option{background:#fff;color:#1a1a1a}.form-group input:focus,.form-group select:focus{outline:none;border-color:#c0392b;box-shadow:0 0 0 3px #c0392b26}button{background:#c0392b;color:#fff;border:none;padding:.875rem 2rem;font-size:.95rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:3px;transition:all .2s ease;font-family:inherit}button:hover{background:#a93226;transform:translateY(-1px);box-shadow:0 4px 12px #c0392b4d}button:disabled{opacity:.35;cursor:not-allowed;transform:none;box-shadow:none}button.secondary{background:transparent;color:#c0392b;border:2px solid #c0392b}button.secondary:hover{background:#c0392b14}button.danger{background:#1a1a1a;color:#fff}button.danger:hover{background:#333}.meeting-container{display:grid;grid-template-columns:300px 1fr 350px;gap:2rem;margin-top:2rem}.panel{background:#fff;border:2px solid #1a1a1a;border-radius:4px;padding:1.5rem;box-shadow:4px 4px #00000014}.panel h3{font-size:1.1rem;margin-bottom:1.5rem;color:#7b2d3b;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-bottom:3px solid #1a1a1a;padding-bottom:.5rem}.participants-list{list-style:none}.participant-item{padding:.75rem;margin-bottom:.5rem;background:#f9f8f5;border-left:4px solid transparent;border-radius:3px;transition:all .2s ease}.participant-item.chair{border-left-color:#c0392b;background:#c0392b0f}.participant-item.vice-president{border-left-color:#e67e22}.participant-item.speaking{border-left-color:#27ae60;background:#27ae6014;animation:pulse 2s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.participant-name{font-weight:700;color:#1a1a1a}.participant-role{font-size:.85rem;color:#666;font-style:normal;font-weight:500}.meeting-stage{text-align:center;padding:2rem;background:#fff;border:3px solid #1a1a1a;border-radius:4px;margin-bottom:2rem}.meeting-stage h2{font-size:2rem;color:#c0392b;margin-bottom:.5rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.meeting-stage .stage-description{color:#444;font-size:1.05rem}.current-motion{background:#fff;padding:1.5rem;border-radius:4px;margin-bottom:2rem;border:2px solid #ddd;border-left:5px solid #c0392b}.current-motion h4{color:#7b2d3b;margin-bottom:1rem;font-size:1.1rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.motion-text{font-size:1.1rem;margin-bottom:.75rem;line-height:1.8}.motion-meta{display:flex;gap:2rem;font-size:.9rem;color:#666;margin-top:1rem}.action-buttons{display:flex;flex-direction:column;gap:.75rem}.action-buttons button{width:100%;text-align:left;padding:1rem;font-size:.9rem}.speaking-queue{list-style:none}.queue-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;margin-bottom:.5rem;background:#f9f8f5;border-radius:3px}.queue-item.pro{border-left:4px solid #27ae60}.queue-item.con{border-left:4px solid #c0392b}.queue-position{background:#c0392b1a;color:#c0392b;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}.stance-badge{padding:.25rem .75rem;border-radius:3px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.stance-badge.pro{background:#27ae601f;color:#1e8449}.stance-badge.con{background:#c0392b1f;color:#c0392b}.vote-section{background:#fff;padding:2rem;border-radius:4px;text-align:center;border:2px solid #1a1a1a}.vote-section h3{margin-bottom:2rem}.vote-buttons{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.vote-buttons button{flex:1;padding:1.5rem;font-size:1.2rem}.vote-buttons button.aye{background:#27ae60;color:#fff}.vote-buttons button.aye:hover{background:#1e8449}.vote-buttons button.nay{background:#c0392b;color:#fff}.vote-buttons button.nay:hover{background:#a93226}.vote-tally{display:flex;justify-content:space-around;margin-top:2rem;padding-top:2rem;border-top:2px solid #1a1a1a}.vote-count{text-align:center}.vote-count .number{font-size:3rem;font-weight:900;color:#1a1a1a}.vote-count .label{font-size:.85rem;color:#666;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.meeting-log{max-height:400px;overflow-y:auto;font-size:.9rem}.log-entry{padding:.75rem;margin-bottom:.5rem;background:#f9f8f5;border-radius:3px;border-left:3px solid #e67e22}.log-timestamp{color:#888;font-size:.8rem;margin-bottom:.25rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border:3px solid #1a1a1a;border-radius:4px;padding:2rem;max-width:500px;width:90%;box-shadow:8px 8px #00000026}.modal h3{color:#7b2d3b;margin-bottom:1.5rem;font-size:1.4rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.modal-buttons{display:flex;gap:1rem;margin-top:2rem}.modal-buttons button{flex:1}textarea{width:100%;padding:.75rem;background:#f9f8f5;border:2px solid #ddd;border-radius:3px;color:#1a1a1a;font-family:inherit;font-size:1rem;min-height:100px;resize:vertical}textarea:focus{outline:none;border-color:#c0392b;box-shadow:0 0 0 3px #c0392b26}.info-box{background:#e67e2214;border-left:4px solid #e67e22;padding:1rem;margin-bottom:1rem;border-radius:3px;font-size:.9rem;color:#444}.warning-box{background:#c0392b0f;border-left:4px solid #c0392b;padding:1rem;margin-bottom:1rem;border-radius:3px;font-size:.9rem;color:#444}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ece9e3}::-webkit-scrollbar-thumb{background:#bbb;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#999}.about-container{max-width:700px;margin:0 auto}.about-section{background:#fff;border:2px solid #1a1a1a;border-radius:4px;padding:2rem;margin-bottom:1.5rem;box-shadow:4px 4px #00000014}.about-section h2{font-size:1.3rem;color:#7b2d3b;font-weight:800;letter-spacing:.05em;text-transform:uppercase;margin-bottom:1rem;border-bottom:3px solid #1a1a1a;padding-bottom:.5rem}.about-section p{margin-bottom:.75rem;color:#333;line-height:1.7}.about-section a{color:#c0392b;text-decoration:none;font-weight:600}.about-section a:hover{text-decoration:underline}.quick-start-list{padding-left:1.25rem}.quick-start-list li{margin-bottom:.75rem;line-height:1.7;color:#333}.book-promo{background:#c0392b0a;border:2px solid #ddd;border-left:5px solid #c0392b;border-radius:4px;padding:1.5rem}.book-promo h3{font-size:1.1rem;color:#1a1a1a;margin-bottom:.25rem;font-style:italic}.book-author{color:#666!important;font-size:.95rem;margin-bottom:.75rem!important}.book-links{display:flex;gap:1rem;margin-top:.75rem}.book-links a{background:#c0392b;color:#fff!important;padding:.5rem 1rem;border-radius:3px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;transition:background .2s ease}.book-links a:hover{background:#a93226;text-decoration:none!important}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#1a1a1a;color:#fff;font-size:.8rem;font-weight:400;letter-spacing:0;text-transform:none;padding:.5rem .75rem;border-radius:4px;white-space:normal;max-width:250px;width:max-content;text-align:center;line-height:1.4;pointer-events:none;opacity:0;transition:opacity .2s ease;z-index:100;box-shadow:0 2px 8px #0003}[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1a1a1a;pointer-events:none;opacity:0;transition:opacity .2s ease;z-index:100}[data-tooltip]:hover:after,[data-tooltip]:hover:before,[data-tooltip]:focus:after,[data-tooltip]:focus:before{opacity:1}[data-tooltip]:disabled:hover:after{opacity:1;background:#6b1a1a;color:#fdd}[data-tooltip]:disabled:hover:before{opacity:1;border-top-color:#6b1a1a}@media(max-width:1200px){.meeting-container{grid-template-columns:1fr}}
