:root{font-family:Arial,'Malgun Gothic',sans-serif;color:#202331;background:#f5f6fa;font-size:14px;--brand:#1c00b4;--orange:#ff751b}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:1px solid #d9dce8;background:#fff;color:#303344;padding:10px 15px;border-radius:8px;min-height:42px}button:hover{background:#eeecff}button.primary{background:var(--brand);color:#fff;border-color:var(--brand)}button:disabled{opacity:.55;cursor:wait}input,select,textarea{width:100%;border:1px solid #ced2e1;padding:11px;border-radius:7px;min-height:44px;background:#fff;color:inherit}input[type=checkbox]{width:18px;min-height:18px}label{display:block;color:#51576b;font-size:13px;margin-bottom:16px}label>input,label>select,label>textarea{margin-top:6px}a{color:var(--brand)}h1{font-size:28px;letter-spacing:-1px;margin:0 0 10px}h2{font-size:19px;margin:0 0 20px}p{line-height:1.65}.muted{color:#70758b}.shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}aside{background:#fff;border-right:1px solid #e3e5ef;padding:32px 20px;display:flex;flex-direction:column;gap:24px}.brand{font-weight:900;font-size:26px;letter-spacing:-1px;color:var(--brand)}.brand span{color:var(--orange)}nav{display:grid;gap:8px}nav a{text-decoration:none;padding:13px 16px;border-radius:8px;color:#51576b}nav a.active{background:#eeecff;color:var(--brand);font-weight:bold}.identity{margin-top:auto;overflow-wrap:anywhere;font-size:13px}main{padding:34px 42px;max-width:1600px;min-width:0}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.card{background:#fff;border:1px solid #e0e3ee;border-radius:14px;padding:24px;margin:20px 0}.auth{max-width:480px;margin:7vh auto;padding:28px}.auth .brand{margin-bottom:30px}.auth button{width:100%}.grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}.toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.toolbar label{min-width:150px;flex:1;margin:0}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap}th,td{padding:15px 12px;text-align:left;border-bottom:1px solid #eceef5}th{font-size:12px;color:#6a7185;background:#fafbfe}td{font-size:13px}tr:last-child td{border-bottom:0}.tag{padding:5px 9px;border-radius:5px;background:#f0edff;color:var(--brand);font-size:12px}.error{color:#b12632;white-space:pre-wrap}.empty{text-align:center;padding:50px;color:#747b90}.banner{background:#fff5ec;color:#865000;border:1px solid #ffd5af;border-radius:9px;padding:13px 16px;margin-bottom:22px;font-size:13px}dialog{width:min(640px,94vw);max-height:88vh;border:0;border-radius:16px;padding:28px;box-shadow:0 20px 80px #20204033}dialog::backdrop{background:#15113566}#notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#28243d;color:white;border-radius:10px;padding:12px 20px;display:none;z-index:20}.loading{padding:40px}.pick{max-height:320px;overflow:auto;display:grid;gap:4px}.pick label{display:grid;grid-template-columns:24px 1fr 130px;align-items:center;gap:10px;border-bottom:1px solid #eee;padding:9px;margin:0}.pick input{margin:0}.facts{display:flex;flex-wrap:wrap;gap:25px}.facts strong{display:block;margin-top:8px}.pagination{display:flex;justify-content:center;gap:15px;align-items:center;margin-top:20px}@media(max-width:850px){.shell{grid-template-columns:1fr}aside{padding:18px;gap:12px}nav{display:flex}.identity{display:flex;justify-content:space-between;gap:12px}main{padding:22px 16px}.grid{grid-template-columns:1fr}.auth{margin:20px auto}.top{align-items:start}}

.multiline{white-space:pre-wrap;overflow-wrap:anywhere}.history li{margin:12px 0;line-height:1.6}.messages-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px}.room-list,.message-panel{margin:0;min-width:0}.room-list{padding:12px}.room-item{display:block;padding:16px;border-radius:9px;text-decoration:none;color:inherit}.room-item.active{background:#eeecff}.room-preview{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:6px 0;color:#70758b}.message-panel{display:flex;flex-direction:column;padding:0}.message-head,.message-compose{padding:20px}.message-head h2{margin-bottom:6px}.message-thread{height:450px;overflow-y:auto;padding:20px;background:#fafbfe}.message-row{display:flex;margin:12px 0}.message-row.mine{justify-content:flex-end}.message-bubble{max-width:82%;padding:14px 16px;border-radius:14px;background:#f0f1f7;overflow-wrap:anywhere}.mine .message-bubble{background:#eeecff}.message-text{white-space:pre-wrap;line-height:1.6;margin:6px 0}.message-meta{font-size:12px;color:#646b82}.message-older{align-self:center;margin:10px}.message-compose .actions{justify-content:space-between;margin-top:8px}.toolbar label{max-width:360px}details{margin:14px 0}summary{cursor:pointer;font-weight:600;padding:10px 0}@media(max-width:850px){.messages-layout{grid-template-columns:1fr}.room-list{max-height:220px;overflow:auto}nav{flex-wrap:wrap}}

.file-list{display:grid;gap:16px}.file-item{display:flex;gap:16px;align-items:center;overflow-wrap:anywhere}.file-item img{width:110px;height:80px;object-fit:contain;border:1px solid #ddd;border-radius:8px}.file-form{border-top:1px solid #eee;margin-top:20px;padding-top:20px;max-width:600px}
.company-logo{object-fit:contain;object-position:left center;max-width:100%}

/* Shared geometry and CI tokens from the approved Figma screens. */
:root{--ink:#20243a;--muted:#686d82;--border:#e0e3eb;--surface:#fff;--canvas:#f5f6fa;--tint:#eeebff;color:var(--ink);font-family:'Noto Sans KR','Malgun Gothic',Arial,sans-serif;line-height:1.55}
.shell{grid-template-columns:216px minmax(0,1fr)}aside{position:sticky;top:0;height:100vh;padding:24px;gap:10px;border:0;overflow:hidden}.official-brand{display:block;width:156px;height:70px;flex:none;position:relative;overflow:hidden}.official-brand img{position:absolute;width:129.87%;height:289.02%;max-width:none;left:-15.45%;top:-94.51%}.sidebar-company{font-size:13px;color:var(--muted);margin:0 0 4px;overflow-wrap:anywhere}nav{flex:1;min-height:0;overflow:auto;gap:6px;align-content:start}nav a{padding:11px 10px;text-align:center;color:var(--muted);font-size:13px}.identity{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:12px;gap:8px;margin-top:4px}.identity button{padding:8px;font-size:12px}.workspace{min-width:0}.workspace-header{display:flex;gap:24px;align-items:center;min-height:76px;padding:16px 24px;background:#fff}.workspace-header strong{flex:1;color:var(--muted);font-size:16px}.workspace-header .button{min-width:120px;text-align:center}.workspace-header .subtle{min-width:160px}main{padding:32px;max-width:none}.top{margin-bottom:24px}h1{font-size:28px;line-height:1.5;letter-spacing:-.7px}.muted,label{color:var(--muted)}.card{border-color:var(--border);border-radius:8px}.tag{background:var(--tint)}th{background:var(--tint);color:var(--brand)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--border);border-radius:8px;padding:10px 20px;background:#fff;color:var(--ink);text-decoration:none;font-size:14px}.button:hover{background:var(--tint)}.button.primary{background:var(--brand);color:#fff}.auth{width:min(528px,calc(100vw - 32px));max-width:528px;margin:64px auto;padding:24px}.auth .brand{color:var(--ink);margin-bottom:16px}.auth-links{display:grid;gap:16px;margin-top:16px}.auth-links p{font-size:13px;margin:0}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat-grid .card{margin:0;text-decoration:none;color:var(--muted)}.stat-grid h2{font-weight:400;font-size:16px;margin:0}.stat-value{display:block;font-size:30px;font-weight:700;line-height:1.5;margin-top:10px}.metric-list{display:grid;gap:10px}.metric-list div{display:flex;justify-content:space-between;gap:20px}.toolbar{margin-bottom:24px}.table-card{padding:0;overflow:auto}.table-card th,.table-card td{height:52px}.file-state{color:var(--muted);font-size:13px}.section-title{margin-top:24px}.due-soon{color:#a94b00;background:#fff1de}.dashboard-grid{align-items:start}.dashboard-grid .card{margin-top:24px}
@media(max-width:1000px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-header{gap:12px}.workspace-header .button{min-width:0}.workspace-header .subtle{min-width:0}}
@media(max-width:850px){.shell{grid-template-columns:1fr}aside{position:static;height:auto;padding:16px;overflow:visible}.official-brand{width:156px;height:70px}nav{display:flex;flex-wrap:wrap;overflow:visible}.identity{display:none}.workspace-header{padding:16px}.workspace-header strong{font-size:14px}main{padding:24px 16px}.auth{margin:32px auto}.stat-grid{grid-template-columns:1fr 1fr}}

.tag.urgent{color:#924500;background:#fff1de}.tag+.tag{margin-left:6px}

.messages-layout{grid-template-columns:250px minmax(0,1fr);gap:0;background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;min-height:654px}.messages-layout>.card{border:0;border-radius:0}.room-list{padding:20px}.room-list h2{font-size:17px}.room-help{font-size:12px;margin-top:20px}.room-item{padding:14px 12px}.room-item strong{font-size:14px}.room-item.active{color:var(--brand);background:var(--tint)}.room-preview{font-size:12px}.message-panel{padding:24px;gap:16px}.message-head,.message-compose{padding:0}.message-head .muted{font-size:12px}.message-thread{height:310px;min-height:310px;background:var(--canvas);padding:16px}.message-row{margin:0 0 18px}.message-bubble{width:78%;max-width:650px;padding:0;background:transparent}.mine .message-bubble{background:transparent}.message-text{padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:white;font-size:14px;min-height:64px;margin:5px 0}.mine .message-text{background:var(--brand);color:white;border-color:var(--brand)}.message-meta{font-size:12px;color:var(--muted)}.mine .message-meta strong{color:var(--brand)}time.message-meta{font-size:11px}.message-compose textarea{min-height:64px}.message-compose .muted{font-size:12px}
@media(max-width:850px){.messages-layout{grid-template-columns:1fr}.room-list{max-height:220px}.message-panel{padding:16px}.message-bubble{width:90%;max-width:90%}}
