*{box-sizing:border-box}body{margin:0;font-family:Inter,Pretendard,"Noto Sans KR",Arial,sans-serif;background:#f7f9fc;color:#172033}button,input,select,textarea{font:inherit}button{cursor:pointer}header{height:64px;background:#fff;border-bottom:1px solid #e5eaf1;display:flex;align-items:center;padding:0 28px;gap:14px}header b{font-size:21px;color:#073b7b}header b span,.brandbig span{color:#4b9bd8;font-weight:500}header i{height:24px;border-left:1px solid #dce2ea}header strong{font-size:18px}.user{margin-left:auto;font-weight:700}.user em{font-size:11px;font-style:normal;color:#68758a}.user button{border:0;background:none;color:#657287}.body{display:flex;min-height:calc(100vh - 64px)}aside{width:190px;background:#fff;border-right:1px solid #e5eaf1;padding:22px 14px;display:flex;flex-direction:column;gap:7px}aside button{border:0;background:transparent;text-align:left;padding:13px 15px;border-radius:7px;font-weight:700;color:#4b586c}aside button span{display:inline-block;width:28px}aside button.active{background:#0878ec;color:#fff}.help{margin-top:auto;padding:15px;color:#657287}main{flex:1;padding:24px 28px;overflow:auto}.toolbar,.pageTitle{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.dateNav{display:flex;align-items:center;gap:8px}.dateNav h2{margin:0 0 0 18px;font-size:20px}.dateNav button,.switch button{background:#fff;border:1px solid #dce3ed;padding:9px 15px}.switch{display:flex}.switch button.on{background:#0878ec;color:#fff;border-color:#0878ec}.filters{display:flex;gap:10px;margin-bottom:14px}.filters select,.filters input,.pageTitle input{background:#fff;border:1px solid #dce3ed;border-radius:6px;padding:10px 14px;min-width:150px}.timeline,.week,table{background:#fff;border:1px solid #e0e6ef;border-radius:8px;overflow:hidden}.timeHead,.roomRow{display:grid;grid-template-columns:220px 1fr}.timeHead{height:38px;border-bottom:1px solid #e7ebf2}.hours{display:grid;grid-template-columns:repeat(10,1fr);font-size:11px;color:#637086}.hours span{padding:12px 5px;border-left:1px solid #edf0f5}.roomRow{height:78px;border-bottom:1px solid #e7ebf2}.roomInfo{display:flex;align-items:center;gap:12px;padding:9px 12px}.roomInfo b{display:block}.roomInfo small{display:block;color:#6e7b8f;margin-top:5px}.thumb{width:62px;height:48px;border-radius:5px;background:linear-gradient(135deg,#dbe7f3,#9db4c9);display:grid;place-items:center;font-size:25px;color:#fff}.t1{background:linear-gradient(135deg,#c9bda8,#6c7d83)}.t2{background:linear-gradient(135deg,#e4d7c7,#8f755e)}.t3{background:linear-gradient(135deg,#ccd5dc,#536979)}.grid{position:relative;display:grid;grid-template-columns:repeat(10,1fr)}.grid>button{border:0;border-left:1px solid #edf0f5;background:#fff}.grid>button:hover{background:#eef7ff}.event{position:absolute;top:10px;height:56px;border-radius:5px;padding:8px 10px;background:#d9eaff;border-left:3px solid #2987e8;overflow:hidden}.event b,.event small{display:block;font-size:11px;white-space:nowrap}.event small{margin-top:5px;color:#45617d}.c1{background:#ffe2e7;border-color:#ef6d82}.c2{background:#d8f2f2;border-color:#2eb6b6}.c3{background:#e8e2ff;border-color:#8a6de9}.legend{text-align:right;padding:12px;font-size:12px;color:#66748a}.legend span{margin-left:20px}.login{height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#edf3f8}.hero{padding:13vh 9vw;color:#fff;background:linear-gradient(125deg,rgba(5,34,64,.95),rgba(11,77,133,.72)),linear-gradient(35deg,#132f48,#6c8da5);position:relative}.brandbig{font-size:31px;font-weight:800;margin-bottom:30px}.hero h1{font-size:38px;margin:0 0 20px}.hero p{font-size:18px;line-height:1.8}.logos{position:absolute;bottom:55px;font-weight:800;font-size:20px}.loginCard{width:440px;align-self:center;justify-self:center;background:#fff;border-radius:12px;padding:42px;box-shadow:0 18px 50px #20364a26}.loginCard h2{margin-top:0}.loginCard p{color:#68758a;line-height:1.7}.ms{width:100%;border:0;background:#0878ec;color:#fff;padding:16px;border-radius:6px;font-weight:800;margin:22px 0}.loginCard small{color:#3082cc}.overlay{position:fixed;inset:0;background:#14223377;display:grid;place-items:center;z-index:10}.modal{position:relative;background:#fff;width:650px;border-radius:10px;padding:26px;box-shadow:0 24px 80px #0003}.modal h2{margin-top:0}.x{position:absolute;right:20px;top:16px;border:0;background:none;font-size:25px}.modalRoom{width:220px;float:left;padding-right:22px}.photo{height:125px;background:linear-gradient(135deg,#d9e8f3,#819db0);border-radius:7px;display:grid;place-items:center;font-size:40px;color:#fff}.modalRoom h3{margin-bottom:4px}.modalRoom p{font-size:12px;color:#637086}.form{margin-left:230px}.form label{display:grid;grid-template-columns:85px 1fr;align-items:center;margin:9px 0;font-size:13px;font-weight:700}.form input,.form textarea{border:1px solid #dbe2ec;border-radius:5px;padding:9px}.form textarea{height:65px}.actions{text-align:right;margin-top:16px}.actions button,.primary,.mini{border:1px solid #dce3ed;background:#fff;padding:8px 14px;border-radius:5px}.primary{background:#0878ec!important;color:#fff!important;border-color:#0878ec!important}.pageTitle h2{margin:0}.tabs{display:flex;gap:30px;border-bottom:1px solid #dfe5ee;margin-bottom:18px}.tabs>*{padding:12px 4px}.tabs b{color:#0878ec;border-bottom:2px solid #0878ec}table{width:100%;border-collapse:collapse;font-size:13px}th{background:#f7f9fc;color:#4f5d70;text-align:left}th,td{padding:13px 12px;border-bottom:1px solid #e7ebf2}.badge{background:#dcecff;color:#1474d4;padding:5px 12px;border-radius:15px}.danger{color:#d64b4b;border-color:#f2caca}.ok{background:#dff4e7;color:#268a4b;padding:5px 11px;border-radius:15px}.block{display:block;color:#7a8799;margin-top:3px}.small{width:50px;height:36px}.weekHead,.weekRow{display:grid;grid-template-columns:220px repeat(5,1fr)}.weekHead>*{padding:12px;border-left:1px solid #e8edf3}.weekRow{min-height:72px;border-top:1px solid #e8edf3}.weekRow>div:not(.roomInfo){margin:9px;padding:13px;text-align:center;color:#a2aab5;background:#fafbfc;border-radius:5px}.weekRow>div.busy{background:#dcecff;color:#2477c9;font-weight:700}@media(max-width:900px){aside{width:68px}aside button{font-size:0}aside button span{font-size:18px}.timeHead,.roomRow{grid-template-columns:150px 1fr}.roomInfo{font-size:12px}.thumb{display:none}.login{grid-template-columns:1fr}.hero{display:none}.loginCard{width:min(90%,440px)}}

.statusTitle{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.statusTitle h2{margin:0 0 6px}.statusTitle p{margin:0;color:#718096;font-size:13px}.finder{background:#fff;border:1px solid #e0e6ef;border-radius:9px;padding:16px;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1.2fr auto;gap:10px;align-items:end}.finder label{font-size:11px;color:#66748a;font-weight:700}.finder input,.finder select{display:block;width:100%;margin-top:6px;border:1px solid #dce3ed;border-radius:6px;padding:10px;background:#fff}.findBtn{height:39px;white-space:nowrap}.findResult{margin:14px 0 18px;background:#edf7ff;border:1px solid #cbe6fb;border-radius:9px;padding:14px 16px;display:flex;align-items:center;gap:24px}.findResult>div:first-child{min-width:190px}.findResult small{display:block;color:#5f7185;margin-top:4px}.resultRooms{display:flex;gap:8px;flex-wrap:wrap}.resultRooms button{border:1px solid #bddcf5;background:#fff;border-radius:7px;padding:9px 11px;color:#23679f;font-weight:700}.resultRooms em{font-style:normal;font-weight:400;color:#6b7b8d;margin-left:8px}.resultRooms strong{margin-left:10px;color:#0878ec}.statusCards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.statusCards article{background:#fff;border:1px solid #e0e6ef;border-radius:9px;padding:13px}.statusRoom{display:flex;align-items:center}.statusRoom .roomInfo{flex:1;padding:0}.available,.using{font-size:11px;font-weight:800;padding:6px 9px;border-radius:20px}.available{background:#e4f7eb;color:#21854a}.using{background:#ffe8e8;color:#c64a4a}.freeTimes{border-top:1px solid #edf0f4;margin-top:10px;padding-top:10px}.freeTimes small{display:block;color:#78869a;margin-bottom:7px}.freeTimes button{border:1px solid #b9d9f5;background:#f4faff;color:#1673c9;border-radius:5px;padding:6px 8px;margin:0 5px 5px 0;font-size:12px;font-weight:700}.facility{color:#718096;font-size:11px;margin-top:4px}.availability{background:#fff;border:1px solid #e0e6ef;border-radius:9px;overflow:hidden}.availabilityHead{padding:14px 16px;display:flex;justify-content:space-between;border-bottom:1px solid #e7ebf2}.availabilityHead span{font-size:11px;color:#6b788b}.freeDot,.busyDot{display:inline-block;width:9px;height:9px;border-radius:2px}.freeDot{background:#eaf6ff;border:1px solid #69aee8}.busyDot{background:#cbd5e1}.availHeader,.availRow{display:grid;grid-template-columns:190px repeat(9,1fr)}.availHeader{background:#f8fafc;color:#6b788b;font-size:10px}.availHeader>*{padding:9px;border-left:1px solid #edf0f4}.availRow{min-height:55px;border-top:1px solid #edf0f4}.availRow>div{padding:10px 13px}.availRow small{display:block;color:#8591a1;margin-top:4px}.slot{border:0;border-left:1px solid #edf0f4}.freeSlot{background:#f8fcff;color:#2585d5;font-size:18px}.freeSlot:hover{background:#dff1ff}.busySlot{display:grid;place-items:center;background:#e2e8f0;color:#68768a;font-size:10px}.statusCards .thumb{width:50px;height:40px}@media(max-width:1100px){.finder{grid-template-columns:repeat(3,1fr)}.statusCards{grid-template-columns:1fr}.availHeader,.availRow{grid-template-columns:150px repeat(9,70px)}.availability{overflow:auto}}@media(max-width:700px){.finder{grid-template-columns:1fr 1fr}.findResult{align-items:flex-start;flex-direction:column}.statusTitle{align-items:flex-start;gap:10px;flex-direction:column}}
.locationFilters{margin-bottom:12px}.locationDetail{margin-top:10px;padding-top:9px;border-top:1px solid #edf1f5;color:#607086;font-size:12px}.statusCards article .roomInfo small{max-width:260px;white-space:normal}.filters select{min-width:130px}
.viewToggle{display:flex;gap:6px}.viewToggle button{border:1px solid #dce3ed;background:#fff;padding:9px 13px;border-radius:6px;font-weight:700}.viewToggle button.on{background:#0878ec;color:#fff;border-color:#0878ec}.mapPanel{background:#fff;border:1px solid #e0e6ef;border-radius:10px;padding:14px;margin-top:14px}.mapHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.mapHead p{margin:4px 0 0;color:#718096;font-size:12px}.floorMap{position:relative;overflow:auto;border:1px solid #dce3ed;border-radius:8px;background:#f7f9fc}.floorMapInner{position:relative;min-width:1180px}.floorMap img{display:block;width:100%;height:auto}.mapRoom{position:absolute;transform:translate(-50%,-50%);min-width:78px;border:2px solid #fff;border-radius:8px;padding:7px 9px;color:#fff;font-size:11px;font-weight:800;box-shadow:0 3px 10px #0005;text-align:center}.mapRoom small{display:block;font-size:9px;font-weight:500;margin-top:2px}.mapRoom.free{background:#209b5a}.mapRoom.busy{background:#d9534f}.mapRoom.soon{background:#e89522}.mapLegend{display:flex;gap:18px;justify-content:flex-end;padding:10px 2px 0;font-size:11px;color:#657287}.mapLegend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px}.mapLegend .g{background:#209b5a}.mapLegend .r{background:#d9534f}.mapLegend .o{background:#e89522}.roomPopover{position:absolute;z-index:5;width:250px;background:#fff;border:1px solid #dce3ed;border-radius:9px;padding:14px;box-shadow:0 10px 30px #22364a30;color:#172033;text-align:left}.roomPopover h4{margin:0 0 4px}.roomPopover p{font-size:11px;color:#657287;margin:3px 0 10px}.roomPopover button{border:1px solid #bddcf5;background:#f4faff;color:#1673c9;border-radius:5px;padding:6px 8px;margin:3px;font-size:11px}.adminMap{margin-top:18px}.adminMapNote{background:#edf7ff;border:1px solid #cbe6fb;padding:12px;border-radius:7px;color:#45617d;font-size:12px}
/* V4.1: compact markers aligned to actual meeting-room spaces */
.floorMapInner{min-width:1320px}
.mapRoom{min-width:42px;width:46px;height:42px;padding:3px 4px;border-radius:7px;line-height:1.05}
.mapRoom b{display:block;font-size:13px}.mapRoom small{font-size:8px;white-space:nowrap}
/* V5 Outlook-style calendar */
.calendarTop{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:14px}.calendarTop h2{margin:0 0 4px}.calendarTop p{margin:0;color:#718096;font-size:13px}.calendarActions{display:flex;gap:8px}.calendarActions button{padding:9px 14px;border:1px solid #d9e2ec;background:white;border-radius:7px}.calendarActions .on{background:#eaf3ff;color:#0878e8;border-color:#87bdf4;font-weight:700}.calendarFilters{display:flex;gap:9px;align-items:center;padding:12px;background:#fff;border:1px solid #e1e8f0;border-radius:9px;margin-bottom:12px}.calendarFilters select,.calendarFilters input{height:38px;border:1px solid #d8e0e8;border-radius:6px;padding:0 10px;background:white}.outlookCal{background:white;border:1px solid #dfe6ee;border-radius:9px;overflow:auto;max-height:650px}.calHeader,.calRow{display:grid;grid-template-columns:76px repeat(4,minmax(180px,1fr));min-width:850px}.calHeader{position:sticky;top:0;z-index:5;background:#f7f9fc;border-bottom:1px solid #dfe6ee}.calHeader>div{padding:11px;border-right:1px solid #e5eaf0;text-align:center}.calHeader .roomHead b{display:block}.calHeader .roomHead small{display:block;color:#75849a;margin-top:3px}.mapLink{border:0;background:none;color:#0878e8;font-size:11px;cursor:pointer}.calTime{height:44px;padding:5px 8px;text-align:right;color:#718096;font-size:12px;border-right:1px solid #e5eaf0;border-bottom:1px solid #edf1f5}.calCell{height:44px;position:relative;border-right:1px solid #e5eaf0;border-bottom:1px solid #edf1f5;background:#fff;cursor:pointer}.calCell:hover{background:#f1f7ff}.calCell.half{border-bottom-style:dashed}.calEvent{position:absolute;inset:3px 4px;border-radius:5px;padding:4px 6px;background:#dcecff;border-left:4px solid #2f80ed;z-index:2;font-size:11px;overflow:hidden;cursor:pointer}.calEvent.busy{background:#fde5e3;border-left-color:#dc514b}.calEvent.mine{background:#e6f6ee;border-left-color:#28a36a}.calEvent b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calEvent small{display:block;margin-top:2px}.calHint{padding:9px 13px;color:#68788e;font-size:12px;border-top:1px solid #edf1f5}.calendarWeek{display:grid;grid-template-columns:70px repeat(5,minmax(130px,1fr));min-width:760px}.weekHead{background:#f7f9fc;font-weight:700;text-align:center;padding:10px;border-right:1px solid #e4eaf0;border-bottom:1px solid #e4eaf0}.weekTime{padding:8px;text-align:right;color:#75849a;border-right:1px solid #e4eaf0;border-bottom:1px solid #edf1f5;height:52px}.weekCell{height:52px;border-right:1px solid #e4eaf0;border-bottom:1px solid #edf1f5;position:relative;cursor:pointer}.weekCell:hover{background:#f1f7ff}.bookingDetail .detailActions{display:flex;gap:8px;margin-top:14px}.bookingDetail button{padding:8px 12px;border-radius:6px;border:1px solid #ccd7e2;background:#fff}.bookingDetail .danger{color:#d3423d}.subNav{display:flex;gap:6px;margin-bottom:12px}.subNav button{border:1px solid #dce4ec;background:#fff;padding:9px 13px;border-radius:7px}.subNav button.on{background:#0b7bea;color:white;border-color:#0b7bea}

/* V6.7.4.2: always-visible logout control; preserve original header layout */
header{min-width:0}header .user{display:flex;align-items:center;gap:10px;min-width:0;flex-shrink:0;white-space:nowrap}header .user #headerUser{display:inline-block;max-width:260px;overflow:hidden;text-overflow:ellipsis}header .user .logout-button{display:inline-flex!important;align-items:center;justify-content:center;gap:5px;flex-shrink:0;padding:8px 12px;border:1px solid #cbd5e1;border-radius:7px;background:#f8fafc;color:#17385f;text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap}header .user .logout-button:hover{background:#e8f2ff;border-color:#93b9ed}header .user .logout-button:focus-visible{outline:3px solid #4d9cff;outline-offset:2px}@media(max-width:850px){header{padding:0 12px;gap:7px}header b{font-size:16px}header strong{font-size:14px}header .user #headerUser{max-width:145px}header .user .logout-button{padding:7px 9px}}
