:root{--blue:#03468a;--blue-dark:#022f5e;--orange:#f68e21;--orange-light:#fdebd6;--ink:#0f172a;--ink-soft:#475569;--line:#d5dde8;--paper:#fff;--board:#eef2f7;--wrong:#991b1b;--correct:#166534;--radius:10px;color:var(--ink);background:var(--board);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--board);margin:0}button,input,textarea{font:inherit}button{border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:8px;padding:6px 12px}button:hover:not(:disabled){border-color:var(--blue)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--blue);border-color:var(--blue);color:var(--paper);font-weight:600}button.primary:hover:not(:disabled){background:var(--blue-dark)}button.danger{color:var(--wrong);border-color:currentColor}input,textarea{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;width:100%;padding:7px 10px}input:focus,textarea:focus,button:focus-visible{outline:2px solid var(--orange);outline-offset:1px}code{background:var(--board);border-radius:4px;padding:1px 5px;font-size:.9em}.hint{color:var(--ink-soft);margin:4px 0;font-size:.9em}.hint.warn{color:#b45309}.error{color:var(--wrong)}.ok{color:var(--correct);font-weight:600}.center{text-align:center;margin-top:30vh}.badge{background:var(--board);color:var(--ink-soft);vertical-align:middle;border-radius:99px;margin-left:8px;padding:1px 7px;font-size:.75em;font-weight:600;display:inline-block}.badge.error{color:var(--wrong);background:#fee2e2;margin:0}.login{justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.login-box{background:var(--paper);border-radius:14px;flex-direction:column;gap:12px;width:min(420px,100%);padding:28px;display:flex;box-shadow:0 4px 20px #0f172a14}.login-box form{flex-direction:column;gap:12px;display:flex}.login-box button.google{justify-content:center;align-items:center;gap:10px;font-weight:600;display:flex}.login-or{color:#94a3b8;align-items:center;gap:12px;margin:0;font-size:.9rem;display:flex}.login-or:before,.login-or:after{content:"";border-top:1px solid #e2e8f0;flex:1}h1{color:var(--blue);margin:0;font-size:1.3rem}h1 span{color:var(--orange);font-weight:600}.editor header{z-index:2;background:var(--paper);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px 24px;padding:10px 20px;display:flex;position:sticky;top:0}.editor nav{gap:4px;display:flex}.tab{color:var(--ink-soft);background:0 0;border:none;border-bottom:3px solid #0000;border-radius:0;font-weight:600}.tab.active{color:var(--blue);border-bottom-color:var(--orange)}.count{background:var(--wrong);color:var(--paper);border-radius:99px;margin-left:6px;padding:0 7px;font-size:.8em}.save,.account{align-items:center;gap:10px;display:flex}.save{margin-left:auto}.account span{color:var(--ink-soft);font-size:.9em}.banner{background:#fee2e2;align-items:center;gap:12px;padding:10px 20px;display:flex}main{padding:20px}.cards-screen{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:20px;display:grid}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar>input{flex:220px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border-radius:99px;font-size:.9em}.chip.active{background:var(--blue);border-color:var(--blue);color:var(--paper)}.new-card{flex:320px;gap:6px;display:flex}.card-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:14px;margin-top:8px;display:grid}.card-tile{background:0 0;border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:8px;display:flex}.card-tile.selected{border-color:var(--orange);background:var(--paper)}.tile-meta{color:var(--ink-soft);font-size:.8em}.card-detail{background:var(--paper);border-radius:14px;max-height:calc(100vh - 96px);padding:18px;position:sticky;top:76px;overflow-y:auto}.detail{flex-direction:column;gap:16px;display:flex}.detail-preview{justify-content:center;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field>span{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:.85em;font-weight:700}.problems{color:var(--wrong);background:#fee2e2;border-radius:8px;margin:0;padding:10px 10px 10px 28px}.usages,.twins,.history{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.twins li,.history li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.icon-picker{flex-direction:column;gap:4px;display:flex}.icon-grid{grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:4px;max-height:210px;padding:2px;display:grid;overflow-y:auto}.icon-choice{height:42px;color:var(--blue);padding:0}.icon-choice.selected{background:var(--orange-light);border-color:var(--orange)}.publish-screen{flex-direction:column;gap:20px;max-width:900px;display:flex}.publish-screen section{background:var(--paper);border-radius:14px;padding:18px 22px}.publish-screen h2{margin:0 0 12px;font-size:1.1rem}.change-group h4{margin:10px 0 2px}.change-group p{color:var(--ink-soft);margin:0}.admin-add{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.admin-add input[type=email]{flex:260px}.admin-list{margin:0;padding:0;list-style:none}.admin-list li{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:10px 0;display:flex}.admin-list li:first-child{border-top:none}.admin-list .hint{margin:2px 0 0}.admin-actions{gap:8px;display:flex}.publish-action{align-items:center;gap:12px;margin-top:16px;display:flex}@media (width<=900px){.cards-screen{grid-template-columns:1fr}.card-detail{max-height:none;position:static}}.games-screen{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:20px;display:grid}.game-list{background:var(--paper);border-radius:14px;flex-direction:column;gap:14px;max-height:calc(100vh - 96px);padding:14px;display:flex;position:sticky;top:76px;overflow-y:auto}.game-group h4{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:0 0 6px;font-size:.8em}.game-group ul,.situation-list,.family-cards,.phases,.steps,.choices,.picker-results{margin:0;padding:0;list-style:none}.game-item{text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:6px 8px;display:flex}.game-item.active{background:var(--orange-light);font-weight:600}.add-game,.add-family{color:var(--blue);border-style:dashed;font-weight:600}.new-game{flex-direction:column;gap:6px;display:flex}.game-editor{flex-direction:column;gap:16px;min-width:0;display:flex}.game-title{flex-wrap:wrap;align-items:baseline;gap:8px 16px;display:flex}.game-title h2{margin:0}.game-title .danger{margin-left:auto}.panel{background:var(--paper);border-radius:14px;flex-direction:column;gap:12px;padding:16px 20px;display:flex}.panel h3{margin:0;font-size:1.05rem}.meta-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.meta-row>.field{flex:180px}.meta-row>.field:first-child:has(.icon-field){flex:none}.inline{align-items:center;gap:8px;display:flex}.icon-field{position:relative}.icon-button{width:40px;height:40px;color:var(--blue);padding:0}.icon-popover{z-index:5;background:var(--paper);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;width:340px;padding:12px;display:flex;position:absolute;top:46px;left:0;box-shadow:0 8px 24px #0f172a2e}.color-field{cursor:pointer;border-radius:8px;flex-shrink:0;width:40px;height:40px;padding:2px}.families{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;gap:12px;display:grid}.family{border:1px solid var(--line);border-top:6px solid;border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.family-head{align-items:center;gap:6px;display:flex}.family-head input{font-weight:700}input.small{padding:4px 8px;font-size:.85em}.family-cards{flex-direction:column;gap:4px;display:flex}.card-chip{background:var(--board);color:var(--blue);border-radius:8px;align-items:center;gap:6px;min-width:0;padding:4px 6px;display:flex}.chip-label{color:var(--ink);flex:1;min-width:0;font-size:.9em;line-height:1.25}.card-chip select{flex-shrink:0;width:92px;font-size:.8em}.icon-only{padding:2px 8px;line-height:1}.family-actions{gap:6px;display:flex}.family-actions .danger{margin-left:auto}.card-picker{position:relative}.picker-results{z-index:4;background:var(--paper);border:1px solid var(--line);border-radius:8px;max-height:280px;margin-top:2px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 20px #0f172a26}.picker-results button{text-align:left;width:100%;color:var(--ink);border:none;border-radius:0;align-items:center;gap:8px;display:flex}.picker-results button:hover{background:var(--orange-light)}.picker-results .create{color:var(--blue);font-weight:600}.situations{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:16px;display:grid}.situation-list{flex-direction:column;gap:4px;margin-top:6px;display:flex}.situation-list li{gap:4px;display:flex}.situation{text-align:left;background:var(--board);border:none;flex:1}.situation.active{background:var(--orange-light);font-weight:600}.situation small{color:var(--ink-soft);font-weight:400}.questions .situation{font-size:.9em}.reorder{gap:2px;display:flex}.reorder button{padding:2px 6px}.situation-editor{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:12px;padding:14px;display:flex}.situation-editor h4{margin:4px 0 0}.situation-editor>.danger{align-self:flex-start}.phases{flex-direction:column;gap:6px;display:flex}.phases li{align-items:center;gap:6px;display:flex}.steps{flex-direction:column;gap:4px;display:flex}.steps li{background:var(--paper);border-left:5px solid;border-radius:6px;flex-wrap:nowrap;align-items:center;gap:8px;padding:4px 6px;display:flex}.steps .card-chip{flex:auto}.check{white-space:nowrap}.step-number{text-align:right;width:22px;color:var(--ink-soft);font-weight:700}.check{color:var(--ink-soft);align-items:center;gap:4px;font-size:.85em;display:flex}.check input{width:auto}.choices{flex-direction:column;gap:6px;display:flex}.choices li{align-items:center;gap:8px;display:flex}.choices li>span{flex-shrink:0;width:110px;font-size:.85em;font-weight:600}.choices .right>span{color:var(--correct)}.choices .wrong>span{color:var(--ink-soft)}select{font:inherit;border:1px solid var(--line);background:var(--paper);border-radius:6px;padding:3px 6px}@media (width<=900px){.games-screen,.situations{grid-template-columns:1fr}.game-list{max-height:none;position:static}}.situation-list.questions{max-height:60vh;overflow-y:auto}.victims-screen{flex-direction:column;gap:12px;display:flex}.terrains{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:20px;display:grid}.terrain-list{background:var(--paper);border-radius:14px;flex-direction:column;gap:10px;padding:12px;display:flex}.plan{aspect-ratio:1000/600;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:12px;width:100%;display:block}.plan.tool-victims,.plan.tool-prv{cursor:crosshair}.plan-shape.movable{cursor:move}.plan-spot.movable{cursor:grab}.plan-label{letter-spacing:1.5px;fill:#64748b;font-size:16px;font-weight:800}.plan-label.light{fill:#fff}.plan-label.debris{fill:#c2410c}.plan-label.prv{fill:#1b5e20;font-weight:900}.plan-spot-number{fill:#fff;font-size:14px;font-weight:800}.shape-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.small-field{color:var(--ink-soft);font-size:.9em}.small-field input{width:70px}.bracelet{letter-spacing:.05em;border-radius:4px;margin-left:4px;padding:1px 6px;font-size:.7em;font-weight:800;display:inline-block}.bracelets{margin-top:2px;display:block}.bracelets .bracelet:first-child{margin-left:0}.expected{background:var(--board);border-radius:10px;padding:10px 12px}.expected.warn{background:#fef3c7}.expected p{color:var(--ink-soft);margin:6px 0 0}.checks{flex-wrap:wrap;gap:6px 18px;display:flex}.checks .check{color:var(--ink);font-size:.95em}.meta-row.muted{opacity:.55}.looks{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.looks li{grid-template-columns:1fr 1fr auto;align-items:start;gap:6px;display:grid}@media (width<=900px){.terrains{grid-template-columns:1fr}}.field>button{align-self:flex-start}.list-status{align-items:center;gap:12px;margin:6px 0;display:flex}.plan-spot-number.dark{fill:#1f2937}.drawer{z-index:10;background:var(--paper);border-left:1px solid var(--line);flex-direction:column;width:min(560px,94vw);animation:.18s ease-out drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-12px 0 32px #022f5e2e}@media (width>=1100px){.game-editor.with-drawer{padding-right:calc(min(560px,94vw) - 20px)}}@keyframes drawer-in{0%{opacity:0;transform:translate(40px)}}.drawer-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:12px 16px;display:flex}.drawer-head h3{flex:1;margin:0}.drawer-head .bracelet{margin:0;font-size:.9em}.drawer-body{flex-direction:column;flex:1;gap:14px;padding:16px;display:flex;overflow-y:auto}.drawer-body>.danger{align-self:flex-start}.drawer .victim-columns{grid-template-columns:1fr}.victim-columns{grid-template-columns:minmax(260px,1fr) minmax(320px,1.2fr);align-items:start;gap:20px;display:grid}.victim-column{flex-direction:column;gap:12px;display:flex}@media (width<=900px){.victim-columns{grid-template-columns:1fr}}.segmented{border:1px solid var(--line);border-radius:8px;display:inline-flex;overflow:hidden}.segmented button{background:var(--paper);border:none;border-radius:0}.segmented button+button{border-left:1px solid var(--line)}.segmented button.active{background:var(--blue);color:#fff}.photo-field{border:2px dashed #0000;border-radius:10px;flex-direction:column;gap:8px;display:flex}.photo-field.over{border-color:var(--orange);background:var(--orange-light)}.photo-preview{aspect-ratio:16/10;background:var(--board);text-align:center;border-radius:10px;justify-content:center;align-items:center;max-width:420px;padding:8px;display:flex;overflow:hidden}.photo-preview img{object-fit:cover;border-radius:6px;width:100%;height:100%}.photo-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip .bracelet{margin:0 6px 0 0}.drawer .check{white-space:normal}
