:root{--color-bg:#fff;--color-text:#2a2016;--color-text-soft:#5a4c3b;--color-border:#333;--color-primary:#1b3358;--color-primary-dark:#14243d;--color-primary-text:#fff;--color-gold:#c9a227;--color-gold-light:#e7ce7e;--color-red:#a31e2c;--color-red-dark:#7a1620;--color-error-bg:#fdecea;--color-error-text:#7a0c0c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:18px/1.5 system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);margin:0}#root{flex-direction:column;min-height:100svh;display:flex}.app-shell{width:100%;max-width:480px;margin:0 auto;padding:24px 16px 48px}h1{color:var(--color-primary);margin:0 0 12px;font-size:28px}h2{color:var(--color-primary);margin:0;font-size:24px}h3{color:var(--color-primary)}.subtitle{color:var(--color-text-soft);margin:0}.app-header{border-bottom:3px solid var(--color-gold);align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;display:flex}.app-logo{flex-shrink:0;width:64px;height:auto}.app-header-text h2{line-height:1.1}.app-header-club{color:var(--color-text-soft);margin:4px 0 0;font-size:12px}form,.dashboard{flex-direction:column;gap:12px;display:flex}label{font-weight:600}input{border:2px solid var(--color-border);border-radius:8px;min-height:48px;padding:12px;font-size:18px}button{background:var(--color-gold);min-height:52px;color:var(--color-primary);cursor:pointer;border:none;border-radius:6px;padding:14px 20px;font-size:18px;font-weight:700;box-shadow:0 4px 10px #00000026}button:hover{background:var(--color-gold-light)}button:disabled{opacity:.6;cursor:not-allowed}button.secondary{color:var(--color-primary);border:2px solid var(--color-primary);box-shadow:none;background:0 0}button.secondary:hover{background:#1b335814}.form-error{background:var(--color-error-bg);color:var(--color-error-text);border-radius:8px;padding:12px;font-weight:600}.owner-test-result{background:#eef7ee;border-radius:8px;padding:12px}.admin-page{flex-direction:column;gap:16px;display:flex}.link-back{color:var(--color-primary);background:0 0;border:none;align-self:flex-start;min-height:auto;padding:8px 0;font-weight:600}.hint{color:var(--color-text-soft);font-size:16px}.inline-form,.stacked-form{border:2px solid var(--color-border);border-radius:8px;flex-direction:column;gap:8px;padding:16px;display:flex}.stacked-form h2,.stacked-form h3{margin-bottom:4px}fieldset{border:2px solid var(--color-border);border-radius:8px;padding:12px}.checkbox-label{align-items:center;gap:8px;padding:6px 0;font-weight:400;display:flex}.checkbox-label input{width:22px;height:22px;min-height:auto}select{border:2px solid var(--color-border);border-radius:8px;min-height:48px;padding:10px;font-size:18px}.entity-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.entity-list li{border:2px solid var(--color-border);border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.entity-list li.inactive{opacity:.6}.entity-name{word-break:break-word;font-weight:600}.entity-link{color:var(--color-text);text-align:left;background:0 0;border:none;min-height:auto;padding:0;font-size:18px}button.small{align-self:flex-start;min-height:auto;padding:6px 12px;font-size:14px}.entity-actions,.entity-name-edit-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.entity-name-edit-form input{flex:1;min-width:120px}.technical-details{border:2px dashed var(--color-border);border-radius:8px;padding:12px}.technical-details summary{cursor:pointer;font-weight:600}.app-footer{text-align:center;color:var(--color-text-soft);margin-top:32px;padding-top:16px;font-size:13px}.app-footer a{color:var(--color-red-dark);font-weight:600}.schedule-table{border-collapse:collapse;width:100%;font-size:16px}.schedule-table th,.schedule-table td{border:1px solid var(--color-border);text-align:left;padding:8px}.impact-banner{border:2px solid var(--color-border);border-radius:8px;margin:4px 0;padding:12px}.impact-summary{margin:0 0 4px;font-weight:700}.impact-none{background:#eef7ee;border-color:#2e7d32}.impact-partial{border-color:var(--color-gold);background:#fbf6ea}.impact-severe{background:#fdecea;border-color:#b30000}.impact-segment-list ul{margin:4px 0 8px;padding-left:20px}.impact-segment-list li{margin-bottom:2px}.schedule-table tr.inactive{opacity:.6}.admin-entry-link{color:#999;background:0 0;border:none;min-height:auto;margin-top:24px;padding:8px 0;font-size:14px;font-weight:400}.name-selection-list{flex-direction:column;gap:14px;display:flex}.name-selection-list button{background:var(--color-gold);width:100%;color:var(--color-primary);letter-spacing:.03em;text-transform:uppercase;text-align:left;border:none;border-radius:6px;padding:16px 68px 16px 20px;font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,Consolas,monospace;font-weight:700;position:relative;box-shadow:0 4px 10px #00000026}.name-selection-list button:hover{background:var(--color-gold-light)}.name-selection-list button:after{content:"▶";background:var(--color-gold-light);width:52px;color:var(--color-red-dark);border-left:2px dashed #7a162066;border-radius:0 6px 6px 0;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;right:0}.name-selection-list button:before{content:"";background:radial-gradient(circle 8px at 8px 8px, var(--color-bg) 98%, transparent 100%), radial-gradient(circle 8px at 8px calc(100% - 8px), var(--color-bg) 98%, transparent 100%);pointer-events:none;width:16px;position:absolute;top:0;bottom:0;right:44px}.rehearsal-card{border:2px solid var(--color-border);text-align:left;border-radius:8px;margin-bottom:12px;padding:16px}.rehearsal-card.emphasized{border-color:var(--color-primary);border-width:3px}.performance-card{border-color:var(--color-gold);background:#fbf6ea}.event-card{border-color:var(--color-primary);background:#eef2f9}.status-event{color:var(--color-primary)}.rehearsal-card p{margin:6px 0}.rehearsal-date{font-size:20px;font-weight:700}.status-badge{padding:4px 0;font-weight:700;display:inline-block}.status-unassigned{color:var(--color-gold)}.status-required{color:#0b6b1f}.status-free{color:#555}.status-special-role{color:var(--color-primary);font-weight:700}.status-cancelled{color:#b30000}.rehearsal-list{flex-direction:column;display:flex}
