:root{--face: #c0c0c0;--hi: #fff;--lo: #808080;--dark: #000;--title: #000080;--err: #c00000}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--face);color:#000;font:13px 맑은 고딕,Malgun Gothic,Gulim,sans-serif;display:flex;flex-direction:column}button,select,input{font:inherit}button{background:var(--face);border:2px solid;border-color:var(--hi) var(--dark) var(--dark) var(--hi);padding:3px 12px;cursor:pointer}button:active:not(:disabled){border-color:var(--dark) var(--hi) var(--hi) var(--dark)}button:disabled{color:var(--lo);cursor:default}input,select{background:#fff;border:2px solid;border-color:var(--lo) var(--hi) var(--hi) var(--lo);padding:2px 4px}.titlebar{background:var(--title);color:#fff;font-weight:700;padding:3px 8px}#main{display:flex;flex-direction:column;flex:1;min-height:0}#menubar{display:flex;gap:2px;padding:2px 4px;border-bottom:1px solid var(--lo)}.menu{position:relative}.menu>button{border:1px solid transparent;padding:2px 10px;background:none}.menu>button:hover,.menu.open>button{background:var(--title);color:#fff}.menu .items{display:none;position:absolute;z-index:20;top:100%;left:0;min-width:200px;background:var(--face);border:2px solid;border-color:var(--hi) var(--dark) var(--dark) var(--hi);padding:2px}.menu.open .items{display:block}.items button{display:block;width:100%;text-align:left;border:0;background:none;padding:4px 12px}.items button:hover:not(:disabled){background:var(--title);color:#fff}.items hr{margin:2px 0}#picker{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:4px 8px}#notice{background:#ffffc0;border:1px solid var(--lo);padding:2px 8px}#notice:empty{display:none}#area{flex:1;min-height:0;overflow:auto;background:#fff;margin:0 4px;border:2px solid;border-color:var(--lo) var(--hi) var(--hi) var(--lo);position:relative;padding:0 8px 8px}#zoomer{width:fit-content;margin:8px auto 0}#tabs{display:flex;flex-wrap:wrap;padding:0 8px}#tabs button{border-width:0 2px 2px;padding:3px 14px}#tabs button.on{background:#fff;font-weight:700}#status{display:flex;flex-wrap:wrap;gap:12px;padding:3px 8px}#status .bad{color:var(--err);font-weight:700}table.sheet{border-collapse:collapse;table-layout:fixed;background:#fff}table.sheet td{padding:0;vertical-align:middle;overflow:hidden;white-space:pre-wrap}table.sheet td.n{border:none}table.sheet-head{position:sticky;top:0;z-index:5}table.sheet-head+table.sheet{margin-top:-1px}table.sheet td.ed:hover{outline:2px solid var(--title);outline-offset:-2px}#cell-input{position:absolute;z-index:10;font-size:13pt;text-align:center;padding:0}.ctx{position:fixed;z-index:30;min-width:170px;background:var(--face);border:2px solid;border-color:var(--hi) var(--dark) var(--dark) var(--hi);padding:2px}.ctx button{display:block;width:100%;text-align:left;border:0;background:none;padding:4px 12px}.ctx button:hover:not(:disabled){background:var(--title);color:#fff}dialog.win{background:var(--face);padding:0;border:2px solid;border-color:var(--hi) var(--dark) var(--dark) var(--hi);max-width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto}dialog.win .title{background:var(--title);color:#fff;font-weight:700;padding:3px 8px}dialog.win .body{padding:12px}dialog.win .body p{margin:0;white-space:pre-wrap}dialog.win .foot{display:flex;justify-content:flex-end;gap:6px;padding:0 12px 12px}dialog.win label{display:flex;align-items:center;gap:6px;margin:4px 0}dialog.win table{border-collapse:collapse;width:100%;background:#fff}dialog.win th,dialog.win td{border:1px solid var(--lo);padding:2px 6px;text-align:left}dialog.win th{background:var(--face)}.err{color:var(--err);font-weight:700;min-height:1.4em;margin:4px 0}#login{margin:auto;width:min(340px,calc(100vw - 32px));background:var(--face);border:2px solid;border-color:var(--hi) var(--dark) var(--dark) var(--hi)}#login form{padding:16px;display:grid;gap:8px}#login label{display:grid;gap:2px}#boot{margin:auto;padding:24px;text-align:center}dialog.win textarea{font:13px Consolas,monospace;tab-size:4;width:100%;background:#fff;border:2px solid;border-color:var(--lo) var(--hi) var(--hi) var(--lo)}[hidden]{display:none!important}
