:root{--ink:#17171c;--muted:#777583;--line:#e9e8ed;--surface:#fff;--paper:#f8f8fa;--accent:#7048e8}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Noto Sans KR",Arial,sans-serif}.app-shell{display:flex;min-height:100vh}.sidebar{width:254px;background:#fff;border-right:1px solid var(--line);padding:24px 14px;display:flex;flex-direction:column}.brand{font-weight:800;font-size:20px;display:flex;align-items:center;gap:9px;padding:0 10px 30px}.brand-mark{background:var(--accent);color:white;border-radius:8px;width:25px;height:25px;display:grid;place-items:center;font-size:15px}.nav-item,.text-button{border:0;background:transparent;color:#44424c;font:inherit;text-align:left;cursor:pointer}.nav-item{width:100%;padding:11px 10px;border-radius:8px;display:flex;gap:10px;align-items:center}.nav-item b{margin-left:auto;color:#aaa7b0;font-size:12px}.nav-item.active,.nav-item:hover{background:#f1effd;color:#5732bd}.nav-label{font-size:12px;color:#aaa7b0;font-weight:700;margin:25px 10px 8px;text-transform:uppercase}.project-list{display:grid;gap:2px}.project{display:flex;gap:10px;align-items:center;width:100%;border:0;background:transparent;padding:9px 10px;border-radius:8px;cursor:pointer;text-align:left;color:#44424c;font:inherit}.project:hover,.project.selected{background:#f5f4f8}.dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto}.text-button{padding:13px 10px;color:#6540d3;font-weight:650;margin-top:8px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:16px}.workspace{flex:1;min-width:0}.topbar{height:104px;padding:24px 42px;display:flex;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid var(--line)}h1,h2,p{margin:0}.eyebrow{font-size:12px;color:var(--muted);font-weight:650;margin-bottom:4px}h1{font-size:23px;letter-spacing:-.6px}.top-actions{display:flex;gap:11px;align-items:center}.search{border:1px solid var(--line);border-radius:9px;padding:8px 11px;display:flex;align-items:center;gap:7px;color:#8e8b97}.search input{border:0;outline:0;width:180px;font:inherit}.primary,.secondary,.danger{border:0;border-radius:9px;font:inherit;font-weight:700;padding:11px 15px;cursor:pointer}.primary{background:var(--accent);color:#fff;box-shadow:0 2px 5px #7048e840}.primary:hover{background:#5f3bd0}.secondary{background:#f0eef4;color:#4d4a53}.danger{background:#ffeded;color:#b3261e}.content{max-width:1000px;margin:0 auto;padding:32px 42px}.filters{display:flex;justify-content:space-between;gap:15px;margin-bottom:21px}.chips,.selects{display:flex;gap:7px;flex-wrap:wrap}.chip,select{border:1px solid #dedce4;background:#fff;color:#66636d;padding:8px 11px;border-radius:8px;font:inherit;font-size:13px;cursor:pointer}.chip.active{border-color:#b9a9f5;background:#f1effd;color:#5732bd;font-weight:700}.work-list{display:grid;gap:10px}.work-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 19px;display:grid;grid-template-columns:74px 1fr auto;align-items:center;gap:16px;cursor:pointer;transition:.16s}.work-card:hover{transform:translateY(-1px);box-shadow:0 5px 18px #1a172510}.work-date{font-size:13px;color:var(--muted);font-weight:600}.work-title{font-size:16px;font-weight:750;letter-spacing:-.2px}.work-meta{font-size:13px;color:var(--muted);margin-top:7px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.badge{padding:3px 7px;border-radius:99px;font-size:11px;font-weight:700}.badge.done{background:#e6f6eb;color:#24733a}.badge.progress{background:#ede9fe;color:#6242c8}.badge.pause{background:#fff2d9;color:#a56200}.chevron{color:#b8b5be}.empty-state{text-align:center;background:#fff;border:1px dashed #d8d5df;border-radius:14px;padding:78px 20px}.empty-icon{font-size:34px;color:var(--accent);margin-bottom:14px}.empty-state h2{font-size:19px}.empty-state p,.muted{color:var(--muted);line-height:1.65;margin:10px 0 21px}.dialog{border:0;border-radius:15px;padding:0;width:min(520px,calc(100vw - 28px));box-shadow:0 25px 80px #14102142}.dialog::backdrop{background:#24203077}.dialog form,.dialog>div{padding:26px}.work-dialog{width:min(570px,calc(100vw - 28px));max-height:90vh;overflow:auto}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}.dialog h2{font-size:21px}.icon-button{border:0;background:transparent;font-size:18px;color:#85818d;cursor:pointer;padding:2px}label{display:grid;gap:7px;font-weight:650;font-size:13px;margin-top:16px}em{color:#e23446;font-style:normal}input,textarea{font:inherit;border:1px solid #dddbe2;border-radius:8px;padding:11px;outline-color:#9a83ec;width:100%;color:var(--ink);font-weight:400}textarea{resize:vertical;min-height:72px}.details-toggle{margin-top:20px;border:0;background:transparent;padding:3px 0;color:#6540d3;font:inherit;font-weight:700;cursor:pointer}.details{border-top:1px solid var(--line);margin-top:15px;padding-top:2px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:13px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.detail-dialog{width:min(640px,calc(100vw - 28px));max-height:88vh;overflow:auto}.detail-project{display:flex;align-items:center;gap:8px;color:#5e5b64;font-size:14px;margin:14px 0}.detail-date{color:var(--muted);font-size:14px;margin-bottom:22px}.detail-section{margin:22px 0}.detail-section h3{font-size:12px;color:#8b8893;text-transform:uppercase;margin:0 0 8px}.detail-section p{white-space:pre-wrap;line-height:1.6}.tags{display:flex;gap:6px;flex-wrap:wrap}.tag{background:#f0eef8;color:#5e3ac4;padding:4px 8px;border-radius:99px;font-size:12px}.detail-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:30px}.data-actions{display:flex;gap:9px;flex-wrap:wrap}.mobile-menu{display:none;border:0;background:transparent;font-size:23px}@media(max-width:720px){.sidebar{position:fixed;z-index:3;left:-260px;height:100vh;transition:.2s}.sidebar.open{left:0;box-shadow:10px 0 30px #0003}.mobile-menu{display:block}.topbar{height:auto;padding:17px 19px}.top-actions .search{display:none}.content{padding:22px 18px}.filters{display:block}.selects{margin-top:11px}.work-card{grid-template-columns:50px 1fr auto;padding:14px}.work-date{font-size:11px}.top-actions{gap:0}.top-actions .primary{padding:10px}.two-col{grid-template-columns:1fr}}
.manage-project-list{display:grid;gap:8px}.manage-project-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;font-weight:650}.manage-project-row .project-work-count{margin-left:auto;color:var(--muted);font-size:12px;font-weight:500}.small-danger{border:0;background:transparent;color:#bc2626;font:inherit;font-size:12px;font-weight:700;cursor:pointer;padding:6px}
.small-edit{border:0;background:transparent;color:#6242c8;font:inherit;font-size:12px;font-weight:700;cursor:pointer;padding:6px}
.account-button{border:1px solid var(--line);background:#fff;color:#5c5863;border-radius:9px;padding:9px 11px;font:inherit;font-size:12px;cursor:pointer;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-message{color:#bb2637;font-size:13px;min-height:18px;margin:14px 0 0}.auth-dialog::backdrop{background:#242030b8}
