:root{font-family:Arial,"Noto Sans KR","Malgun Gothic",sans-serif;color:#202b3c;background:#fff;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}button{font:inherit;font-size:14px;border:1px solid #dce2e9;background:white;color:inherit;border-radius:6px;padding:8px 14px;cursor:pointer}button:hover:enabled{background:#eff4ff}button:focus-visible{outline:3px solid #779bed;outline-offset:2px}button:disabled{cursor:default;color:#8993a3}.app{display:grid;grid-template-columns:192px minmax(0,1fr);height:100dvh;overflow:hidden}aside{background:#f5f7fb;border-right:1px solid #e1e6ee;display:flex;flex-direction:column;min-height:0;padding:24px 16px}.brand{display:flex;align-items:center;gap:12px;margin:0 4px 32px;font-size:16px}.brand>span{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#2456bd;color:white;font-weight:700}nav{display:grid;gap:7px}nav button{display:flex;align-items:center;gap:12px;text-align:left;border:0;background:transparent;padding:12px;font-size:15px}nav button>span{width:20px;font-size:20px;text-align:center}nav .active{background:#e5edfd;color:#2456bd;font-weight:700}.aside-foot{margin-top:auto;font-size:12px;color:#7c8797;padding:12px 4px}main{display:flex;flex-direction:column;min-height:0;min-width:0}header{height:74px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid #e4e8ef;gap:16px}h1{margin:0;font-size:19px;font-weight:700;white-space:nowrap}.user{display:flex;align-items:center;gap:9px;color:#7b8494;font-size:14px;white-space:nowrap}.avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#edf1f7;color:#687589;font-weight:700}.toolbar{height:84px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 28px;gap:12px}.month-controls{display:flex;align-items:center;gap:20px}.arrows{display:flex;gap:3px}.arrows button{border:0;font-size:25px;padding:3px 12px}h2{font-size:23px;margin:0;white-space:nowrap;font-weight:600}.views{display:flex;border:1px solid #dce2e9;border-radius:7px;overflow:hidden}.views button{border:0;border-radius:0;min-width:45px}.views button[aria-pressed=true]{background:#eaf0fd;color:#2456bd;font-weight:700}.calendar{flex:1;min-height:0;display:flex;flex-direction:column;margin:0 28px 24px;border:1px solid #dfe5ed;border-radius:8px;overflow:hidden}.weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));height:38px;flex-shrink:0;background:#f8f9fc;border-bottom:1px solid #e0e5ed}.weekdays span{display:flex;align-items:center;justify-content:center;font-size:14px;color:#6e7b8e}.weekdays span:first-child{color:#be5a61}.weekdays span:last-child{color:#4775c1}.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));flex:1;min-height:0}.day{min-height:0;min-width:0;border-right:1px solid #e5e9ef;border-bottom:1px solid #e5e9ef;padding:10px 12px;background:white}.day:nth-child(7n){border-right:0}.day.last-row{border-bottom:0}.day.outside{background:#fafbfc;color:#b4bdc9}.date{display:grid;place-items:center;width:29px;height:29px;font-size:14px}.day.sun:not(.outside){color:#be5a61}.day.sat:not(.outside){color:#4775c1}.day.is-today .date{background:#2456bd;color:white;border-radius:50%;font-weight:700}.day.is-today{background:#f7faff}@media(max-width:900px){.app{grid-template-columns:150px minmax(0,1fr)}aside{padding:18px 10px}header,.toolbar{padding-left:16px;padding-right:16px}.calendar{margin:0 16px 16px}.user>span:last-child{display:none}h1{font-size:16px}.month-controls{gap:8px}h2{font-size:19px}.day{padding:5px}}@media(max-width:600px){.app{grid-template-columns:64px minmax(0,1fr)}.brand strong,.aside-foot{display:none}.brand{margin-left:3px}nav button{font-size:0;padding:12px 10px}nav button span{font-size:20px}header{height:58px;padding:0 10px}h1{font-size:14px}.toolbar{height:70px;padding:0 8px}.calendar{margin:0 8px 10px}.month-controls{gap:3px}.month-controls>button{padding:6px 8px}.arrows button{padding:3px 5px}h2{font-size:16px}.views button{min-width:25px;padding:6px}.day{padding:3px 0}.date{width:25px;height:25px;font-size:12px}}
.day{display:flex;flex-direction:column;cursor:pointer}.date{padding:0;border:0;background:transparent;flex-shrink:0;border-radius:50%;color:inherit}.entries{display:flex;flex-direction:column;gap:4px;min-height:0;overflow:auto;margin-top:5px;color:#202b3c}.entry{display:flex;align-items:center;gap:6px;border:0;border-left:3px solid;padding:5px 6px;text-align:left;border-radius:3px;flex-shrink:0;min-width:0;font-size:14px}.entry.schedule{background:#edf3ff;border-color:#2456bd}.entry.task{background:#e8f5f2;border-color:#227563}.entry.event{background:#fff1de;border-color:#ad6b12}.kind-label{font-size:12px;flex-shrink:0}.entry-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}dialog{width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #dce2e9;border-radius:12px;padding:24px;color:#202b3c;box-shadow:0 20px 80px #18263c40}dialog::backdrop{background:#14213a66}.editor-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.editor-heading h2{font-size:20px}.editor-heading button{border:0;font-size:24px;padding:0 8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:14px;min-width:0}.full{grid-column:1/-1}input,select,textarea{font:inherit;font-size:16px;color:inherit;border:1px solid #cdd6e3;border-radius:6px;padding:9px;width:100%;background:white}textarea{resize:vertical;min-height:100px}input:focus,select:focus,textarea:focus{outline:2px solid #779bed;outline-offset:1px}.editor-actions{display:flex;gap:8px;align-items:center}.editor-actions>span{flex:1}.primary{background:#2456bd;color:white;border-color:#2456bd}.primary:hover:enabled{background:#1d469a}#delete-entry{color:#ad3340}.storage-note{font-size:13px;color:#657186;line-height:1.5}#editor-error{color:#ad3340;font-size:14px}#notice{position:fixed;bottom:4px;right:28px;font-size:12px;color:#5b687a;pointer-events:none}@media(max-width:600px){.entry{padding:3px 2px;gap:2px}.kind-label{display:none}.form-grid{gap:12px}dialog{padding:16px}}
[hidden]{display:none!important}.journal{flex:1;min-height:0;display:flex;flex-direction:column;margin:0 28px 24px;border:1px solid #dfe5ed;border-radius:8px;overflow:hidden}.journal-heading{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#f8f9fc;border-bottom:1px solid #dfe5ed}.journal-heading h2{font-size:18px}.journal-heading span{font-size:14px;color:#657186}.journal-scroll{overflow:auto;min-height:0;flex:1}table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:1050px;font-size:14px}th,td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid #e5e9ef;overflow-wrap:anywhere;white-space:pre-wrap}th{position:sticky;top:0;background:#f3f6fb;color:#506079;z-index:1}th:nth-child(6){width:28%}th:nth-child(8){width:18%}.journal-task{padding:0;border:0;background:transparent;color:#2456bd;text-align:left;font-weight:600;white-space:pre-wrap;overflow-wrap:anywhere}.task-content{margin-top:6px;line-height:1.5;color:#536176}#journal-empty{padding:24px;color:#657186}.completion input{width:20px;height:20px;margin-top:10px}@media(max-width:900px){.journal{margin:0 16px 16px}}@media(max-width:600px){.journal{margin:0 8px 10px}}

.login-fields{display:grid;gap:16px}.login-fields label{display:grid;gap:8px;font-size:14px}.login-fields p{font-size:14px;line-height:1.6;margin:0;color:#657186}

#import-preview-dialog{width:min(1440px,94vw);max-width:94vw;max-height:90vh;overflow:auto}#preview-summary{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}#preview-summary span{padding:8px 12px;background:#e9eef6;border-radius:6px}#preview-groups p{font-size:14px;line-height:1.5}.preview-controls{display:flex;align-items:center;gap:12px;margin:14px 0}.preview-controls label{display:flex;align-items:center;gap:8px}.preview-scroll{max-height:48vh;overflow:auto}.preview-scroll table{border-collapse:collapse;width:100%;min-width:1100px;font-size:14px}.preview-scroll th,.preview-scroll td{padding:8px;border:1px solid #d8dfea;vertical-align:top;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere}.preview-scroll th{position:sticky;top:0;background:#eff3f8;z-index:1}.preview-scroll td:nth-child(7){min-width:260px;max-width:500px}#preview-error{color:#9f2929}#import-preview-dialog p{font-size:14px;line-height:1.5}

/* Table density from X v26 / 60880019; multiline work content remains readable. */
.journal-scroll table,.preview-scroll table{font-size:14px;line-height:18px}
.journal-scroll td,.preview-scroll td{height:28px;padding:1px 3px;font-size:14px;line-height:18px}
.journal-scroll th,.preview-scroll th{padding:3px 5px;font-size:14px;line-height:18px}
.journal-scroll .journal-task{line-height:18px;min-height:0}
.journal-scroll .task-content{margin-top:0;line-height:18px}

.remote-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 28px 8px;font-size:14px;flex-shrink:0}.remote-toolbar button{padding:3px 8px}.remote-detail{min-width:0;table-layout:auto}.remote-detail th{position:static;width:85px!important}.remote-detail td{white-space:pre-wrap}.remote-detail th,.remote-detail td{padding:3px 5px;line-height:18px;font-size:14px}#remote-task-dialog{width:min(900px,94vw);max-width:94vw;max-height:90vh;overflow:auto}
.user{gap:10px;flex-wrap:wrap}.user [hidden]{display:none}#auth-status{font-size:14px;color:#64748b}#auth-status.signed-in{color:#15803d}#auth-user{max-width:260px;overflow-wrap:anywhere;font-size:14px}#auth-logout{font-size:14px;color:inherit}.auth-message{margin:0;padding:8px 24px;background:#eef5ff;font-size:14px}.auth-link{display:inline-block;padding:10px;text-align:center;text-decoration:none}
.workflow{flex:1;min-height:0;display:flex;flex-direction:column;margin:8px 28px 24px;border:1px solid #dfe5ed;border-radius:8px;overflow:hidden}.workflow-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#f8f9fc;border-bottom:1px solid #dfe5ed}.workflow-heading h2{font-size:18px}.workflow-heading span{font-size:14px;color:#657186}.workflow-categories{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px 4px}.workflow-categories button{padding:4px 9px;font-size:14px;line-height:18px}.workflow-categories .active{background:#e5edfd;color:#2456bd;border-color:#9db7eb}.workflow-note{margin:6px 12px 10px;color:#657186;font-size:14px;line-height:18px}.workflow-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;flex:1;min-height:0;overflow:auto;padding:0 12px 12px}.workflow-column{display:flex;flex-direction:column;min-height:0;min-width:0;background:#f7f9fc;border:1px solid #dfe5ed;border-radius:6px;overflow:hidden}.workflow-column h3{margin:0;padding:8px 10px;border-bottom:1px solid #dfe5ed;font-size:14px;line-height:18px}.workflow-cards{display:flex;flex-direction:column;gap:6px;min-height:0;overflow:auto;padding:6px}.workflow-card{display:flex;flex-direction:column;gap:3px;flex-shrink:0;text-align:left;padding:6px 8px;border-radius:4px;min-width:0}.workflow-card strong{font-size:14px;line-height:18px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.workflow-card span,.workflow-card small{font-size:14px;line-height:18px;color:#657186;overflow-wrap:anywhere}.workflow-column-empty{font-size:14px;color:#7b8494;padding:10px 4px;margin:0}.workflow-empty{font-size:14px;line-height:18px;color:#657186;padding:0 12px 12px;margin:0}@media(max-width:900px){.workflow{margin:8px 16px 16px}.workflow-heading{flex-wrap:wrap}.workflow-board{grid-template-columns:repeat(4,minmax(160px,1fr))}}@media(max-width:600px){.workflow{margin:8px 8px 10px}.workflow-categories{gap:4px}.workflow-board{grid-template-columns:repeat(4,minmax(145px,1fr))}}
#workflow-preview-dialog{width:min(1320px,95vw);max-width:95vw;max-height:92vh;overflow:auto}#workflow-preview-dialog p{margin:8px 0;font-size:12px}#workflow-preview-dialog .workflow-board{margin-top:8px}#workflow-preview-dialog .workflow-cards{max-height:48vh;overflow:auto}#workflow-preview-dialog .workflow-card small{display:block;max-height:34px;overflow:hidden}#workflow-preview-detail td{white-space:pre-wrap;overflow-wrap:anywhere}#open-workflow-preview{margin-left:auto;font-size:12px;padding:5px 9px}
.workflow-views{display:flex;gap:5px;margin:6px 0}.workflow-views button{font-size:12px;padding:4px 9px}.workflow-views button[aria-pressed=true]{color:#174bb6;background:#eaf0ff;border-color:#91ace8}#workflow-row-scroll{max-height:calc(100vh - 285px);overflow:auto;border:1px solid #dce2eb}.workflow-row-table{width:100%;border-collapse:collapse;font-size:12px}.workflow-row-table th{position:sticky;top:0;background:#f2f5fa;z-index:1;text-align:left;white-space:nowrap}.workflow-row-table td,.workflow-row-table th{padding:5px 7px;border-bottom:1px solid #e4e8ee}.workflow-row-table tbody tr{cursor:pointer}.workflow-row-table tbody tr:hover{background:#f4f7fc}.workflow-row-table td:nth-child(1){width:82px;white-space:nowrap}.workflow-row-table td:nth-child(2){width:95px;white-space:nowrap}.workflow-row-table td:nth-child(3){max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-row-table td:nth-child(4){width:48px;white-space:nowrap}.workflow-row-table td:last-child{white-space:nowrap}.flow-track{min-width:440px;white-space:nowrap}.flow-step{padding:3px 5px;border:0;background:transparent;font-size:12px;color:#707c8d}.flow-step+.flow-step:before{content:'─';color:#c1c9d4;margin-right:6px}.flow-step.complete{color:#158158}.flow-step.current{font-weight:700;background:#e8efff;color:#164caf;border-radius:4px;box-shadow:inset 0 0 0 1px #9bb8ec}.flow-track small{display:block;color:#7e8998;font-size:11px;margin-top:1px}#workflow-board[hidden],#workflow-row-scroll[hidden]{display:none!important}#flow-step-dialog{max-width:560px}#flow-step-dialog p{font-size:13px}#remote-edit-dialog textarea{min-height:90px}

.workflow-row-table th{width:auto!important}.workflow-row-table td{vertical-align:middle;white-space:nowrap;overflow:hidden;line-height:18px}.workflow-row-table td,.workflow-row-table th{padding:3px 6px}.flow-track small{display:inline;margin-left:6px;font-size:11px}.flow-step{line-height:18px;padding:2px 3px}.flow-step+.flow-step:before{margin-right:4px}
#master-view{min-height:0;flex:1;display:flex;flex-direction:column}#master-view[hidden]{display:none!important}.master-heading{display:flex;align-items:center;gap:16px;margin:12px 0}.master-heading h2{font-size:18px;margin:0}.master-heading button{margin-left:auto}.master-filters{display:flex;gap:6px;align-items:end;flex-wrap:wrap}.master-filters label{display:flex;flex-direction:column;gap:3px;font-size:12px}.master-filters input,.master-filters select{height:29px;padding:3px 5px;font-size:12px;max-width:118px}.master-filters input[type=search]{max-width:155px}.master-filters button{height:29px}.master-scroll{flex:1;min-height:0;overflow:auto;border:1px solid #dce2ea}.master-table{width:100%;min-width:1060px;table-layout:fixed;border-collapse:separate;border-spacing:0}.master-table th{width:auto!important;position:sticky;top:0;z-index:1;background:#f1f4f8;padding:0 6px;height:30px;text-align:left}.master-table th button{border:0;background:transparent;padding:0;font-size:12px}.master-table td{height:29px;max-height:29px;box-sizing:border-box;padding:3px 6px;line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid #e5e9ee;border-right:1px solid #edf0f3;font-size:12px}.master-table tr:hover{background:#eef5ff}.master-table tr{cursor:pointer}#master-message{font-size:12px;margin:7px 0;color:#58677c}#quick-dialog{width:550px}#quick-dialog details label{display:block;margin:8px 0}#master-cell-input input,#master-cell-input textarea,#master-cell-input select{width:100%;min-width:280px}#master-cell-input textarea{min-height:110px}#master-cell-dialog{width:440px}.master-table th button[aria-pressed=true]{color:#1b5eb7;font-weight:700}

.master-table td:has(.master-inline){padding:0 2px}.master-inline{height:27px!important;width:100%!important;min-width:0;padding:2px 3px!important;font-size:12px!important;border:1px solid #2369bd!important;border-radius:0!important;box-sizing:border-box}.master-table td:focus-within{overflow:visible}
