/* phone-initiative.css — self-contained (no theme variables): loaded by play.html,
   initiative.html, index.html and map.html, which do not share a stylesheet. */

/* ── GM tracker badges (/play) ── */
.phi-badge{display:inline-block; margin-left:5px; padding:0 5px; border-radius:8px; font:600 9.5px/15px system-ui,sans-serif; letter-spacing:.02em; vertical-align:middle; white-space:nowrap;}
.phi-b-phone{background:rgba(88,160,110,.22); color:#9fd8b0; border:1px solid rgba(88,160,110,.5);}
.phi-b-waiting{background:rgba(90,150,200,.16); color:#9cc6e8; border:1px dashed rgba(90,150,200,.6); animation:phi-pulse 1.6s ease-in-out infinite;}
.phi-b-typed{background:rgba(255,255,255,.06); color:#a89a7c; border:1px solid rgba(255,255,255,.14);}
.phi-offer{margin-left:4px; padding:0 6px; border-radius:8px; font:700 10px/15px system-ui,sans-serif; background:rgba(227,182,90,.16); color:#e3b65a; border:1px solid rgba(227,182,90,.55); cursor:pointer; vertical-align:middle;}
.phi-offer:hover{background:rgba(227,182,90,.3);}
.phi-hint.phi-done{color:#9fd8b0;}
.phi-off{color:#d98a6a;}
@keyframes phi-pulse{50%{opacity:.55;}}
@media (prefers-reduced-motion:reduce){.phi-b-waiting{animation:none;}}

/* ── player card ── */
.phi-root{font-family:'EB Garamond',Georgia,serif; color:#eadfc8; box-sizing:border-box;}
.phi-root *{box-sizing:border-box;}
.phi-root[hidden]{display:none !important;}
.phi-float{position:fixed; left:0; right:0; bottom:0; z-index:9000; padding:10px 10px calc(10px + env(safe-area-inset-bottom,0px)); display:flex; justify-content:center; pointer-events:none; touch-action:manipulation;}
.phi-float > *{pointer-events:auto;}
.phi-page{max-width:440px; margin:0 auto; padding:18px 14px;}
.phi-card{width:100%; max-width:440px; background:#1a130b; border:1px solid #6b5326; border-radius:14px; padding:14px 16px 16px; box-shadow:0 8px 30px rgba(0,0,0,.6);}
.phi-float .phi-card{border-color:#e3b65a; max-height:70vh; overflow-y:auto; overscroll-behavior:contain;}
.phi-h{font-family:'Cinzel',Georgia,serif; font-weight:700; font-size:20px; color:#e3b65a; letter-spacing:.04em; display:flex; align-items:center; justify-content:space-between; margin-bottom:8px;}
.phi-card p{margin:.35em 0; font-size:17px;}
.phi-sm{font-size:14px; color:#9c875f;}
.phi-row{padding:8px 0; border-top:1px solid #2c2214;}
.phi-row:first-of-type{border-top:0;}
.phi-name{font-size:18px; font-weight:600; margin-bottom:6px;}
.phi-form{display:flex; gap:10px;}
.phi-input{flex:1; min-width:0; height:56px; font:700 28px/1 system-ui,sans-serif; text-align:center; color:#fff7e4; background:#0e0a06; border:2px solid #6b5326; border-radius:10px; -moz-appearance:textfield;}
.phi-input::placeholder{font:400 15px/1 'EB Garamond',Georgia,serif; color:#6b5f48;}
.phi-input:focus{outline:none; border-color:#e3b65a;}
.phi-send{flex:none; min-width:104px; height:56px; font:700 18px/1 'Cinzel',Georgia,serif; letter-spacing:.05em; color:#1a130b; background:#e3b65a; border:0; border-radius:10px; cursor:pointer;}
.phi-send:disabled{opacity:.6;}
.phi-sent{display:flex; align-items:baseline; gap:10px; font-size:17px; color:#9fd8b0;}
.phi-sent b{font:700 34px/1 system-ui,sans-serif; color:#fff7e4;}
.phi-link{margin-left:auto; background:none; border:0; color:#e3b65a; font:inherit; font-size:16px; text-decoration:underline; cursor:pointer; padding:8px 0 8px 12px;}
.phi-err{margin-top:6px; color:#f0a48a; font-size:15px;}
.phi-x{flex:none; min-width:44px; min-height:44px; margin:-10px -10px -10px 8px; background:none; border:0; color:#c9b47f; font-size:22px; line-height:1; cursor:pointer;}
.phi-pill{font:600 15px/1 system-ui,sans-serif; color:#1a130b; background:#e3b65a; border:0; border-radius:999px; padding:11px 16px; box-shadow:0 4px 16px rgba(0,0,0,.5); cursor:pointer;}
.phi-pill .phi-sm{color:#5a4514; font-size:12px; margin-left:6px; text-decoration:underline;}
