@font-face{font-family:Pretendard;src:url('planner/fonts/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
body:not(.integrated):not(.integration-failed)>.app-shell{visibility:hidden}#startupMessage{padding:48px 28px;font:16px Pretendard,sans-serif;color:#526580}.integrated>#startupMessage{display:none}
:root{--accent:#315cce;--line:#e1e6ee;--ink:#18263b;--muted:#707c8f;--paper:#f4f6fa}
body.integrated{margin:0;background:var(--paper);color:var(--ink);font-family:Pretendard,'Malgun Gothic',sans-serif}
.integrated button,.integrated input,.integrated select,.integrated textarea{font:inherit}.integrated [hidden]{display:none!important}.integrated button{cursor:pointer}.integrated button:focus-visible,.integrated a:focus-visible,.integrated input:focus-visible{outline:3px solid #7e9be9;outline-offset:3px}
#integratedApp{display:flex;min-height:100dvh}#unifiedSidebar{box-sizing:border-box;width:216px;flex-shrink:0;height:100dvh;position:sticky;top:0;overflow-y:auto;background:#fff;border-right:1px solid var(--line);padding:24px 14px 18px;display:flex;flex-direction:column;z-index:30}
.unified-brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;padding:0 9px;font-size:24px;font-weight:760;letter-spacing:-1px}.unified-brand small{display:block;font-size:10px;font-weight:450;color:var(--muted);letter-spacing:0;margin-top:3px}.unified-logo{display:grid;place-items:center;background:var(--accent);color:#fff;border-radius:12px;width:38px;height:38px;flex-shrink:0;font-size:29px}
#sidebarToggle{margin:22px 0 8px;display:flex;align-items:center;gap:12px;background:transparent;border:0;color:var(--muted);font-size:12px;min-height:36px;padding:8px 12px}#unifiedNav{display:flex;flex-direction:column;gap:4px}.nav-group{font-size:10px;font-weight:650;color:#9aa4b3;letter-spacing:.8px;margin:16px 12px 5px}#unifiedNav button{display:flex;align-items:center;gap:12px;border:0;border-radius:9px;background:transparent;color:#66738a;padding:11px 12px;text-align:left;min-height:44px;font-size:13px;font-weight:550}#unifiedNav button:hover{background:#f1f4f9}#unifiedNav button.selected{background:#eaf0fe;color:var(--accent);font-weight:730}.nav-icon{font-size:20px;width:22px;text-align:center;line-height:1}.sidebar-foot{font-size:12px;line-height:1.8;margin:28px 12px 0;color:#68768d}.sidebar-foot span{color:#9aa4b3;font-size:11px}
#integratedApp[data-collapsed=true] #unifiedSidebar{width:72px;padding-inline:9px}#integratedApp[data-collapsed=true] #unifiedSidebar .nav-label,#integratedApp[data-collapsed=true] .nav-group{display:none}#integratedApp[data-collapsed=true] .unified-brand{padding:0 7px}#integratedApp[data-collapsed=true] #unifiedNav{gap:7px}#integratedApp[data-collapsed=true] #sidebarToggle{justify-content:center;font-size:20px}#integratedApp[data-collapsed=true] #unifiedNav button{justify-content:center;padding-inline:6px}
#unifiedMain{min-width:0;flex:1}.unified-topbar{height:72px;box-sizing:border-box;padding:0 34px;border-bottom:1px solid var(--line);background:#ffffffc9;display:flex;align-items:center;gap:14px}.unified-top-actions{margin-left:auto;display:flex;gap:8px}.unified-topbar button{background:#fff;border:1px solid var(--line);border-radius:8px;min-height:40px;padding:8px 14px;font-size:12px;color:#586a84}#unifiedTitle{font-size:14px;font-weight:650}#mobileMenuToggle{display:none}.unified-content{padding:38px;max-width:1440px;margin:0 auto}.unified-eyebrow{font-size:12px;color:var(--accent);font-weight:650;letter-spacing:.5px}.today-greeting h1{font-size:clamp(30px,3vw,42px);font-weight:740;letter-spacing:-1.5px;line-height:1.25;margin:14px 0}.today-greeting>p:last-child{color:var(--muted);font-size:14px;margin-bottom:28px}
.study-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.study-action{border:1px solid var(--line);border-radius:17px;background:#fff;text-align:left;padding:25px;min-width:0;color:var(--ink);box-shadow:0 3px 12px #21365b03}.study-action:hover{transform:translateY(-2px);box-shadow:0 7px 20px #21365b09;border-color:#9eb5ef}.study-action h2{font-size:20px;letter-spacing:-.7px;margin:25px 0 12px;line-height:1.35}.study-action h2 span{float:right;color:#a9b8d3}.study-action p{font-size:13px;color:#758198;line-height:1.6;min-height:42px;overflow-wrap:anywhere}.study-action small{font-size:11px;color:#8a96a9}.action-kicker{font-size:11px;font-weight:700;display:inline-block;background:#f1f4fb;color:#73839d;border-radius:6px;padding:5px 8px}.primary-action{background:#315cce;border-color:#315cce;color:white}.primary-action .action-kicker{background:#ffffff20;color:#fff}.primary-action p,.primary-action small,.primary-action h2 span{color:#dce6ff}.home-bottom{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;margin-top:24px}.unified-card{border:1px solid var(--line);border-radius:17px;background:white;padding:26px;min-width:0}.unified-card h2{font-size:17px;letter-spacing:-.4px}.unified-card>p{font-size:13px;color:var(--muted);line-height:1.8}.unified-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.unified-section-head button{background:transparent;border:0;color:var(--muted);font-size:12px}.home-metrics{display:flex;gap:34px;margin:25px 0}.home-metrics strong{font-size:30px;letter-spacing:-1px;display:block}.home-metrics span{font-size:11px;color:var(--muted);display:block;margin-top:7px}.quiet{font-size:12px!important;color:#8994a6!important;line-height:1.8}.unified-card .button-row button{border-radius:8px;font-size:12px;min-height:40px;background:#f5f7fc;border-color:var(--line);color:#405775}
#plannerFrame{display:block;border:0;width:100%;height:calc(100dvh - 72px);background:var(--paper)}#plannerLoading,#integrationError{padding:18px 32px;font-size:13px;color:#6b7990}#integrationError{color:#ad3434;background:#fff0ed}
.integrated #examModule{max-width:none;margin:0;padding:0 32px 30px}.integrated #examModule>.topbar,.integrated #cloudMini{display:none}.integrated #examModule>main{max-width:1400px;margin:auto}.integrated #examModule .card{border-radius:14px;border-color:var(--line)}.integrated #examModule .primary{background:var(--accent);border-color:var(--accent)}.integrated #examModule .hero{background:#eaf0fd;border-radius:16px}.integrated #examModule .save-status{font-size:11px;color:#9aa4b3}.integrated #examModule button{min-height:42px}.related-materials{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.related-materials input{min-width:180px;flex:1;min-height:42px;border:1px solid var(--line);border-radius:8px;padding:8px 12px}.related-materials button{white-space:nowrap;color:var(--accent)}#sidebarBackdrop{display:none}
@media(max-width:1100px){.unified-content{padding:28px}.study-action{padding:20px}.study-action h2{font-size:18px}.home-bottom{grid-template-columns:1fr}.home-metrics{gap:42px}}
@media(max-width:760px){#unifiedSidebar{position:fixed;left:0;top:0;width:240px!important;transform:translateX(-100%);transition:transform .18s;padding:24px 14px!important}#integratedApp.mobile-menu-open #unifiedSidebar{transform:translateX(0)}#integratedApp[data-collapsed=true] #unifiedSidebar .nav-label,#integratedApp[data-collapsed=true] .nav-group{display:block}#integratedApp[data-collapsed=true] #unifiedNav button{justify-content:flex-start;padding:11px 12px}#integratedApp[data-collapsed=true] #sidebarToggle{justify-content:flex-start;font-size:12px}#sidebarBackdrop:not([hidden]){display:block;position:fixed;inset:0;background:#18263b70;border:0;border-radius:0;z-index:20}#mobileMenuToggle{display:block}.unified-topbar{padding:0 18px;height:64px;gap:10px}.unified-topbar button{padding:7px 10px;font-size:11px}.unified-content{padding:24px 20px}.study-actions{grid-template-columns:1fr;gap:12px}.study-action{padding:20px}.study-action h2{margin-top:14px;font-size:21px}.study-action p{min-height:0}.study-action small{display:block;margin-top:12px}.today-greeting h1{font-size:32px}.home-metrics{gap:26px}.unified-card{padding:22px}.integrated #examModule{padding:0 16px 25px}#plannerFrame{height:calc(100dvh - 64px)}.related-materials{width:100%}.related-materials input{width:100%;min-width:0}#backToExam{max-width:110px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.study-action:hover{transform:none}}
