:root{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;color:#2b2b2b;background:#f6f4f0}body{margin:0}button{font:inherit;background:#2b2b2b;color:#fff;border:0;border-radius:6px;padding:7px 12px;cursor:pointer}button:disabled{opacity:.4;cursor:default}button.link,button.slot{background:none;color:inherit;padding:2px 0;text-align:left}input,select{font:inherit;padding:6px 8px;border:1px solid #ccc;border-radius:6px;width:100%;box-sizing:border-box}.muted{color:#888;font-size:.9em}.error{color:#b23b3b}.pad{padding:24px}.list{max-width:640px;margin:48px auto}.list form{display:flex;gap:8px;margin:16px 0}.dev{display:block;font-size:12px;color:#888}.workspace{display:grid;grid-template-columns:300px minmax(380px,1fr) minmax(420px,1.2fr);height:100vh}.map{overflow:auto;padding:16px;border-right:1px solid #e2ded6;background:#fff}.map h2{letter-spacing:.12em;text-transform:uppercase;font-weight:400;font-size:18px}.phases{padding-left:18px;color:#999;font-size:14px}.phases .current{color:#2b2b2b;font-weight:600}.slots{list-style:none;padding-left:8px;margin:6px 0;font-size:14px}.slots li.active{background:#f1ebe1;border-radius:4px}.slot:before{content:"○ ";color:#bbb}.slot.chosen:before{content:"● ";color:#c9a46b}.slot.approved:before{content:"✓ ";color:#4b6b4b}.slot.inherited:before{content:"↳ ";color:#999}.slot.changes_requested:before{content:"! ";color:#b23b3b}.add-room{display:grid;gap:6px;margin-top:16px}.center{overflow:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.card{background:#fff;border-radius:10px;padding:16px 18px;box-shadow:0 1px 2px #0000000f}.step h2{margin:0 0 4px;font-weight:500}.step .prompt{font-size:15px}.step form{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.step label{font-size:12px;color:#666;display:grid;gap:4px}.step .row{grid-column:1 / -1;display:flex;gap:8px}.inherited{background:#f6f4f0;padding:8px 10px;border-radius:6px;font-size:14px}.gate ul{margin:8px 0;padding-left:18px;font-size:14px}.preview{display:flex;flex-direction:column;border-left:1px solid #e2ded6}.preview h3{margin:12px 16px 8px;font-weight:500}.preview iframe{flex:1;border:0}
