:root{--c-ok:color-mix(in srgb,var(--ok-fill) 10%,var(--surface));--c-acc:color-mix(in srgb,var(--accent) 9%,var(--surface));--c-proa:color-mix(in srgb,var(--pro-a) 11%,var(--surface));--c-prob:color-mix(in srgb,var(--pro-b) 14%,var(--surface));--c-bad:color-mix(in srgb,var(--bad) 9%,var(--surface));--grad:linear-gradient(135deg,var(--accent-soft),var(--ok-soft));--sh-t:0 10px 18px -12px #141a2b59;--r-c:6px 6px 18px 6px}.panel-layout{margin-top:18px}.panel-nav{z-index:12;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(10px);box-shadow:var(--shadow);border-radius:16px;gap:4px;margin-bottom:18px;padding:6px;display:flex;position:sticky;top:72px;overflow-x:auto}.panel-nav a{min-height:44px;color:var(--muted);border-radius:10px;flex:1 0 auto;justify-content:center;align-items:center;gap:10px;padding:8px 14px;font-weight:600;text-decoration:none;transition:all .15s;display:flex}.panel-nav a:hover{background:var(--block);color:var(--ink)}.panel-nav a[aria-current=page]{background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);font-weight:700}.panel-nav a[aria-current=page] span{background:var(--accent);color:var(--surface)}.panel-nav a[aria-current=page] svg{fill:color-mix(in srgb,currentColor 20%,transparent)}.panel-nav span{border-radius:9px;place-items:center;width:26px;height:26px;display:grid}.panel-nav svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.panel-main{min-width:0}.panel-section>p{margin:8px 0 20px}.panel-section:not([hidden]){animation:.45s both panel-rise}.panel-h{margin-top:36px}.panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0;display:grid}.panel-card{overflow-wrap:anywhere;border:1px solid var(--line);background:linear-gradient(145deg,var(--accent-soft),var(--ok-soft));box-shadow:var(--shadow);color:var(--ink);border-radius:24px;padding:22px;transition:all .18s}.panel-card:hover{transform:translateY(-2px)}.panel-card p{margin:8px 0}.panel-card h3{font:800 20px/1.2 var(--font-display);letter-spacing:-.01em;margin:12px 0 8px}.panel-card.is-bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 7%,var(--surface))}.panel-card.is-warn{border-color:var(--warn);background:var(--warn-soft)}.panel-icon{box-sizing:border-box;background:color-mix(in srgb,var(--accent) 12%,var(--surface));width:38px;height:38px;color:var(--accent);fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;border-radius:12px;padding:8px;display:block}.panel-section-head,.schedule-hero-top,.schedule-card-head,.panel-task-group-head,.panel-calendar-head,.panel-detail-head,.panel-needs-head,.panel-closed-badge{justify-content:space-between;align-items:center;gap:10px;display:flex}.panel-section-head{flex-wrap:wrap;align-items:flex-start;margin-bottom:14px}.panel-scroll{overflow-x:auto}.panel-schedule{background:var(--line);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(7,minmax(110px,1fr));gap:1px;min-width:850px;display:grid;position:relative;overflow:hidden}.panel-day{background:var(--surface);position:relative}.panel-day--today{background:var(--grad)}.panel-day h3{font:800 14px var(--font-display);text-align:center;border-bottom:1px solid var(--line);height:48px;margin:0;padding:14px 2px}.panel-hour{border-bottom:1px solid var(--line);height:60px;color:var(--muted);padding:3px;font-size:10px}.panel-slot{background:color-mix(in srgb,var(--subject-color) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--subject-color) 40%,transparent);box-shadow:0 8px 16px -12px var(--ink);color:var(--ink);border-radius:6px 6px 14px;padding:8px;font-size:11px;position:absolute;left:4px;right:4px;overflow:auto}.panel-slot b{font:700 13px/1.2 var(--font-display);margin-bottom:8px;display:block}.panel-slot span{font:800 12px/1.3 var(--font-display);font-variant-numeric:tabular-nums}.panel-slot--now{outline:2.5px solid var(--accent);outline-offset:1px;z-index:2;box-shadow:0 0 10px color-mix(in srgb,var(--accent) 50%,transparent)}.panel-slot-now-tag{font:800 10px var(--font);color:var(--accent);background:var(--surface);margin-top:3px;padding:1px 6px}.panel-search{max-width:440px;margin:18px 0;display:block}.panel-search input{margin-top:6px}.panel-quote{white-space:pre-wrap;margin:12px 0;font-family:inherit;line-height:1.7}.panel-table{border-collapse:collapse;width:100%;font-size:14px}.panel-table th,.panel-table td{text-align:left;border-bottom:1px solid var(--line);padding:12px}.panel-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}#syncAge{margin:8px 0;font-size:13px}.panel-empty{color:var(--muted);border:1px dashed var(--line);border-radius:12px;padding:16px}.n-h2,.n-h3{font-weight:800}.panel-actas{gap:20px;margin:24px 0;display:grid}.panel-acta{width:max-content;min-width:100%}.panel-acta th{text-align:center;white-space:nowrap;background:var(--ok-soft);min-width:64px;color:var(--ink-2);letter-spacing:.04em;font-size:11px;font-weight:700}.panel-acta th small{color:var(--muted);font-size:10px;font-weight:400;display:block}.panel-acta td{white-space:nowrap;text-align:center;min-width:64px}.panel-acta tr>:first-child{z-index:1;background:var(--surface);text-align:left;min-width:150px;max-width:190px;box-shadow:2px 0 0 var(--line);position:sticky;left:0}.panel-acta-row{cursor:pointer}.panel-acta-row:hover td,.panel-acta-row:focus-within td{background:var(--accent-soft)}.panel-subject-button{color:var(--accent);font:700 14px var(--font);text-align:left;cursor:pointer;white-space:normal;overflow-wrap:anywhere;background:0 0;border:0;min-height:44px}.panel-subject-button:hover{text-decoration:underline}.panel-acta .panel-subject-button:disabled{color:var(--ink);cursor:default;text-decoration:none}.panel-number,.panel-final{font-family:var(--font-display);font-variant-numeric:tabular-nums}.panel-acta td.panel-number,.panel-acta td.panel-final{letter-spacing:.03em;font-size:18px;font-weight:800}.is-bad{color:var(--bad)}.is-ok{color:var(--ok)}.period-closed{background:var(--ok-soft)}.panel-approved-charts{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;margin:24px 0;display:grid}.panel-chart-wide{grid-column:1/-1}.panel-approved-charts article{border-radius:var(--radius);min-width:0}.panel-approved-charts h3{margin-bottom:8px}.panel-approved-charts p{margin:8px 0;line-height:1.5}.panel-chart-how{font-size:12.5px}.panel-approved-chart svg{width:100%;height:auto;font-family:var(--font);display:block}.panel-chart-pick{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.panel-chart-pick button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.panel-legend{color:var(--ink-2);flex-wrap:wrap;gap:6px 14px;font-size:12.5px;display:flex}.panel-legend span{align-items:center;gap:6px;display:inline-flex}.panel-chart-swatch{border-radius:3px;width:12px;height:12px;display:inline-block}.panel-chart-hit{cursor:pointer}svg [tabindex]:focus{outline:2px solid var(--accent);outline-offset:2px}.panel-chart-mobile-hint{display:none}.panel-swatch-pending{background:var(--accent-soft);border:1px dashed var(--accent)}.panel-swatch-dot{border-radius:50%}.panel-swatch-extra{border:2px solid var(--pro-a)}.panel-ast-hint{margin:0;font-size:12px}.panel-hero-wrap{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:14px;margin:0 0 8px;display:grid}.panel-hero{background:var(--grad);box-shadow:var(--shadow-lg);border-radius:20px;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:20px;display:grid;position:relative;overflow:hidden}.panel-hero__k,.panel-tile__k>span,.panel-hero__stat span{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);font-size:10.5px;font-weight:700;display:block}.panel-hero__n{font:800 42px/.95 var(--font-display);letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--ink);margin-top:4px;display:block}.panel-hero__n small,.panel-tile__n small{font:600 15px var(--font);color:var(--muted);letter-spacing:0}.panel-hero__tag{background:var(--surface);margin-top:12px;padding:5px 12px;font-size:13px}.panel-hero__tag.is-ok{color:var(--ok)}.panel-hero__tag.is-warn{color:var(--warn)}.panel-hero__ring{--p:0;z-index:1;background:conic-gradient(var(--ok-fill) calc(var(--p)*1%),color-mix(in srgb,var(--surface) 70%,transparent) 0);border-radius:50%;place-items:center;width:104px;height:104px;display:grid;position:relative}.panel-hero__ring b{background:var(--surface);width:80px;height:80px;font:800 20px/1 var(--font-display);color:var(--ink);border-radius:50%;place-items:center;display:grid}.panel-hero__ring i{font:600 10.5px var(--font);color:var(--muted);margin-top:2px;font-style:normal;display:block}.panel-hero__stats{gap:10px;display:grid}.panel-hero__stat{border-radius:var(--r-c);box-shadow:0 1px 0 #0000000a,var(--sh-t);grid-template-columns:1fr auto;align-items:center;gap:2px 12px;padding:14px 16px;transition:transform .2s;display:grid}.panel-hero__stat:first-child,.panel-tile:nth-child(odd),.panel-sticky,.c-row{transform:rotate(-.5deg)}.panel-hero__stat:nth-child(2),.panel-tile:nth-child(2n),.panel-sticky:nth-child(2n),.c-row:nth-child(4n+2){transform:rotate(.5deg)}.panel-hero__stat:nth-child(3){background:var(--c-proa);transform:rotate(-.3deg)}.panel-hero__stat:first-child{background:var(--c-acc)}.panel-hero__stat:nth-child(2){background:var(--c-ok)}.panel-hero__stat:hover{transform:none}.panel-hero__stat b{font:800 30px/1 var(--font-display);letter-spacing:-.01em;color:var(--ink);grid-row:span 2}.panel-hero__stat small{color:var(--muted);font-size:12px}.panel-tiles{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin:16px 0 8px;display:grid}.panel-tile{border-radius:var(--r-c);text-align:left;min-height:150px;font:inherit;color:var(--ink);cursor:pointer;background:var(--c-acc);box-shadow:0 1px 0 #0000000a,var(--sh-t);border:0;padding:14px 14px 18px;transition:all .18s;display:block;position:relative}.panel-tile:hover{transform:translateY(-4px)rotate(0);box-shadow:0 18px 28px -16px #141a2b73}.panel-tile:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.panel-tile:disabled{cursor:default}.panel-tile:disabled:hover{transform:none}.panel-tile.is-ok{background:var(--c-ok);color:var(--ink)}.panel-tile.is-warn{background:var(--c-prob);color:var(--ink)}.panel-tile.is-bad{background:var(--c-bad);color:var(--ink)}.panel-tile__k{justify-content:space-between;align-items:start;gap:8px;display:flex}.panel-tile__k>span{color:var(--ink-2);overflow-wrap:anywhere;font-size:11px;line-height:1.3}.panel-tile__k em{color:var(--accent);flex:none;font-size:11px;font-style:normal;font-weight:700}.panel-tile.is-ok .panel-tile__k em{color:var(--ok)}.panel-tile.is-warn .panel-tile__k em{color:var(--warn)}.panel-tile.is-bad .panel-tile__k em{color:var(--bad)}.panel-tile__n{font:800 32px/1 var(--font-display);letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin-top:8px;display:block}.panel-tile__bar{background:color-mix(in srgb,var(--ink) 9%,transparent);border-radius:99px;height:6px;margin-top:10px;display:block;position:relative}.panel-tile__bar:before{content:"";width:var(--w);border-radius:inherit;background:var(--accent);transform-origin:0;animation:.8s both panel-grow;position:absolute;inset:0 auto 0 0}.panel-tile.is-ok .panel-tile__bar:before{background:var(--ok-fill)}.panel-tile.is-warn .panel-tile__bar:before{background:var(--pro-a)}.panel-tile.is-bad .panel-tile__bar:before{background:var(--bad)}.panel-tile__bar:after{content:"";left:var(--min);background:var(--ink);border-radius:2px;width:2px;height:14px;position:absolute;top:-4px}.panel-tile__need{background:var(--warn-soft);color:var(--warn);border:1.5px solid color-mix(in srgb,var(--pro-a) 55%,transparent);font:800 12px var(--font-display);border-radius:8px;margin-top:12px;padding:4px 8px;display:inline-block;transform:rotate(-3deg)}.is-ok .panel-stamp{background:var(--ok-soft);border-color:var(--ok-fill);color:var(--ok)}.is-bad .panel-stamp,.panel-stamp.is-bad{background:color-mix(in srgb,var(--bad) 10%,var(--surface));border-color:color-mix(in srgb,var(--bad) 55%,transparent);color:var(--bad)}.panel-acta .panel-final .panel-stamp{min-width:48px;font-size:18px}.panel-task{padding-left:76px;position:relative}.panel-task>.panel-icon:not(.panel-task-check){display:none}.panel-task-check{background:var(--surface);border-radius:50%;width:40px;height:40px;position:absolute;top:24px;left:20px}.panel-task.is-done{opacity:.7;background:var(--ok-soft)}.panel-task.is-done h3{text-decoration:line-through}.panel-task .panel-stamp{margin-top:16px}.panel-task-group{margin-bottom:24px}.panel-task-group-head{border-bottom:1px solid var(--line);margin-bottom:10px;padding:6px 0}.panel-task-group-head h3{font:800 15px var(--font-display);margin:0}.panel-task-group-badge{border:1px solid var(--line);padding:3px 10px}.panel-task-group-badge.is-pending{background:var(--warn-soft);color:var(--warn)}.panel-task-group-badge.is-ok{background:var(--ok-soft);color:var(--ok)}.panel-sticky{border-radius:var(--r-c);background:var(--c-proa);box-shadow:var(--sh-t);border:0}.panel-sticky:nth-child(2n){background:var(--c-prob)}.panel-search-box{display:block;position:relative}.panel-search-box svg{fill:none;width:22px;height:22px;stroke:var(--accent);stroke-width:1.8px;position:absolute;top:21px;left:16px}.panel-search-box input{border-radius:18px;padding:18px 18px 18px 50px;font-size:16px}.panel-history{background:var(--grad);border-radius:24px;margin:14px 0;position:relative;overflow:hidden}.panel-history summary{cursor:pointer;grid-template-columns:1fr auto;gap:8px;min-height:44px;padding:24px;font-weight:700;list-style:none;display:grid}.panel-history summary::-webkit-details-marker{display:none}.panel-history summary:after{content:"Abrir acta ↓";color:var(--accent);text-align:right;grid-column:2;font-size:12px}.panel-history[open] summary:after{content:"Cerrar acta ↑"}.panel-history .panel-big{grid-area:1/2/3;margin:0;font-size:44px}.panel-history summary:after{grid-row:3}.panel-history>.panel-actas{margin:0;padding:0 18px 18px}.panel-semester-bar{align-items:center;gap:8px;margin-bottom:20px;padding:4px 2px 14px;display:flex;overflow-x:auto}.panel-semester-chip{border:1.5px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink-2);font:700 13px/1 var(--font);cursor:pointer;white-space:nowrap;border-radius:99px;flex:none;align-items:center;gap:8px;padding:8px 16px;transition:all .15s;display:inline-flex}.panel-semester-chip:hover{background:var(--block);color:var(--ink)}.panel-semester-chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink);box-shadow:var(--shadow)}.panel-semester-icon{fill:none;stroke:currentColor;stroke-width:2px;width:16px;height:16px}.panel-attendance-hero{margin:18px 0 24px}.panel-attendance-hero-card{background:var(--grad);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:24px;padding:22px}.panel-attendance-hero-card .panel-attendance-bar{margin:16px 0 12px}.panel-attendance-bar{background:color-mix(in srgb,var(--ink) 10%,transparent);border-radius:99px;height:9px;margin:22px 0 16px;position:relative}.panel-attendance-bar:before{content:"";width:var(--attendance);border-radius:inherit;background:var(--ok-fill);height:100%;display:block}.panel-attendance-bar:after{content:"";left:var(--minimum);background:var(--ink);width:2px;height:19px;position:absolute;top:-5px}.panel-attendance-points{flex-wrap:wrap;gap:5px;margin:12px 0;display:flex}.panel-attendance-points span{border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:grid}.is-present{background:var(--ok-soft);color:var(--ok)}.is-absent{background:color-mix(in srgb,var(--bad) 12%,var(--surface));color:var(--bad)}.panel-calendar{border-top:1px solid var(--line);margin-top:24px;padding-top:12px}.panel-calendar-head b{font:800 17px var(--font-display);text-transform:capitalize}.panel-calendar-head button{min-width:44px;margin:0;font-size:22px}.panel-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:14px 0;display:grid}.panel-calendar-weekday{font:700 11px var(--font);text-align:center;color:var(--muted);padding:8px 0}.panel-calendar-date{font-variant-numeric:tabular-nums;border-radius:10px;align-content:center;place-items:center;min-height:42px;display:grid}.panel-calendar-date small{height:14px;line-height:14px}.panel-calendar-date.is-class{background:var(--accent-soft);color:var(--accent)}.panel-calendar-date[aria-current]{outline:2px solid var(--accent);outline-offset:-2px}.panel-calendar-legend{color:var(--ink-2);font-size:12px;line-height:1.6}.panel-skin .n-h2{font:800 clamp(28px,4vw,40px)/1.06 var(--font-display);letter-spacing:-.01em}.panel-label{font:700 10.5px var(--font);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);display:block}.panel-big{font:800 clamp(40px,5vw,58px)/1 var(--font-display);letter-spacing:.03em;font-variant-numeric:tabular-nums;color:var(--ink);margin:12px 0;display:block}.panel-big small{font:600 14px var(--font);letter-spacing:0;color:var(--muted)}.panel-stamp{background:var(--warn-soft);border:1.5px solid color-mix(in srgb,var(--pro-a) 55%,transparent);max-width:100%;color:var(--warn);font:800 13px/1.4 var(--font-display);overflow-wrap:anywhere;border-radius:8px;padding:6px 10px;display:inline-block;transform:rotate(-2deg)}.schedule-live-pill,.schedule-status-badge,.panel-task-group-badge,.panel-hero__tag,.panel-slot-now-tag{font:700 11px var(--font);border-radius:99px;align-items:center;display:inline-flex}.schedule-view-toggle{background:color-mix(in srgb,var(--ink) 6%,var(--surface));border:1px solid var(--line);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.schedule-view-toggle button{font:700 12px var(--font);color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 14px}.schedule-view-toggle button.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0000001a}.schedule-active-hero{margin:0 0 16px}.schedule-hero-card{background:linear-gradient(135deg,color-mix(in srgb,var(--ok-fill) 14%,var(--surface)),color-mix(in srgb,var(--accent) 12%,var(--surface)));border:1px solid color-mix(in srgb,var(--ok-fill) 35%,transparent);border-radius:16px;padding:16px;box-shadow:0 4px 16px -8px #10b98140}.schedule-live-pill{background:var(--surface);color:var(--ok);gap:6px;padding:3px 10px}.schedule-live-dot{background:var(--ok);border-radius:50%;width:8px;height:8px}.schedule-remain-label{font:600 12px var(--font);color:var(--muted)}.schedule-hero-title{font:800 18px/1.2 var(--font-display);color:var(--ink);margin:0 0 8px}.schedule-hero-meta,.schedule-card-meta{flex-wrap:wrap;gap:8px;display:flex}.schedule-hero-meta{margin-bottom:12px}.schedule-hero-progress-track{background:color-mix(in srgb,var(--ink) 10%,transparent);border-radius:99px;height:5px;overflow:hidden}.schedule-hero-progress-fill{border-radius:inherit;background:var(--ok);height:100%;transition:width .4s}.schedule-pills{gap:6px;margin-bottom:16px;padding-bottom:8px;display:flex;overflow-x:auto}.schedule-pill{border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:center;border-radius:12px;flex-direction:column;flex:1 0 auto;align-items:center;gap:3px;min-width:85px;padding:10px 12px;transition:border-color .15s;display:flex}.schedule-pill:hover{border-color:var(--accent)}.schedule-pill.is-selected{background:color-mix(in srgb,var(--accent) 14%,var(--surface));border-color:var(--accent);color:var(--accent)}.schedule-pill.is-today:not(.is-selected){border-color:color-mix(in srgb,var(--ok) 50%,transparent);background:color-mix(in srgb,var(--ok-fill) 8%,var(--surface))}.schedule-pill-title{font:700 13px var(--font);color:var(--ink)}.schedule-pill.is-selected .schedule-pill-title{color:var(--accent)}.schedule-pill-count{font:500 11px var(--font);color:var(--muted)}.schedule-timeline{gap:12px;display:grid}.schedule-item{grid-template-columns:85px 24px 1fr;align-items:stretch;gap:12px;display:grid}.schedule-item-time{text-align:right;font-variant-numeric:tabular-nums;flex-direction:column;justify-content:center;display:flex}.schedule-time-start{font:800 14px var(--font-display);color:var(--ink)}.schedule-time-end{font:500 12px var(--font);color:var(--muted)}.schedule-item-spine{flex-direction:column;align-items:center;display:flex;position:relative}.schedule-item-spine:before{content:"";background:var(--line);width:2px;position:absolute;top:0;bottom:0}.schedule-node{z-index:1;background:var(--surface);border:2px solid var(--line);border-radius:50%;width:12px;height:12px;margin-top:16px;position:relative}.schedule-item.is-now .schedule-node{border-color:var(--ok);background:var(--ok);box-shadow:0 0 0 4px color-mix(in srgb,var(--ok) 25%,transparent)}.schedule-item.is-upcoming .schedule-node{border-color:var(--accent);background:var(--accent)}.schedule-item.is-past .schedule-node{border-color:var(--muted);background:var(--muted)}.schedule-item-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;gap:8px;padding:14px 16px;transition:border-color .15s;display:flex}.schedule-item-card:hover{border-color:var(--accent)}.schedule-item.is-now .schedule-item-card{border-color:color-mix(in srgb,var(--ok) 40%,transparent);background:color-mix(in srgb,var(--ok-fill) 8%,var(--surface))}.schedule-subject-name{font:800 15px/1.2 var(--font-display);color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.schedule-subject-name:hover{color:var(--accent);text-decoration:underline}.schedule-status-badge{padding:2px 8px}.schedule-status-badge.is-now{background:color-mix(in srgb,var(--ok) 15%,var(--surface));color:var(--ok)}.schedule-status-badge.is-next{background:color-mix(in srgb,var(--accent) 15%,var(--surface));color:var(--accent)}.schedule-status-badge.is-past{background:color-mix(in srgb,var(--ink) 6%,var(--surface));color:var(--muted)}.schedule-meta-chip{font:500 12px var(--font);color:var(--muted);background:color-mix(in srgb,var(--ink) 4%,var(--surface));border-radius:6px;align-items:center;gap:5px;padding:3px 8px;display:inline-flex}.schedule-mini-icon{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:13px;height:13px}.schedule-timeline-empty{text-align:center;border:1px dashed var(--line);color:var(--muted);border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:32px 16px;display:flex}.schedule-timeline-empty svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:32px;height:32px}.schedule-timeline-empty h3{font:700 15px var(--font-display);color:var(--ink);margin:0}.schedule-timeline-empty p{margin:0;font-size:13px}.detail{border:0;border-left:1px solid var(--line);background:var(--bg);width:min(620px,100%);max-width:100%;height:100dvh;max-height:100dvh;color:var(--ink);margin:0;padding:20px;position:fixed;inset:0 0 0 auto;overflow-y:auto}.detail::backdrop{background:color-mix(in srgb,var(--ink) 40%,transparent)}.panel-detail-head h2{overflow-wrap:anywhere;font:800 22px var(--font-display);margin:0}.panel-btn-close{cursor:pointer;font:700 13px var(--font);border-radius:8px;padding:6px 12px}.panel-webedit-wait{color:var(--accent);align-self:center;margin:0;font-weight:700}.panel-detail-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:20px;padding-top:14px;display:flex}.panel-closed-badge{background:color-mix(in srgb,var(--ok-fill) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--ok-fill) 35%,transparent);border-radius:14px;margin:16px 0;padding:14px 16px}.panel-needs-head{margin-top:18px}.panel-needs-head h3{margin:0}.panel-vary-btn{padding:5px 12px;font-size:12px}.panel-calc-btn{margin:10px 0}.c-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.c-row{border-radius:var(--r-c);overflow-wrap:anywhere;background:var(--c-acc);box-shadow:var(--sh-t);flex-direction:column;align-items:start;gap:6px;padding:12px 14px;display:flex}.c-row:nth-child(4n+2){background:var(--c-ok)}.c-row:nth-child(4n+3){background:var(--c-proa)}.c-row:nth-child(4n){background:var(--c-prob);transform:rotate(.5deg)}.c-row input{min-width:0;max-width:100%;font:800 24px var(--font-display);padding:6px 8px}.c-row strong{font:700 15px/1.3 var(--font-display)}.c-row small{color:var(--ink-2);font-size:12px}input[aria-invalid=true]{border-color:var(--bad);color:var(--bad)}.detail .n-btn{box-shadow:0 3px 0 var(--line-hi);margin:8px 0}#simulationResult{z-index:2;background:var(--bg);border-bottom:1px solid var(--line);min-height:56px;font-family:var(--font-display);padding:10px 0;font-weight:800;position:sticky;top:-16px}.panel-detail-summary{background:var(--grad);box-shadow:var(--shadow);border-radius:20px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin:14px 0;padding:16px;display:grid}.panel-evaluated{background:conic-gradient(var(--ok-fill) var(--evaluated),var(--surface) 0);border-radius:50%;place-items:center;width:76px;height:76px;display:grid}.panel-evaluated>span{background:var(--surface);border-radius:50%;align-content:center;place-items:center;width:60px;height:60px;display:grid}.panel-evaluated b{font:800 15px var(--font-display)}.panel-evaluated small{color:var(--muted);font-size:10px}.panel-note{font:800 32px/1 var(--font-display);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.panel-period{font:800 18px var(--font-display);letter-spacing:-.01em;margin:20px 0 10px}.qn{background:var(--surface);border:1px solid var(--line);border-radius:16px;margin:14px 0;padding:14px}.qn__row{border-top:1px dashed var(--line);grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 0;display:grid}.qn__val{background:var(--warn-soft);color:var(--warn);font:800 13px var(--font-display);border-radius:8px;padding:4px 8px;transform:rotate(-2deg)}.qn__val--max{background:var(--accent-soft);color:var(--accent);grid-column:2}.panel-chart-tip{z-index:40;pointer-events:none;background:var(--ink);max-width:250px;color:var(--bg);font:13px/1.4 var(--font);box-shadow:var(--shadow);border-radius:10px;padding:8px 10px;position:fixed}.panel-chart-tip[hidden]{display:none}.panel-nav a:focus-visible,.panel-semester-chip:focus-visible,.detail button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}#vPanel>.n-wrap{max-width:1440px}@media (width>=761px){.panel-hero__n{font-size:clamp(56px,6vw,84px)}.panel-hero{padding:28px 30px}.panel-hero__ring{width:132px;height:132px}.panel-hero__ring b{width:104px;height:104px;font-size:26px}}.panel-section{scroll-margin-top:140px}.panel-urgent{gap:8px;margin:14px 0 8px;display:grid}.panel-urgent-row{background:var(--surface);border:1px solid var(--line);border-radius:14px;grid-template-columns:12px minmax(140px,260px) minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 18px;display:grid}.panel-urgent-row>i{background:var(--pro-a);border-radius:50%;width:12px;height:12px}.panel-urgent-row.is-bad{border-color:color-mix(in srgb,var(--bad) 45%,var(--line))}.panel-urgent-row.is-bad>i{background:var(--bad)}.panel-urgent-row.is-ok>i{background:var(--ok-fill)}.panel-urgent-row b{font:800 16px/1.25 var(--font-display)}.panel-urgent-row span{color:var(--ink-2);font-size:15px;line-height:1.45}.panel-urgent-today{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.panel-urgent-mini{background:var(--grad);border-radius:14px;padding:14px 18px}.panel-urgent-mini p{white-space:pre-line;margin:6px 0 0;font-size:15px;line-height:1.45}.camino{border-radius:24px;margin:22px 0 8px;padding:26px;overflow:hidden}.camino-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.camino-head p{margin:6px 0 0}.camino-setup{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.camino-setup small{flex-basis:100%;font-size:12px}.camino-select{font:600 12px var(--font);color:var(--muted);gap:4px;display:grid}.camino-select select{min-height:40px;padding:6px 10px}.camino-body{grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:24px;margin-top:18px;display:grid}.camino-chart{min-width:0;overflow-x:auto}.camino-svg{max-width:none;font-family:var(--font);display:block;overflow:visible}.camino-eje{font:600 13px var(--font);fill:var(--muted)}.camino-eje.is-actual{fill:var(--accent);font-weight:800}.camino-punto,.camino-meta{cursor:pointer}.camino-punto:hover circle:nth-child(2),.camino-punto:focus circle:nth-child(2){r:11}.camino-flag{transform-box:fill-box;transform-origin:0;animation:1.8s ease-in-out infinite camino-ondea}.camino-chart.is-paused *{animation-play-state:paused!important}@keyframes camino-ondea{50%{transform:scaleX(.8)skewY(5deg)}}.camino-big b{font:800 68px/1 var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:4px;display:block}.camino-big small{font:700 22px var(--font);color:var(--muted)}.camino-progress{background:color-mix(in srgb,var(--ink) 9%,transparent);border-radius:99px;height:10px;margin:14px 0 6px;display:block;position:relative;overflow:hidden}.camino-progress:before{content:"";width:var(--p);border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--ok-fill));position:absolute;inset:0 auto 0 0}.camino-datos{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0;display:grid}.camino-dato{background:var(--block);border-radius:14px;padding:12px 14px}.camino-dato:last-child:nth-child(odd){grid-column:1/-1}.camino-dato b{font:800 22px/1.15 var(--font-display);margin-top:4px;display:block}.camino-msg{background:var(--ok-soft);font:700 15px/1.45 var(--font);color:var(--ink);border-radius:14px;margin:0;padding:12px 14px}@media (width<=1000px){.camino-body{grid-template-columns:1fr}}@keyframes panel-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes panel-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (width<=1100px){.panel-approved-charts{grid-template-columns:1fr}}@media (width<=760px){.camino{padding:18px}.camino-big b{font-size:52px}.panel-urgent-row{grid-template-columns:12px minmax(0,1fr) auto;gap:6px 12px}.panel-urgent-row span{grid-column:2/-1}.panel-urgent-today{grid-template-columns:1fr}.panel-layout{display:block}.panel-nav{z-index:15;box-shadow:var(--shadow);padding:6px;padding-bottom:max(6px,env(safe-area-inset-bottom));background:var(--surface);border-radius:18px 18px 0 0;gap:2px;display:flex;position:fixed;inset:auto 0 0;overflow-x:auto}.panel-nav a{flex-direction:column;flex:1 0 44px;gap:0;padding:4px;font-size:10px}.panel-main{padding-bottom:85px}.panel-grid,.panel-hero-wrap{grid-template-columns:1fr}.panel-table{font-size:12px}.panel-table th,.panel-table td{padding:9px 6px}.panel-acta tr>:first-child{width:135px;min-width:135px;max-width:135px}.panel-acta .panel-subject-button{font-size:12px}.panel-approved-chart svg{min-width:520px}.panel-chart-mobile-hint{color:var(--muted);font-size:12px;display:block}.panel-hero__stats{grid-template-columns:repeat(3,minmax(0,1fr))}.panel-hero__stat{grid-template-columns:1fr;padding:10px}.panel-hero__stat b{grid-row:auto;font-size:22px}.panel-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px}.panel-tile{min-height:132px;padding:12px}.panel-tile__need{margin-top:10px;display:inline-block;position:static}.panel-card,.panel-history summary,.panel-attendance-hero-card,.panel-hero{padding:18px}.panel-task{padding-left:70px}.detail,.detail .panel-detail-summary{padding:16px}.detail .panel-big{font-size:42px}}@media (prefers-reduced-motion:reduce){.detail *,#vPanel *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.gate-section[data-astro-cid-brmdfpyo]{background:radial-gradient(ellipse at 50% 0%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 60%);padding:56px 0;position:relative;overflow:hidden}.gate__blob[data-astro-cid-brmdfpyo]{filter:blur(80px);opacity:.45;pointer-events:none;background:color-mix(in srgb, var(--accent) 20%, transparent);border-radius:50%;width:340px;height:340px;position:absolute;top:-20px;right:12%}.n-icon-tile--blue[data-astro-cid-brmdfpyo]{background:color-mix(in srgb, var(--accent) 14%, var(--surface));color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);border-radius:16px}.p-head[data-astro-cid-brmdfpyo]{align-items:center;gap:16px;display:flex}.p-head[data-astro-cid-brmdfpyo] img[data-astro-cid-brmdfpyo]{object-fit:cover;background:var(--block);border-radius:14px;width:48px;height:48px}
