
/* AI Text Game v1.10.4 — manual state authority, real-person guard and iPhone 13 layout */
:root{--review-safe-inline:max(12px,env(safe-area-inset-left));}
.state-authority-panel{overflow:hidden}
.manual-authority-badge{flex:0 0 auto;padding:7px 10px;border:1px solid rgba(123,91,57,.22);border-radius:999px;background:rgba(240,224,198,.58);color:#77583e;font-size:12px;white-space:nowrap}
.state-policy-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:14px}
.state-default-field,.real-person-guard{min-width:0;padding:14px;border:1px solid rgba(123,91,57,.15);border-radius:14px;background:rgba(255,252,246,.62)}
.state-default-field{display:grid;gap:7px;color:#6f5d4c}
.state-default-field>span,.real-person-guard b{font-size:14px;color:#4d3c2e}
.state-default-field input{width:100%;min-height:44px}
.state-default-field small,.real-person-guard small{color:#877563;line-height:1.55}
.real-person-guard{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;cursor:pointer}
.real-person-guard input{width:20px;height:20px;margin:2px 0 0;accent-color:#8d6848}
.real-person-guard span{display:grid;gap:5px}
.state-policy-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}
.state-policy-actions button{min-height:42px;padding:9px 13px;border:1px solid rgba(129,94,61,.18);border-radius:11px;background:#fffaf1;color:#604b39}
.mechanic-grid{display:grid!important;grid-template-columns:1fr!important;gap:13px!important}
.mechanic-group-card{min-width:0;padding:14px;border:1px solid rgba(123,91,57,.16);border-radius:16px;background:rgba(250,242,230,.44)}
.mechanic-group-card>.mechanic-grid{margin-top:12px}
.mechanic-editor{min-width:0;border:1px solid rgba(123,91,57,.13)!important;padding:14px 13px 15px 16px!important}
.mechanic-editor.is-user-created{border-color:rgba(132,95,55,.28)!important;background:linear-gradient(180deg,rgba(255,251,242,.98),rgba(242,228,207,.88))!important}
.mechanic-editor-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important}
.mechanic-origin{justify-self:start;padding:3px 7px;border-radius:999px;background:rgba(151,113,75,.08);color:#8b735c;font-size:10px;line-height:1.2}
.mechanic-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(160px,.75fr);gap:10px}
.mechanic-row.triple{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr) minmax(0,.75fr)!important}
.mechanic-editor label{min-width:0}
.mechanic-editor input,.mechanic-editor select,.mechanic-editor textarea{width:100%;box-sizing:border-box;min-width:0}
.initial-value-label{position:relative}
.initial-quick-values{display:flex;gap:5px;margin-top:6px}
.initial-quick-values button{min-width:34px;min-height:28px;padding:3px 7px;border:1px solid rgba(131,96,63,.16);border-radius:8px;background:rgba(255,253,248,.78);color:#765c45;font-size:11px}
.mechanic-add-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.mechanic-add-actions button{min-height:40px}

/* Keep the story input aligned as one complete control on desktop and iPhone. */
.game-page .composer{box-sizing:border-box!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 20px 44px!important;align-items:center!important;gap:6px!important;left:max(8px,env(safe-area-inset-left))!important;right:max(8px,env(safe-area-inset-right))!important;bottom:max(6px,env(safe-area-inset-bottom))!important;width:auto!important;max-width:744px!important;margin-inline:auto!important;transform:none!important}
.game-page .composer input{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;box-sizing:border-box!important}
.game-page .composer .inline-status{display:grid!important;place-items:center!important;width:20px!important;min-width:20px!important}
.game-page .composer .tool-btn,.game-page .composer .send-btn{margin:0!important;justify-self:center!important}
body[data-input-position="flow"] .game-page .reading-shell{padding-bottom:22px!important}
body[data-input-position="flow"] .game-page .composer{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:calc(100% - 16px)!important;max-width:728px!important;margin:0 auto max(8px,env(safe-area-inset-bottom))!important;transform:none!important}

@media(max-width:430px){
  .import-review-page{width:100%;max-width:none;overflow-x:hidden}
  .review-top{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
  .review-title-stack small{font-size:8px;letter-spacing:.14em}
  .review-tabs{top:57px;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:7px max(8px,env(safe-area-inset-left))}
  .review-tabs button{min-width:0;padding:8px 4px!important;font-size:12px;white-space:nowrap}
  .review-tabs button span{display:none}
  .review-shell{width:100%;box-sizing:border-box;padding:13px max(10px,env(safe-area-inset-left)) calc(114px + env(safe-area-inset-bottom))!important;gap:12px}
  .review-paper{min-width:0;padding:16px 13px 16px 34px!important;border-radius:15px!important}
  .review-paper h2{font-size:21px!important;line-height:1.3}
  .section-title-line{align-items:flex-start;flex-wrap:wrap}
  .section-mini-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .section-mini-actions .mini-action{min-width:0;white-space:normal}
  .recommendation-card{grid-template-columns:1fr!important;gap:12px!important}
  .deep-analysis-button{width:100%;box-sizing:border-box}
  .state-policy-grid{grid-template-columns:1fr}
  .manual-authority-badge{font-size:11px}
  .state-policy-actions{display:grid;grid-template-columns:1fr 1fr}
  .state-policy-actions button{min-width:0;white-space:normal}
  .config-field-grid{grid-template-columns:1fr!important}
  .config-field-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  .config-field-head select{width:100%;min-width:0}
  .field-inline{grid-template-columns:minmax(0,1fr) auto!important}
  .character-config-card{grid-template-columns:1fr!important;padding:13px!important}
  .character-card-top,.privacy-note{grid-column:auto!important}
  .character-card-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:5px}
  .mechanic-group-card{padding:11px 9px}
  .mechanic-group-head{display:grid!important;grid-template-columns:1fr!important;gap:10px}
  .group-title-edit{grid-template-columns:minmax(0,1fr) 96px!important}
  .mechanic-editor{padding:13px 10px 14px 13px!important}
  .mechanic-row{grid-template-columns:1fr!important}
  .mechanic-row.triple{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  .mechanic-row.triple label{font-size:11px}
  .mechanic-row.triple input{padding-left:7px!important;padding-right:7px!important;text-align:center}
  .initial-quick-values{justify-content:center}
  .mechanic-add-actions{display:grid;grid-template-columns:1fr 1fr}
  .mechanic-add-actions button:last-child{grid-column:1/-1}
  .review-sticky-actions{display:grid!important;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:7px;padding:8px max(8px,env(safe-area-inset-left)) calc(8px + env(safe-area-inset-bottom))!important}
  .review-sticky-actions button{min-width:0!important;width:100%;padding:9px 7px!important}
  .review-sticky-actions button span{font-size:13px}
  .review-sticky-actions button small{font-size:9px;line-height:1.25}
  .game-page .reading-shell{padding-left:max(10px,env(safe-area-inset-left))!important;padding-right:max(10px,env(safe-area-inset-right))!important;padding-bottom:calc(92px + env(safe-area-inset-bottom))!important}
  .game-page .story-stream{padding-left:8px!important;padding-right:8px!important}
  .game-page .options-wrap{margin-left:0!important;margin-right:0!important;padding:0 8px!important}
  .game-page .option{grid-template-columns:25px minmax(0,1fr) 10px!important;gap:6px!important;padding:10px 0!important;font-size:14px!important;overflow-wrap:anywhere}
  .game-page .composer{grid-template-columns:40px minmax(0,1fr) 18px 42px!important;gap:5px!important;left:max(6px,env(safe-area-inset-left))!important;right:max(6px,env(safe-area-inset-right))!important;padding:8px 7px calc(8px + env(safe-area-inset-bottom))!important;border-radius:17px 17px 0 0!important}
  .game-page .composer input{height:42px!important;font-size:16px!important;padding:0 13px!important}
  .game-page .composer .tool-btn,.game-page .composer .send-btn{width:40px!important;height:42px!important;min-width:40px!important;min-height:42px!important}
  body[data-input-position="flow"] .game-page .composer{width:calc(100% - 12px)!important;margin:0 6px max(8px,env(safe-area-inset-bottom))!important}
  body.keyboard-open .review-sticky-actions{display:none!important}
}

@media(max-width:360px){
  .mechanic-row.triple{grid-template-columns:1fr!important}
  .state-policy-actions,.mechanic-add-actions{grid-template-columns:1fr}
  .mechanic-add-actions button:last-child{grid-column:auto}
  .game-page .composer{grid-template-columns:38px minmax(0,1fr) 16px 40px!important}
}
