.app-root{border-radius:24px;width:100%;max-width:1400px;height:100vh;margin:40px auto;display:flex;position:relative;overflow:hidden;box-shadow:4px 4px 12px rgba(26,26,26,.2)}.sidebar{width:var(--sidebar-width);background-color:var(--color-white);border-right:1px solid var(--color-border);z-index:20;flex-direction:column;display:flex;box-shadow:2px 0 5px rgba(0,0,0,.05)}.sidebar-header{border-bottom:1px solid var(--color-border);padding:1.5rem}.lang-toggle-container{gap:.75rem;margin-bottom:.5rem;display:flex}.currency-toggle-container{margin-top:1rem}.lang-btn{cursor:pointer;color:#4b5563;background-color:#f3f4f6;border:2px solid transparent;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.25rem;padding:1rem .5rem;font-weight:600;transition:all .2s;display:flex}.lang-btn:hover{background-color:#e5e7eb}.lang-btn.active{color:#2c6ce4;background-color:#eff6ff;border-color:#2c6ce4;box-shadow:0 2px 4px rgba(44,108,228,.1)}.sidebar-search-container{margin-top:1rem}.search-input{border:1px solid var(--color-border);border-radius:6px;outline:none;width:100%;padding:.5rem .75rem;font-size:.875rem;transition:border-color .2s}.search-input:focus{border-color:#2c6ce4}.sidebar-list{flex-direction:column;flex:1;padding:1rem;display:flex;overflow-y:hidden}.sidebar-footer{background-color:var(--color-bg-light);border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-muted);padding:1rem;font-size:.75rem}.school-item{cursor:pointer;border:1px solid var(--color-border);background-color:#333;background-image:linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.7)),var(--school-bg);color:#fff;background-position:50%;background-size:cover;border-radius:.75rem;margin-bottom:.75rem;padding:1rem;transition:all .2s;position:relative;overflow:hidden}.school-item:hover{border-color:#2c6ce4;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.2)}.school-item.active{background-image:linear-gradient(rgba(44,108,228,.85),rgba(44,108,228,.85)),var(--school-bg);border-color:#568df3;transform:scale(1.02);box-shadow:0 8px 16px rgba(44,108,228,.3)}.school-item-header{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.school-name-main{text-shadow:0 1px 2px rgba(0,0,0,.5);font-size:1.125rem;font-weight:700}.school-name-sub{opacity:.9;color:rgba(255,255,255,.9);text-shadow:0 1px 2px rgba(0,0,0,.5);margin:0;font-size:.75rem}.selection-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background-color:rgba(255,255,255,.25);border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:.125rem .375rem;font-size:.625rem;font-weight:700;position:absolute;top:.5rem;right:2.25rem}.sidebar-pagination{border-top:1px solid #f0f0f0;justify-content:center;align-items:center;gap:1.5rem;margin-top:auto;padding:.5rem 0;display:flex}.pagination-btn{border:1px solid var(--color-border);cursor:pointer;color:#4b5563;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;box-shadow:0 2px 4px rgba(0,0,0,.05)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.pagination-btn:not(:disabled):active{background-color:#f3f4f6;transform:scale(.95)}.pagination-info{color:#4b5563;font-size:.875rem;font-weight:600}.main-content{flex-direction:column;flex:1;height:100%;display:flex;position:relative;overflow:hidden}.dashboard-area{flex-direction:column;flex:1;padding:1.5rem;display:flex;overflow-y:auto}.dob-card{font-family:var(--font-Pretendard-Bold);border:1px solid var(--color-border);border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:100%;max-width:700px;margin:0 auto 1.5rem;padding:1.25rem;display:flex;box-shadow:0 2px 6px rgba(0,0,0,.05)}.dob-title{color:var(--color-text);align-items:center;gap:.5rem;font-size:1.2rem;font-weight:600;display:flex}.dob-controls{flex-wrap:wrap;justify-content:center;gap:1rem;font-size:1rem;display:flex}.select-wrapper{align-items:center;gap:.5rem;display:flex}.select-wrapper select{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:6px;min-width:70px;padding:.5rem}.select-label{color:var(--color-text-secondary);font-size:.875rem}.grid-container{gap:1.5rem;padding-bottom:2rem;transition:all .3s ease-in-out;display:grid}.grid-single{grid-template-columns:1fr;width:100%;max-width:900px;margin:0 auto}.grid-compare{grid-template-columns:1fr 1fr;width:100%}.school-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:.5rem;flex-direction:column;height:-moz-fit-content;height:fit-content;display:flex;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.1)}.card-header{background:var(--color-bg-blue);color:var(--color-white);justify-content:space-between;align-items:flex-start;padding:1rem;display:flex}.tools-header-content{flex:1}.session-badge{background-color:rgba(255,255,255,.2);border-radius:4px;margin:.25rem 0;padding:.15rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.remove-btn{color:rgba(255,255,255,.8);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.25rem;transition:background .2s;display:flex}.remove-btn:hover{color:#fff;background:rgba(255,255,255,.2)}.table-wrapper{flex:1;overflow-x:auto}table{border-collapse:collapse;width:100%}thead{background-color:#f3f4f6}th{text-align:right;text-transform:uppercase;color:#4b5563;letter-spacing:.05em;padding:.75rem;font-size:.75rem;font-weight:700}th:first-child{text-align:left}td{border-bottom:1px solid var(--color-border);text-align:right;padding:.6rem;font-size:.8rem}td:first-child{text-align:left}.grade-stack{flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.tuition-row{transition:background-color .15s}.tuition-row:hover{background-color:#f9fafb}.row-highlight{background-color:var(--color-highlight);color:var(--color-text);font-weight:600}.target-badge{color:var(--color-highlight);text-transform:uppercase;letter-spacing:.05em;background-color:#1a1a1a;border-radius:4px;padding:.1rem .4rem;font-size:.6rem;font-weight:700;display:inline-block}.card-footer{border-top:1px solid var(--color-border);color:#6b7280;background-color:#f9fafb;justify-content:space-between;padding:.75rem;font-size:.75rem;display:flex}.empty-state{color:#9ca3af;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;min-height:100px;display:flex}@media (max-width:900px){.grid-compare{grid-template-columns:1fr}}@media (max-width:768px){.app-root{flex-direction:column;height:auto;min-height:100vh;overflow-y:auto}.sidebar{border-right:none;border-bottom:1px solid var(--color-border);z-index:100;flex-shrink:0;width:100%;height:auto;overflow-y:visible}.sidebar-list{flex-direction:column;gap:.5rem;padding:.75rem;display:flex;overflow:visible}.sidebar-footer{display:none}.school-item{background-color:var(--color-white);border:1px solid var(--color-border);border-radius:8px;grid-template-rows:auto auto auto;grid-template-columns:80px 1fr;width:100%;height:auto;min-height:80px;margin-bottom:0;padding:0;display:grid;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.05);background-image:none!important}.school-item:before{content:"";background-image:var(--school-bg);border-right:1px solid var(--color-border);background-position:50%;background-size:cover;grid-area:1/1/-1;width:100%;height:100%}.school-item-header{grid-area:1/2;justify-content:space-between;align-items:center;margin-bottom:0;padding:.5rem .75rem 0;display:flex}.school-code{color:var(--color-text);font-family:var(--font-Pretendard-Bold);text-shadow:none;font-size:1rem}.school-item-header .white-color{color:#2c6ce4}.school-item-header div[style*=border]{display:none!important}.school-name-sub{color:var(--color-text-secondary);text-shadow:none;padding:0 .75rem;font-size:.75rem}.school-item.active{background-color:#eff6ff;border-color:#2c6ce4;transform:none;box-shadow:inset 0 0 0 1px #2c6ce4}.selection-badge{color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;background-color:#2c6ce4;border:none;top:auto;bottom:.5rem;right:.75rem;box-shadow:0 1px 2px rgba(0,0,0,.1)}.main-content{height:auto;min-height:500px;overflow:visible}.dashboard-area{padding:1rem;overflow:visible}.grid-container{padding-bottom:2rem}}
