:root{color-scheme:dark;--bg:#21272c;--nav:#252c31;--panel:#2c343a;--raised:#313a41;--raised2:#353f47;--line:#3f4b54;--text:#dde3e8;--muted:#a2adb6;--quiet:#8d9ba5;--accent:#74a2c6;--accent2:#354c5d;--danger:#d4a487;--focus:#afcade;font-family:system-ui,-apple-system,"Segoe UI","Malgun Gothic",sans-serif;font-size:13px}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:var(--bg);color:var(--text)}body{overflow:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}button:disabled{opacity:.55;cursor:not-allowed}h1,h2,h3,p{margin:0}small{font-size:11px} .sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app{height:100dvh;display:flex;flex-direction:column;min-height:0}.header{height:54px;min-height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;background:#252b31;border-bottom:1px solid var(--line);gap:16px}.header-left,.header-right{display:flex;align-items:center;gap:11px;min-width:0}.header-left{flex-shrink:0}.header-right{flex:1;justify-content:flex-end}.mark{background:#3a5366;color:#d9e0e5;font-weight:900;letter-spacing:-.07em;border-radius:3px;display:grid;place-items:center;width:43px;height:43px;font-size:22px}.mark.small{width:30px;height:30px;border-radius:3px;font-size:16px}.header-name{display:flex;flex-direction:column;gap:1px}.header-name b{font-size:13px}.header-name span{color:var(--quiet);font-size:10px}.area-nav{display:flex;align-items:center;gap:4px;padding:3px;border:1px solid var(--line);border-radius:3px;margin-right:auto}.area-tab{border:0;padding:7px 14px;border-radius:3px;background:transparent;color:#aeb8bf;font-size:12px}.area-tab.current{background:var(--accent2);color:#dee4e8}.btn{border:1px solid var(--line);background:var(--raised);color:var(--text);padding:8px 12px;border-radius:3px;font-size:12px;white-space:nowrap;font-weight:650;transition:background .15s}.btn:hover{background:#3f4a53}.btn.primary{background:#3f5a6e;border-color:#437ba5;color:#e7ebee}.btn.primary:hover{background:#3d6f96}.btn.outline{background:transparent;border-color:#4d5b66}.btn.ghost{background:transparent;border-color:transparent;color:#a9b8c3}.btn.subtle{background:#2e363c;border-color:#495661}.btn.link{border:0;background:transparent;color:#afcade}.btn.sm{font-size:11px;padding:6px 10px}.btn.fluid{width:100%}.btn.disabled-look{opacity:.65}.preview-notice{height:25px;min-height:25px;display:flex;align-items:center;gap:10px;padding:0 19px;background:#2d353b;border-bottom:1px solid #3b464e;color:#b4bdc4;font-size:10px}.preview-notice strong{color:#d7c18c;font-size:10px}.notice-version{margin-left:auto;color:#8f9da7}.shell{display:flex;flex:1;min-height:0;overflow:hidden}.sidebar{width:207px;flex-shrink:0;background:var(--nav);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.side-head{padding:20px 17px 15px;display:flex;flex-direction:column;gap:5px}.side-head strong{font-size:15px}.side-head span{font-size:10px;color:var(--quiet);line-height:1.5}.side-menu{padding:0 8px;display:flex;flex-direction:column;gap:5px}.nav-item{width:100%;display:flex;align-items:center;gap:11px;text-align:left;border:1px solid transparent;background:transparent;color:#a9b8c4;padding:12px 11px;border-radius:3px;font-size:12px}.nav-item:hover{background:#2f373e;color:#e3e8eb}.nav-item.active{background:#354c5d;border-color:#3d6f96;color:#dde3e8;font-weight:800}.nav-icon{width:18px;display:inline-flex;justify-content:center;color:#aab4bc;font-size:15px}.side-divider{margin:21px 18px 15px;height:1px;background:var(--line)}.side-link{padding:0 15px;display:flex;flex-direction:column;gap:9px}.side-link>span{font-size:10px;color:var(--quiet)}.side-quick{text-align:left;min-height:33px}.side-footer{margin-top:auto;border-top:1px solid var(--line);padding:13px 17px;font-size:10px;color:#b7c0c7}.side-footer small{display:block;color:var(--quiet);padding-top:6px}.dot{display:inline-block;background:#b2ac74;width:6px;height:6px;border-radius:99px;margin-right:5px}.content{min-width:0;min-height:0;flex:1;overflow:hidden}.page{height:100%;min-height:0;display:flex;flex-direction:column;padding:15px 17px 15px;gap:11px}.page-head{display:flex;align-items:center;justify-content:space-between;min-height:62px;gap:16px;flex-shrink:0}.location{font-size:10px;color:#90b5d1;font-weight:700}.location span{padding:0 5px;color:#738491}.page-head h1{font-size:20px;font-weight:750;line-height:1.3;margin:3px 0}.page-head p{font-size:11px;color:var(--muted);line-height:1.35}.page-actions{display:flex;gap:8px}.main-flow{min-height:0;flex:1;display:flex;flex-direction:column;gap:11px;overflow:hidden}.panel{background:var(--panel);border:1px solid var(--line);border-radius:3px;min-height:0;overflow:hidden}.capture{height:48px;flex-shrink:0;display:flex;align-items:center;gap:12px;border:1px solid #4d5b66;border-radius:3px;background:#2e373d;padding:7px 8px 7px 15px}.capture>span{font-size:20px;color:#9fbfd8}.capture input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--text);font-size:13px}.capture input::placeholder{color:#96a2ac}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;flex-shrink:0}.stats>div{height:77px;border:1px solid var(--line);background:var(--panel);border-radius:3px;padding:12px 15px;display:flex;flex-direction:column;justify-content:space-between}.stats span{font-size:11px;color:var(--muted)}.stats strong{font-size:23px;color:#d0d8de;font-weight:720}.home-panels{display:grid;grid-template-columns:1fr 1fr;gap:11px;flex:1;min-height:0}.home-panel{display:flex;flex-direction:column}.panel-title{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid var(--line);gap:12px;min-height:58px;flex-shrink:0}.panel-title>div{display:flex;flex-direction:column;gap:5px}.panel-title b{font-size:13px}.panel-title small{color:var(--quiet);font-size:10px}.line-list{flex:1;min-height:0;overflow-y:auto}.task-line{display:flex;align-items:center;width:100%;text-align:left;gap:11px;background:transparent;border:0;color:#d4dbe1;padding:13px 14px;border-bottom:1px solid #39434b;min-height:48px}.task-line:hover{background:#333d44}.task-line>span:nth-child(2){flex:1;font-size:12px}.task-line em{font-style:normal;color:#9aa7b0;font-size:10px}.fake-check{width:16px;height:16px;border:1px solid #4883b0;border-radius:3px;display:grid;place-items:center;color:#a7c5db}.chev{color:#8d9ba6;font-size:18px}.panel-foot{height:43px;flex-shrink:0;border-top:1px solid var(--line);display:flex;gap:6px;align-items:center;padding:0 12px}.home-bottom{flex-shrink:0;min-height:66px;border:1px solid var(--line);border-radius:3px;background:var(--panel);display:flex;align-items:center;gap:9px;padding:10px 13px}.home-bottom>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.home-bottom strong{font-size:12px}.home-bottom small{color:var(--muted)}.seg{display:flex;gap:3px;align-items:center;flex-shrink:0}.seg button{border:1px solid transparent;border-radius:3px;background:#2e363c;color:#b6bfc5;padding:9px 18px;font-size:12px}.seg button.on{background:#3b5366;color:#e4e9ed;border-color:#457da8}.data-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:11px;flex:1;min-height:0}.data-main{display:flex;flex-direction:column}.list-toolbar{padding:10px 12px;border-bottom:1px solid var(--line);display:flex;gap:8px;justify-content:space-between;align-items:center;min-height:56px}.input-search{display:flex;align-items:center;gap:7px;border:1px solid #4b5964;border-radius:3px;background:#333c43;padding:0 10px;min-width:180px;width:min(340px,48%);height:35px}.input-search>span{font-size:17px;color:#b1bbc2}.input-search input{background:transparent;border:0;outline:0;color:var(--text);font-size:12px;flex:1;min-width:0}.list-toolbar-right{display:flex;gap:7px}.table-area{overflow:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:#4d5b66 transparent}.data-table{width:100%;border-collapse:collapse;min-width:610px}.data-table th{font-size:11px;color:#b2bbc3;text-align:left;font-weight:650;background:#303940;position:sticky;top:0;padding:12px 13px;border-bottom:1px solid var(--line);white-space:nowrap;z-index:1}.data-table td{font-size:12px;color:#c5cfd6;padding:12px 13px;border-bottom:1px solid #3a444c;white-space:nowrap}.data-table th:first-child{width:46%}.data-table tr.selected{background:#304454}.data-table tr:hover{background:#3a454d}.row-title{border:0;background:transparent;color:#dae1e6;font-weight:700;padding:0;text-align:left;font-size:12px}.row-title:hover{text-decoration:underline;color:#c0cbd3}.arrow{border:0;background:transparent;color:#a7c4db;font-size:17px}.list-info{border-top:1px solid var(--line);min-height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;color:#b0bcc5;font-size:10px;gap:10px}.list-info i{font-style:normal;color:#9eaab3}.chip{border-radius:3px;background:#354c5d;color:#c3cdd5;font-size:10px;padding:4px 7px;white-space:nowrap;display:inline-block}.chip.muted{background:#3a444c;color:#b1bbc2}.peek{display:flex;flex-direction:column}.peek-top{height:55px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 15px;font-size:12px;font-weight:750;flex-shrink:0}.peek-main{padding:15px;flex:1;min-height:0;overflow:auto}.eyebrow{font-size:10px;color:#9dbed7;font-weight:700}.peek-main h2{margin:9px 0 18px;font-size:17px;line-height:1.4}.peek dl{margin:0}.peek dl>div{display:flex;justify-content:space-between;gap:13px;padding:10px 0;border-bottom:1px solid #3f4b54}.peek dt{color:#a5b0b8;font-size:11px}.peek dd{margin:0;text-align:right;font-size:11px;font-weight:650}.context-note{margin:20px 0 10px;background:#333c43;padding:14px;border-radius:3px}.context-note strong{font-size:11px;color:#b3c0ca}.context-note p{color:#a5b4c0;font-size:11px;line-height:1.7;margin-top:7px}.peek details,.advanced{border-top:1px solid var(--line);padding-top:12px}.peek summary,.advanced summary{cursor:pointer;font-size:11px;color:#adbbc6}.peek details p{padding-top:9px;font-size:11px;color:var(--muted);line-height:1.7}.peek-bottom{padding:12px;display:flex;gap:6px;border-top:1px solid var(--line);flex-shrink:0;flex-wrap:wrap}.empty{text-align:center;color:var(--quiet)!important}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:11px;flex:1;min-height:0}.review-form,.review-guide{display:flex;flex-direction:column;min-height:0}.review-content{min-height:0;flex:1;display:flex;flex-direction:column;padding:16px;gap:12px}.idea-input{width:100%;flex:1;min-height:180px;resize:none;line-height:1.85;background:#262d33;border:1px solid #4b5963;color:#e3e8eb;border-radius:3px;padding:18px;font-size:14px}.idea-input::placeholder{color:#8f9da7}.idea-input:focus{outline:1px solid var(--accent)}.idea-bottom{display:flex;justify-content:space-between;gap:14px;align-items:center}.hint{color:#a4afb8;font-size:11px;line-height:1.6}.idea-commands{display:flex;gap:7px}.review-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:12px}.optional-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;background:#303940;border-radius:3px;padding:10px}.optional-details>div{display:flex;flex-direction:column;gap:7px;min-width:0}.optional-details span{font-size:10px;color:var(--muted)}.optional-details select{width:100%;background:#2c343a;border:1px solid #4a5863;color:#dbe1e6;border-radius:3px;padding:8px;font-size:11px}.guide-content{display:flex;flex-direction:column;padding:16px;gap:9px;min-height:0;overflow:auto}.result-mark{width:34px;height:34px;border-radius:3px;background:#384f61;color:#b1bfc9;display:grid;place-items:center;font-size:17px}.guide-content h3{font-size:14px;margin-top:4px}.guide-content p{color:#b5bec5;line-height:1.7;font-size:11px;margin-bottom:7px}.guide-step{display:flex;align-items:flex-start;gap:12px;padding:9px 0;border-top:1px solid var(--line)}.guide-step>span{color:#7faacb;font-weight:850;font-size:12px}.guide-step>div{display:flex;flex-direction:column;gap:5px}.guide-step b{font-size:12px}.guide-step small{color:#9faab3}.guide-foot{border-radius:3px;background:#364048;padding:11px;line-height:1.6;color:#b3bcc3;font-size:11px;margin-top:auto}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;align-content:start}.settings-card{min-height:190px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:9px;padding:13px 16px;border-top:1px solid #3e4952;font-size:12px}.setting-row span:last-child{color:#9da9b2;font-size:11px}.quiet{color:var(--muted);line-height:1.8;font-size:11px;padding:16px}.builder{display:flex;flex-direction:column}.builder-body{padding:19px;display:flex;flex-direction:column;gap:14px;overflow:auto}.compact-row{display:flex;justify-content:space-between;align-items:center;gap:15px;max-width:560px}.compact-row span{color:#b6c3cd;font-size:12px}.compact-row select{width:60%;padding:10px;background:#323b42;color:var(--text);border:1px solid #4d5b66;border-radius:3px}.safe-note{background:#323c43;border:1px solid #48555f;border-radius:3px;padding:12px;color:#abb8c2;line-height:1.6;font-size:11px}.form-actions{display:flex;gap:8px;padding-top:9px}.builder .advanced{margin-top:8px}.advanced label{display:block;font-size:11px;margin-top:12px;color:#c3cbd2}.paper-sm{background:#f0f2f3;color:#3d4851;margin:18px auto;padding:25px 22px;width:min(78%,265px);aspect-ratio:210/297;box-shadow:0 8px 20px #0003;display:flex;flex-direction:column;gap:16px}.paper-sm h3{font-size:13px}.paper-sm>span{font-size:9px;color:#8d9ba5}.paper-sm b{font-size:10px}.paper-sm p{font-size:9px;color:#8d9ba5}.paper-rule{height:1px;background:#b5bcc1}.diagram{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:30px;padding:20px;flex:1}.diagram-row{display:flex;align-items:center;justify-content:center;gap:18px;width:100%}.diagram-row>div{padding:20px;border:1px solid #5b6974;border-radius:3px;background:#333c43;min-width:145px;text-align:center;font-size:13px;font-weight:750}.diagram-row small{display:block;color:#b1bbc2;font-weight:450;padding-top:11px}.diagram-row>span{color:#9abcd6;font-size:23px}.diagram-notes{padding:18px;border:1px solid var(--line);border-radius:3px;width:min(700px,100%)}.diagram-notes p{color:var(--muted);line-height:1.7;padding:10px 0;font-size:12px}.detail-panel{display:flex;flex-direction:column;flex:1}.detail-bar{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line)}.detail-bar h2{font-size:18px;margin-top:7px}.detail-bar>div:last-child{display:flex;gap:7px}.detail-tabs{display:flex;gap:3px;padding:0 15px;border-bottom:1px solid var(--line)}.detail-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:#aab4bc;padding:13px 16px;font-size:12px}.detail-tabs button.on{border-bottom-color:var(--accent);color:#d7dee4}.detail-scroll{flex:1;min-height:0;overflow:auto;padding:20px}.minimal-form{max-width:760px;display:flex;flex-direction:column;gap:18px}.field-label{display:flex;flex-direction:column;gap:8px;color:#b3c0ca;font-size:12px;font-weight:700}.field-label .input,.field-label textarea{background:#323b42;border:1px solid #515e67;color:#e3e8eb;border-radius:3px;padding:11px 12px;resize:vertical;min-height:39px;font-size:12px}.field-label textarea{min-height:88px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:13px}.detail-footer{display:flex;align-items:center;justify-content:flex-end;gap:7px;border-top:1px solid var(--line);padding:12px 16px}.blank-state{padding:50px;color:#a8b7c2;line-height:1.9}.blank-state b{font-size:14px;color:#d5dce1}.blank-state p{margin:10px 0 19px}.link-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.link-cards>div{border:1px solid var(--line);padding:20px;border-radius:3px}.link-cards p{font-size:12px;color:var(--muted);line-height:1.8;margin:13px 0}.overlay{position:fixed;inset:0;background:#020609b9;display:flex;align-items:center;justify-content:center;z-index:20;padding:16px}.dialog{width:min(530px,100%);max-height:calc(100dvh - 45px);background:#2e373d;border:1px solid #5c6b76;box-shadow:0 20px 70px #0009;border-radius:3px;display:flex;flex-direction:column}.dialog-head{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.dialog-head h2{font-size:17px}.close-icon{border:none;background:transparent;font-size:20px;color:#a6b5c1}.dialog-body{padding:21px;display:flex;flex-direction:column;gap:15px;min-height:0;overflow:auto}.dialog-body>p{color:#a9b8c4;font-size:12px;line-height:1.7}.dialog-body .advanced{padding:13px 0}.dialog-body .advanced .two-cols{margin-top:16px}.dialog-foot{display:flex;justify-content:flex-end;padding:14px 20px;border-top:1px solid var(--line);gap:8px}.connection-list{display:flex;flex-direction:column;gap:7px}.connection-list>div{padding:11px 12px;border:1px solid var(--line);border-radius:3px;display:flex;flex-direction:column;gap:7px}.connection-list b{font-size:12px}.connection-list small{color:var(--muted);line-height:1.5}.toast{position:fixed;bottom:25px;right:25px;z-index:40;background:#364d5e;border:1px solid #528cb8;color:#e6ebee;padding:14px 19px;border-radius:3px;box-shadow:0 10px 35px #0006;max-width:380px;font-size:12px}.login{height:100dvh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 55% 10%,#2a3c49,#232a2f 56%,#20252a)}.login-box{width:min(438px,100%);background:#2c343a;border:1px solid #46525c;border-radius:3px;box-shadow:0 20px 70px #0005;padding:34px}.login-brand{display:flex;align-items:center;gap:13px;margin-bottom:30px}.login-brand>div{display:flex;flex-direction:column;gap:5px}.login-brand b{font-size:18px}.login-brand small{color:#8d9ba5;font-size:9px;letter-spacing:.1em}.overline{font-size:10px;color:#a0c0d8;font-weight:700}.login-box h1{font-size:25px;margin:11px 0}.login-box p{font-size:12px;color:#a7b6c2;line-height:1.8;margin-bottom:21px}.login-fake{display:flex;flex-direction:column;gap:13px}.login-fake label{display:flex;flex-direction:column;font-size:11px;gap:7px;color:#b5c2cc}.login-fake input{border:1px solid #46535d;background:#303940;border-radius:3px;padding:12px;color:#b0bac1}.warn-small{background:#2e363d;border:1px solid #46535d;color:#c5b68e;border-radius:3px;font-size:11px;padding:11px;margin:18px 0}.login-foot{display:block;text-align:center;color:#8d9ba5;margin-top:16px}.mobile-only{display:none}.square{background:none;border:1px solid var(--line);color:var(--text);border-radius:3px;padding:6px 9px}
@media(max-width:1190px){.review-layout{grid-template-columns:minmax(0,1fr) 290px}.data-layout{grid-template-columns:minmax(0,1fr) 275px}.top-action{display:none}.diagram-row{gap:9px}.diagram-row>div{min-width:115px;padding:14px 8px}}@media(max-height:780px) and (min-width:800px){.page{padding:10px 14px;gap:7px}.page-head{min-height:52px}.stats>div{height:65px;padding:9px 12px}.home-bottom{min-height:53px}.panel-title{min-height:49px;padding:10px 13px}.task-line{min-height:43px;padding:9px 13px}.home-panels{gap:8px}.main-flow{gap:8px}.capture{height:43px}.side-head{padding-top:14px}.nav-item{padding:10px}.review-content{padding:11px}.guide-content{padding:11px}.guide-step{padding:6px 0}.guide-content p{margin-bottom:1px}}@media(max-width:850px){body{overflow:auto}.app{height:100dvh}.header{padding:0 10px}.mobile-only{display:block}.header-name span,.notice-version,.top-action{display:none}.header-right{gap:5px}.header-right .btn{padding:7px;font-size:12px}.sidebar{position:fixed;top:79px;bottom:0;left:-240px;z-index:15;transition:left .15s;box-shadow:6px 0 30px #0006}.sidebar.open{left:0}.content{overflow:auto}.page{height:auto;min-height:calc(100dvh - 79px);overflow:visible}.main-flow{overflow:visible}.stats{grid-template-columns:1fr 1fr}.home-panels,.data-layout,.review-layout{grid-template-columns:1fr}.home-panel{min-height:270px}.data-main{height:420px}.peek{min-height:300px}.review-form{min-height:420px}.review-guide{min-height:340px}.idea-input{min-height:240px}.settings-grid{grid-template-columns:1fr}.home-bottom{flex-wrap:wrap}.home-bottom>div{flex-basis:100%}.area-nav{position:fixed;bottom:0;left:0;right:0;margin:0;background:#242b30;z-index:10;justify-content:center;border-radius:0}.area-tab{padding:9px 7px}.diagram-row{flex-wrap:wrap}.diagram-row>div{min-width:125px}.diagram{min-height:390px}.login-box{padding:23px}.detail-panel{min-height:650px}}@media(max-width:470px){.header-right .btn.ghost{display:none}.page-head{align-items:flex-start;flex-wrap:wrap}.page-actions{margin-left:auto}.stats{gap:7px}.stats>div{height:63px}.stats strong{font-size:20px}.home-bottom .btn{flex:1}.seg{overflow:auto}.seg button{white-space:nowrap;padding:8px 12px}.review-content{padding:11px}.optional-details,.two-cols{grid-template-columns:1fr}.idea-bottom{flex-wrap:wrap}.idea-commands{margin-left:auto}.paper-sm{margin:16px auto}.list-toolbar-right .btn.ghost{display:none}.link-cards{grid-template-columns:1fr}.detail-tabs button{padding:10px 9px}}/* ---- WorkHub 0.2.0: 로그인·업무일지 실사용 화면 ---- */
code{font-family:Consolas,"Cascadia Mono",monospace;font-size:12px;background:#252b31;border:1px solid #424e58;border-radius:3px;padding:1px 5px;color:#d2dae0;word-break:break-all}
.user-name{font-size:11px;color:#aab9c4;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.side-backdrop{display:none}
.chip.draft{background:#3a3522;color:#e2cf98}.chip.danger{background:#3d2a26;color:#e6b9a6}.chip.example{background:#333d44;color:#aeb8c0;border:1px dashed #55626c}
.blank-inline{padding:22px 16px;color:#a8b7c2;display:flex;flex-direction:column;gap:7px;line-height:1.6}.blank-inline b{color:#d7dee3;font-size:13px}.blank-inline small{color:var(--muted)}
.error,.blank-inline.error{color:#e6b9a6!important}
.muted-list .task-line{opacity:.72}.example-line .fake-check{border-style:dashed}
.task-line .chip{flex-shrink:0}
.row-text{border:0;background:transparent;color:#c5cfd6;padding:0;text-align:left;font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}
.row-text:hover{color:#e5eaed}
.journal-table{table-layout:fixed;min-width:560px}.journal-table th:nth-child(1){width:112px}.journal-table th:nth-child(2){width:86px}.journal-table th:nth-child(3){width:auto}.journal-table th:nth-child(4){width:118px}.journal-table th:nth-child(5){width:44px}
.data-table th:first-child{width:auto}.data-table:not(.journal-table) th:first-child{width:46%}
.preview-cell{overflow:hidden}.nowrap{white-space:nowrap}
.list-toolbar.wrap{flex-wrap:wrap;margin:0}.list-toolbar-right{align-items:center;flex-wrap:wrap}
.date-filter{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}
input[type=date]{background:#333c43;border:1px solid #4b5964;border-radius:3px;color:var(--text);padding:6px 8px;font-size:12px;color-scheme:dark;height:33px}
.quiet-sep{color:var(--quiet)}
.journal-text{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;font-size:13px;line-height:1.8;color:#d9e0e5}
.journal-text.boxed{background:#262d33;border:1px solid #44515a;border-radius:3px;padding:14px 16px;margin-top:10px}
.peek-status{display:flex;align-items:center;gap:8px;margin:8px 0 14px}.peek-status small{color:var(--quiet)}
.editor-scroll{display:flex;flex-direction:column;gap:8px;padding:14px 18px}
.journal-input{width:100%;flex:1;min-height:200px;resize:none;line-height:1.85;background:#262d33;border:1px solid #4b5963;color:#e3e8eb;border-radius:3px;padding:16px 18px;font-size:14px}
.journal-input:focus{outline:1px solid var(--accent)}.journal-input::placeholder{color:#8f9da7}.journal-input[readonly]{opacity:.75}
.editor-hint{display:flex;justify-content:space-between;gap:12px;color:var(--quiet);font-size:10px;flex-wrap:wrap}
.editor-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.editor-meta small{color:var(--quiet);font-size:10px}
.date-field{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:#b3c0ca}
.detail-bar{flex-wrap:wrap}.detail-tabs button:disabled{opacity:.5}
.save-state{margin-right:auto;font-size:11px;color:var(--quiet)}.save-state.dirty{color:#e2cf98}.save-state.ok{color:#aebcc7}.save-state.error{color:#e6b9a6}
.rev-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px;min-height:0}
.rev-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:100%;overflow:auto}
.rev-item{width:100%;display:grid;grid-template-columns:34px 1fr;gap:2px 8px;text-align:left;border:1px solid var(--line);background:transparent;color:#c5cfd6;border-radius:3px;padding:8px 10px;font-size:11px}
.rev-item em{grid-column:2;font-style:normal;color:var(--quiet);font-size:10px}.rev-item.on{background:#354c5d;border-color:#3d6f96}
.rev-view{min-width:0;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.rev-view .journal-text{align-self:stretch}.rev-meta{font-size:11px;color:var(--muted)}
.login-form{display:flex;flex-direction:column;gap:13px}.login-form label{display:flex;flex-direction:column;font-size:11px;gap:7px;color:#b5c2cc}
.login-form input{border:1px solid #515e67;background:#303940;border-radius:3px;padding:12px;color:var(--text)}
.form-error{background:#3a2622;border:1px solid #6b4238;color:#efc6b6;border-radius:3px;font-size:12px;padding:10px 12px;line-height:1.5}
.warn-small{line-height:1.7}
.toast.ok{background:#324757;border-color:#508bb7}.toast.error{background:#45302a;border-color:#8a5a4b;color:#f3dcd2}.toast.info{background:#3a454d;border-color:#667682}
.gsearch{display:flex;align-items:flex-end;gap:8px}.gsearch .field-label{flex:1}
.settings-card .setting-row span:last-child{text-align:right}
@media(max-height:780px) and (min-width:800px){.editor-scroll{padding:10px 14px}.detail-bar{padding:10px 14px}.detail-tabs button{padding:9px 14px}.detail-footer{padding:9px 14px}.stats>div{height:62px}.peek-main{padding:12px}}
@media(max-width:850px){.side-backdrop{display:block;position:fixed;inset:79px 0 0 0;background:#0008;z-index:14}.user-name{display:none}.data-main{height:auto;min-height:360px;max-height:70dvh}.journal-input{min-height:46dvh}.rev-layout{grid-template-columns:1fr}.rev-list{max-height:180px}.detail-panel{min-height:0}.page-head{min-height:0}}
@media(max-width:470px){.journal-table{min-width:0}.journal-table th:nth-child(4),.journal-table td:nth-child(4){display:none}.journal-table th:nth-child(1){width:92px}.journal-table th:nth-child(2){width:72px}.list-toolbar.wrap .input-search{width:100%}.date-filter-input,input[type=date]{max-width:132px}.editor-meta .date-field{width:100%}.detail-footer{flex-wrap:wrap}.save-state{flex-basis:100%}.capture{gap:8px;padding-left:10px}.capture .btn{padding:8px 9px}}
/* ---- WorkHub 0.2.1: 미저장 일지 회수 ---- */
.recovery-banner{min-height:38px;display:flex;align-items:center;gap:12px;padding:5px 19px;background:#3a3522;border-bottom:1px solid #5a5032;color:#efdca8;font-size:12px;flex-shrink:0}
.recovery-banner span{flex:1;min-width:0}
.recovery-login{display:flex;flex-direction:column;gap:8px;margin-top:16px;padding:12px;border:1px solid #5a5032;background:#2f383e;border-radius:3px}
.recovery-login b{font-size:12px;color:#efdca8}.recovery-login small{color:#c9bd98;line-height:1.6}
.recovery-login textarea{min-height:90px;max-height:160px;resize:vertical;background:#262d33;border:1px solid #4d4a36;color:#e3e8eb;border-radius:3px;padding:8px;font:inherit;font-size:12px;line-height:1.6}
.recovery-login .btn{align-self:flex-start}
.safe-note.warn{background:#3a3522;border-color:#5a5032;color:#efdca8;flex-shrink:0}
.recovery-body{display:flex;flex-direction:column}.recovery-body .journal-input{flex:1;min-height:160px}
@media(max-width:850px){.recovery-banner{flex-wrap:wrap;padding:6px 10px}}
.login{display:flex;flex-direction:column;overflow-y:auto}.login-box{margin:auto}
.recovery-login textarea{max-height:110px;min-height:70px}
@media(max-height:780px){.login-box{padding:22px 30px}.login-brand{margin-bottom:16px}.login-box h1{font-size:21px;margin:6px 0}.login-box p{margin-bottom:12px;line-height:1.6}}
.recovery-layout .panel-foot{flex-wrap:wrap;height:auto;min-height:43px;padding:7px 12px}
.quick-note{font-size:11px;color:#aebcc7;margin:-4px 2px 0;flex-shrink:0}.quick-note.error{color:#e6b9a6}
/* ==== WorkHub UI 개편 1차 (WORKHUB-20261025-007) — Balsamiq식 저충실도 구조: 명확한 구획·표준 요소·큰 글자 ==== */
:root{--text:#e5eaed;--muted:#b0bec8;--quiet:#a6b1b9;--line:#4a5863;--line-strong:#657581;--panel:#2d363c;--panel-head:#323b42;font-size:14px}
small,.panel-title small,.side-head span,.location,.eyebrow,.list-info,.chip,.editor-hint,.editor-meta small,.save-state,.peek-status small,.stats span,.stats small,.hint,.guide-content p,.setting-row span:last-child{font-size:12px}
/* 헤더: 안내 띠를 상태 칩으로 흡수 */
.header{height:48px;min-height:48px;padding:0 14px}
.header-name{flex-direction:row;align-items:baseline;gap:8px}.header-name b{font-size:15px}.header-name span{font-size:12px;color:var(--quiet)}
.btn{font-size:13px;min-height:34px;padding:7px 13px}.btn.sm{font-size:12px;min-height:30px;padding:5px 11px}
.btn kbd{font:inherit;font-size:11px;color:var(--quiet);border:1px solid var(--line);border-radius:3px;padding:0 4px;margin-left:4px}
.user-name{font-size:13px}
/* 좌측 내비게이션 */
.sidebar{width:196px}
.side-menu{padding:8px 8px 0;gap:2px;overflow-y:auto;min-height:0}
.nav-item{font-size:14px;padding:9px 12px}
.nav-group{display:flex;flex-direction:column;gap:2px;padding-bottom:6px}
.nav-group+.nav-group{border-top:1px solid var(--line);padding-top:6px}
.nav-group-label{font-size:12px;color:var(--quiet);font-weight:700;padding:6px 12px 4px}
.nav-count{margin-left:auto;min-width:22px;text-align:center;font-size:12px;font-weight:800;color:#202d37;background:#e2cf98;border-radius:3px;padding:1px 7px}
/* 페이지 제목: 한 줄, 행동 버튼은 오른쪽 고정 */
.page{padding:12px 16px;gap:10px}
.page-head{min-height:0;align-items:center}
.ph-text{display:flex;align-items:baseline;gap:12px;min-width:0;flex-wrap:wrap}
.page-head h1{font-size:21px;margin:0}
.page-head p{font-size:13px;color:var(--muted);margin:0}
/* 패널: 테두리와 제목 띠를 분명히 */
.panel{background:var(--panel);border:1px solid var(--line-strong);border-radius:3px}
.panel-title,.peek-top{background:var(--panel-head);border-bottom:1px solid var(--line-strong);min-height:46px;padding:9px 14px}
.panel-title b,.peek-top{font-size:14px}
.panel-foot{background:var(--panel-head);border-top:1px solid var(--line-strong);gap:8px;height:auto;min-height:46px;padding:7px 12px}
.list-sub{font-size:12px;font-weight:800;color:var(--quiet);padding:9px 14px 5px;letter-spacing:.02em;border-bottom:1px solid #414d57;background:#2f383e}
.chip{font-size:12px;padding:3px 8px}
/* 빠른 기록 */
.capture{height:46px;border:1.5px solid #697986;background:#2d363c}
.capture input{font-size:14px}
.quick-note{font-size:12px}
/* 오늘: 3열 */
.home-panel{display:flex;flex-direction:column;min-height:0}
.primary-panel{border-color:#4e89b7;box-shadow:inset 0 3px 0 #4379a3}
.task-line{min-height:44px;padding:10px 14px;font-size:14px}
.task-line>span:nth-child(2){font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.task-line em{font-size:12px;color:var(--quiet);white-space:nowrap}
.line-date{font-weight:800;color:#b4c1cb;margin-right:8px}
.recent-list{flex:1;min-height:0}
/* 기록·할 일 탭 */
.seg button{font-size:13px;padding:8px 16px;border:1px solid var(--line)}
.seg button.on{border-color:#8d9ba5}
/* 목록 + 상세 */
.data-layout{grid-template-columns:minmax(0,1fr) 360px;gap:10px}
.journal-layout{grid-template-columns:minmax(0,1.2fr) minmax(400px,1fr)}
.list-toolbar{min-height:0;padding:8px 12px;background:var(--panel-head);border-bottom:1px solid var(--line-strong)}
.input-search{height:34px}.input-search input{font-size:13px}
.date-filter{font-size:12px}
.data-table th{font-size:12px;padding:9px 12px;color:var(--muted)}
.data-table td{font-size:13px;padding:9px 12px}
.row-title,.row-text{font-size:13px}
.list-info{min-height:34px;font-size:12px;color:var(--muted)}
.peek-head{padding:12px 16px;border-bottom:1px solid var(--line);flex-shrink:0}
.peek-date{font-size:17px;font-weight:800;color:#e5eaed}
.journal-peek .peek-status{margin:6px 0 0}
.journal-peek .journal-text{font-size:14px;line-height:1.85}
.peek-main h2{font-size:17px}
.peek dt,.peek dd{font-size:13px}
.context-note p,.context-note strong{font-size:12.5px}
.peek-bottom{background:var(--panel-head);gap:8px}
/* 편집기 */
.journal-input{font-size:15px}
.detail-tabs button{font-size:13px}
/* 보고서·설정 */
.compact-row span{font-size:13px}
.setting-row{font-size:13px}.quiet{font-size:13px}
.settings-card{min-height:0}
@media(max-height:780px) and (min-width:800px){.page{padding:9px 14px;gap:8px}.panel-title,.peek-top{min-height:42px;padding:7px 13px}.panel-foot{min-height:42px;padding:6px 12px}.task-line{min-height:40px;padding:8px 13px}.capture{height:42px}}
@media(max-width:1190px){.journal-layout{grid-template-columns:minmax(0,1fr) 340px}}
@media(max-width:850px){.sidebar{top:48px}.side-backdrop{inset:48px 0 0 0}.page{min-height:calc(100dvh - 48px)}.journal-layout{grid-template-columns:minmax(0,1fr)}.journal-layout>*{min-width:0}.info-grid dd{white-space:normal}.home-panel{min-height:0}.header-name span{display:none}}
@media(max-width:470px){.page-head{flex-wrap:wrap}.ph-text{gap:6px}.page-actions{width:100%}.page-actions .btn{flex:1}.btn kbd{display:none}}
.btn kbd{font-size:12px}
/* ==== WorkHub UI 개편 2차 (WORKHUB-20261025-008) — 와이어프레임형: 굵은 구획선·각진 패널·표준 버튼·주석 메모 ==== */
.panel{border:1.5px solid #667682;border-radius:3px;box-shadow:none}
.panel-title,.peek-top{border-bottom:1.5px solid #667682}
.panel-foot,.peek-bottom{border-top:1.5px solid #667682}
.btn{border-width:1.5px;border-radius:3px}
.btn.outline{border-color:#8d9ba5;color:#e5eaed}
.btn small{font-size:12px;font-weight:500;opacity:.8;margin-left:5px}
.primary-panel{border-color:#8d9ba5;box-shadow:none}
.primary-panel>.panel-title{background:#2b3d4b;border-bottom-color:#8d9ba5}
/* 주석 메모(Balsamiq 스티키 노트 느낌) */
/* 오늘: 주 패널(업무일지) | 보조 열 */
.today-grid2{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(320px,1fr);gap:10px;flex:1;min-height:0}
.side-col{display:flex;flex-direction:column;gap:10px;min-height:0}
.recent-panel{flex:1;min-height:0}
.jrow-line .open-hint{font-size:12px;color:#aebcc7;border:1px solid #3e7299;border-radius:3px;padding:2px 7px;white-space:nowrap}
.jrow-line:hover .open-hint{background:#354c5d}
.empty-cta{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:22px 18px;color:var(--muted)}
.empty-cta b{font-size:15px;color:#e5eaed}.empty-cta small{font-size:13px}
.panel-capture{flex-shrink:0;border:0;border-top:1.5px solid #8d9ba5;border-radius:0;background:#263642;height:auto;min-height:52px;padding:8px 10px 8px 14px;gap:10px}
.capture-label{font-size:12.5px;font-weight:800;color:#b4c1cb;line-height:1.35;white-space:nowrap}
.jrow-line.just-added{background:#2d404e;box-shadow:inset 3px 0 0 #8ab1cf}
.trash-btn{color:#e6b9a6}
.panel-capture input{border:1.5px solid #5d6b76;border-radius:3px;background:#252b31;padding:8px 10px;height:36px}
.primary-panel .quick-note{margin:0;padding:0 14px 8px;background:#263642}
.todo-panel{flex-shrink:0;opacity:.92}
.todo-toggle{display:flex;align-items:center;gap:10px;width:100%;border:0;background:#2f373e;color:var(--muted);padding:10px 14px;font-size:13px;font-weight:700;text-align:left}
.todo-toggle span{flex:1}.todo-toggle small{font-size:12px;color:var(--quiet)}
.todo-toggle:hover{background:#353e46}
.todo-panel.open .todo-toggle{border-bottom:1.5px solid #667682}
.todo-body{max-height:190px}
/* 업무일지 목록: 행 전체 선택, 상세 정보표 */
.journal-table tr.jrow{cursor:pointer}
.journal-table th:nth-child(4),.journal-table td:nth-child(4){width:64px}
.journal-table th:nth-child(5){width:130px}
.journal-table tr.selected{background:#354b5c;box-shadow:inset 3px 0 0 #8ab1cf}
.num{font-variant-numeric:tabular-nums;color:var(--muted)}
.info-grid{display:grid;grid-template-columns:repeat(5,minmax(0,auto));gap:0;margin:0;border-bottom:1.5px solid #667682;flex-shrink:0}
.info-grid>div{padding:9px 14px;border-right:1px solid #4a5863;min-width:0}.info-grid>div:last-child{border-right:0}
.info-grid dt{font-size:12px;color:var(--quiet);font-weight:700}.info-grid dd{margin:3px 0 0;font-size:13.5px;font-weight:700;color:#e5eaed;white-space:nowrap}
.info-grid>div:first-child dd{font-size:15px}
/* 편집기: 라벨형 정보 막대 + 하단 액션바 */
.info-bar{gap:0}
.info-bar>*{padding:2px 16px;border-right:1px solid #4a5863;display:flex;flex-direction:column;gap:3px}
.info-bar>*:first-child{padding-left:0}.info-bar>*:last-child{border-right:0}
.info-bar span{font-size:12px;color:var(--quiet);font-weight:700}
.info-bar b{font-size:13.5px;color:#e5eaed}
.date-field{flex-direction:column;align-items:flex-start}
.detail-footer{background:var(--panel-head);border-top:1.5px solid #667682;gap:8px}
.action-sep{width:1px;height:24px;background:#667682;margin:0 4px}
.detail-bar{border-bottom:1.5px solid #667682}
.detail-tabs{border-bottom:1.5px solid #667682}
@media(max-height:780px) and (min-width:800px){.panel-capture{min-height:48px;padding:6px 10px 6px 14px}.info-grid>div{padding:7px 14px}}
@media(max-width:1190px){.today-grid2{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr)}.info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.today-grid2{grid-template-columns:1fr}.side-col{gap:10px}.today-grid2 .line-list{max-height:320px}.recent-panel{flex:none}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-bar{flex-wrap:wrap;row-gap:8px}.info-bar>*{border-right:0;padding:2px 12px 2px 0}.action-sep{display:none}}
@media(max-width:470px){.panel-capture{flex-wrap:wrap}.capture-label{width:100%}.capture-label br{display:none}.panel-capture input{flex:1 1 0;min-width:0}.journal-table th:nth-child(4),.journal-table td:nth-child(4){display:none}.detail-footer .btn small{display:none}}
.peek .info-grid>div{display:block;padding:9px 14px;border-bottom:0;justify-content:initial}.peek .info-grid dd{text-align:left}.peek .info-grid dt{font-size:12px}
@media(max-width:850px){.today-grid2{grid-template-columns:minmax(0,1fr)}.today-grid2>*{min-width:0}.today-grid2 .panel-title{flex-wrap:wrap}.today-grid2 .panel-title .chip{white-space:normal}}
@media(max-width:470px){.jrow-line em{display:none}}
/* ==== WorkHub 0.3 (WORKHUB-20261025-011) — 실제 저장 화면: 메모·회의록·할 일·일정·보고서·알림 ==== */
.rrow,.jrow{cursor:pointer}
.rrow:focus-visible,.jrow:focus-visible,.tline:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.rec-table td b{display:block;font-size:13.5px;color:#e5eaed;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rec-table td small{display:block;font-size:12px;color:var(--quiet);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}
.rec-table{table-layout:fixed;min-width:0}.rec-table td{overflow:hidden}
.rec-notes th:nth-child(2){width:140px}.rec-meetings th:nth-child(1){width:140px}.rec-meetings th:nth-child(3){width:70px}
.rec-tasks th:nth-child(1){width:44px}.rec-tasks th:nth-child(3){width:86px}.rec-tasks th:nth-child(4){width:100px}.rec-tasks th:nth-child(5){width:64px}
.rec-tasks td b{display:inline}
.tc{text-align:center}
.tcheck{width:24px;height:24px;border:1.5px solid #8d9ba5;border-radius:3px;background:transparent;color:#aebcc7;font-weight:900;font-size:14px;line-height:1;padding:0;flex-shrink:0}
.tcheck:hover{border-color:#aebcc7;background:#2d404e}.tcheck.on{background:#3f5a6e;border-color:#8d9ba5;color:#e7ebee}
.done-text{text-decoration:line-through;color:var(--quiet)!important}
.chip.followup{background:#2d3550;color:#c4cdf0}
.input.sm,select.input.sm{height:33px;padding:5px 8px;font-size:12.5px;background:#333c43;border:1px solid #4b5964;border-radius:3px;color:var(--text)}
.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 14px;margin-bottom:12px}
.field-label .input,.field-label select{background:#323b42;border:1px solid #515e67;color:#e3e8eb;border-radius:3px;padding:9px 11px;font-size:13.5px;color-scheme:dark}
.field-label textarea{font-size:14px;line-height:1.7}
.rec-form .detail-scroll{display:flex;flex-direction:column;gap:12px}
.rec-form .field-label.grow{flex:1;min-height:0}.rec-form .field-label.grow textarea{flex:1;min-height:180px;resize:none}
.rec-block{margin-bottom:14px}.rec-block-h{font-size:12px;font-weight:800;color:var(--quiet);margin-bottom:5px}
.followup-box{border-top:1.5px solid #667682;padding-top:12px;display:flex;flex-direction:column;gap:8px}
.fu-list{margin:0;padding-left:18px;font-size:13px;line-height:1.8}.fu-list small{color:var(--quiet)}
.fu-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.page-note{font-size:12.5px;color:var(--quiet);line-height:1.6;margin:8px 0 0}
.ev-table td{font-size:13px}.ev-table .day-row td{background:#323b42;color:#b4c1cb;font-weight:800;font-size:12.5px;padding:7px 12px;border-bottom:1.5px solid #4a5863}
.ev-table .day-row.today td{background:#2b3d4b;color:#e5eaed}
.ev-table td:first-child{width:150px}.ev-table td:last-child{width:110px;text-align:right}
.ev-nav{gap:6px}
.report-layout{grid-template-columns:minmax(380px,0.9fr) minmax(0,1.1fr)}
.check-row{display:flex;flex-wrap:wrap;gap:8px 18px}
.check{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;color:#d9e0e5;cursor:pointer}
.check input{width:16px;height:16px;accent-color:#8d9ba5}
.report-preview .peek-main{background:#242b30}
.paper{background:#f2f4f5;color:#303940;max-width:640px;margin:0 auto;padding:26px 30px;font-size:13px;line-height:1.7;border-radius:2px}
.paper h3{font-size:18px;margin-bottom:4px}.paper h4{font-size:14px;margin:14px 0 4px;border-bottom:1px solid #c6cdd3;padding-bottom:3px}
.paper-meta{font-size:12px;color:#6c7d8a}.paper p{white-space:pre-wrap;word-break:break-word;margin:2px 0 6px}
.paper-item b{font-size:12.5px;color:#3d566a}
.alerts-layout{grid-template-columns:minmax(0,1.3fr) minmax(360px,1fr)}
.alerts-side{display:flex;flex-direction:column;gap:6px}.alerts-side .builder-body{padding:12px 0 0;border-top:1.5px solid #667682;margin-top:6px;gap:10px}
.alerts-side .setting-row{padding:9px 2px}
tr.unread td{color:#e5eaed;font-weight:600}
.dot-unread{display:inline-block;width:7px;height:7px;border-radius:50%;background:#e2cf98;margin-right:7px;vertical-align:middle}
.side-panel{min-height:0}
.tline{gap:10px}.tline>span:nth-of-type(1){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.side-col>.side-panel{flex:1 1 0}
@media(max-width:850px){.report-layout,.alerts-layout{grid-template-columns:minmax(0,1fr)}.report-layout>*,.alerts-layout>*{min-width:0}.form-grid{grid-template-columns:1fr}.side-col>.side-panel{flex:none}.side-col .line-list{max-height:260px}.paper{padding:18px}}
@media(max-width:470px){.rec-tasks th:nth-child(5),.rec-tasks td:nth-child(5),.rec-meetings th:nth-child(3),.rec-meetings td:nth-child(3){display:none}.ev-table td:first-child{width:96px}.list-toolbar-right .input.sm{flex:1 1 30%;min-width:0}}
/* 알림 목록: 내용은 줄바꿈, 좁은 화면에서는 푸시 열을 숨겨 가로 스크롤 없이 표시 */
.alert-table{table-layout:fixed;min-width:0}.data-table.alert-table th:nth-child(1){width:150px}.alert-table th:nth-child(3){width:96px}.alert-table th:nth-child(4){width:72px}.alert-table td:nth-child(2){white-space:normal;word-break:keep-all;overflow-wrap:anywhere}
@media(max-width:470px){.data-table.alert-table th:nth-child(1){width:30%}.alert-table th:nth-child(3),.alert-table td:nth-child(3){display:none}.alert-table td.nowrap{white-space:normal}}
.ev-table{min-width:0}.ev-table td:nth-child(2){white-space:normal;overflow-wrap:anywhere}
/* 012 계정 관리·비밀번호 변경 */
.settings-flow{overflow:auto;scrollbar-width:thin;scrollbar-color:#4d5b66 transparent}
.settings-flow>.settings-grid{flex-shrink:0}
.btn.danger-outline{background:transparent;border-color:#7a4a3f;color:#efc6b6}.btn.danger-outline:hover{background:#3a2622}
.acct-panel{flex-shrink:0;display:flex;flex-direction:column}
.acct-panel .panel-title small{display:block;color:var(--quiet);font-size:12px;font-weight:400;margin-top:3px}
.acct-table-area{flex:none;max-height:300px}
.acct-table{min-width:720px}.acct-table td{font-size:13px;vertical-align:middle}.acct-table td b{font-size:13.5px}
.arow{cursor:pointer}.arow:hover{background:#333d44}.arow:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.arow.off td{color:#94a1ab}
.temp-box{margin:12px 16px 0;padding:12px 14px;border:1px solid #6b5a2e;background:#2d2918;border-radius:3px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.temp-box>div:first-child{display:flex;flex-direction:column;gap:4px;flex:1 1 260px}.temp-box small{color:#d8cfa8;font-size:12px;line-height:1.5}
.temp-box code{font-size:17px;letter-spacing:.06em;padding:6px 12px;color:#f3e7b5;background:#1d1b10;border-color:#5a4d25;user-select:all}
.temp-actions{display:flex;gap:8px;flex-wrap:wrap}
.acct-create{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) 150px auto;gap:10px 12px;align-items:end;padding:14px 16px;border-bottom:1px solid var(--line)}
.acct-create-actions{display:flex;gap:8px}.acct-note{margin:0;padding:10px 16px;font-size:12.5px}
.acct-create .acct-note{grid-column:1/-1;padding:0}
.acct-detail{border-top:1px solid var(--line);padding:12px 16px;display:flex;flex-direction:column;gap:10px}
.acct-detail-head{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline}.acct-detail-head b{font-size:15px}.acct-detail-head span{font-size:12.5px}
.acct-edit{display:grid;grid-template-columns:minmax(0,1.4fr) 150px auto;gap:10px 12px;align-items:end}
.acct-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.acct-actions small{font-size:12px}
.acct-audit{border-top:1px solid var(--line);padding:10px 16px;font-size:12.5px;color:var(--muted)}
.acct-audit summary{cursor:pointer;padding:2px 0}.acct-audit ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:5px}
.acct-audit li{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:10px}.acct-audit li b{color:#c5cfd6;font-weight:600}
.pw-card{padding:12px 16px 14px;display:flex;flex-direction:column;gap:8px}.pw-card>small{font-size:12px}
.pw-form{display:flex;flex-direction:column;gap:10px}.pw-actions{display:flex;justify-content:flex-start}
.login-box .pw-form{margin-bottom:10px}
@media(max-width:850px){.acct-create,.acct-edit{grid-template-columns:1fr}.acct-table-area{max-height:none}.acct-audit li{grid-template-columns:1fr;gap:1px}}
@media(max-width:470px){.acct-table{min-width:0;table-layout:fixed}.acct-table th:nth-child(4),.acct-table td:nth-child(4),.acct-table th:nth-child(n+6),.acct-table td:nth-child(n+6){display:none}.data-table.acct-table th:nth-child(1){width:32%}.acct-table th:nth-child(3){width:48px}.acct-table th:nth-child(5){width:84px}.acct-table td .chip{white-space:normal}.acct-table th,.acct-table td{padding:10px 7px}.acct-table th:nth-child(3){width:46px}.acct-table td{white-space:normal;overflow-wrap:anywhere}.temp-box{margin:10px 10px 0}}
/* 012 로그인·비밀번호 변경 화면도 최소 12px */
.login-brand small{font-size:12px;letter-spacing:.06em}.login-box .overline{font-size:12px}.login-form label{font-size:12px}.login-foot{font-size:12px}
.alerts-side .setting-row{flex-wrap:wrap}.alerts-side .setting-row>span:first-child{white-space:nowrap}.alerts-side .setting-row .chip{white-space:normal}
/* 013 계정별 알림 토픽 */
.topic-actions{display:flex;flex-wrap:wrap;gap:6px;padding:4px 2px 8px}.topic-row code{font-size:12px;word-break:break-all}.alerts-side .topic-row>span:last-child{max-width:100%}
.data-table.alert-table td:nth-child(3){white-space:normal}.alert-table td:nth-child(3) small{display:block;overflow-wrap:anywhere;font-size:12px}
@media(max-width:850px){.data-layout.recovery-layout{grid-template-columns:1fr}.recovery-layout .recovery-body .journal-input{min-height:200px}}
/* ===== 017 PSD 톤 정합: Project_Seed web/app.css(로컬 0c57ae3, 토큰은 원격 main 58913c9 과 동일)의 토큰·컴포넌트 규칙을 WorkHub 변수 이름에 대응.
   저채도 차콜 표면 + 밝은 회색 글자 + 저채도 블루 강조 1종, 3px 모서리, 그라데이션·장식 그림자 없음. 의미 색(경고·위험·임시·후속조치)은 유지 */
:root{--bg:#20262b;--nav:#252c32;--panel:#2c343b;--panel-head:#313a42;--raised:#313a42;--raised2:#354049;--hover:#354049;--inset:#1c2226;
 --line:#4b5862;--line-soft:#3b464f;--line-strong:#6f7e89;--text:#e0e6e9;--muted:#b6c1c9;--quiet:#9ba8b1;
 --accent:#86afcf;--accent-ink:#a9c8e0;--accent2:#34495a;--accent-fill:#3d5d78;--accent-fill-hover:#46698a;--on-accent:#eef3f6;--focus:#86afcf;--danger:#eba49c}
body{background:var(--bg);color:var(--text)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.header{background:var(--nav);border-bottom:1px solid var(--line)}
.sidebar{background:var(--nav);border-right:1px solid var(--line)}
.nav-item{border:0;border-left:3px solid transparent;border-radius:3px;color:var(--muted)}
.nav-item:hover{background:var(--hover);color:var(--text)}
.nav-item.active{background:var(--accent2);border-left-color:var(--accent);color:var(--text);font-weight:650}
.nav-item.active .nav-icon{color:var(--accent)}
.nav-icon{color:var(--quiet)}
.panel{background:var(--panel);border-color:var(--line)}
.peek-top,.data-table th{background:var(--panel-head)}
.btn{background:var(--panel);border-color:var(--line-strong);color:var(--text)}
.btn:hover{background:var(--hover)}
.btn.primary{background:var(--accent-fill);border-color:var(--accent);color:var(--on-accent);font-weight:650}
.btn.primary:hover{background:var(--accent-fill-hover)}
.btn.outline{background:transparent;border-color:var(--line-strong)}
.btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}
.btn.ghost:hover{background:var(--hover);border-color:var(--line);color:var(--text)}
.square{border-color:var(--line);color:var(--muted)}.square:hover{background:var(--hover);color:var(--text)}
.input,.input-search,.field-label .input,.field-label textarea,.field-label select,.list-toolbar select,.login-form input,.pw-form input{background:var(--inset);border-color:var(--line-strong)}
.input:focus,.field-label .input:focus,.field-label textarea:focus,.field-label select:focus,.login-form input:focus,.pw-form input:focus{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:0}
.input-search:focus-within{border-color:var(--accent)}
tr.selected{background:var(--accent2);box-shadow:inset 3px 0 0 var(--accent)}
.data-table tbody tr:hover{background:var(--hover)}
.login{background:var(--bg)}
.login-box{background:var(--panel);border-color:var(--line);box-shadow:none}

/* ===== 017 PC 사이드바 3단계(펼침·아이콘만·숨김). 850px 이하(모바일·좁은 창)는 기존 햄버거 드로어 그대로 */
.desktop-only{display:none}
.nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(min-width:851px){
 .desktop-only{display:inline-flex;align-items:center;justify-content:center}
 .side-toggle{width:32px;height:32px;padding:0;font-size:16px;line-height:1}
 .shell.side-rail .sidebar{width:58px}
 .shell.side-rail .side-menu{padding:8px 6px 0}
 .shell.side-rail .nav-group-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
 .shell.side-rail .nav-group+.nav-group{border-top:1px solid var(--line-soft);margin-top:6px;padding-top:6px}
 .shell.side-rail .nav-item{position:relative;justify-content:center;gap:0;padding:10px 0;border-left-width:3px}
 .shell.side-rail .nav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
 .shell.side-rail .nav-icon{font-size:17px;width:auto}
 .shell.side-rail .nav-count{position:absolute;top:2px;right:3px;min-width:18px;padding:0 4px;font-size:12px;line-height:17px}
 .shell.side-hidden .sidebar{display:none}
}

/* ===== 017 메모 목록 접기: 목록 패널을 숨기고 상세를 전체 폭으로 */
.data-layout.list-collapsed{grid-template-columns:minmax(0,1fr)}
.data-layout.list-collapsed>.data-main{display:none}
.peek-top .btn{flex-shrink:0}
/* 017 851~1190px(예: 1920 화면 절반 960px): 업무일지 목록 표가 칸 안에서 가로로 밀리지 않도록 최소 폭 해제, 버전·최근 수정은 상세에서 확인 */
@media(min-width:851px) and (max-width:1190px){.journal-table{min-width:0}.journal-table th:nth-child(4),.journal-table td:nth-child(4),.journal-table th:nth-child(5),.journal-table td:nth-child(5){display:none}.journal-table th:nth-child(1){width:104px}.journal-table th:nth-child(2){width:78px}}
@media(min-width:471px) and (max-width:850px){.acct-table{min-width:0}}
/* 017 대비 보정(WCAG 4.5:1): 선택 배경 위 강조·보조 글자, 회색 배지, 로그인 보조 글자 */
.nav-item.active .nav-icon{color:var(--accent-ink)}
tr.selected small,tr.selected .quiet-sep{color:var(--muted)}
.chip.muted{background:var(--panel-head);color:var(--muted)}
.login-brand small,.login-foot{color:var(--quiet)}
/* 017 좁은 상세 패널(1190px 이하 275px 등): 정보 칸 값이 옆 칸과 겹치지 않도록 줄바꿈 */
.peek .info-grid dd{white-space:normal;overflow-wrap:anywhere}

/* ===== 0.4 목록|상세 분할바(851px 이상): 상세 너비는 --peek-w, 드래그 중 화면을 다시 그리지 않음 */
.data-layout.resizable{grid-template-columns:minmax(0,1fr) 12px var(--peek-w,360px);gap:0}
.split-handle{position:relative;cursor:col-resize;touch-action:none;display:flex;align-items:center;justify-content:center;border-radius:3px;outline-offset:-2px}
.split-handle::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:transparent}
.split-handle:hover::before,.split-handle.active::before,.split-handle:focus-visible::before{background:var(--accent)}
.split-grip{width:4px;height:36px;border-radius:2px;background:var(--line-strong);position:relative}
.split-handle:hover .split-grip,.split-handle.active .split-grip,.split-handle:focus-visible .split-grip{background:var(--accent)}
.split-handle.active{background:var(--accent2)}
.data-layout.list-collapsed>.split-handle{display:none}
@media(max-width:850px){.data-layout.resizable{grid-template-columns:minmax(0,1fr);gap:10px}.split-handle{display:none}}

/* ===== 0.4 메모: 보기·분류·기간·정렬 막대, 고정·즐겨찾기 */
.notes-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--line)}
.notes-bar .input.sm,.list-toolbar .input.sm{height:32px;padding:4px 8px;font-size:12px;color:var(--text);border:1px solid var(--line-strong);border-radius:3px;background:var(--inset)}
.seg-group{display:inline-flex;border:1px solid var(--line-strong);border-radius:3px;overflow:hidden;flex-shrink:0}
.seg-btn{border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);padding:6px 10px;font-size:12px;white-space:nowrap}
.seg-btn:last-child{border-right:0}
.seg-btn:hover{background:var(--hover);color:var(--text)}
.seg-btn.on{background:var(--accent-fill);color:var(--on-accent);font-weight:650}
.inline-error{color:var(--danger);font-size:12px}
.nmark{margin-right:5px;font-size:12px}
.nmark.fav{color:#e3c27a}
tr.pinned td:first-child{box-shadow:inset 2px 0 0 var(--line-strong)}
tr.selected.pinned td:first-child{box-shadow:none}
tr[draggable="true"]{cursor:grab}
tr.dragging{opacity:.5}
tr.drop-target{box-shadow:inset 0 2px 0 var(--accent)}
.note-quick{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.mng-new{display:flex;gap:8px;align-items:center}
.mng-new .input{flex:1;min-width:0;background:var(--inset);border:1px solid var(--line-strong);color:var(--text);border-radius:3px;padding:8px 10px}
.mng-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.mng-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;border:1px solid var(--line);border-radius:3px}
.mng-row .input.sm{flex:1;min-width:140px;height:32px;padding:4px 8px;background:var(--inset);border:1px solid var(--line-strong);color:var(--text);border-radius:3px;font-size:12px}
.tpl-info{flex:1 1 180px;min-width:0;display:flex;flex-direction:column;gap:3px}
.tpl-info small{color:var(--quiet);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.suggest{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.suggest small{color:var(--muted);font-size:12px}
.tpl-form{display:flex;flex-direction:column;gap:12px}
.tpl-form textarea{min-height:180px}
.dialog .page-note,.notes-bar .page-note{font-size:12px;color:var(--muted);line-height:1.6}

/* ===== 0.4 보고서: 기간 바로가기, AI 검토·정리 */
.range-shortcuts{display:flex;flex-wrap:wrap;gap:4px}
.report-preview .peek-top{gap:8px}
.ai-panel{display:flex;flex-direction:column;gap:12px}
.ai-status{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--line-strong);border-left:3px solid #c5b68e;border-radius:3px;background:var(--inset)}
.ai-status.ok{border-left-color:var(--accent)}
.ai-status small{color:var(--muted);font-size:12px;line-height:1.5}
.ai-material-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px}
.ai-material-head small{color:var(--muted);font-size:12px}
.ai-material{margin:0;max-height:260px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:var(--inset);border:1px solid var(--line);border-radius:3px;padding:10px;font-size:12px;line-height:1.6;color:var(--text)}
.ai-panel .field-label textarea{min-height:220px}
.ai-panel .check{font-size:12px;line-height:1.5}
@media(max-width:850px){.notes-bar{padding:8px 10px}.note-quick .btn{flex:1 1 auto}}

/* ===== 0.5 메모 작업공간: 탭 줄 + [목록 | 참고 | 작성] — 본문 폭 1100px 이상 3열, 그 아래 2열(목록 + 참고·작성 전환), 850px 이하 1열 화면 전환 */
.nw-flow{container-type:inline-size;container-name:nwflow}
.nw-tabbar{display:flex;align-items:center;gap:6px;min-width:0;flex-shrink:0}
.nw-tabs{display:flex;gap:4px;overflow-x:auto;min-width:0;flex:1;scrollbar-width:thin;padding:2px 2px 4px}
.nw-tab{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line-strong);background:var(--panel);color:var(--muted);border-radius:3px;padding:7px 12px;font-size:12px;white-space:nowrap;max-width:220px}
.nw-tab-name{overflow:hidden;text-overflow:ellipsis;min-width:0}
.nw-tab-count{font-size:12px;color:var(--quiet);font-variant-numeric:tabular-nums}
.nw-tab:hover{background:var(--hover);color:var(--text)}
.nw-tab.on{background:var(--accent-fill);border-color:var(--accent);color:var(--on-accent);font-weight:650}
.nw-tab.on .nw-tab-count{color:var(--on-accent)}
.nw-tab.dragging,.nw-row.dragging{opacity:.5}
.nw-tab.drop-target{box-shadow:inset 3px 0 0 var(--accent)}
.nw-bar{display:none;align-items:center;gap:8px;flex-shrink:0}
.nw-bar:has(.nw-restore){display:flex}
.nw-switch{display:none}
.nw-restores{display:flex;gap:6px;flex-wrap:wrap}
.nw{--nw-mode:3;display:grid;grid-template-columns:var(--nw-cols3);flex:1;min-height:0}
.nw>.panel{display:flex;flex-direction:column;min-height:0;min-width:0}
.nw.list-closed>.nw-list,.nw.ref-closed>.nw-ref,.nw.ed-closed>.nw-ed{display:none}
.nw-handle{position:relative;cursor:col-resize;touch-action:none;display:flex;align-items:center;justify-content:center;border-radius:3px;outline-offset:-2px}
.nw-handle[hidden]{display:none}
.nw-handle:hover .split-grip,.nw-handle.active .split-grip,.nw-handle:focus-visible .split-grip{background:var(--accent)}
.nw-handle.active{background:var(--accent2)}
.nw-list-top{display:flex;gap:6px;padding:8px 10px;border-bottom:1px solid var(--line);align-items:center;flex-wrap:wrap}
.nw-search{flex:1;min-width:150px;margin:0}
.nw-list .input-search{width:100%;min-width:0;flex:1}
.nw-list-tools{display:flex;gap:4px;flex-wrap:wrap}
.nw-items{list-style:none;margin:0;padding:0;overflow:auto;flex:1;min-height:0;scrollbar-width:thin}
.nw-row{display:flex;flex-direction:column;gap:3px;padding:9px 12px;border-bottom:1px solid var(--line-soft);cursor:pointer;min-width:0}
.nw-row b{font-size:12px;font-weight:650;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nw-row small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nw-row small:empty{display:none}
.nw-row-meta{display:flex;gap:6px;font-size:12px;color:var(--quiet);align-items:center;flex-wrap:wrap}
.nw-row:hover{background:var(--hover)}
.nw-row.selected{background:var(--accent2);box-shadow:inset 3px 0 0 var(--accent)}
.nw-row.selected small,.nw-row.selected .nw-row-meta{color:var(--muted)}
.nw-row.pinned:not(.selected){box-shadow:inset 2px 0 0 var(--line-strong)}
.nw-row[data-pinrow]{cursor:grab}
.nw-row.drop-target{box-shadow:inset 0 2px 0 var(--accent)}
.nw-items>.empty{padding:24px 12px;list-style:none;font-size:12px}
.nw-top-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.nw .peek-top{gap:8px;min-height:48px;height:auto}
.nw .peek-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.nw-ed-form{display:flex;flex-direction:column;flex:1;min-height:0;margin:0}
.nw-ed-scroll{flex:1;min-height:0;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:12px}
.nw-ed-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.nw-ed-row .field-label{flex:1;min-width:160px}
.nw-ed .field-label.grow{flex:1;display:flex;flex-direction:column;min-height:0}
.nw-ed #ed-body{flex:1;min-height:200px;resize:vertical;line-height:1.7}
.ed-fav{padding-bottom:10px}
.ed-tabs{border:1px solid var(--line);border-radius:3px;padding:8px 10px;display:flex;flex-wrap:wrap;gap:6px 14px;margin:0}
.ed-tabs legend{font-size:12px;color:var(--muted);padding:0 4px}
.nw-ed .detail-footer{flex-wrap:wrap;flex-shrink:0}
.kind-list{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.kind-list legend{font-size:12px;color:var(--muted);margin-bottom:6px}
.kind-opt{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:3px;cursor:pointer}
.kind-opt span{display:flex;flex-direction:column;gap:3px}
.kind-opt small{color:var(--muted);font-size:12px;line-height:1.5}
.kind-opt.off{opacity:.7;cursor:not-allowed}
.kind-opt:has(input:checked){border-color:var(--accent);background:var(--accent2)}
.pick-list{max-height:48dvh;overflow:auto}
.ai-manual{border:1px solid var(--line);border-radius:3px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.ai-steps{margin:0;padding-left:20px;font-size:12px;color:var(--muted);line-height:1.6}
@container nwflow (max-width:1099px){
 .nw{--nw-mode:2;grid-template-columns:var(--nw-cols2,minmax(260px,42fr) 12px minmax(0,58fr))}
 .nw>.nw-ref,.nw>.nw-ed{display:none}
 .nw:not([data-active="ed"])>.nw-ref,.nw[data-active="ed"]>.nw-ed{display:flex}
 .nw-bar{display:flex}
 .nw-switch{display:inline-flex}
 .nw-sw-list,.nw-ref .nw-fold,.nw-ed .nw-fold,.nw-restore[data-action="nw-ref-open"],.nw-restore[data-action="nw-ed-open-pane"]{display:none}
}
@media(max-width:850px){
 .nw{--nw-mode:1;display:block}
 .nw>.panel{display:none!important}
 .nw[data-active="list"]>.nw-list,.nw[data-active="ref"]>.nw-ref,.nw[data-active="ed"]>.nw-ed{display:flex!important}
 .nw-handle{display:none!important}
 .nw-bar{display:flex}
 .nw-switch,.nw-sw-list{display:inline-flex}
 .nw-fold,.nw-restores{display:none!important}
 .nw-list{height:70dvh}
 .nw-ref,.nw-ed{min-height:60dvh}
 .nw-ed #ed-body{min-height:40dvh}
 .nw-tabbar{flex-wrap:wrap}
 .nw-tabs{flex-basis:100%}
}
.nw .info-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.nw .info-grid dd{white-space:normal}

/* ===== 0.5.1 참고 패널: 메모 모음 탭 즉시 선택 칩 — 선택은 배경+✓+실선, 미선택은 점선+＋ (색만으로 구분하지 않음) */
.ref-chips{display:flex;flex-direction:column;gap:6px;margin:0 0 12px;padding:8px 10px;border:1px solid var(--line);border-radius:3px;background:var(--inset)}
.ref-chips-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.ref-chips-head span{font-size:12px;font-weight:700;color:var(--text)}
.ref-chips-head small,.ref-chips-empty small,.ref-chips-foot small{font-size:12px;color:var(--muted)}
.ref-chip-list{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.ref-chip-list.clamp{max-height:68px;overflow-y:auto;scrollbar-width:thin}
.tab-chip{display:inline-flex;align-items:center;gap:5px;max-width:200px;min-height:28px;padding:4px 10px;border:1px dashed var(--line-strong);border-radius:3px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}
.tab-chip:hover:not(:disabled){background:var(--hover);color:var(--text)}
.tab-chip.on{border-style:solid;border-color:var(--accent);background:var(--accent-fill);color:var(--on-accent);font-weight:650}
.tab-chip.hidden-tab .tab-chip-name{font-style:italic}
.tab-chip.wait{cursor:progress}
.tab-chip:disabled{opacity:.6}
.tab-chip-mark{font-size:12px;width:12px;text-align:center;flex-shrink:0}
.tab-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.ref-chips-foot,.ref-chips-empty{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.ref-chips-none{margin-right:auto}
.chip-new{margin-left:auto}

/* ===== 0.5.1 탭 관리: 줄마다 이름 저장 폼(Enter 저장), 줄별 오류 */
.tab-mng-row{align-items:center}
.tab-rename{display:flex;gap:6px;flex:1 1 260px;min-width:0;margin:0}
.tab-rename .input.sm{flex:1;min-width:120px}
.tab-name-msg{flex-basis:100%;font-size:12px;color:var(--muted)}
.tab-name-msg:empty{display:none}
.tab-name-msg.error{color:var(--danger)}

/* ===== 0.5.1 업무일지·할 일·회의록·일정 3열 작업공간(.nw 재사용) */
.ws-list{display:flex;flex-direction:column}
.ws-list .table-area{flex:1;min-height:0}
.ws-list .data-table{min-width:440px}
.ws-list .ws-journal-table{min-width:0;table-layout:fixed}
.ws-list .ws-journal-table th:nth-child(1){width:96px}.ws-list .ws-journal-table th:nth-child(2){width:72px}.ws-list .ws-journal-table th:nth-child(4){width:96px}
.ws-list .ws-journal-table .preview-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ws-list .list-toolbar{flex-wrap:wrap;min-height:0}
.ws-list .list-toolbar-right{flex-wrap:wrap}
.ws-list .input-search{width:100%;flex:1 1 180px}
.ws .nw-ref .peek-main,.ws .nw-ed .peek-main{overflow:auto}
.ws-form .form-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.ws-form textarea{min-height:120px;resize:vertical}
.ws-form .field-label.grow textarea{min-height:200px}
.ws-jed{min-height:0;flex:1;border:0}
.ws-jed .detail-bar{padding:10px 12px}
.ws-jed .info-bar{flex-wrap:wrap;row-gap:6px}
.ws-jed .detail-scroll{padding:12px}
.ws-jed .detail-footer{flex-wrap:wrap;padding:10px 12px}
.ws-jed .journal-input{min-height:220px}
.warn-line{border-left:3px solid #c5b68e;padding:6px 10px;background:var(--inset);font-size:12px;color:var(--text)}
.ws .peek-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
@media(max-width:850px){.ws-list{height:70dvh}.ws-list .data-table{min-width:0}.ws-jed .journal-input{min-height:40dvh}}

/* ===== 0.5.2 참고 패널 모든 탭 칩: 종류별 모양(색 외 구분) — 전체=읽기 전용(점선 없음·◉·'항상 포함'), 모음=✓/＋, 즐겨찾기·고정=★☆/📌＋ + 켜짐/꺼짐 글자, 양식=⧉ + '새 양식 만들기' */
.tab-chip-sub{font-size:12px;opacity:.9;white-space:nowrap}
.tab-chip.sys{border:1px solid var(--line);border-style:solid;background:var(--panel-head);color:var(--text);cursor:default}
.tab-chip.flag{border-radius:12px}
.tab-chip.flag.on{border-style:solid}
.tab-chip.action{border-style:double;border-width:3px;padding:2px 9px;color:var(--text)}
.tab-chip.action:hover:not(:disabled){background:var(--hover)}
.tab-chip.on .tab-chip-sub{color:var(--on-accent)}

/* ===== 보고서 탭(0.5.3~): 탭 줄바꿈 */
.rp-tabs{flex-wrap:wrap}
.rp-tabs .seg-btn{white-space:normal;text-align:center}
.report-preview .peek-top{height:auto;min-height:55px;padding:8px 15px}
.paper .pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.report-preview .safe-note,.ai-panel .safe-note{font-size:12px}
.report-preview .peek-top{flex-wrap:wrap;row-gap:6px}
.rp-tabs{flex-shrink:1;min-width:0;max-width:100%}
.rp-tabs .seg-btn{flex:1 1 auto}

/* ===== 0.5.4 보고서: 저장된 AI 보고서 목록·편집기·제출용 최종 미리보기 */
.report-layout{grid-template-columns:minmax(340px,0.75fr) minmax(0,1.25fr)}
.builder .form-actions,.ai-panel .form-actions{flex-wrap:wrap}
.sr-panel{display:flex;flex-direction:column;gap:8px;border-top:1.5px solid #667682;padding-top:12px;margin-top:4px}
.sr-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sr-tools{display:flex;gap:6px;flex-wrap:wrap}
.sr-tools .input-search{flex:1 1 160px;width:auto;min-width:0}
.sr-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:320px;overflow:auto}
.sr-row{width:100%;text-align:left;display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:1px solid var(--line);border-radius:3px;background:var(--inset);color:var(--text)}
.sr-row b{font-size:13px;overflow-wrap:anywhere}.sr-row small{color:var(--muted);font-size:12px}
.sr-row:hover{background:var(--hover)}.sr-row.on{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}
.sr-empty{color:var(--muted);font-size:12px;line-height:1.6;padding:6px 2px}
.sr-match{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--accent);border-radius:3px;background:var(--inset)}
.sr-match small{color:var(--muted);font-size:12px;line-height:1.5}.sr-match ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.sr-match .btn{white-space:normal;text-align:left}
.sr-editor{display:flex;flex-direction:column;gap:10px;border-top:1.5px solid #667682;padding-top:12px}
.sr-editor.empty{border-top-style:dashed}
.sr-ed-head{display:flex;flex-direction:column;gap:3px}.sr-ed-head small{color:var(--muted);font-size:12px}
.ai-panel .sr-editor textarea{min-height:340px;line-height:1.7;font-size:13px}
.sr-foot{flex-wrap:wrap;padding:10px 0 0;background:none;border-top:0}
.sr-revs{display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:3px;padding:10px 12px}
.sr-revs ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.sr-revs li{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px}.sr-revs li span{margin-right:auto;color:var(--muted)}
.fr-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:8px 12px;margin-bottom:12px;border:1px solid var(--line);border-left:3px solid #c5b68e;border-radius:3px;background:var(--inset);font-size:12px;color:var(--text)}
.fr-bar.ok{border-left-color:var(--accent)}.fr-bar.basic-bar{border-left-color:#7d8b96}
.fr-bar-actions{display:flex;gap:6px;flex-wrap:wrap}
.fr-note{margin-bottom:12px}
.fr-wrap{padding:4px 0 20px}
.final-paper{background:#fbfbfa;color:#22292f;max-width:800px;margin:0 auto;padding:clamp(22px,7%,56px) clamp(16px,8%,64px) clamp(28px,8%,64px);box-shadow:0 6px 24px #0004;border-radius:2px;font-family:"Malgun Gothic","Apple SD Gothic Neo",system-ui,sans-serif;font-size:14px;line-height:1.8;word-break:keep-all;overflow-wrap:anywhere}
.fr-title{font-size:22px;line-height:1.4;margin:0 0 6px;font-weight:800;color:#1b2228}
.fr-meta{font-size:12.5px;color:#5c6a75}
.fr-rule{border:0;border-top:1.5px solid #8e9aa3;margin:14px 0 18px}
.fr-h{font-weight:800;color:#1f3445;margin:20px 0 6px}
.fr-h1{font-size:17px}.fr-h2{font-size:15.5px;border-bottom:1px solid #cfd5da;padding-bottom:3px}.fr-h3{font-size:14.5px}
.fr-p{margin:0 0 8px;white-space:pre-wrap}
.fr-li{display:flex;gap:8px;margin:0 0 4px}.fr-li.fr-l2{padding-left:22px}
.fr-bullet{flex-shrink:0;min-width:14px;color:#3e5a70}
.fr-empty{color:#7a8791}
@media(max-width:1190px) and (min-width:851px){.report-layout{grid-template-columns:minmax(290px,0.62fr) minmax(0,1.38fr)}.report-preview .peek-main{padding:12px}}
@media(max-width:850px){.report-layout{grid-template-columns:minmax(0,1fr)}.sr-list{max-height:260px}}
@media(max-width:470px){.final-paper{font-size:13.5px}.fr-title{font-size:19px}.fr-li.fr-l2{padding-left:14px}}
