:root,.theme-light{--bg:#fff;--text:#000;--text-muted:#666;--border:#ddd;--surface:#f5f5f5;--accent:#1a1a1a;--danger:#b00020}.theme-dark{--bg:#000;--text:#fff;--text-muted:#999;--border:#333;--surface:#111;--accent:#fff;--danger:#ff5470}*{box-sizing:border-box}html,body,#app{background:var(--bg);height:100%;color:var(--text);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{font-size:16px;line-height:1.5}button{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:.6em 1em}button:hover{background:var(--border)}button.primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}button.danger{color:var(--danger)}input,textarea,select{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:6px;width:100%;padding:.5em .7em}textarea{resize:vertical;min-height:5em;font-family:inherit}label{color:var(--text-muted);margin-top:.75em;margin-bottom:.25em;font-size:.85em;display:block}a{color:inherit}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-main{flex:1;width:100%;max-width:720px;margin:0 auto;padding:1em 1em 5em}.app-main.immersive{max-width:none;padding:0}.bottom-nav{background:var(--surface);border-top:1px solid var(--border);z-index:10;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{text-align:center;color:var(--text-muted);flex:1;padding:.9em .5em;font-size:.9em;text-decoration:none}.bottom-nav a.active{color:var(--text);font-weight:600}.page-header{justify-content:space-between;align-items:center;margin-bottom:1em;display:flex}.page-header h1{margin:0;font-size:1.4em}.card-row{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:.5em;margin-bottom:.5em;padding:.75em;display:flex}.card-row.expanded{cursor:default}.card-row .icon{font-size:1.2em}.card-row .meta{flex:1;min-width:0}.card-row .meta .label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8em}.card-row .meta .title{font-weight:500}.card-row .meta .preview{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.85em;overflow:hidden}.card-row .drag{cursor:grab;color:var(--text-muted);padding:0 .25em}.card-editor{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:1em;padding:1em}.script-preview{background:var(--bg);border:1px solid var(--border);white-space:pre-wrap;border-radius:6px;margin-top:.5em;padding:.75em;font-size:.95em}.week-row{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:.5em;padding:1em;text-decoration:none;display:block}.week-row .date{font-weight:600}.week-row .sub{color:var(--text-muted);margin-top:.25em;font-size:.9em}.row{align-items:center;gap:.5em;display:flex}.row>*{flex:1}.actions{flex-wrap:wrap;gap:.5em;margin-top:1em;display:flex}.section{margin-bottom:2em}.section h2{border-bottom:1px solid var(--border);margin:0 0 .5em;padding-bottom:.3em;font-size:1.1em}.conduct-root{background:var(--bg);color:var(--text);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.conduct-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;padding:.75em 1em;font-size:.85em;display:flex}.conduct-body{white-space:pre-wrap;flex:1;padding:1.5em 1.25em;font-size:clamp(1.35rem,4.5vw,1.8rem);line-height:1.45;overflow-y:auto}.conduct-zones{z-index:1;display:flex;position:absolute;inset:0}.conduct-zones .zone{flex:1}.conduct-controls{z-index:2;justify-content:space-between;align-items:center;padding:.5em 1em 1em;display:flex;position:relative}.conduct-controls .progress{color:var(--text-muted);pointer-events:none;font-size:.9em}.conduct-controls button{border:1px solid var(--border);background:0 0}.overlay{background:var(--bg);z-index:20;flex-direction:column;display:flex;position:fixed;inset:0}.overlay header{border-bottom:1px solid var(--border);justify-content:space-between;padding:1em;display:flex}.overlay .list{flex:1;padding:.5em 1em;overflow-y:auto}.group-badge{color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:.1em .5em;font-size:.75em}.pill-row{flex-wrap:wrap;gap:.3em;margin-top:.5em;display:flex}.pill{background:var(--bg);border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:.15em .6em;font-size:.8em}.checkbox-row{align-items:center;gap:.5em;margin-top:.75em;display:flex}.checkbox-row input{width:auto}.empty{text-align:center;color:var(--text-muted);padding:2em 1em}.dim{color:var(--text-muted)}.install-banner{background:var(--surface);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:1em;margin-bottom:1em;padding:.75em 1em;font-size:.9em;display:flex}
