:root{--paper:#f4eddf;--paper-card:#fbf6ec;--paper-sunk:#ede3d1;--ink:#221c14;--ink-soft:#6a5f4c;--ink-faint:#9a8e76;--line:#dcd0b8;--line-strong:#cdbe9f;--terra:#be4a2a;--terra-deep:#9a3a1f;--ochre:#c2872c;--olive:#647046;--green:#5c7148;--shadow:0 1px 2px #221c140d, 0 12px 30px -16px #221c1447;--shadow-soft:0 1px 2px #221c140a, 0 8px 24px -18px #221c144d;--r:18px;--serif:"Fraunces", Georgia, serif;--sans:"Hanken Grotesk", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(120% 90% at 100% 0%, #f8f2e6 0%, #f8f2e600 55%), radial-gradient(120% 90% at 0% 100%, #efe5d2 0%, #efe5d200 55%), var(--paper);font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;min-height:100vh;padding:0}body:before{content:"";pointer-events:none;z-index:0;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");position:fixed;inset:0}.frame{z-index:2;width:100%;min-height:100vh;position:relative;container-type:inline-size}.app{background:var(--paper-card);grid-template-columns:72px 1fr;gap:0;min-height:100vh;display:grid;position:relative;overflow:hidden}.rail{background:linear-gradient(#241d14,#1a150e);flex-direction:column;align-items:center;gap:6px;padding:20px 0;display:flex}.rail .mark{font-family:var(--serif);color:var(--paper);margin-bottom:16px;font-size:22px;font-weight:600;line-height:1}.rail a,.rail .rail-btn{color:#b6a98d;cursor:pointer;background:0 0;border:0;border-radius:13px;place-items:center;width:44px;height:44px;text-decoration:none;transition:all .2s;display:grid;position:relative}.rail a svg,.rail .rail-btn svg{width:21px;height:21px}.rail a.on{color:#fff;background:#be4a2aeb}.rail a:not(.on):hover,.rail .rail-btn:hover{color:#e6dcc6;background:#ffffff12}.rail .spacer{flex:1}.rail .label{display:none}.rail .user-btn{place-items:center;margin-top:4px;display:grid}.stage{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:18px 24px;display:flex}.brand h1{font-family:var(--serif);letter-spacing:-.3px;margin:0;font-size:21px;font-weight:600;line-height:1.05}.brand p{color:var(--ink-faint);letter-spacing:.3px;margin:2px 0 0;font-size:12.5px}.modeseg{background:var(--paper-sunk);border:1px solid var(--line-strong);border-radius:999px;gap:2px;margin-left:6px;padding:3px;display:inline-flex}.modeseg button{cursor:pointer;font-family:var(--sans);color:var(--ink-soft);background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;transition:all .2s;display:inline-flex}.modeseg button.on{background:var(--terra);color:#fff}.modeseg svg{width:14px;height:14px}.levelseg{background:var(--paper-sunk);border:1px solid var(--line-strong);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.levelseg button{cursor:pointer;font-family:var(--sans);letter-spacing:.3px;color:var(--ink-soft);background:0 0;border:0;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700;transition:all .2s}.levelseg button.on{background:var(--ink);color:var(--paper-card)}.attempt-chip{background:var(--paper-sunk);border:1px solid var(--line-strong);color:var(--ink-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:7px 13px 7px 9px;font-size:12.5px;font-weight:600;display:inline-flex}.attempt-chip b{background:var(--terra);color:#fff;width:22px;height:22px;font-family:var(--serif);border-radius:50%;place-items:center;font-size:13px;display:grid}.workspace{flex:1;grid-template-columns:1fr 340px;gap:0;min-height:0;display:grid}.primary{border-right:1px solid var(--line);flex-direction:column;min-width:0;display:flex}.photo,.stim{margin:0;padding:20px 24px 0;position:relative}.photo-inner{border-radius:var(--r);border:1px solid var(--line-strong);box-shadow:var(--shadow-soft);aspect-ratio:16/9;position:relative;overflow:hidden}.photo-inner svg{width:100%;height:100%;display:block}.photo-swap{z-index:3;border:1px solid var(--line-strong);color:var(--ink-soft);cursor:pointer;background:#fbf6eceb;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600;display:flex;position:absolute;top:14px;right:14px}.photo-swap svg{width:13px;height:13px}.prompt-card{background:var(--paper-card);border:1px solid var(--line-strong);border-radius:var(--r);box-shadow:var(--shadow-soft);padding:17px 19px 15px;position:relative}.pt-tags{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.pt-chip{letter-spacing:.3px;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.pt-chip.type{color:var(--terra-deep);text-transform:uppercase;background:#be4a2a1f;border:1px solid #be4a2a47}.pt-chip.level{background:var(--ink);color:var(--paper-card)}.pt-chip.band{background:var(--paper-sunk);border:1px solid var(--line-strong);color:var(--ink-soft);align-items:center;gap:6px;margin-left:auto;display:inline-flex}.pt-chip.band svg{width:12px;height:12px}.pt-task{font-family:var(--serif);color:var(--ink);margin:2px 0 14px;font-size:16.5px;line-height:1.5}.points{flex-direction:column;gap:8px;display:flex}.point{color:var(--ink-soft);align-items:flex-start;gap:9px;font-size:13.5px;line-height:1.4;display:flex}.point .ic{border-radius:50%;flex:none;place-items:center;width:18px;height:18px;margin-top:1px;display:grid}.point .ic svg{width:11px;height:11px}.point.done .ic{background:var(--green);color:#fff}.point.todo .ic{border:1.5px solid var(--line-strong);background:var(--paper-sunk)}.point.missed{color:#a8321a;font-weight:600}.point.missed .ic{color:#a8321a;background:#a8321a1f;border:1.5px solid #a8321a}.points-foot{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:10px;margin-top:13px;padding-top:11px;display:flex}.cover{color:var(--ink-soft);font-size:12px;font-weight:600}.prompt-swap{border:1px solid var(--line-strong);background:var(--paper-sunk);color:var(--ink-soft);font-family:var(--sans);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.prompt-swap:hover{border-color:var(--terra);color:var(--terra)}.prompt-swap svg{width:13px;height:13px}.thread{flex-direction:column;flex:1.6 1 0;gap:14px;min-height:120px;padding:20px 24px 8px;display:flex;overflow:auto}.thread:empty{flex:none;min-height:0;padding:0}.turn-sep{color:var(--ink-faint);letter-spacing:1.4px;text-transform:uppercase;align-items:center;gap:12px;font-size:11px;font-weight:700;display:flex}.turn-sep:before,.turn-sep:after{content:"";background:var(--line);flex:1;height:1px}.bubble{border-radius:16px;max-width:88%;padding:14px 16px;font-size:14.5px;line-height:1.55}.bubble.me{background:var(--ink);color:#f4ecdd;font-family:var(--serif);letter-spacing:.1px;border-bottom-right-radius:5px;align-self:flex-end;font-size:15px;font-weight:400}.bubble.me mark{color:#fff;cursor:pointer;background:#c2872c59;border-radius:3px;padding:0 2px}.bubble.tutor{background:var(--paper-sunk);border:1px solid var(--line);border-bottom-left-radius:5px;align-self:flex-start}.bubble.tutor .who{letter-spacing:.6px;text-transform:uppercase;color:var(--terra);align-items:center;gap:8px;margin-bottom:7px;font-size:11px;font-weight:700;display:flex}.bubble.tutor .who span{background:var(--terra);color:#fff;width:18px;height:18px;font-family:var(--serif);border-radius:50%;place-items:center;font-size:11px;display:grid}.bubble.tutor mark{color:var(--ink);background:#c2872c3d;border-radius:4px;padding:0 3px;font-weight:600}.bubble.tutor .fix{color:var(--green);font-weight:600}.anchor{color:#8a611c;font-size:11px;font-weight:700;font-family:var(--sans);background:#c2872c29;border:1px solid #c2872c6b;border-radius:7px;align-self:flex-start;align-items:center;gap:6px;margin-bottom:8px;padding:3px 8px;display:inline-flex}.anchor svg{flex:none;width:12px;height:12px}.bubble.ask{border:1.5px solid var(--line-strong);max-width:92%;color:var(--ink);font-family:var(--sans);background:0 0;border-bottom-right-radius:5px;flex-direction:column;align-self:flex-end;font-size:14px;font-weight:500;display:flex}.bubble.tutor.suggest{background:#c2872c12;border-color:#c2872c73;align-self:flex-start;max-width:92%}.bubble.tutor.suggest .who{color:var(--ochre)}.bubble.tutor.suggest .who span{background:var(--ochre)}.bubble.tutor.suggest .opt{color:#9a6e1c;font-weight:600}.bubble.tutor.suggest em{color:var(--ink-soft)}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 .7em}.md ul,.md ol{margin:0 0 .7em;padding-left:1.35em}.md li{margin:.2em 0}.md li::marker{color:var(--ink-faint)}.md strong{color:var(--ink);font-weight:700}.md em{font-style:italic}.md a{color:var(--terra-deep);text-decoration:underline}.md code{border:1px solid var(--line);background:#221c1412;border-radius:5px;padding:.05em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em}.md h1,.md h2,.md h3,.md h4{font-family:var(--serif);margin:.5em 0 .35em;font-weight:600;line-height:1.25}.md h1{font-size:1.15em}.md h2{font-size:1.08em}.md h3,.md h4{font-size:1.02em}.md blockquote{border-left:3px solid var(--line-strong);color:var(--ink-soft);margin:0 0 .7em;padding-left:.8em}.md pre{border:1px solid var(--line);background:#221c140f;border-radius:10px;margin:0 0 .7em;padding:10px 12px;overflow:auto}.md pre code{background:0 0;border:0;padding:0}.askbar{background:var(--paper-card);border:1.5px dashed var(--line-strong);border-radius:14px;flex:none;align-items:center;gap:8px;margin:10px 16px 16px;padding:7px 8px;display:flex}.askbar .pinbtn{border:1px solid var(--line-strong);background:var(--paper-sunk);width:34px;height:34px;color:var(--ink-soft);cursor:pointer;border-radius:10px;flex:none;place-items:center;transition:all .2s;display:grid}.askbar .pinbtn svg{width:16px;height:16px}.askbar .pinbtn.active{background:var(--ochre);color:#fff;border-color:var(--ochre)}.askbar input{min-width:0;font-family:var(--sans);color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:13.5px}.askbar input::placeholder{color:var(--ink-faint)}.askbar .chip{color:#8a611c;white-space:nowrap;background:#c2872c29;border:1px solid #c2872c6b;border-radius:8px;align-items:center;gap:6px;max-width:150px;padding:4px 6px 4px 9px;font-size:11px;font-weight:700;display:none}.askbar .chip.show{display:inline-flex}.askbar .chip span{text-overflow:ellipsis;overflow:hidden}.askbar .chip .ic{flex:none;width:11px;height:11px;display:none}.askbar .chip[data-kind=pin] .ic-pin,.askbar .chip[data-kind=text] .ic-quote{display:block}.askbar .chip button svg{flex:none;width:11px;height:11px}.askbar .chip button{cursor:pointer;color:#8a611c;background:0 0;border:0;flex:none;place-items:center;padding:1px;display:grid}.askbar .ask-send{background:var(--ochre);color:#fff;cursor:pointer;border:0;border-radius:10px;flex:none;align-items:center;padding:9px;transition:all .2s;display:inline-flex}.askbar .ask-send:hover{background:#a9701f}.askbar .ask-send:disabled{opacity:.45;cursor:default}.askbar .ask-send svg{width:15px;height:15px}.askbar .ask-label{display:none}.pin-layer{cursor:crosshair;z-index:2;position:absolute;inset:0}.pin{pointer-events:none;flex-direction:column;align-items:center;animation:.35s cubic-bezier(.22,1,.36,1) drop;display:flex;position:absolute;transform:translate(-50%,-100%)}@keyframes drop{0%{opacity:0;transform:translate(-50%,-130%)}to{opacity:1;transform:translate(-50%,-100%)}}.pin .dot{background:var(--ochre);border:2px solid #fff;border-radius:50% 50% 50% 0;place-items:center;width:23px;height:23px;display:grid;transform:rotate(45deg);box-shadow:0 5px 12px -3px #00000073}.pin .dot b{color:#fff;font-family:var(--serif);font-size:11px;font-weight:700;transform:rotate(-45deg)}.pin .cap{color:#f3ead8;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1c1710d1;border-radius:6px;margin-top:6px;padding:3px 8px;font-size:10px;font-weight:600}.sel-pop{z-index:60;display:none;position:fixed;transform:translate(-50%)}.sel-pop.show{animation:.14s pop;display:block}@keyframes pop{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.sel-pop button{background:var(--ink);color:#f4ecdd;font-family:var(--sans);cursor:pointer;border:0;border-radius:11px;align-items:center;gap:8px;padding:9px 14px;font-size:12.5px;font-weight:700;display:inline-flex;box-shadow:0 10px 24px -8px #0000008c}.sel-pop button svg{width:14px;height:14px;color:var(--ochre)}.sel-pop:after{content:"";background:var(--ink);width:9px;height:9px;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)rotate(45deg)}.feedback{background:var(--paper-sunk);border:1px solid var(--line);border-radius:16px;align-self:stretch;overflow:hidden}.fb-head{border-bottom:1px solid var(--line);letter-spacing:.6px;text-transform:uppercase;color:var(--terra);align-items:center;gap:9px;padding:12px 16px;font-size:11px;font-weight:700;display:flex}.fb-head .who-dot{background:var(--terra);color:#fff;width:18px;height:18px;font-family:var(--serif);border-radius:50%;place-items:center;font-size:11px;display:grid}.fb-head .fb-score{text-transform:none;letter-spacing:.2px;color:var(--ink-soft);background:var(--paper-card);border:1px solid var(--line-strong);border-radius:999px;margin-left:auto;padding:3px 11px;font-size:11.5px}.fb-group{border-bottom:1px solid var(--line)}.fb-g-head{cursor:pointer;align-items:center;gap:10px;padding:11px 16px 8px;display:flex}.fb-g-head .fb-g-name{font-family:var(--serif);font-size:14.5px;font-weight:600}.fb-g-head .gp{gap:3px;display:flex}.fb-g-head .gp i{background:var(--line-strong);border-radius:3px;width:14px;height:6px}.fb-g-head .gp i.on{background:var(--terra)}.fb-g-head .gp i.on.full{background:var(--green)}.fb-g-head .fb-g-count{background:var(--paper-card);border:1px solid var(--line-strong);color:var(--ink-soft);border-radius:999px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;display:grid}.fb-g-head .fb-g-count.zero{color:var(--green);background:#5c71481a;border-color:#5c714866}.fb-g-head .chev{width:15px;height:15px;color:var(--ink-faint);flex:none;transition:transform .2s}.fb-group[data-open=false] .chev{transform:rotate(-90deg)}.fb-g-comment{color:var(--ink-soft);padding:0 16px 10px;font-size:12.5px;font-style:italic}.fb-list{flex-direction:column;gap:7px;margin:0;padding:0 12px 12px;list-style:none;display:flex}.fb-group[data-open=false] .fb-g-comment,.fb-group[data-open=false] .fb-list{display:none}.fix-row{background:var(--paper-card);border:1px solid var(--line);border-left-width:3px;border-radius:10px;padding:9px 12px}.fix-row[data-sev=grave]{border-left-color:#a8321a}.fix-row[data-sev=moderado]{border-left-color:#c0863a}.fix-row[data-sev=menor]{border-left-color:#a79b82}.fix-main{font-size:13.5px;line-height:1.5}.fix-main del{color:var(--ink-faint);text-decoration-color:#c26a4e}.fix-main .arr{color:var(--ink-faint);margin:0 5px}.fix-main ins{color:var(--green);font-weight:600;text-decoration:none}.fix-meta{align-items:center;gap:9px;margin-top:6px;display:flex}.fix-meta .cat{letter-spacing:.4px;text-transform:uppercase;color:var(--ink-soft);background:var(--paper-sunk);border:1px solid var(--line-strong);border-radius:6px;padding:2px 7px;font-size:10px;font-weight:700}.fix-meta .sev{letter-spacing:.5px;text-transform:uppercase;align-items:center;gap:5px;font-size:10px;font-weight:700;display:inline-flex}.fix-meta .sev:before{content:"";border-radius:50%;width:6px;height:6px}.fix-row[data-sev=grave] .sev{color:#a8321a}.fix-row[data-sev=grave] .sev:before{background:#a8321a}.fix-row[data-sev=moderado] .sev{color:#b0762a}.fix-row[data-sev=moderado] .sev:before{background:#c0863a}.fix-row[data-sev=menor] .sev{color:var(--ink-faint)}.fix-row[data-sev=menor] .sev:before{background:#a79b82}.fix-row .why{color:var(--ink-soft);margin-top:6px;font-size:12px;line-height:1.45}.consejo{background:var(--paper-card);flex-direction:column;gap:10px;padding:13px 16px 15px;display:flex}.cj-row{gap:10px;font-size:13px;line-height:1.5;display:flex}.cj-row svg{flex:none;width:16px;height:16px;margin-top:2px}.cj-row.good svg{color:var(--green)}.cj-row.next svg{color:var(--terra)}.cj-row em{color:var(--ink);font-style:italic;font-weight:600}.cj-row b{color:var(--terra);font-weight:700}.composer{background:linear-gradient(180deg, #ede3d100, var(--paper-sunk));flex-direction:column;flex:auto;min-height:0;padding:14px 20px 18px;display:flex}.composer-box{background:var(--paper-card);border:1px solid var(--line-strong);box-shadow:var(--shadow-soft);border-radius:16px;flex-direction:column;flex:auto;min-height:0;padding:14px 16px;display:flex}.composer textarea{resize:none;width:100%;font-family:var(--serif);color:var(--ink);background:0 0;border:0;outline:none;flex:auto;min-height:220px;font-size:16px;line-height:1.65}.composer textarea::placeholder{color:var(--ink-faint);font-style:italic}.composer-foot{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.wc{color:var(--ink-faint);font-size:12px;font-weight:500}.wc b{color:var(--ink-soft)}.wc.over b{color:var(--ochre)}.grade-btn{cursor:pointer;background:var(--terra);color:#fff;font-family:var(--sans);border:0;border-radius:12px;align-items:center;gap:8px;padding:11px 20px;font-size:13.5px;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 6px 16px -8px #be4a2acc}.grade-btn:hover{background:var(--terra-deep);transform:translateY(-1px)}.grade-btn svg{width:15px;height:15px}.sidebar{background:var(--paper-sunk);flex-direction:column;min-height:0;display:flex;overflow:hidden}.sb-score{border-bottom:1px solid var(--line);flex-direction:column;flex:none;gap:14px;padding:18px 20px;display:flex}.score-head{align-items:center;gap:16px;display:flex}.gauge.mini{flex:none;width:72px;height:72px;position:relative}.gauge.mini svg{width:100%;height:100%;transform:rotate(-90deg)}.gauge .track{fill:none;stroke:var(--line-strong);stroke-width:8px}.gauge .val{fill:none;stroke:var(--green);stroke-width:8px;stroke-linecap:round}.gauge .center{place-items:center;display:grid;position:absolute;inset:0}.gauge .num{font-family:var(--serif);letter-spacing:-.5px;font-size:22px;font-weight:600;line-height:1}.gauge .num small{color:var(--ink-faint);font-size:11px;font-weight:500}.score-meta{flex-direction:column;align-items:flex-start;gap:7px;min-width:0;display:flex}.score-meta .of{color:var(--ink-faint);letter-spacing:.4px;text-transform:uppercase;font-size:11px;font-weight:600}.score-meta .pill{color:var(--green);background:#5c714824;border:1px solid #5c71484d;border-radius:999px;align-items:center;gap:7px;padding:5px 11px;font-size:12.5px;font-weight:700;display:inline-flex}.score-meta .pill:before{content:"";background:var(--green);border-radius:50%;width:7px;height:7px}.score-meta .scale{color:var(--ink-faint);font-size:12px}.criteria{flex-direction:column;gap:10px;display:flex}.crit{grid-template-columns:1fr auto;align-items:center;gap:5px 10px;display:grid}.crit .name{color:var(--ink-soft);font-size:12.5px;font-weight:600}.crit .pips{grid-column:1/-1;gap:5px;display:flex}.crit .pip{background:var(--line-strong);border-radius:3px;flex:1;height:6px}.crit .pip.on{background:var(--terra)}.crit .pip.on.full{background:var(--green)}.crit .sc{font-family:var(--serif);color:var(--ink);font-size:13.5px;font-weight:600}.crit .sc small{color:var(--ink-faint);font-weight:500}.gauge.mini.calibrating .track{stroke:var(--paper-sunk)}.gauge.mini.calibrating .comet{fill:none;stroke:url(#cal-grad);stroke-width:8px;stroke-linecap:round;stroke-dasharray:55 160;transform-origin:40px 40px;animation:1.4s linear infinite cal-spin}@keyframes cal-spin{to{transform:rotate(360deg)}}.calibrando .gauge .num{color:var(--ink-faint);animation:1.5s ease-in-out infinite cal-breathe}@keyframes cal-breathe{0%,to{opacity:.45}50%{opacity:1}}.cal-pill{color:#8a611c;background:#c2872c24;border:1px solid #c2872c57;border-radius:999px;align-self:flex-start;align-items:center;gap:7px;padding:5px 11px;font-size:12.5px;font-weight:700;display:inline-flex}.cal-pill:before{content:"";background:var(--ochre);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite cal-breathe}.cal-legend{text-align:center;height:20px;position:relative}.cal-legend span{font-family:var(--serif);color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;opacity:0;font-size:13.5px;font-style:italic;animation:6s ease-in-out infinite cal-leg;position:absolute;inset:0;overflow:hidden}.cal-legend span:first-child{animation-delay:0s}.cal-legend span:nth-child(2){animation-delay:1.5s}.cal-legend span:nth-child(3){animation-delay:3s}.cal-legend span:nth-child(4){animation-delay:4.5s}@keyframes cal-leg{0%{opacity:0}3%{opacity:1}22%{opacity:1}26%{opacity:0}to{opacity:0}}.calibrando .crit{position:relative;overflow:hidden}.calibrando .crit .name,.calibrando .crit .sc{z-index:1;position:relative}.calibrando .crit:after{content:"";pointer-events:none;opacity:0;background:linear-gradient(100deg,#0000 30%,#c2872c29 50%,#0000 70%);position:absolute;inset:0;transform:translate(-100%)}.calibrando .crit:first-child:after{animation:6s ease-in-out infinite cal-shim}.calibrando .crit:nth-child(2):after{animation:6s ease-in-out 1.5s infinite cal-shim}.calibrando .crit:nth-child(3):after{animation:6s ease-in-out 3s infinite cal-shim}.calibrando .crit:nth-child(4):after{animation:6s ease-in-out 4.5s infinite cal-shim}@keyframes cal-shim{0%{opacity:0;transform:translate(-100%)}4%{opacity:1}22%{opacity:1;transform:translate(100%)}26%{opacity:0;transform:translate(100%)}to{opacity:0;transform:translate(100%)}}.calibrando .crit .pip{background:var(--paper-sunk)}.calibrando .crit:first-child .pip{animation:6s step-end infinite cal-fill}.calibrando .crit:nth-child(2) .pip{animation:6s step-end 1.5s infinite cal-fill}.calibrando .crit:nth-child(3) .pip{animation:6s step-end 3s infinite cal-fill}.calibrando .crit:nth-child(4) .pip{animation:6s step-end 4.5s infinite cal-fill}@keyframes cal-fill{0%,25%,to{background:var(--paper-sunk)}3%,22%{background:var(--ochre)}}@media (prefers-reduced-motion:reduce){.gauge.mini.calibrating .comet,.calibrando .gauge .num,.cal-pill:before,.cal-legend span,.calibrando .crit:after,.calibrando .crit .pip{animation:none}.cal-legend span:first-child{opacity:1}}.attempts{border-top:1px solid var(--line);padding-top:12px}.attempts-toggle{cursor:pointer;width:100%;font-family:var(--sans);background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:2px 0;display:flex}.attempts-toggle .at-left{letter-spacing:.5px;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:8px;font-size:11.5px;font-weight:700;display:flex}.attempts-toggle .count{background:var(--line-strong);color:var(--ink-soft);border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:grid}.attempts-toggle .chev{width:15px;height:15px;color:var(--ink-faint);flex:none;transition:transform .25s}.attempts[data-open=true] .attempts-toggle .chev{transform:rotate(180deg)}.attempts-body{padding-top:14px;display:none}.attempts[data-open=true] .attempts-body{display:block}.att-track{align-items:flex-end;gap:10px;display:flex}.att{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex}.att .bar{background:var(--line-strong);border-radius:6px 6px 0 0;width:100%;max-width:34px}.att.cur .bar{background:var(--green)}.att.prev .bar{background:var(--ochre)}.att .v{font-family:var(--serif);font-size:13px;font-weight:600}.att .lab{color:var(--ink-faint);font-size:10.5px;font-weight:600}.delta{color:var(--green);align-items:center;gap:6px;margin-top:12px;font-size:12.5px;font-weight:600;display:flex}.delta svg{width:13px;height:13px}.consultas{flex-direction:column;flex:auto;min-height:0;display:flex}.consultas-head{font-family:var(--sans);letter-spacing:.3px;color:#8a611c;flex:none;align-items:center;gap:9px;padding:14px 20px 10px;font-size:12.5px;font-weight:700;display:flex}.consultas-head>svg{width:15px;height:15px}.consultas-head .ch-title{margin-right:auto}.consultas-head .count{background:var(--ochre);color:#fff;border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:11px;font-weight:700;display:grid}.consultas-empty{color:var(--ink-faint);margin:0;padding:2px 20px 16px;font-size:12.5px;line-height:1.5}.asides{flex-direction:column;flex:auto;gap:12px;min-height:0;padding:2px 16px 16px;display:flex;overflow:auto}.practice-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:16px 24px 0;display:flex}.photo-inner img{object-fit:cover;width:100%;height:100%;display:block}.photo-empty{text-align:center;background:var(--paper-sunk);width:100%;height:100%;color:var(--ink-faint);place-items:center;padding:0 24px;font-size:13px;display:grid}.wc.under b{color:var(--terra)}.wc{display:inline}.wc .dot{vertical-align:middle;background:var(--ink-faint);border-radius:50%;width:7px;height:7px;margin-right:7px;transition:all .2s;display:inline-block;position:relative;top:-1px}.wc.inband{color:var(--green);font-weight:600}.wc.inband .dot{background:var(--green)}.wc.inband b{color:var(--green)}.wc.under .dot,.wc.over .dot{background:var(--ochre)}.wc.over{color:#b0762a}.prompt-empty{text-align:center;color:var(--ink-faint);margin:0;padding:22px 4px;font-size:13px}.grade-error{color:var(--terra-deep);margin:0 24px;font-size:12.5px;font-weight:600}.panel{background:var(--paper-card);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:18px;padding:16px 18px 18px}.panel>.ph{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.panel>.ph h2{font-family:var(--serif);margin:0;font-size:15.5px;font-weight:600}.panel>.ph .note{color:var(--ink-faint);text-align:right;font-size:11.5px}.library{flex-direction:column;gap:18px;padding:20px 24px 28px;display:flex;overflow:auto}.library-bar{align-items:center;display:flex}.library .modeseg{margin-left:0}.lib-state{text-align:center;color:var(--ink-faint);margin:0;padding:26px 8px;font-size:13px}.lib-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}.lib-photo{border:1px solid var(--line);background:var(--paper);border-radius:14px;overflow:hidden}.lib-thumb{aspect-ratio:4/3;background:var(--paper-sunk)}.lib-thumb img{object-fit:cover;width:100%;height:100%;display:block}.lib-photo-foot{justify-content:space-between;align-items:center;gap:8px;padding:9px 11px 10px;display:flex}.lib-title{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:600;overflow:hidden}.lib-list{flex-direction:column;gap:12px;display:flex}.lib-prompt{border:1px solid var(--line);background:var(--paper);border-radius:14px;flex-direction:column;gap:9px;padding:13px 15px 14px;display:flex}.lib-prompt-tags{flex-wrap:wrap;gap:7px;display:flex}.lib-prompt-task{font-family:var(--serif);color:var(--ink);margin:0;font-size:14.5px;line-height:1.4}.lib-score{border:1px solid var(--line-strong);background:var(--paper-sunk);color:var(--ink-soft);border-radius:999px;flex:none;align-self:flex-start;align-items:center;gap:8px;padding:4px 11px 4px 9px;font-size:12px;font-weight:700;display:inline-flex}.lib-score b{font-family:var(--serif);font-size:14px;font-weight:600;line-height:1}.lib-score b small{color:var(--ink-faint);font-size:10px;font-weight:500}.lib-score .lib-band{font-weight:700}.lib-score.none{color:var(--ink-faint);font-weight:600}.lib-score[data-band=proficiente],.lib-score[data-band=competente]{color:var(--green);background:#5c714824;border-color:#5c71484d}.lib-score[data-band=en-desarrollo]{color:#a4701f;background:#c2872c24;border-color:#c2872c57}.lib-score[data-band=insuficiente]{color:var(--terra-deep);background:#be4a2a1f;border-color:#be4a2a4d}.progress{flex-direction:column;gap:16px;padding:20px 24px 28px;display:flex;overflow:auto}.progress-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.progress .range{background:var(--paper-sunk);border:1px solid var(--line-strong);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.progress .range button{cursor:pointer;font-family:var(--sans);color:var(--ink-soft);background:0 0;border:0;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s}.progress .range button.active{background:var(--ink);color:var(--paper-card)}.progress .modeseg{margin:0}.progress-state{text-align:center;color:var(--ink-faint);margin:0;padding:40px 12px;font-size:13.5px}.progress-state.in-panel{padding:24px 8px}.dash{flex-direction:column;gap:16px;display:flex}.progress .stat-row{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.progress .stat{background:var(--paper-card);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:16px;flex-direction:column;gap:3px;padding:15px 16px;display:flex}.progress .stat .big{font-family:var(--serif);letter-spacing:-1px;font-size:32px;font-weight:600;line-height:1}.progress .stat .big small{color:var(--ink-faint);font-size:16px;font-weight:500}.progress .stat .lab{color:var(--ink-soft);margin-top:3px;font-size:12px;font-weight:600}.progress .stat .stat-sub{color:var(--ink-faint);font-size:11.5px}.stat-delta{align-items:center;gap:4px;width:fit-content;margin-top:1px;font-size:12.5px;font-weight:700;display:inline-flex}.stat-delta.good{color:var(--green)}.stat-delta.bad{color:var(--grave)}.stat-delta.flat{color:var(--ink-faint)}.stat-delta .stat-delta-cap{color:var(--ink-faint);font-weight:500}.progress .chart-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.progress .chart{width:100%;height:auto;display:block}.progress .chart-tick{font-family:var(--sans);fill:var(--ink-faint);font-size:9px}.progress .chart-axis{stroke:var(--line-strong);stroke-width:1px}.progress .chart-target{stroke:var(--ink-faint);stroke-width:1px;stroke-dasharray:3 4;opacity:.6}.progress .chart-foot{color:var(--ink-faint);justify-content:space-between;margin-top:6px;font-size:10.5px;font-weight:600;display:flex}.progress .chart-legend{flex-wrap:wrap;gap:14px;margin-top:8px;display:flex}.progress .chart-legend .leg{color:var(--ink-soft);align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:inline-flex}.progress .chart-legend .leg i{border-radius:2px;width:10px;height:3px}.progress .chart-legend .leg b{font-family:var(--serif);color:var(--ink);font-weight:600}.progress .lower-row{grid-template-columns:1.55fr 1fr;align-items:start;gap:16px;display:grid}.progress .lower-col{flex-direction:column;gap:16px;display:flex}.progress .focus{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.progress .focus li{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:11px 2px;display:grid}.progress .focus li:first-child{border-top:0}.progress .focus .rank{font-family:var(--serif);color:var(--ink-faint);text-align:center;width:18px;font-size:15px;font-weight:600}.progress .focus .info .nm{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.progress .focus .info .nm .sev-dot{border-radius:50%;flex:none;width:7px;height:7px}.progress .focus .info .meta{color:var(--ink-faint);margin-top:2px;font-size:11.5px}.progress .focus .info .kindtag{color:var(--ink-soft)}.progress .focus .trend{align-items:center;gap:7px;display:flex}.progress .focus .trend svg.sp{width:64px;height:22px}.progress .focus .trend .ar{text-align:center;width:14px;font-size:13px;font-weight:800}.progress .focus .practicar{border:1px solid var(--line-strong);background:var(--paper-sunk);color:var(--ink-soft);font-family:var(--sans);cursor:pointer;white-space:nowrap;border-radius:10px;padding:7px 13px;font-size:12px;font-weight:700;transition:all .18s}.progress .focus .practicar:hover{background:var(--terra);border-color:var(--terra);color:#fff}.progress .crit-bars{flex-direction:column;gap:12px;display:flex}.progress .cbar{grid-template-columns:84px 1fr auto;align-items:center;gap:10px;display:grid}.progress .cbar .nm{color:var(--ink-soft);font-size:12.5px;font-weight:600}.progress .cbar .track{background:var(--paper-sunk);border-radius:5px;height:9px;overflow:hidden}.progress .cbar .fill{background:var(--terra);border-radius:5px;height:100%}.progress .cbar .fill.strong{background:var(--green)}.progress .cbar .val{font-family:var(--serif);font-size:13.5px;font-weight:600}.progress .practice-banner{color:#f3ead8;box-shadow:var(--shadow-soft);background:linear-gradient(135deg,#2a2118,#3a2c1c);border:1px solid #3a2c1c;border-radius:18px;padding:18px}.progress .practice-banner .tag{letter-spacing:.8px;text-transform:uppercase;color:#e7b26a;background:#c2872c2e;border:1px solid #c2872c66;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:10.5px;font-weight:700;display:inline-flex}.progress .practice-banner h3{font-family:var(--serif);color:#fff;margin:11px 0 6px;font-size:18px;font-weight:600}.progress .practice-banner p{color:#d8cbb4;margin:0 0 14px;font-size:13px;line-height:1.5}.progress .practice-banner p b{color:#f1ddb8}.progress .practice-banner .start{background:var(--terra);color:#fff;font-family:var(--sans);cursor:pointer;border:0;border-radius:12px;align-items:center;gap:8px;padding:11px 18px;font-size:13.5px;font-weight:700;transition:all .2s;display:inline-flex}.progress .practice-banner .start:hover{background:var(--terra-deep)}.progress .practice-banner .start svg{width:15px;height:15px}.placeholder{text-align:center;color:var(--ink-soft);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:60px 32px;display:flex}.placeholder h2{font-family:var(--serif);color:var(--ink);margin:0;font-size:24px;font-weight:600}.placeholder p{color:var(--ink-faint);max-width:34ch;margin:0;font-size:13.5px;line-height:1.5}.signin{z-index:2;flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:80vh;padding:40px 18px;display:flex;position:relative}.signin .signin-brand{text-align:center}.signin .signin-mark{font-family:var(--serif);width:58px;height:58px;color:var(--paper);background:linear-gradient(#241d14,#1a150e);border-radius:16px;place-items:center;margin:0 auto 14px;font-size:30px;font-weight:600;display:grid}.signin .signin-brand h1{font-family:var(--serif);letter-spacing:-.4px;color:var(--ink);margin:0;font-size:30px;font-weight:600}.signin .signin-brand p{font-family:var(--serif);color:var(--ink-soft);margin:6px 0 0;font-size:14.5px;font-style:italic}@container (width<=720px){.app{grid-template-columns:1fr;min-height:0}.rail{border-top:1px solid #ffffff0f;flex-direction:row;order:9;grid-row:2;justify-content:space-around;align-items:center;height:62px;padding:0;position:sticky;bottom:0}.rail .mark,.rail .spacer{display:none}.rail a,.rail .rail-btn{border-radius:12px;flex-direction:column;gap:3px;width:auto;height:auto;padding:6px 14px}.rail a svg,.rail .rail-btn svg{width:20px;height:20px}.rail .label{letter-spacing:.3px;font-size:9.5px;font-weight:700;display:block}.stage{order:1}.topbar{padding:15px 17px}.brand h1{font-size:18px}.workspace{grid-template-columns:1fr}.primary{border-right:0}.photo,.stim{padding:15px 16px 0}.practice-bar{padding:12px 16px 0}.library{padding:16px 16px 22px}.lib-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr))}.progress{padding:16px 16px 22px}.progress .stat-row{grid-template-columns:1fr 1fr}.progress .chart-row,.progress .lower-row{grid-template-columns:1fr}.progress .focus li{grid-template-columns:auto 1fr auto;gap:10px}.progress .focus .trend{display:none}.thread{padding:16px 16px 6px}.bubble{max-width:92%}.sidebar{border-top:1px solid var(--line);overflow:visible}.consultas{min-height:0}.asides{overflow:visible}.sb-score{padding:14px 16px}.askbar{gap:6px;margin:10px 14px 14px;padding:6px 6px 6px 8px}.askbar input{font-size:13px}}
