/* Shared app surface; celestial rings are illustrations, not container frames. */
.primary,.secondary{border:0;border-radius:0;box-shadow:none;color:var(--ink);background:linear-gradient(110deg,#9bb9ed14,transparent 85%);min-height:48px;padding:12px 24px;letter-spacing:.05em}
.primary:hover:not(:disabled),.secondary:hover:not(:disabled){color:#eff4ff;background:linear-gradient(110deg,#a6c8ff25,transparent 90%);box-shadow:none;filter:none;transform:translateY(-2px);text-shadow:0 0 22px #c4dbff44}
.primary:active:not(:disabled),.secondary:active:not(:disabled){transform:translateY(1px)}
.app-header,.app-nav,.composer,.turn+.turn,.player-action,.prose blockquote,.inline-check,.status-section,.record-row,.save-row,.draft-slot,.object-choice,.combat-editor-row,.combat-change{border:0;box-shadow:none}
.app-nav a.active:before,.turn-label:after{display:none}
.app-nav a.active,.settings-tabs button.active,.aside-tabs button.active{color:var(--ink);box-shadow:none;background:radial-gradient(ellipse at 50% 50%,#9cc7ff16,transparent 75%);text-shadow:0 0 20px #9cc7ff44}
.settings-tabs,.aside-tabs,.profile-tabs button,.external-row,#image-config,#image-generate,.workshop-tools input,.workshop-tools select{border:0;box-shadow:none}
.field input,.field textarea,.field select,.trait-filters input,.trait-filters select{border:0;background:linear-gradient(110deg,#a9c7ff0b,transparent);transition:background .2s}
.field :is(input,textarea,select):focus{background:#a9c7ff12}
.composer{background:linear-gradient(180deg,#081126dd,#081126f5);padding-top:20px}.composer textarea{border:0;box-shadow:none;background:transparent}.composer>label{color:#c3d4ed}.composer-footer .primary{background:linear-gradient(110deg,#90b7eb18,transparent);color:#e0ebfa}
.prose blockquote{padding-left:0;color:#d2deef}.player-action{margin-bottom:22px}.inline-check{background:linear-gradient(90deg,#7bace20a,transparent)}
.combat-choice:has(input:checked){box-shadow:none;background:linear-gradient(100deg,#a9c7ff18,transparent)}
dialog,#detail,.login-dialog{border:0;box-shadow:0 28px 100px #01071999;background:radial-gradient(ellipse at 70% 0,#1b2c4a99,transparent 65%),#080f22f5}
.reader-options,.latest-button,#toast{border:0;box-shadow:0 18px 48px #01071955}.profile-tabs button.active{border:0}
:is(button,a,summary,input,select,textarea):focus-visible{outline:2px solid #a9c7ff99;outline-offset:4px}
/* Speaker appearance edits bubble presentation only. */
.starsea-dialogue{grid-template-columns:54px minmax(0,1fr);gap:18px;margin:28px 0;max-width:92%;--bubble-color:#7793bd;--bubble-fill:#7793bd24;--bubble-radius:22px}
.starsea-dialogue.is-player{grid-template-columns:minmax(0,1fr) 54px;margin-left:auto;--bubble-color:#719fc4;--bubble-fill:#719fc42e}
.is-player>.dialogue-avatar{grid-column:2;grid-row:1}.is-player>.dialogue-bubble{grid-column:1;grid-row:1}
.dialogue-avatar{width:54px;border:0;border-radius:18px;background:radial-gradient(circle at 30% 20%,#35476e99,#0b142755);box-shadow:none;transition:transform .3s,filter .3s}
.starsea-dialogue:hover>.dialogue-avatar{transform:translateY(-2px);filter:brightness(1.08)}
.dialogue-bubble{padding:18px 24px 22px;background:linear-gradient(115deg,var(--bubble-fill),transparent 120%);border:0;border-radius:var(--bubble-radius);box-shadow:none;transition:filter .25s,transform .25s}
.is-player .dialogue-bubble{background:linear-gradient(245deg,var(--bubble-fill),transparent 120%)}
.dialogue-bubble::before,.dialogue-bubble::after{display:none;content:none}.dialogue-bubble:hover,.dialogue-bubble:focus-within{background-color:transparent;filter:brightness(1.12)}
.dialogue-appearance{min-height:36px}.dialogue-appearance:hover,.dialogue-appearance:focus-visible{color:#e2eeff;background:none}
.player-action:has(.starsea-dialogue){border:0;padding:0;background:none;box-shadow:none}
.bubble-style-tabs{display:flex;gap:24px;margin-bottom:24px}.bubble-style-tabs button{min-height:44px;color:var(--muted)}.bubble-style-tabs [aria-pressed=true]{color:var(--ink);text-shadow:0 0 18px #a0baff80}.bubble-style-preview{min-height:140px}.bubble-style-preview .starsea-dialogue{max-width:100%}#bubble-style-form input[type=color]{width:70px;padding:4px;cursor:pointer}#bubble-style-form input[type=range]{padding:0;accent-color:#a9c7ff;border:0;background:transparent}
.roll-mode-control select{color:var(--ink);border:0}
@media(max-width:600px){.starsea-dialogue{grid-template-columns:40px minmax(0,1fr);gap:10px;max-width:96%}.starsea-dialogue.is-player{grid-template-columns:minmax(0,1fr) 40px}.dialogue-avatar{width:40px;border-radius:13px}.dialogue-bubble{padding:12px 14px 16px}}
@media(prefers-reduced-motion:reduce){.primary,.secondary,.dialogue-bubble,.dialogue-avatar{transition:none;transform:none!important}}

.chapter-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.chapter-controls [data-chapter-mode]{color:var(--muted);font-size:12px;white-space:nowrap}.chapter-controls button{min-height:40px;padding:5px 0;white-space:nowrap;background:none;border:0;box-shadow:none;transition:color .25s,opacity .25s}.chapter-controls button:hover{color:var(--blue)}[data-chapter-form] select{min-height:46px;width:100%;border:0;border-radius:0;box-shadow:none;background:linear-gradient(90deg,#050b1d50,transparent);color:var(--ink)}@media(max-width:700px){.story-toolbar{flex-wrap:wrap}.story-toolbar .reader-tools{flex-wrap:wrap;justify-content:flex-start;gap:10px}.chapter-controls{gap:12px}}
