/* Shared controls: component rules rather than page-specific overrides. */
:root{--control-radius:8px;--focus-color:#087c99;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;}
.ui-button,.ui-dialog button{font:inherit;font-size:13px;min-height:44px;padding:8px 14px;border:1px solid var(--border,#dce3eb);border-radius:var(--control-radius);background:var(--surface-2,#f1f5f9);color:var(--text,#152030);cursor:pointer;}
button:disabled{cursor:default;opacity:.6;}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--focus-color);outline-offset:3px;}
.ui-dialog{margin:auto;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid var(--border,#dce3eb);border-radius:18px;background:var(--surface,#fff);color:var(--text,#152030);}
.ui-dialog::backdrop{background:#0f172a66;}
.ui-dialog h3{font-size:18px;}.ui-dialog p{font-size:14px;line-height:1.7;margin:16px 0;white-space:pre-line;overflow-wrap:anywhere;}
.ui-dialog-actions{display:flex;gap:10px;justify-content:flex-end;}.ui-dialog button[value=confirm]{background:var(--accent,#087c99);color:white;}
.ui-dialog textarea{display:block;width:100%;min-height:150px;margin:16px 0;font:inherit;background:var(--surface-2,#f1f5f9);color:inherit;}
.ui-empty{text-align:center;color:var(--text-dim,#475569);padding:24px;}.ui-empty p{margin-bottom:12px;}
.ui-notice{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:2000;max-width:calc(100vw - 32px);padding:14px 18px;border:1px solid var(--border,#dce3eb);border-radius:12px;background:var(--surface,#fff);color:var(--text,#152030);box-shadow:0 6px 24px #0002;}
.account-referrals>summary,.library-import>summary,.detail-settings>summary,.result-settings>summary,.prob-more>summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;}
.account-referrals>summary::-webkit-details-marker,.library-import>summary::-webkit-details-marker,.detail-settings>summary::-webkit-details-marker,.result-settings>summary::-webkit-details-marker,.prob-more>summary::-webkit-details-marker{display:none;}
.account-referrals>summary::after,.library-import>summary::after,.detail-settings>summary::after,.result-settings>summary::after,.prob-more>summary::after{content:'';width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);margin-left:auto;margin-right:3px;flex-shrink:0;transition:transform .15s;}
.account-referrals[open]>summary::after,.library-import[open]>summary::after,.detail-settings[open]>summary::after,.result-settings[open]>summary::after,.prob-more[open]>summary::after{transform:rotate(45deg);}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important;}}

