:root{--paper: #faf7ee;--paper2: #fffdf6;--rule: #cdddef;--margin: #e07a7a;--ink: #3e3e4a;--ink-dim: #8b8b97;--accent: #d64c46;--accent2: #4674c8;--ok: #4a9d6b;--shadow: rgba(60, 55, 40, .18)}*{box-sizing:border-box}body{margin:0;font-family:Gaegu,Noto Sans KR,system-ui,sans-serif;font-size:17px;color:var(--ink);background:#efe9da;background-image:radial-gradient(circle at 20% 10%,#f3eddd,#e7e0cf);min-height:100vh}a{color:var(--accent2);text-decoration:none}.hand{font-family:Gaegu,Noto Sans KR,sans-serif}.pen{font-family:Nanum Pen Script,Gaegu,sans-serif}.sans{font-family:Noto Sans KR,system-ui,sans-serif}.nav{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-end;padding:14px 18px 0;max-width:920px;margin:0 auto}.nav .brand{font-family:Gaegu,sans-serif;font-weight:700;font-size:26px;color:var(--ink);margin-right:12px;transform:rotate(-2deg)}.tab{font-family:Gaegu,sans-serif;font-weight:700;font-size:16px;padding:8px 16px;border:2px solid #d9cfb6;border-bottom:none;border-radius:12px 12px 0 0;background:#efe6cf;color:var(--ink-dim);cursor:pointer}.tab.active{background:var(--paper2);color:var(--ink);box-shadow:0 -2px 6px var(--shadow)}.wrap{max-width:920px;margin:0 auto;padding:0 18px 60px}.paper{position:relative;background:var(--paper);background-image:repeating-linear-gradient(var(--paper) 0px,var(--paper) 37px,var(--rule) 38px);border:1px solid #e2d9c2;border-radius:4px 14px 14px;box-shadow:0 8px 24px var(--shadow);padding:34px 30px 34px 60px;margin-top:0}.paper:before{content:"";position:absolute;top:0;bottom:0;left:40px;width:2px;background:var(--margin);opacity:.7}.paper:after{content:"";position:absolute;left:14px;top:40px;width:14px;height:14px;border-radius:50%;background:#e6e1d2;box-shadow:0 70px #e6e1d2,0 140px #e6e1d2,0 210px #e6e1d2,0 280px #e6e1d2}h1.title{font-family:Gaegu,sans-serif;font-size:34px;margin:0 0 4px}h2.title{font-family:Gaegu,sans-serif;font-size:26px;margin:26px 0 10px}.sub{color:var(--ink-dim);margin:0 0 18px;font-size:18px;line-height:1.5}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.spread{display:flex;justify-content:space-between;align-items:center;gap:10px}label{font-weight:700;font-size:14px;display:block;margin:12px 0 4px}input,select{width:100%;padding:10px 12px;font-size:15px;border:2px solid #d9cfb6;border-radius:8px;background:var(--paper2);font-family:inherit;color:var(--ink)}input:focus{outline:none;border-color:var(--accent2)}.btn{font-family:Gaegu,sans-serif;font-weight:700;font-size:17px;padding:9px 20px;border:2px solid var(--ink);border-radius:10px;background:#ffe89a;color:var(--ink);cursor:pointer;box-shadow:2px 2px 0 var(--ink);transition:transform .05s}.btn:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}.btn:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--ink)}.btn.alt{background:#bfe3ff}.btn.danger{background:#ffc4bf}.btn.sm{font-size:14px;padding:6px 12px}.note{background:#fff7d6;border:1px dashed #d9bf6a;border-radius:8px;padding:10px 14px;margin:12px 0}.err{color:var(--accent);font-weight:700}.okmsg{color:var(--ok);font-weight:700}.card{background:var(--paper2);border:2px solid #e2d9c2;border-radius:12px;padding:14px 16px;box-shadow:2px 2px #e7decb}a.card.more{display:block;text-decoration:none;color:inherit;border-style:dashed;transition:transform .08s ease,box-shadow .08s ease}a.card.more:hover{transform:translate(-1px,-1px);box-shadow:3px 3px #e7decb}.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.seg{display:inline-flex;border:2px solid #e2d9c2;border-radius:10px;overflow:hidden}.seg-btn{border:0;background:var(--paper2);color:var(--ink-dim);padding:6px 14px;font:inherit;font-size:14px;cursor:pointer}.seg-btn+.seg-btn{border-left:2px solid #e2d9c2}.seg-btn.on{background:var(--accent2);color:#fff;font-weight:700}.flow-dot{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:5px;vertical-align:middle}.flow-dot.in{background:#3f9b6c}.flow-dot.out{background:#d4694a}.flow-chart{display:flex;align-items:stretch;gap:5px;height:200px;padding:4px 0;overflow-x:auto}.flow-col{flex:1 1 0;min-width:24px;display:flex;flex-direction:column;align-items:center}.flow-half{height:78px;width:100%;display:flex;flex-direction:column;align-items:center}.flow-half.up{justify-content:flex-end}.flow-half.down{justify-content:flex-start}.flow-axis{width:100%;height:2px;background:#e2d9c2}.flow-bar{width:62%;max-width:18px;min-height:2px}.flow-half.up .flow-bar{border-radius:4px 4px 0 0}.flow-half.down .flow-bar{border-radius:0 0 4px 4px}.flow-bar.in{background:#3f9b6c}.flow-bar.out{background:#d4694a}.flow-num{font-size:10px;color:var(--ink-dim);line-height:1.1}.flow-lbl{font-size:11px;color:var(--ink-dim);margin-top:5px;white-space:nowrap}.adm-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:16px}.roomgrid{display:grid;gap:12px;margin-top:10px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.roomcard{display:flex;flex-direction:column;gap:10px}.roomstats{display:flex;flex-wrap:wrap;gap:14px;font-size:14px;padding:8px 0;border-top:1px dashed #e2d9c2;border-bottom:1px dashed #e2d9c2}.roomstats b{color:var(--ink)}.roomrow{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.masonry{column-width:260px;column-gap:14px}.masonry>.card{display:inline-block;width:100%;margin:0 0 14px;break-inside:avoid;-webkit-column-break-inside:avoid}.switch{position:relative;width:50px;height:28px;flex:none}.switch input{display:none}.slider{position:absolute;top:0;right:0;bottom:0;left:0;background:#d8cdb4;border-radius:999px;cursor:pointer;transition:.2s;border:2px solid #c9bd9e}.slider:before{content:"";position:absolute;width:20px;height:20px;left:3px;top:2px;background:#fff;border-radius:50%;transition:.2s;box-shadow:1px 1px 2px #0003}.switch input:checked+.slider{background:#9bd6ad;border-color:#6fb98a}.switch input:checked+.slider:before{transform:translate(22px)}.bar-row{display:flex;align-items:center;gap:8px;margin:5px 0;font-size:13px}.bar-row .lbl{width:54px;color:var(--ink-dim);flex:none;font-family:Gaegu,sans-serif}.bar-track{flex:1;height:15px;border-radius:8px;overflow:hidden;background:repeating-linear-gradient(90deg,#efe7d4 0,#efe7d4 6px,#f4eede 6px,#f4eede 12px)}.bar{display:block;height:15px;background:linear-gradient(#f6c269,#e79a3b);border-right:1.5px solid #cf8a2e;border-radius:8px;min-width:4px;box-shadow:1px 1px #3c372824}.bar-row .val{color:var(--ink);width:40px;text-align:right;flex:none;font-family:Gaegu,sans-serif;font-weight:700}.kpi{font-family:Gaegu,sans-serif}.kpi b{font-size:30px;display:block;color:var(--accent)}.mlist{width:100%;border-collapse:collapse}.mlist th,.mlist td{text-align:left;padding:8px 6px;border-bottom:1px dashed #ddd2b8;font-size:14px}.mlist th{color:var(--ink-dim);font-size:12px}.tag{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:700;background:#e7decb;color:var(--ink-dim)}.tag.on{background:#cdeed7;color:#2f7a4d}.tag.off{background:#f1d6d3;color:#b14b42}.center{text-align:center}.muted{color:var(--ink-dim)}.big{font-size:18px}ul.feat{padding-left:18px}ul.feat li{margin:6px 0}.hero{font-family:Gaegu,sans-serif;font-size:42px;line-height:1.2;margin:6px 0 2px}.stamp{display:inline-block;transform:rotate(-6deg);border:3px solid var(--accent);color:var(--accent);font-family:Gaegu,sans-serif;font-weight:700;padding:2px 12px;border-radius:8px}.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.mitem{cursor:pointer}.mitem .arrow{color:var(--ink-dim);font-size:13px}.detail{margin-top:10px;border-top:1px dashed #ddd2b8;padding-top:10px}.dsec{margin:10px 0}.dsec h4{font-family:Gaegu,sans-serif;margin:0 0 4px;font-size:16px;color:var(--accent2)}.drow{display:flex;justify-content:space-between;font-size:14px;padding:2px 0;border-bottom:1px dotted #e7decb;gap:8px}.drow .k{color:var(--ink-dim)}.drow .v{text-align:right;word-break:break-all}.chkwrap{display:flex;flex-wrap:wrap;gap:8px 16px}.chk{display:inline-flex;align-items:center;gap:6px;font-family:Gaegu,Noto Sans KR,sans-serif;font-weight:700;font-size:16px;cursor:pointer;margin:0}input[type=checkbox],input[type=radio]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;width:18px;height:18px;min-height:0;flex:none;padding:0;margin:0;border:0;border-radius:0;background:none;accent-color:var(--accent);cursor:pointer;vertical-align:middle}label.row>span{font-weight:400}.chk.off{opacity:.4}.subtabs{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 18px;border-bottom:2px dashed #ddd2b8;padding-bottom:12px}.subtab{font-family:Gaegu,sans-serif;font-weight:700;font-size:15px;padding:7px 15px;border:2px solid #d9cfb6;border-radius:999px;background:var(--paper2);color:var(--ink-dim);cursor:pointer;transition:transform .05s}.subtab:hover{transform:translateY(-1px)}.subtab.active{background:#ffe89a;color:var(--ink);border-color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.log{margin-top:4px}.logitem{display:flex;gap:10px;padding:9px 4px;align-items:flex-start;border-bottom:1px dotted #e7decb}.logitem .when{color:var(--ink-dim);width:84px;flex:none;font-size:12px;padding-top:2px}.logitem .what{flex:1;font-size:14px;word-break:break-all}.badge{display:inline-block;padding:1px 8px;border-radius:6px;font-size:12px;font-weight:700;background:#e7decb;color:var(--ink-dim)}.badge.b-warn{background:#ffe1b0;color:#9a6212}.badge.b-ban{background:#f1d6d3;color:#b14b42}.badge.b-ok{background:#cdeed7;color:#2f7a4d}.badge.b-off{background:#e7decb;color:#8b8b97}.badge.b-memo{background:#d3e4ff;color:#3a5fa8}@media (max-width: 640px){body{font-size:15px}.wrap{padding:0 8px 48px}.nav{padding:10px 8px 0;gap:4px}.nav .brand{font-size:20px;margin-right:6px;width:100%}.tab{font-size:14px;padding:6px 11px}.paper{padding:22px 14px 26px 38px;border-radius:4px 10px 10px}.paper:before{left:24px}.paper:after{left:8px}h1.title{font-size:26px}h2.title{font-size:21px}.hero{font-size:29px}.grid{grid-template-columns:1fr;gap:10px}.kpi b{font-size:26px}input,select{font-size:16px;min-height:44px}.btn{font-size:16px;padding:11px 18px}.btn.sm{font-size:15px;padding:9px 14px}.row{gap:8px}.mlist th,.mlist td{padding:7px 5px;font-size:13px}.spread{flex-wrap:wrap}.subtabs{flex-wrap:wrap;gap:6px;padding-bottom:10px}.subtab{font-size:14px;padding:8px 13px;min-height:40px}.logitem .when{width:70px;font-size:11px}}.terms,.terms p,.terms li,.terms .sub,.terms h1.title,.terms h2.title,.terms h3,.terms h3.hand{font-family:Noto Sans KR,system-ui,sans-serif;letter-spacing:-.01em}.terms{font-size:15px;color:var(--ink)}.terms h1.title{font-weight:700;font-size:30px}.terms h2.title{font-weight:700;font-size:21px;margin:28px 0 10px}.terms h3.hand{font-weight:500;font-size:17px!important;color:var(--ink)}.terms p{margin:5px 0;line-height:1.8}.terms ul.feat li{line-height:1.75}
