:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background:#f7fbff}#app{width:100%;max-width:480px;margin:0 auto}.auth-overlay[data-v-b08cfe00]{position:fixed;inset:0;z-index:2000;display:flex;align-items:flex-end;justify-content:center}.auth-mask[data-v-b08cfe00]{position:absolute;inset:0;background:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.auth-box[data-v-b08cfe00]{position:relative;width:100%;max-width:480px;background:#fff;padding:30px;border-radius:20px 20px 0 0;box-shadow:0 -5px 20px #0003;animation:slideUp-b08cfe00 .3s ease-out}@keyframes slideUp-b08cfe00{0%{transform:translateY(100%)}to{transform:translateY(0)}}.auth-box h3[data-v-b08cfe00]{text-align:center;margin-bottom:20px;color:#0083b0}.auth-input[data-v-b08cfe00]{width:100%;padding:12px;margin-bottom:15px;border:1px solid #ddd;border-radius:8px;font-size:16px;box-sizing:border-box}.auth-input.error[data-v-b08cfe00]{border-color:#ff4d4f;background-color:#fff6f6}.auth-btn[data-v-b08cfe00]{width:100%;padding:15px;background:linear-gradient(to right,#00b4db,#0083b0);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer}.auth-btn[data-v-b08cfe00]:disabled{opacity:.6;cursor:not-allowed}.form-row[data-v-b08cfe00]{display:flex;gap:10px;margin-bottom:15px}.form-row .auth-input[data-v-b08cfe00]{margin-bottom:0;flex:1}.checkbox-group[data-v-b08cfe00]{margin-bottom:20px;font-size:14px;color:#666}.page[data-v-b08cfe00]{background-color:#fff;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.fixed-header[data-v-b08cfe00]{position:fixed;top:0;left:0;right:0;z-index:100;background-color:#fff;box-shadow:0 2px 5px #0000000d}.ccTop[data-v-b08cfe00]{background:linear-gradient(to right,#00b4db,#0083b0);padding:4vw;color:#fff;text-align:center}.logo[data-v-b08cfe00]{font-size:6vw;font-weight:800;font-style:italic;margin-bottom:3vw;text-shadow:0 2px 4px rgba(0,0,0,.2)}.tabs[data-v-b08cfe00]{display:flex;justify-content:center;gap:4vw}.tab[data-v-b08cfe00]{flex:1;text-align:center;cursor:pointer;opacity:.8;transition:all .3s}.tab.active[data-v-b08cfe00]{opacity:1}.tab-content[data-v-b08cfe00]{background:#fff3;padding:2vw;border-radius:5vw}.tab.active .tab-content[data-v-b08cfe00]{background:#fff;color:#0083b0;box-shadow:0 2px 8px #0003}.tab-title[data-v-b08cfe00]{font-size:4.5vw;font-weight:700;margin-bottom:.5vw}.tab-sub[data-v-b08cfe00]{font-size:3vw}.filters[data-v-b08cfe00]{padding:3vw 4vw;display:flex;flex-direction:column;gap:3vw;background:#fff}.chips-category[data-v-b08cfe00]{display:flex;gap:1vw;justify-content:space-between}.chip-tag[data-v-b08cfe00]{border:none;border-radius:1vw;padding:1.5vw 1.5vw 1.5vw 4vw;font-size:3.2vw;font-weight:700;position:relative;white-space:nowrap;box-shadow:0 1px 3px #0000001a;flex:1;text-align:center}.tag-hole[data-v-b08cfe00]{position:absolute;left:1.5vw;top:50%;transform:translateY(-50%);width:1.2vw;height:1.2vw;background:#fff;border-radius:50%;box-shadow:inset 0 1px 2px #0003}.chips-time[data-v-b08cfe00]{display:flex;justify-content:space-between;color:#666;font-size:3.2vw}.chip-time[data-v-b08cfe00]{background:none;border:none;color:#333;font-size:3.5vw;display:flex;align-items:center;gap:1vw;padding:1vw}.chip-time.active[data-v-b08cfe00]{color:#0083b0;font-weight:700}.list[data-v-b08cfe00]{padding:60vw 3vw 5vw;box-sizing:border-box}.card[data-v-b08cfe00]{border:1px dashed #00b4db;border-radius:2vw;padding:3vw;margin-bottom:3vw;background:#fff;display:flex;flex-direction:column;gap:1.5vw}.title[data-v-b08cfe00]{font-size:3.5vw;font-weight:700;line-height:1.4;color:#333;margin-bottom:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meta[data-v-b08cfe00]{display:flex;flex-direction:column;gap:1.5vw;min-width:0}.row[data-v-b08cfe00]{display:flex;align-items:center;flex-wrap:nowrap;overflow:hidden}.info-cell[data-v-b08cfe00]{display:flex;align-items:center;gap:1vw;font-size:3.2vw;color:#666;margin-right:2vw;white-space:nowrap;flex-shrink:0}.info-cell.hospital[data-v-b08cfe00]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;margin-right:1vw}.info-cell.teacher[data-v-b08cfe00]{flex-shrink:0;justify-content:flex-end;overflow:hidden;text-overflow:ellipsis}.icon[data-v-b08cfe00]{font-size:3vw;opacity:.7}.room-time-row[data-v-b08cfe00]{justify-content:space-between;align-items:center}.actions[data-v-b08cfe00]{flex-shrink:0}.time-btn[data-v-b08cfe00]{display:inline-flex;align-items:center;gap:1vw;background:#00b4db;color:#fff;border:none;border-radius:1vw;padding:1vw 2vw;font-size:3.2vw;text-decoration:none;font-weight:500;box-shadow:0 2px 4px #00b4db4d}.time-btn.disabled[data-v-b08cfe00]{background:#ccc;border-color:#ccc;color:#fff;cursor:not-allowed;pointer-events:none;box-shadow:none}.loading[data-v-b08cfe00],.empty[data-v-b08cfe00]{text-align:center;padding:10vw;color:#999}@media(min-width:481px){.page[data-v-b08cfe00]{max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a;min-height:100vh}.fixed-header[data-v-b08cfe00]{max-width:480px;left:50%;transform:translate(-50%);width:100%;z-index:1000}.list[data-v-b08cfe00]{padding-top:280px;padding-left:20px;padding-right:20px}.ccTop[data-v-b08cfe00]{padding:20px}.logo[data-v-b08cfe00]{font-size:28px;margin-bottom:15px}.tabs[data-v-b08cfe00]{gap:20px}.tab-content[data-v-b08cfe00]{padding:10px;border-radius:24px}.tab-title[data-v-b08cfe00]{font-size:20px;margin-bottom:3px}.tab-sub[data-v-b08cfe00]{font-size:13px}.filters[data-v-b08cfe00]{padding:15px 20px;gap:15px}.chips-category[data-v-b08cfe00]{gap:5px}.chip-tag[data-v-b08cfe00]{font-size:14px;padding:6px 6px 6px 18px;border-radius:5px}.tag-hole[data-v-b08cfe00]{width:6px;height:6px;left:6px}.chip-time[data-v-b08cfe00]{font-size:14px;gap:5px;padding:5px}.card[data-v-b08cfe00]{margin-bottom:15px;padding:15px;border-radius:10px;gap:10px}.title[data-v-b08cfe00]{font-size:16px;margin-bottom:5px}.meta[data-v-b08cfe00]{gap:8px;padding-right:0}.info-cell[data-v-b08cfe00]{font-size:14px;margin-right:10px;gap:5px}.info-cell.hospital[data-v-b08cfe00]{margin-right:5px}.info-cell.teacher[data-v-b08cfe00]{width:auto}.icon[data-v-b08cfe00]{font-size:12px}.actions[data-v-b08cfe00]{margin-left:0;position:static}.time-btn[data-v-b08cfe00]{font-size:14px;padding:6px 10px;gap:5px;border-radius:5px}}
