:root{--color-deep: #2c6975;--svg-monochrome-to-deep-filter: brightness(0) saturate(100%) invert(28%) sepia(39%) saturate(705%) hue-rotate(148deg) brightness(94%) contrast(90%);--color-accent: #68b2a0;--color-soft-green: #cde0c9;--color-soft-cream: #e0ecde;--color-white: #ffffff;--color-text: #24454d;--color-text-muted: #4f7078;--color-border: #9cc8be;--gradient-main: linear-gradient(180deg, #fdfcf9 0%, #f6f2ea 56%, #efe8dc 100%);--gradient-accent: linear-gradient(130deg, #68b2a0 0%, #2c6975 100%);--control-height: 42px;--control-radius: 10px;--font-family-main: "Inter", "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;font-family:var(--font-family-main);line-height:1.5;font-weight:400;color:var(--color-text);background:var(--gradient-main);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--gradient-main)}a{color:var(--color-deep);text-decoration:none}a:hover{text-decoration:underline}code{font-size:.9em;background:#f2f8f5;color:var(--color-deep);padding:.1em .35em;border-radius:4px}html,body,#root{width:100%;max-width:100%;overflow-x:hidden}html,body{min-height:100dvh}.login-layout{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(.9rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(.9rem,env(safe-area-inset-left));background:radial-gradient(circle at 20% 0%,#fff,#f5f1e9 64%,#efe9de);overflow:hidden}.login-card{width:100%;max-width:420px;padding:2rem;border-radius:16px;background:#ffffffe6;border:1px solid rgba(156,200,190,.75);box-shadow:0 20px 40px #2c697529;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.login-title{margin:0 0 .35rem;font-size:1.4rem;font-weight:700;color:var(--color-deep)}.login-sub{margin:0 0 1.25rem;font-size:.9rem;color:var(--color-text-muted)}.login-form label{display:block;margin-bottom:.85rem;font-size:.84rem;color:var(--color-text-muted)}.login-form input{display:block;width:100%;margin-top:.35rem;min-height:var(--control-height);padding:0 .7rem;border-radius:var(--control-radius);border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text);font:inherit}.login-form input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #68b2a038}.form-error{color:#b83244;font-size:.85rem;margin:0 0 .75rem}.btn-primary{width:100%;margin-top:.5rem;min-height:var(--control-height);padding:0 1rem;border:none;border-radius:var(--control-radius);background:var(--gradient-accent);color:#fff;font:inherit;font-weight:600;cursor:pointer}.btn-primary:disabled{opacity:.64;cursor:not-allowed}.btn-ghost{min-height:var(--control-height);padding:0 .8rem;border:1px solid #d8d2c8;border-radius:var(--control-radius);background:#faf8f3;color:var(--color-deep);font:inherit;cursor:pointer}.btn-ghost:hover{background:#f3eee5}.muted{color:var(--color-text-muted)}.app-shell{min-height:100dvh;display:flex;flex-direction:column;background:linear-gradient(180deg,#faf8f3,#f4efe6);overflow-x:hidden;padding-top:env(safe-area-inset-top)}.app-header{display:flex;align-items:center;justify-content:flex-start;gap:.75rem;flex-wrap:nowrap;position:fixed;top:calc(env(safe-area-inset-top) + .45rem);left:calc(env(safe-area-inset-left) + .7rem);right:calc(env(safe-area-inset-right) + .7rem);margin:0;padding:.56rem .72rem;border:1px solid rgba(44,105,117,.24);border-radius:14px;background:linear-gradient(135deg,#68b2a0ad,#2c6975a3);backdrop-filter:blur(10px) saturate(125%);-webkit-backdrop-filter:blur(10px) saturate(125%);box-shadow:0 8px 18px #22434a29;z-index:40}.brand{color:#fff;font-weight:600;font-size:.95rem;letter-spacing:-.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-nav{flex:1}.nav-active{color:#ffffffeb;font-size:.85rem;font-weight:600}.app-header-center{flex:1;display:flex;align-items:center;justify-content:center;min-width:0}.app-header-session-timer{font-variant-numeric:tabular-nums;font-weight:700;font-size:1.02rem;letter-spacing:.02em;padding:.22rem .65rem;border-radius:999px;background:#5c4d966b;border:1px solid rgba(210,198,255,.55);color:#f2ecff;text-shadow:0 1px 2px rgba(44,105,117,.35);box-shadow:0 2px 8px #2c244a33}.app-header-session-timer--critical{background:#b42428eb;border-color:#ffd2d2bf;color:#fff;text-shadow:0 1px 2px rgba(60,0,0,.35)}.app-header-session-timer__value{font-feature-settings:"tnum" 1}.header-user{display:flex;align-items:center;gap:.5rem;flex-shrink:0;margin-left:auto}.app-header .btn-ghost{border:1px solid rgba(255,255,255,.45);background:#ffffff2e;color:#fff;white-space:nowrap}.app-header .btn-ghost:hover{background:#ffffff47}.user-badge{font-size:.76rem;color:#ffffffd1;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-main{flex:1;padding:calc(env(safe-area-inset-top) + 4.85rem) .85rem 1rem;max-width:none;width:100%}.app-main h2{margin:0 0 .75rem;font-size:1.3rem;color:var(--color-deep)}.table-card{margin-top:1rem;background:#ffffffeb;border:1px solid #ddd7cd;border-radius:18px;box-shadow:0 12px 24px #5f574a1a;overflow:hidden}.placeholder-card{padding:1rem}.placeholder-title{margin:0 0 .4rem;color:var(--color-deep);font-weight:600}.profile-grid{margin-top:.75rem;display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:.6rem;color:#2b5058}.user-tests-grid{margin-top:.9rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.9rem}.user-test-card{position:relative;background:#ffffffeb;border:1px solid #ddd7cd;border-radius:16px;box-shadow:0 8px 18px #5f574a14;padding:.9rem}.user-test-card h3{margin:0 0 .5rem;padding-right:6.6rem;font-size:1rem;color:var(--color-deep);line-height:1.3}.user-test-card.is-assigned{border-color:#e2cf9f;background:#fffdf7}.user-test-card.is-completed{border-color:#9dd8c3;background:#f6fffb}.user-test-badge{position:absolute;top:.65rem;right:.65rem;display:inline-block;border-radius:999px;padding:.12rem .48rem;font-size:.76rem;font-weight:600;white-space:nowrap}.user-test-badge.todo{color:#7b5a17;background:#fff3d9;border:1px solid #efd39a}.user-test-badge.done{color:#1e6a54;background:#dbf3ea;border:1px solid #9dd8c3}.test-action{width:100%;min-width:0;min-height:42px;padding-top:.52rem;padding-bottom:.52rem;margin-top:.4rem}.test-main{max-width:860px;margin:0 auto}.test-card{overflow:visible}.test-card .placeholder-card{padding-bottom:calc(env(safe-area-inset-bottom) + 1rem)}.test-title{margin:0 0 .7rem}.test-progress{margin-bottom:.45rem}.test-question{margin:0;font-size:1.06rem;line-height:1.45;color:#24454d}.numeric-sequence-wrap{margin:.75rem 0 0;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;border-radius:12px;background:linear-gradient(180deg,#f0faf6,#e2f0ea);border:1px solid #93c2b4;box-shadow:inset 0 1px #ffffffa6}.numeric-sequence-row{margin:0;padding:.65rem .85rem;font-weight:700;color:#0f2a30;white-space:nowrap;width:max-content;min-width:100%;box-sizing:border-box;font-size:clamp(.7rem,2.35vw + .42rem,1.2rem);line-height:1.35;letter-spacing:.035em;font-variant-numeric:tabular-nums}.yes-no-grid{margin-top:.9rem;display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.btn-answer{width:100%;min-height:52px;border-radius:12px;border:1px solid #b9d6cf;background:#f7fbfa;color:var(--color-deep);font:inherit;font-weight:600;cursor:pointer}.btn-answer:hover{background:#ecf6f3}.btn-answer.active{border-color:#2c6975;background:#dff0eb}.single-choice-intro p{margin:0 0 .7rem;line-height:1.5;color:#2b5058}.single-choice-radio-list{margin:.9rem 0 0;padding:0;border:0}.single-choice-legend{margin-bottom:.55rem}.single-choice-radio-row{display:flex;gap:.62rem;align-items:center;margin-bottom:.55rem;padding:.7rem .75rem;border-radius:12px;border:1px solid #b9d6cf;background:#f7fbfa;cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.single-choice-radio-row:hover{background:#ecf6f3;border-color:#8ebfb2}.single-choice-radio-input{width:18px;height:18px;margin:0;accent-color:#2c6975;cursor:pointer}.single-choice-radio-row:has(.single-choice-radio-input:checked){border-color:#2c6975;background:#dff0eb;box-shadow:0 0 0 1px #2c697533 inset}.single-choice-radio-row span{color:#24454d;line-height:1.4}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.single-choice-intro-figure{margin:1rem 0 .25rem}.single-choice-intro-img{display:block;width:100%;max-height:min(52vh,420px);object-fit:contain;border-radius:12px;border:1px solid #b9d6cf;background:#fafcfa}.single-choice-intro-caption{margin:.35rem 0 0;font-size:.82rem}.amthauer-img-stimulus-wrap{margin:.75rem 0 1rem;padding:.5rem;border-radius:12px;border:1px solid #b9d6cf;background:#fafcfa}.amthauer-img-stimulus{display:block;width:100%;max-height:min(58vh,520px);margin:0 auto;object-fit:contain}.single-choice-raven-brand-graphic{filter:var(--svg-monochrome-to-deep-filter)}.amthauer-img-options-field{margin:0;padding:0;border:0}.amthauer-img-options-legend{margin-bottom:.55rem}.amthauer-img-options-row{display:grid;gap:.45rem;width:100%;align-items:start}@media(max-width:640px){.amthauer-img-options-row{gap:.35rem}}.amthauer-img-option{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.25rem;margin:0;min-width:0;padding:.35rem;border-radius:12px;border:2px solid #b9d6cf;background:var(--color-white);cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;font:inherit;color:var(--color-deep)}.amthauer-img-option:hover:not(.amthauer-img-option--selected){border-color:#8ebfb2;background:#ecf6f3}.amthauer-img-option--selected,.amthauer-img-option--selected:hover{border-color:#2c6975;background:#dff0eb;box-shadow:0 0 0 1px #2c697538 inset}.amthauer-img-option-graphic{display:block;width:100%;height:auto;max-height:clamp(76px,22vw,168px);object-fit:contain;object-position:center}.amthauer-img-options-row[data-cols="3"] .amthauer-img-option-graphic{max-height:clamp(88px,24vw,180px)}.amthauer-img-options-row[data-cols="4"] .amthauer-img-option-graphic{max-height:clamp(72px,20vw,152px)}.amthauer-img-options-row[data-layout=grid-2x4] .amthauer-img-option-graphic{max-height:clamp(68px,18vw,142px)}.numeric-entry-block{margin:1rem 0 0}.numeric-entry-label{display:block;margin-bottom:.45rem;font-weight:600;color:#24454d}.numeric-entry-input{width:100%;max-width:280px;padding:.65rem .85rem;font-size:1.25rem;border-radius:12px;border:1px solid #b9d6cf;background:#fff;color:#1a3339}.numeric-entry-input:focus{outline:none;border-color:#2c6975;box-shadow:0 0 0 3px #2c69752e}.numeric-entry-hint{margin:.45rem 0 0;font-size:.92rem}.test-actions-row{margin-top:.95rem;display:flex;gap:.6rem;justify-content:space-between}.test-start-btn,.test-next-btn{width:100%;max-width:210px}@media(max-width:900px){.login-form input,.search-input,input,select,textarea{font-size:16px}.profile-grid{grid-template-columns:1fr}.test-main{max-width:none;margin:0}.test-question{font-size:1rem}.test-actions-row{flex-direction:column-reverse}.test-actions-row-mobile-sticky{position:sticky;bottom:calc(env(safe-area-inset-bottom) + .45rem);z-index:5;margin-top:1rem;padding:.55rem;border-radius:12px;background:#ffffffe0;border:1px solid rgba(44,105,117,.16);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 6px 14px #2c69751a}.test-start-btn,.test-next-btn{max-width:none}.app-header{top:calc(env(safe-area-inset-top) + .38rem);left:calc(env(safe-area-inset-left) + .55rem);right:calc(env(safe-area-inset-right) + .55rem);padding:.45rem .58rem;border-radius:12px}.app-header-session-timer{font-size:.88rem;padding:.18rem .52rem}.brand{font-size:.88rem;max-width:calc(100vw - 130px)}.app-header .btn-ghost{padding:.34rem .56rem}.user-tests-grid{grid-template-columns:1fr;gap:.7rem}}.fidler-intro p{margin:0 0 .75rem;line-height:1.5;color:#2b5058}.fidler-phase-title{line-height:1.35}.fidler-accent-liked{font-weight:800;color:#147a5f;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.fidler-accent-disliked{font-weight:800;color:#b83244;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.fidler-scale-hint{margin:0 0 .5rem;font-size:.9rem;line-height:1.45}.fidler-quality-list{margin-top:.5rem}.fidler-quality-row{display:grid;grid-template-columns:1fr auto;gap:.65rem;align-items:center;margin-top:.75rem;padding:.65rem .75rem;border-radius:12px;background:#f7fbfa;border:1px solid #b9d6cf;scroll-margin-top:.75rem;scroll-margin-bottom:.75rem}.fidler-quality-label{font-size:.92rem;color:#24454d;line-height:1.38}.fidler-q-num{font-weight:700;color:var(--color-deep);margin-right:.15rem}.fidler-rating-input{width:52px;min-height:44px;text-align:center;font-size:1.12rem;font-weight:700;border-radius:10px;border:1px solid #8ebfb2;background:#fff;color:var(--color-deep);font:inherit}.fidler-rating-input:focus{outline:none;border-color:#2c6975;box-shadow:0 0 0 3px #68b2a038}@media(max-width:520px){.fidler-quality-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;scroll-margin-bottom:6rem}.fidler-quality-label{min-width:0}.fidler-rating-input{width:48px;min-width:48px;flex-shrink:0}}.user-tp-layout{padding-top:.5rem}.user-tp-mode-row{display:grid;grid-template-columns:repeat(3,auto);gap:.28rem;align-items:center;margin-bottom:.55rem}.tp-mode-btn{min-height:30px;padding:0 .5rem;font-size:.78rem}.tp-mode-btn.is-active{border-color:#2c6975;background:#e3f1ec;font-weight:600}.user-tp-top-strip{display:flex;flex-wrap:nowrap;align-items:center;gap:.5rem .75rem;margin-bottom:0;min-width:0;width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.user-tp-start-row{width:100%}.user-tp-start-row-inner{box-sizing:border-box;padding:5px;min-height:48px;display:flex;align-items:center;justify-content:center}.user-tp-samples-plaque{flex:0 0 auto;background:#68b2a029;border:1px solid rgba(44,105,117,.32);border-radius:10px;padding:.45rem .55rem;box-shadow:inset 0 0 0 1px #ffffff73}.user-tp-practice-strip{flex:1 1 0;min-width:0}.user-tp-practice-strip .tp-dual-row{min-width:0;width:100%}.tp-samples--strip{display:flex;gap:.45rem;margin:0;align-items:center}.user-tp-samples-plaque .tp-sample-item{border-color:#2c697538}.user-tp-reset-hint-slot{display:flex;flex-wrap:nowrap;align-items:center;gap:.35rem .5rem;flex:0 0 auto;min-width:0}.user-tp-reset-btn{min-height:38px;width:90px;margin-top:0;display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:0}.tp-proto-board{min-width:0;width:100%;max-width:100%}.tp-samples{display:flex;gap:.45rem;margin:0}.tp-sample-item{width:42px;height:34px;border-radius:8px;border:1px solid #d7e6df;background:#fff;display:inline-flex;align-items:center;justify-content:center}.tp-stimulus{position:relative;width:18px;height:18px;border:2px solid #2d3436;background:#fff}.tp-stimulus-mark{position:absolute;display:block;background:#111}.tp-stimulus-mark.side{width:5px;height:100%}.tp-stimulus-mark.corner{width:9px;height:9px}.tp-stimulus-mark.left{left:-1px;top:-1px;height:calc(100% + 2px);border-radius:0 999px 999px 0}.tp-stimulus-mark.right{right:-1px;top:-1px;height:calc(100% + 2px);border-radius:999px 0 0 999px}.tp-stimulus-mark.top{top:-1px;left:-1px;width:calc(100% + 2px);height:7px;border-radius:0 0 8px 8px}.tp-stimulus-mark.bottom{bottom:-1px;left:-1px;width:calc(100% + 2px);height:7px;border-radius:8px 8px 0 0}.tp-stimulus-mark.tl{top:-1px;left:-1px;border-radius:0 0 8px}.tp-stimulus-mark.tr{top:-1px;right:-1px;border-radius:0 0 0 8px}.tp-stimulus-mark.br{bottom:-1px;right:-1px;border-radius:8px 0 0}.tp-stimulus-mark.bl{bottom:-1px;left:-1px;border-radius:0 8px 0 0}.tp-main-grid{display:grid;gap:0}.tp-main-row{display:grid;grid-template-columns:1fr}.tp-main-row.is-active{background:#68b2a01f;border-radius:10px;padding:2px 6px;margin:0 -6px;box-shadow:inset 0 0 0 1px #2c69753d}.tp-segment-hint{margin:0 0 .35rem;font-size:.8rem;line-height:1.25}.user-tp-reset-hint-slot .tp-main-global-segment{margin:0;flex:0 0 auto;white-space:nowrap;font-size:.78rem;line-height:1.25}.tp-main-row-split{display:flex;flex-direction:column;gap:.55rem}.tp-dual-row{display:grid;grid-template-rows:auto auto;gap:2px}.tp-row{display:grid;grid-template-columns:repeat(60,minmax(14px,1fr));gap:.08rem}.tp-row-top{align-items:center;min-height:28px}.tp-row-bottom{align-items:start}.tp-stimulus-btn,.tp-mark-btn{border:none;background:transparent;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;width:100%;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.tp-stimulus-btn:active,.tp-stimulus-btn:focus,.tp-mark-btn:active,.tp-mark-btn:focus{background:transparent;outline:none}.tp-stimulus-btn{min-height:28px;align-items:flex-end;padding-top:12px}.tp-mark-btn{min-height:12px;width:30px;justify-self:center;align-items:flex-start;position:relative;z-index:1}.tp-stimulus-btn.is-active-pos,.tp-mark-btn.is-active-pos{z-index:3}.tp-stimulus-btn.is-inactive-pos,.tp-mark-btn.is-inactive-pos{opacity:.35}.tp-stimulus-btn.is-completed-pos,.tp-mark-btn.is-completed-pos{opacity:.8}.tp-stimulus-btn.is-correct,.tp-mark-btn.is-correct{background:#2e7d3229;border-radius:4px}.tp-stimulus-btn.is-wrong,.tp-mark-btn.is-wrong{background:#b8324429;border-radius:4px}.tp-top-shape-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.tp-top-cross-mark{position:absolute;width:2px;height:24px;background:#111;border-radius:2px;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.tp-action-mark{display:block;width:18px;height:5px;border:1px solid #2d3436;border-radius:1px;background:#fff}.tp-action-mark.is-underline{border:none;background:#111}.tp-mark-btn .tp-action-mark{transform:translateY(3px)}.tp-gesture-lock{touch-action:none;overscroll-behavior:contain}.tp-proto-board,.tp-dual-row,.tp-row,.tp-main-grid,.tp-main-row,.user-tp-surface,.tp-running-lock,.tp-running-lock *{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.tp-stroke-hint{min-height:1.2rem;font-size:.83rem;line-height:1.2rem;color:transparent}.tp-stroke-hint.is-visible{color:#b83244;font-weight:600}.user-tp-main.test-main{max-width:none;width:100%;padding-bottom:calc(env(safe-area-inset-bottom) + .6rem)}.user-tp-surface{margin-top:.35rem;background:transparent;border:none;box-shadow:none}.user-tp-surface>.placeholder-card{padding:.15rem 0}.user-tp-inline-start-btn.btn-primary{width:132px;margin-top:0;min-height:38px}@media(max-width:900px){.user-tp-mode-row{grid-template-columns:repeat(3,1fr)}}
