.outline-btn{justify-content:center;align-items:center;gap:var(--space-xs);height:var(--control-height);padding:0 var(--space-md);background:var(--color-card-background);color:var(--color-brand-navy);font-size:var(--font-size-sm);font-family:var(--font);font-weight:var(--font-weight-semibold);border:var(--border-md) solid var(--color-brand-navy);border-radius:var(--radius);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-ui), color var(--transition-ui);display:flex}.outline-btn:hover{background:var(--shade-white-gray-72)}.outline-btn:focus-visible{box-shadow:0 0 0 3px var(--shade-blue-22);outline:none}.outline-btn:disabled{opacity:.4;cursor:not-allowed}.primary-btn{justify-content:center;align-items:center;gap:var(--space-xs);height:var(--control-height);padding:0 var(--space-md);background:linear-gradient(135deg, var(--shade-orange-white-85), var(--color-brand-orange));color:var(--color-card-background);font-size:var(--font-size-sm);font-family:var(--font);font-weight:var(--font-weight-bold);border-radius:var(--radius);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:box-shadow var(--transition-reward), filter var(--transition-ui), transform var(--transition-ui);border:none;flex-shrink:0;display:inline-flex;position:relative;overflow:hidden}.primary-btn:hover{filter:brightness(1.02)}.primary-btn:active{transform:translateY(1px)}.primary-btn:focus-visible{outline:3px solid var(--shade-blue-22);outline-offset:2px;box-shadow:0 0 0 3px var(--shade-blue-22)}.primary-btn:after{content:"";background:linear-gradient(115deg, transparent 42%, var(--shade-white-36) 50%, transparent 58%);opacity:0;pointer-events:none;position:absolute;inset:-120% -40%;transform:translate(-90%)}.primary-btn:hover:after,.primary-btn:focus-visible:after{animation:.75s ease-out primary-btn-sheen}.primary-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.primary-btn:disabled:after{display:none}@media (prefers-reduced-motion:reduce){.primary-btn,.primary-btn:after{transition:none;animation:none}}@keyframes primary-btn-sheen{0%{opacity:0;transform:translate(-90%)}30%{opacity:1}to{opacity:0;transform:translate(90%)}}.message-box-overlay{background:var(--shade-midnight-40);z-index:var(--z-overlay);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.message-box{background:var(--color-card-background);border-radius:var(--radius);box-shadow:0 1px 4px var(--shade-midnight-6);padding:var(--space-md) var(--space-lg);max-width:var(--max-w-dialog);gap:var(--space-md);flex-direction:column;width:100%;display:flex;overflow:visible}.message-box-message{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-dark-text);margin:0}.message-box-buttons{justify-content:flex-end;gap:var(--space-xs);display:flex}.message-box-buttons .primary-btn,.message-box-buttons .outline-btn{padding:var(--space-2xs) var(--space-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}@media (width<=640px){.message-box{padding:var(--space-sm);margin:0 var(--space-sm)}.message-box-buttons{flex-direction:column-reverse}.message-box-buttons .primary-btn,.message-box-buttons .outline-btn{width:100%}}
