:root{--ink:#14151a;--ink-2:#474a55;--ink-3:#767a86;--paper:#fff;--canvas:#f6f7fa;--line:#e6e7ee;--line-soft:#f0f1f6;--brand:#5b5fef;--brand-strong:#4b45d6;--brand-soft:#eef0fe;--accent:var(--brand);--accent-soft:var(--brand-soft);--grad:linear-gradient(135deg, #6d5ef6 0%, #5b5fef 48%, #7c4dff 100%);--grad-rail:linear-gradient(185deg, #211d47 0%, #17162c 100%);--error:#c02636;--error-soft:#fdecec;--shadow-sm:0 1px 2px #14151a0a, 0 1px 3px #14151a0f;--shadow-md:0 18px 40px -18px #2d28783d, 0 4px 12px -4px #14151a14;--font-ui:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--font-document:Georgia, "Times New Roman", serif;--rail:15rem;--ease:cubic-bezier(.2, 0, 0, 1)}*{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}.visually-hidden{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.shell{min-height:100vh}.rail{width:var(--rail);background:var(--grad-rail);color:#fff;flex-direction:column;gap:2.5rem;padding:2rem 1.25rem;display:flex;position:fixed;inset:0 auto 0 0}.rail-brand{align-items:center;gap:.625rem;display:flex}.rail-mark{background:var(--grad);color:#fff;width:1.875rem;height:1.875rem;font-family:var(--font-document);border-radius:9px;flex:none;justify-content:center;align-items:center;font-size:1.0625rem;font-weight:700;display:inline-flex;box-shadow:0 4px 12px -4px #5b5fef8c}.rail-name{font-family:var(--font-document);letter-spacing:-.015em;font-size:1.375rem;font-weight:700}.rail-nav{flex-direction:column;gap:.125rem;display:flex}.rail-link{color:#ffffff9e;transition:color .18s var(--ease), background-color .18s var(--ease);border-radius:8px;padding:.5rem .75rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:block;position:relative}.rail-link:hover{color:#fff;background:#ffffff12}.rail-link.active{color:#fff;background:var(--brand)}.rail-link.is-locked{color:#ffffff47;cursor:default}.rail-link.is-locked:hover{color:#ffffff47;background:0 0}.rail-logout{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;margin-top:auto}.rail-foot{letter-spacing:.08em;text-transform:uppercase;color:#fff6;margin:auto 0 0;font-size:.75rem}.content{margin-left:var(--rail);padding:3.5rem 2.5rem 5rem}.page{max-width:52rem;margin:0 auto}.page-narrow{max-width:40rem}.page-head{margin-bottom:2.75rem}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0 0 .75rem;font-size:.6875rem;font-weight:700}.page-head h1{font-family:var(--font-document);letter-spacing:-.02em;max-width:22ch;margin:0;font-size:2.25rem;font-weight:700;line-height:1.15}.lede{max-width:56ch;color:var(--ink-2);margin:.875rem 0 0;font-size:1.0625rem}.page-head .button{margin-top:1.75rem}.page-head-note{color:var(--ink-3);margin:.75rem 0 0;font-size:.875rem}.button{font:inherit;cursor:pointer;transition:transform .15s var(--ease), background-color .18s var(--ease), box-shadow .18s var(--ease);border:0;border-radius:8px;padding:.6875rem 1.25rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-block}.button-primary{background:var(--grad);color:#fff;box-shadow:0 6px 18px -6px #5b5fef80}.button-primary:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.button-primary:active{transform:translateY(0)}.plan-form button,.deck-actions-row button,.deck-refine button,.deck-header button,.deck-nav button,.exercise-form button,.plan-download-button{font:inherit;color:#fff;background:var(--brand);cursor:pointer;transition:opacity .18s var(--ease), background-color .18s var(--ease);border:0;border-radius:9px;padding:.5625rem 1rem;font-size:.875rem;font-weight:600}.plan-form button:hover:enabled,.deck-actions-row button:hover:enabled,.deck-refine button:hover:enabled,.deck-header button:hover:enabled,.deck-nav button:hover:enabled,.exercise-form button:hover:enabled,.plan-download-button:hover:enabled{background:var(--brand-strong)}.plan-form button:disabled,.deck-actions-row button:disabled,.deck-refine button:disabled,.deck-header button:disabled,.deck-nav button:disabled,.exercise-form button:disabled,.plan-download-button:disabled{opacity:.35;cursor:default}input{font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);transition:border-color .18s var(--ease), box-shadow .18s var(--ease);border-radius:8px;padding:.5625rem .75rem}input:focus-visible{border-color:var(--ink);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.plan-form{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;grid-template-columns:2fr 1fr 1fr;gap:1.125rem;padding:1.75rem;display:grid}.plan-form label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);flex-direction:column;gap:.4375rem;font-size:.75rem;font-weight:700;display:flex}.plan-form input{text-transform:none;letter-spacing:normal;font-weight:400}.plan-form button{grid-column:1/-1;justify-self:start;padding:.6875rem 1.25rem;font-size:.9375rem}.cards{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:box-shadow .2s var(--ease), transform .2s var(--ease);border-radius:14px;padding:1.5rem}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:0 0 .875rem;font-size:.6875rem;font-weight:700}.card-value{font-family:var(--font-document);letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:700;line-height:1.3}.card-note{color:var(--ink-3);margin:.375rem 0 0;font-size:.875rem}.card-empty{color:var(--ink-3);margin:0;font-size:.9375rem}.card-link{color:var(--ink);border-bottom:2px solid var(--accent);transition:border-color .18s var(--ease);margin-top:1rem;padding-bottom:1px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-block}.card-link:hover{border-color:var(--ink)}.publish{margin-top:1rem}.publish-code{flex-wrap:wrap;align-items:center;gap:.625rem;margin-top:1rem;display:flex}.publish-code-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:.6875rem;font-weight:700}.publish-code-value{font-family:var(--font-document);letter-spacing:.14em;border:1px solid var(--accent);background:var(--accent-soft);color:var(--ink);cursor:pointer;border-radius:8px;padding:.25rem .75rem;font-size:1.125rem;font-weight:700}.publish-code-value:hover{border-color:var(--ink)}.publish-copied{color:var(--ink-3);font-size:.8125rem;font-weight:600}.panels{gap:1rem;display:grid}.panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:box-shadow .24s var(--ease), border-color .24s var(--ease);border-radius:14px;overflow:hidden}.panel.is-open{box-shadow:var(--shadow-md)}.panel-heading{margin:0;font-size:1rem}.panel-toggle{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;transition:background-color .18s var(--ease);background:0 0;border:0;align-items:center;gap:.875rem;padding:1.125rem 1.375rem;display:flex}.panel-toggle:hover{background:var(--canvas)}.panel-step{border:1px solid var(--line);background:var(--paper);width:1.625rem;height:1.625rem;color:var(--ink-3);transition:background-color .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.panel.is-open .panel-step{background:var(--brand);border-color:var(--brand);color:#fff}.panel-title{font-family:var(--font-document);letter-spacing:-.01em;font-size:1.25rem;font-weight:700}.panel-summary{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-left:auto;font-size:.75rem;font-weight:600}.panel-chevron{border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);width:.5rem;height:.5rem;transition:transform .28s var(--ease);flex:none;margin-left:.25rem;transform:rotate(-45deg)}.panel.is-open .panel-chevron{transform:rotate(45deg)}.panel-body{transition:grid-template-rows .3s var(--ease);grid-template-rows:0fr;display:grid}.panel.is-open .panel-body{grid-template-rows:1fr}.panel-body-clip{min-height:0;overflow:hidden}.panel-content{border-top:1px solid var(--line-soft);margin-top:-1px;padding:.25rem 1.375rem 1.625rem}.hint{color:var(--ink-3);text-align:center;padding:2rem 0}.loading{color:var(--ink-3);justify-content:center;align-items:center;gap:.75rem;padding:2.5rem 0;display:flex}.loading p{margin:0}.spinner{border:3px solid var(--line);border-top-color:var(--ink);border-radius:50%;flex:none;width:1.25rem;height:1.25rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error{background:var(--error-soft);border-left:3px solid var(--error);border-radius:8px;margin-top:1.25rem;padding:.875rem 1rem}.plan{font-family:var(--font-document);overflow-wrap:break-word;padding-top:1rem}.plan-eyebrow{font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:0 0 .5rem;font-size:.6875rem;font-weight:700}.plan h2{letter-spacing:-.015em;margin:0;font-size:1.625rem;line-height:1.25}.plan-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.plan-download-actions{gap:.5rem;display:flex}.plan-download-button{font-family:var(--font-ui);white-space:nowrap;font-size:.8125rem}.plan-total{font-family:var(--font-ui);color:var(--ink-3);margin-top:.5rem;font-size:.8125rem;display:block}.plan-download-error{background:var(--error-soft);border-left:3px solid var(--error);font-family:var(--font-ui);border-radius:8px;margin-top:1rem;padding:.75rem .875rem}.plan-objectives,.plan-section{border-top:1px solid var(--line-soft);margin-top:1.5rem;padding-top:1.5rem}.plan-objectives h3,.plan-section h3{margin:0 0 .5rem;font-size:1.125rem}.plan-objectives ul{margin:0;padding-left:1.25rem}.plan-objectives li{margin-bottom:.375rem}.plan-objectives li::marker{color:var(--accent)}.plan-section header{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.duration{font-family:var(--font-ui);letter-spacing:.04em;color:var(--ink-2);background:var(--canvas);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:.125rem .625rem;font-size:.6875rem;font-weight:700}.plan-section p{margin:.5rem 0 0}.deck-controls{gap:1rem;padding-top:1rem;display:grid}.deck-actions-row{gap:.625rem;display:flex}.deck-refine{grid-template-columns:1fr auto;gap:.625rem;display:grid}.deck-section{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:1.25rem}.deck-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.deck-header h3{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:0;font-size:.75rem;font-weight:700}.deck-actions{align-items:center;gap:.75rem;display:flex}.deck-counter{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:.8125rem}.deck-slide{background:var(--ink);color:#fff;border-radius:10px;margin-top:1rem;padding:1.75rem}.deck-slide.presenting{border-radius:0;flex-direction:column;justify-content:center;height:100%;margin:0;padding:4rem;display:flex}.deck-slide h4{font-family:var(--font-document);letter-spacing:-.01em;border-bottom:2px solid var(--accent);margin:0 0 1rem;padding-bottom:.625rem;font-size:1.375rem;font-weight:700}.deck-slide.presenting h4{font-size:2.5rem}.deck-slide ul{color:#ffffffd1;margin:0;padding-left:1.25rem}.deck-slide li{margin-bottom:.5rem}.deck-slide li::marker{color:var(--accent)}.deck-slide.presenting li{margin-bottom:1rem;font-size:1.5rem}.deck-notes{background:var(--canvas);border:1px solid var(--line);color:var(--ink-2);border-radius:10px;margin-top:1rem;padding:.875rem 1rem;font-size:.9375rem}.deck-notes strong{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:.6875rem;font-weight:700}.deck-notes p{margin:.375rem 0 0}.deck-nav{justify-content:space-between;margin-top:1rem;display:flex}.exercise-controls{padding-top:1rem}.exercise-form fieldset{border:1px solid var(--line);background:var(--paper);border-radius:12px;margin:0;padding:1.5rem}.exercise-form fieldset:disabled{opacity:.6}.exercise-form legend{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:0 .5rem;font-size:.75rem;font-weight:700}.exercise-form .hint{text-align:left;color:var(--ink-3);margin:0 0 1.25rem;padding:0;font-size:.9rem}.chips{flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.chip{border:1px solid var(--line);background:var(--canvas);color:var(--ink-2);transition:border-color .18s var(--ease);border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .5rem .3rem .75rem;font-size:.875rem;display:inline-flex}.chip:hover{border-color:var(--ink-3)}.chip-remove{color:var(--ink-3);cursor:pointer;transition:background-color .18s var(--ease), color .18s var(--ease);background:0 0;border:0;border-radius:999px;padding:0 .15rem;font-size:1.1rem;line-height:1}.chip-remove:hover:enabled{background:var(--ink);color:#fff}.chip-add{align-items:flex-end;gap:.5rem;margin-bottom:1.25rem;display:flex}.chip-add label,.exercise-form .quantidade{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);flex-direction:column;gap:.4375rem;font-size:.75rem;font-weight:700;display:flex}.chip-add input{text-transform:none;letter-spacing:normal;min-width:18rem;font-weight:400}.exercise-form .quantidade{max-width:12rem;margin-bottom:1.25rem}.exercise-form .quantidade input{text-transform:none;letter-spacing:normal;font-weight:400}.exercise-form .chip-add button{background:var(--paper);color:var(--ink);border:1px solid var(--line);font-weight:500}.exercise-form .chip-add button:hover:enabled{background:var(--canvas);border-color:var(--ink-3)}.exercises{margin-top:1.75rem}.exercise-cards{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.exercise-card{border:1px solid var(--line);background:var(--paper);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);border-radius:12px;padding:1.5rem}.exercise-card:hover{border-color:var(--ink-3);box-shadow:var(--shadow-sm)}.exercise-header{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.exercise-number{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-right:auto;font-size:.75rem;font-weight:700}.badge{border:1px solid var(--line);color:var(--ink-3);background:var(--paper);border-radius:999px;padding:.2rem .6rem;font-size:.75rem;font-weight:600}.badge-facil{background:var(--canvas)}.badge-medio{border-color:var(--accent);background:var(--accent-soft);color:var(--ink-2)}.badge-dificil{border-color:var(--ink);background:var(--ink);color:#fff}.exercise-statement{font-family:var(--font-document);margin:0 0 1.25rem;font-size:1.0625rem;line-height:1.55}.exercise-options{flex-direction:column;gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.exercise-options li{align-items:baseline;gap:.65rem;display:flex}.option-letter{border:1px solid var(--line);height:1.5rem;color:var(--ink-3);border-radius:50%;flex:0 0 1.5rem;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.exercise-answer summary{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);transition:color .18s var(--ease);font-size:.8125rem;font-weight:700}.exercise-answer summary:hover{color:var(--ink)}.exercise-answer p{color:var(--ink-2);margin:.625rem 0 0;font-size:.9375rem}.exercise-answer p strong{color:var(--ink)}@media (width<=820px){.rail{flex-direction:row;align-items:center;gap:1.25rem;width:auto;padding:.875rem 1.25rem;position:static}.rail-nav{flex-direction:row;gap:.25rem;overflow-x:auto}.rail-foot{display:none}.content{margin-left:0;padding:2.5rem 1.25rem 4rem}.page-head h1{font-size:1.875rem}.plan-form,.deck-refine{grid-template-columns:1fr}.plan-header{flex-direction:column}.plan-download-actions{flex-wrap:wrap;width:100%}.chip-add{flex-direction:column;align-items:stretch}.chip-add input{min-width:0}}@keyframes rise{0%{opacity:0;transform:translateY(.5rem)}}.page-head,.cards>*,.panels>*,.attempt-cards>*,.score{animation:rise .42s var(--ease) backwards}.cards>:nth-child(2),.panels>:nth-child(2),.attempt-cards>:nth-child(2){animation-delay:50ms}.cards>:nth-child(3),.panels>:nth-child(3),.attempt-cards>:nth-child(3){animation-delay:.1s}.attempt-cards>:nth-child(n+4){animation-delay:.15s}.score{color:var(--ink-3);margin:0 0 1.5rem;font-size:.9375rem}.score strong{color:var(--ink);font-variant-numeric:tabular-nums}.attempt-cards{gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.attempt-card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;padding:1.75rem}.attempt-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.875rem;display:flex}.verdict-tag{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.125rem .625rem;font-size:.6875rem;font-weight:700}.verdict-tag.verdict-ok{background:var(--ink);color:#fff}.verdict-tag.verdict-no{background:var(--error-soft);color:var(--error)}.attempt-options{border:0;gap:.5rem;margin:1.25rem 0 1.5rem;padding:0;display:grid}.attempt-option{border:1px solid var(--line);cursor:pointer;font-family:var(--font-document);transition:border-color .18s var(--ease), background-color .18s var(--ease);border-radius:10px;align-items:baseline;gap:.75rem;padding:.875rem 1rem;display:flex}.attempt-option:hover{border-color:var(--ink-3)}.attempt-options:disabled .attempt-option{cursor:default}.attempt-options:disabled .attempt-option:hover{border-color:var(--line)}.attempt-option input{accent-color:var(--ink);margin:0}.attempt-option.is-chosen{border-color:var(--accent);background:var(--accent-soft)}.attempt-option.is-correct{border-color:var(--ink);background:var(--ink);color:#fff}.attempt-option.is-correct .option-letter{color:#fff;background:#ffffff2e}.attempt-option.is-wrong{border-color:var(--error);background:var(--error-soft);color:var(--error)}.attempt-option.is-muted{color:var(--ink-3);opacity:.6}.verdict{border-left:3px solid var(--ink);padding-left:1rem}.verdict.verdict-no{border-left-color:var(--error)}.verdict-line{margin:0;font-weight:700}.verdict.verdict-no .verdict-line{color:var(--error)}.verdict-answer{font-family:var(--font-document);margin:.375rem 0 0}.verdict-explanation{color:var(--ink-2);font-family:var(--font-document);margin:.5rem 0 0}.finalize{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.75rem}.finalize-lede{color:var(--ink-2);font-family:var(--font-document);margin:0 0 1rem}.finalize-round{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:2rem}.finalize-round .page-head{margin-bottom:1.5rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}
