:root[data-theme=dark]{--accent: #dfb653;--accent-hover: #ecc873;--accent-active: #c9a03f;--accent-fg: #241d08;--danger: #e5533d;--focus-ring: rgba(223, 182, 83, .55);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .35);--shadow-lift: 0 6px 18px rgba(0, 0, 0, .45)}:root[data-theme=light]{--accent: #c9971f;--accent-hover: #b8860e;--accent-active: #a67a0d;--accent-fg: #2a1f00;--danger: #c41a00;--focus-ring: rgba(201, 151, 31, .4);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12);--shadow-lift: 0 6px 18px rgba(0, 0, 0, .18)}.btn{transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease,border-color .12s ease,color .12s ease,opacity .12s ease}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.btn:disabled{cursor:default}.btn--primary{background-color:var(--accent)!important;border-color:var(--accent)!important;color:var(--accent-fg)!important;font-weight:600}.btn--primary:hover:not(:disabled){background-color:var(--accent-hover)!important;border-color:var(--accent-hover)!important}.btn--primary:active:not(:disabled){background-color:var(--accent-active)!important;border-color:var(--accent-active)!important}.btn--danger{color:var(--danger)!important;border-color:var(--danger)!important}.btn--danger:hover:not(:disabled){background-color:var(--danger)!important;color:#fff!important}.btn-icon{transition:background-color .12s ease,color .12s ease,transform .12s ease;border-radius:999px}.btn-icon:hover{background-color:#80808024}.btn-icon:active{transform:scale(.92)}.btn-icon:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.card-tile{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.card-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.card-tile:active{transform:translateY(0)}.card-tile:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.theme-switch{position:relative;width:44px;height:24px;border-radius:999px;border:1px solid var(--focus-ring);background:transparent;cursor:pointer;padding:0;flex:none}.theme-switch__icon{position:absolute;top:50%;transform:translateY(-50%);font-size:11px;line-height:1;color:var(--focus-ring);pointer-events:none}.theme-switch__icon--moon{left:6px}.theme-switch__icon--sun{right:5px}.theme-switch__thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--accent);transition:transform .2s cubic-bezier(.3,.7,.4,1)}:root[data-theme=light] .theme-switch__thumb{transform:translate(20px)}.theme-switch:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion: no-preference){.modal-overlay{animation:modal-fade .15s ease both}.modal-panel{animation:modal-pop .18s cubic-bezier(.2,.8,.3,1.1) both}}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:scale(.94) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.btn-spinner{display:inline-block;width:11px;height:11px;margin-right:6px;vertical-align:-1px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin .7s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.check-toast{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:50;max-width:calc(100vw - 32px);padding:10px 16px;border-radius:999px;font-size:14px;font-weight:600;color:#fff;box-shadow:0 4px 16px #0000004d;cursor:pointer}.check-toast--ok{background-color:#2a8a36}.check-toast--wrong{background-color:#b06a10}.check-toast--error{background-color:#b02a2a}@media (prefers-reduced-motion: no-preference){.check-toast{animation:check-toast-in .2s cubic-bezier(.2,.8,.3,1.1) both}}@keyframes check-toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@media (max-width: 480px){.guide-btn__text{display:none}.guide-btn{width:34px;padding:0!important;justify-content:center;font-size:18px!important}}
