.page-module__DYK3CW__loginPage{background-color:var(--cektos-bg);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.page-module__DYK3CW__loginCard{background-color:var(--cektos-surface-2);border:1px solid var(--cektos-border);border-radius:16px;flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:360px;padding:2.5rem 2rem;display:flex;box-shadow:0 1px 3px #2c25200f,0 8px 24px #2c252014}.page-module__DYK3CW__backLink{color:var(--cektos-text-dim);align-self:flex-start;align-items:center;gap:6px;margin-bottom:1rem;font-size:.8rem;text-decoration:none;transition:color .15s;display:flex}.page-module__DYK3CW__backLink:hover{color:var(--cektos-text)}.page-module__DYK3CW__loginTitle{color:var(--cektos-text);letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.5rem;font-weight:600}.page-module__DYK3CW__loginSubtitle{color:var(--cektos-text-dim);text-align:center;margin:0 0 .75rem;font-size:.85rem}.page-module__DYK3CW__loginHint{color:var(--cektos-text-muted);text-align:center;margin:.5rem 0 0;font-size:.75rem}.page-module__DYK3CW__pinInput{letter-spacing:.3em;text-align:center;background-color:var(--cektos-bg);border:1.5px solid var(--cektos-border);width:100%;color:var(--cektos-text);border-radius:10px;outline:none;padding:.875rem 1rem;font-family:SF Mono,Roboto Mono,Menlo,monospace;font-size:1.5rem;transition:border-color .15s,box-shadow .15s}.page-module__DYK3CW__pinInput:focus{border-color:var(--cektos-text-dim);box-shadow:0 0 0 3px #8a7a6a1f}.page-module__DYK3CW__pinError{color:#b85c5c;margin:0;font-size:.8rem}.page-module__DYK3CW__loginBtn{background-color:var(--cektos-text);width:100%;color:var(--cektos-bg);cursor:pointer;border:none;border-radius:10px;padding:.75rem 1rem;font-size:.95rem;font-weight:500;transition:background-color .15s,transform 50ms}.page-module__DYK3CW__loginBtn:hover{background-color:#3d342d}.page-module__DYK3CW__loginBtn:active{transform:scale(.98)}.page-module__DYK3CW__page{background-color:var(--cektos-bg);min-height:100vh;color:var(--cektos-text)}.page-module__DYK3CW__header{border-bottom:1px solid var(--cektos-border);justify-content:space-between;align-items:flex-start;gap:1rem;max-width:1100px;margin:0 auto;padding:2rem 1.5rem 1.5rem;display:flex}.page-module__DYK3CW__title{letter-spacing:-.02em;margin:.5rem 0 .25rem;font-size:1.75rem;font-weight:600}.page-module__DYK3CW__subtitle{color:var(--cektos-text-dim);margin:0;font-size:.9rem}.page-module__DYK3CW__logoutBtn{color:var(--cektos-text-dim);border:1px solid var(--cektos-border);cursor:pointer;background-color:#0000;border-radius:8px;flex-shrink:0;padding:.5rem 1rem;font-size:.85rem;transition:all .15s}.page-module__DYK3CW__logoutBtn:hover{background-color:var(--cektos-surface-2);color:var(--cektos-text)}.page-module__DYK3CW__main{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem}.page-module__DYK3CW__section{margin-bottom:3rem}.page-module__DYK3CW__sectionTitle{color:var(--cektos-text-dim);text-transform:uppercase;letter-spacing:.08em;margin:0 0 1rem;font-size:.78rem;font-weight:600}.page-module__DYK3CW__grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.page-module__DYK3CW__card{background-color:var(--cektos-surface-2);border:1px solid var(--cektos-border);color:var(--cektos-text);border-radius:14px;flex-direction:column;gap:.5rem;padding:1.5rem;text-decoration:none;transition:transform .25s,box-shadow .25s,border-color .25s,background-color .25s;display:flex;position:relative;overflow:hidden}.page-module__DYK3CW__card:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(110deg,#0000 0%,#5a4f4814 50%,#0000 100%);width:60%;height:100%;transition:left .7s;position:absolute;top:0;left:-100%}.page-module__DYK3CW__card:hover:before{left:130%}.page-module__DYK3CW__card:hover{border-color:var(--cektos-accent);background-color:var(--cektos-card-hover);box-shadow:var(--cektos-shadow-lg);transform:translateY(-3px)}.page-module__DYK3CW__card>*{z-index:2;position:relative}.page-module__DYK3CW__cardDate{color:var(--cektos-text-dim);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:600}.page-module__DYK3CW__cardTitle{margin:0;font-size:1.05rem;font-weight:600;line-height:1.3}.page-module__DYK3CW__cardSubtitle{color:#5a4f44;font-size:.85rem;line-height:1.4}.page-module__DYK3CW__cardCases{color:var(--cektos-text-dim);font-size:.8rem;font-style:italic}.page-module__DYK3CW__cardArrow{color:var(--cektos-text);align-items:center;gap:4px;margin-top:.5rem;font-size:.8rem;font-weight:500;display:flex}.page-module__DYK3CW__bodyText{color:var(--cektos-text);max-width:65ch;margin:0 0 .75rem;font-size:.95rem;line-height:1.6}.page-module__DYK3CW__bodyTextMuted{color:var(--cektos-text-dim);max-width:65ch;margin:0;font-size:.85rem;line-height:1.6}@media (max-width:640px){.page-module__DYK3CW__header{flex-direction:column;align-items:stretch}.page-module__DYK3CW__logoutBtn{align-self:flex-start}}.page-module__DYK3CW__timeline{background:var(--cektos-surface-2);border:1px solid var(--cektos-border);z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:18px;margin-bottom:36px;padding:28px;position:sticky;top:12px}.page-module__DYK3CW__timeline:has(.page-module__DYK3CW__calFoldable[open]){position:static}.page-module__DYK3CW__timelineHead{border-bottom:1px solid var(--cektos-border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;padding-bottom:16px;display:flex}.page-module__DYK3CW__timelineTitle{color:var(--cektos-text);letter-spacing:-.01em;margin:0 0 4px;font-size:1.15rem;font-weight:600}.page-module__DYK3CW__timelineSubtitle{color:var(--cektos-text-dim);margin:0;font-size:.85rem}.page-module__DYK3CW__timelineStats{flex-wrap:wrap;gap:18px;display:flex}.page-module__DYK3CW__timelineStat{text-align:right}.page-module__DYK3CW__timelineStatValue{color:var(--cektos-text);letter-spacing:-.02em;font-size:1.4rem;font-weight:600;line-height:1}.page-module__DYK3CW__timelineStatLabel{text-transform:uppercase;letter-spacing:.06em;color:var(--cektos-text-dim);margin-top:3px;font-size:.7rem}.page-module__DYK3CW__progressStrip{align-items:flex-end;gap:28px;padding:14px 8px 36px;display:flex;position:relative;overflow-x:auto}.page-module__DYK3CW__progressStrip:before{content:"";background:var(--cektos-border);pointer-events:none;z-index:0;height:1px;position:absolute;bottom:41px;left:8px;right:8px}.page-module__DYK3CW__progressMonthGroup{flex-direction:column;flex-shrink:0;align-items:flex-start;min-width:0;display:flex}.page-module__DYK3CW__progressMonthLabel{color:var(--cektos-text);opacity:.16;text-transform:lowercase;letter-spacing:.01em;white-space:nowrap;pointer-events:none;margin-bottom:10px;padding-left:2px;font-family:inherit;font-size:1.05rem;font-weight:700;line-height:1;display:block}.page-module__DYK3CW__progressMonthDots{z-index:1;align-items:center;gap:10px;display:flex;position:relative}.page-module__DYK3CW__progressDot{background:var(--cektos-accent);cursor:pointer;opacity:.85;border:none;border-radius:50%;flex-shrink:0;width:9px;height:9px;padding:0;transition:transform .12s,opacity .12s,box-shadow .12s;position:relative}.page-module__DYK3CW__progressDot:hover{opacity:1;transform:scale(1.6)}.page-module__DYK3CW__progressDot.page-module__DYK3CW__past{opacity:.35}.page-module__DYK3CW__progressDot.page-module__DYK3CW__hasDashboard{box-shadow:0 0 0 1.5px var(--cektos-bg), 0 0 0 3px var(--cektos-accent)}.page-module__DYK3CW__progressDot:after{content:attr(data-day);color:var(--cektos-text-muted);letter-spacing:.02em;pointer-events:none;opacity:.85;font-size:.6rem;font-weight:600;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.page-module__DYK3CW__progressDot.page-module__DYK3CW__today{background:var(--cektos-text);opacity:1;width:14px;height:14px;box-shadow:0 0 0 2px var(--cektos-bg), 0 0 0 4px #2c252040}.page-module__DYK3CW__progressDot.page-module__DYK3CW__lastEvent{background:var(--cektos-text);opacity:1;width:12px;height:12px;box-shadow:0 0 0 1.5px var(--cektos-bg), 0 0 0 3px var(--cektos-text)}.page-module__DYK3CW__progressDot.page-module__DYK3CW__nextEvent{opacity:1;border:1.5px dashed var(--cektos-text);background:0 0;width:12px;height:12px}.page-module__DYK3CW__progressDot.page-module__DYK3CW__eksamen{opacity:1;background:#ca8a04;border-radius:3px;width:12px;height:12px}.page-module__DYK3CW__progressDot.page-module__DYK3CW__hovered{opacity:1;box-shadow:0 0 0 2px var(--cektos-bg), 0 0 0 4px var(--cektos-accent), 0 4px 12px #2c252033;z-index:5;transform:scale(1.8)}.page-module__DYK3CW__calGridWrap{grid-template-columns:repeat(3,1fr);gap:18px 20px;max-height:min(58vh,440px);margin-top:4px;padding-right:4px;display:grid;overflow-y:auto}@media (max-width:900px){.page-module__DYK3CW__calGridWrap{grid-template-columns:repeat(2,1fr)}}@media (max-width:540px){.page-module__DYK3CW__calGridWrap{grid-template-columns:1fr}}.page-module__DYK3CW__calMonth{padding:4px}.page-module__DYK3CW__calMonthTitle{text-transform:uppercase;letter-spacing:.08em;color:var(--cektos-text);margin-bottom:6px;font-size:.74rem;font-weight:700}.page-module__DYK3CW__calWeekrow,.page-module__DYK3CW__calGrid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.page-module__DYK3CW__calWd{text-align:center;color:var(--cektos-text-muted);letter-spacing:.04em;padding:2px 0;font-size:.58rem;font-weight:600}.page-module__DYK3CW__calCell{aspect-ratio:1;color:#c2bcb1;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.7rem;display:flex}.page-module__DYK3CW__calBlank{visibility:hidden}.page-module__DYK3CW__calEmpty{color:#c2bcb1}.page-module__DYK3CW__calEvent{cursor:pointer;color:var(--cektos-text);background:var(--cektos-bg);border:1px solid var(--cektos-border);font-weight:600;transition:transform .1s,background .1s,border-color .1s;position:relative}.page-module__DYK3CW__calEvent:hover{background:var(--cektos-border);transform:translateY(-1px)}.page-module__DYK3CW__calEvent:after{content:"";background:#c2bcb1;border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.page-module__DYK3CW__calEvent.page-module__DYK3CW__typeMetodetraening:after{background:var(--cektos-text)}.page-module__DYK3CW__calEvent.page-module__DYK3CW__typeSupervision:after{background:var(--cektos-text-dim)}.page-module__DYK3CW__calEvent.page-module__DYK3CW__typeIntro:after{background:var(--cektos-text-muted)}.page-module__DYK3CW__calEvent.page-module__DYK3CW__typeEksamen:after{background:#ca8a04}.page-module__DYK3CW__calEvent.page-module__DYK3CW__typeAndet:after{background:#d9d2c8}.page-module__DYK3CW__calEvent.page-module__DYK3CW__hasDashboard{border-color:var(--cektos-accent);background:#fdf8f0;box-shadow:inset 0 0 0 1px #5a4f4826}.page-module__DYK3CW__calEvent.page-module__DYK3CW__isToday{background:var(--cektos-accent);color:var(--cektos-bg);border-color:var(--cektos-accent);font-weight:700}.page-module__DYK3CW__calEvent.page-module__DYK3CW__isToday:after{background:var(--cektos-bg)}.page-module__DYK3CW__calEvent.page-module__DYK3CW__isEksamen{border-style:dashed}.page-module__DYK3CW__calLegend{border-top:1px solid var(--cektos-border);color:var(--cektos-text-dim);flex-wrap:wrap;gap:14px;margin-top:18px;padding:16px 0 0;font-size:.72rem;display:flex}.page-module__DYK3CW__calLegend span{align-items:center;gap:6px;display:inline-flex}.page-module__DYK3CW__calDot{border-radius:50%;width:8px;height:8px;display:inline-block}.page-module__DYK3CW__calDot.page-module__DYK3CW__typeMetodetraening{background:var(--cektos-text)}.page-module__DYK3CW__calDot.page-module__DYK3CW__typeSupervision{background:var(--cektos-text-dim)}.page-module__DYK3CW__calDot.page-module__DYK3CW__typeIntro{background:var(--cektos-text-muted)}.page-module__DYK3CW__calDot.page-module__DYK3CW__typeEksamen{background:#ca8a04}.page-module__DYK3CW__calPopoverBackdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;background:#2c252066;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.page-module__DYK3CW__calPopover{background:var(--cektos-bg);border:1px solid var(--cektos-border);border-radius:14px;width:min(400px,100%);padding:22px;position:relative;box-shadow:0 12px 36px #2c25202e}.page-module__DYK3CW__calPopClose{background:var(--cektos-surface-2);border:1px solid var(--cektos-border);color:var(--cektos-text);cursor:pointer;z-index:10;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:1.4rem;line-height:1;display:flex;position:absolute;top:12px;right:12px}.page-module__DYK3CW__calPopClose:hover{border-color:var(--cektos-accent);background:#5a4f4814;background:var(--cektos-border);color:var(--cektos-text)}.page-module__DYK3CW__calPopType{text-transform:uppercase;letter-spacing:.08em;color:var(--cektos-text-muted);margin-bottom:4px;font-size:.66rem;font-weight:600}.page-module__DYK3CW__calPopDate{color:var(--cektos-text-dim);margin-bottom:6px;font-size:.84rem}.page-module__DYK3CW__calPopEmne{color:var(--cektos-text);margin-bottom:8px;font-size:1.08rem;font-weight:600;line-height:1.3}.page-module__DYK3CW__calPopTeacher{color:var(--cektos-text-dim);margin-bottom:16px;font-size:.85rem}.page-module__DYK3CW__calPopEmpty{background:var(--cektos-surface-2);color:var(--cektos-text-dim);border-radius:8px;padding:12px 14px;font-size:.84rem}.page-module__DYK3CW__calPopDashboards{gap:8px;display:grid}.page-module__DYK3CW__calPopLink{background:var(--cektos-surface-2);border:1px solid var(--cektos-border);color:var(--cektos-text);border-radius:10px;grid-template-columns:1fr auto;gap:2px 12px;padding:12px 14px;text-decoration:none;transition:background .12s,border-color .12s;display:grid}.page-module__DYK3CW__calPopLink:hover{background:var(--cektos-border);border-color:var(--cektos-accent)}.page-module__DYK3CW__calPopLinkTitle{font-size:.9rem;font-weight:600}.page-module__DYK3CW__calPopLinkSub{color:var(--cektos-text-dim);grid-column:1;font-size:.76rem}.page-module__DYK3CW__calPopLinkArrow{color:var(--cektos-accent);grid-area:1/2/3;align-self:center;font-size:1.1rem}.page-module__DYK3CW__sectionSub{color:var(--cektos-text-dim);margin:0 0 16px;font-size:.82rem}.page-module__DYK3CW__timelinePulse{grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 8px;display:grid}@media (max-width:540px){.page-module__DYK3CW__timelinePulse{grid-template-columns:1fr}}.page-module__DYK3CW__pulseItem{flex-direction:column;gap:4px;display:flex}.page-module__DYK3CW__pulseLabel{letter-spacing:.08em;text-transform:uppercase;color:var(--cektos-text-muted);padding-left:2px;font-size:.62rem;font-weight:600}.page-module__DYK3CW__pulseValue{background:var(--cektos-bg);border:1px solid var(--cektos-border);border-left:3px solid var(--cektos-accent);cursor:pointer;text-align:left;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:baseline;gap:12px;padding:10px 14px;font-family:inherit;transition:background .12s,border-color .12s;display:grid}.page-module__DYK3CW__pulseValue:hover{background:var(--cektos-border)}.page-module__DYK3CW__pulseDate{color:var(--cektos-text);letter-spacing:-.01em;white-space:nowrap;font-size:.92rem;font-weight:700}.page-module__DYK3CW__pulseEmne{color:var(--cektos-text);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:500;overflow:hidden}.page-module__DYK3CW__pulseAgo{color:var(--cektos-text-dim);white-space:nowrap;font-size:.74rem}.page-module__DYK3CW__calFoldable{border:1px solid var(--cektos-border);background:var(--cektos-bg);border-radius:12px;margin-top:16px;transition:border-color .15s,background .15s}.page-module__DYK3CW__calFoldableSummary{cursor:pointer;color:var(--cektos-text);-webkit-user-select:none;user-select:none;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;font-size:.88rem;font-weight:600;list-style:none;display:flex}.page-module__DYK3CW__calFoldableSummary::-webkit-details-marker{display:none}.page-module__DYK3CW__calFoldableSummary:before{content:"▶";color:var(--cektos-text-dim);margin-right:6px;font-size:.65rem;transition:transform .18s;display:inline-block}.page-module__DYK3CW__calFoldable[open]>.page-module__DYK3CW__calFoldableSummary:before{transform:rotate(90deg)}.page-module__DYK3CW__calFoldable[open]{background:var(--cektos-surface-2);border-color:#d9d2c8}.page-module__DYK3CW__calFoldableHint{color:var(--cektos-text-dim);margin-left:auto;font-size:.74rem;font-weight:400}.page-module__DYK3CW__calPopoverLarge{background:var(--cektos-bg);border:1px solid var(--cektos-border);border-radius:18px;flex-direction:column;width:min(480px,100%);max-height:88vh;padding:0;animation:.18s ease-out page-module__DYK3CW__scaleIn;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 48px #2c252033}.page-module__DYK3CW__calPopHeader{background:linear-gradient(135deg, var(--cektos-surface-2) 0%, var(--cektos-border) 100%);border-bottom:1px solid #d9d2c8;align-items:flex-start;gap:18px;padding:24px 28px 20px;display:flex;position:relative}.page-module__DYK3CW__calPopHeader:before{content:"";background:var(--cektos-accent);width:4px;position:absolute;top:0;bottom:0;left:0}.page-module__DYK3CW__calPopHeader.page-module__DYK3CW__typeMetodetraening:before{background:var(--cektos-text)}.page-module__DYK3CW__calPopHeader.page-module__DYK3CW__typeSupervision:before{background:var(--cektos-text-dim)}.page-module__DYK3CW__calPopHeader.page-module__DYK3CW__typeIntro:before{background:var(--cektos-text-muted)}.page-module__DYK3CW__calPopHeader.page-module__DYK3CW__typeEksamen:before{background:#ca8a04}.page-module__DYK3CW__calPopHeader.page-module__DYK3CW__typeAndet:before{background:#d9d2c8}.page-module__DYK3CW__calPopEmoji{filter:drop-shadow(0 1px 2px #2c25201a);flex-shrink:0;margin-top:2px;font-size:2.4rem;line-height:1}.page-module__DYK3CW__calPopHeaderText{flex-direction:column;flex:1;gap:3px;display:flex}.page-module__DYK3CW__calPopBadgeToday,.page-module__DYK3CW__calPopBadgePast,.page-module__DYK3CW__calPopBadgeFuture{text-transform:uppercase;letter-spacing:.06em;border-radius:4px;align-self:flex-start;margin-top:6px;padding:3px 8px;font-size:.66rem;font-weight:700;display:inline-block}.page-module__DYK3CW__calPopBadgeToday{background:var(--cektos-accent);color:var(--cektos-bg)}.page-module__DYK3CW__calPopBadgePast{color:var(--cektos-text-dim);background:#8a7a6a26}.page-module__DYK3CW__calPopBadgeFuture{color:var(--cektos-text);background:#2c252014}.page-module__DYK3CW__calPopBody{padding:20px 28px 24px;overflow-y:auto}.page-module__DYK3CW__calPopEmne{color:var(--cektos-text);letter-spacing:-.01em;margin-bottom:6px;font-size:1.15rem;font-weight:700;line-height:1.3}.page-module__DYK3CW__calPopBody .page-module__DYK3CW__calPopTeacher{color:var(--cektos-text-dim);margin-bottom:18px;font-size:.88rem}.page-module__DYK3CW__calPopSummary{background:var(--cektos-surface-2);border-left:3px solid var(--cektos-accent);border-radius:0 10px 10px 0;margin:16px 0 20px;padding:16px 18px}.page-module__DYK3CW__calPopSummaryLabel{text-transform:uppercase;letter-spacing:.08em;color:var(--cektos-accent);margin-bottom:10px;font-size:.68rem;font-weight:700}.page-module__DYK3CW__calPopSummaryList{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.page-module__DYK3CW__calPopSummaryList li{color:var(--cektos-text);padding-left:18px;font-size:.92rem;line-height:1.5;position:relative}.page-module__DYK3CW__calPopSummaryList li:before{content:"·";color:var(--cektos-accent);font-size:1.3rem;font-weight:700;position:absolute;top:-2px;left:4px}.page-module__DYK3CW__calPopBody .page-module__DYK3CW__calPopDashboards{margin-top:8px}.page-module__DYK3CW__headerActions{flex-shrink:0;align-items:center;gap:8px;display:flex}.page-module__DYK3CW__themeToggle{border:1px solid var(--cektos-border);color:var(--cektos-text);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;padding:0;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.page-module__DYK3CW__themeToggle:hover{background:var(--cektos-surface-2);border-color:var(--cektos-accent)}
