:root{--navy:#17233f;--purple:#5b66e8;--mint:#14b8a6;--text:#182238;--muted:#818ba0;--line:#e8ecf3;--bg:#f5f7fb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.login-view{min-height:100vh;padding:24px;display:grid;place-items:center;background:radial-gradient(circle at 10% 10%,#eef0ff,transparent 32%),var(--bg)}.login-card{width:min(430px,100%);padding:36px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 22px 55px #17233f14}.logo{display:flex;align-items:center;gap:10px}.logo>b{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(145deg,#283a6d,#6873ed);font-size:11px}.logo>strong{font-size:19px;letter-spacing:.1em}.eyebrow{color:var(--purple);font-size:9px;font-weight:800;letter-spacing:.12em}.login-card>.eyebrow{display:block;margin-top:28px}.login-card h1{margin:7px 0;font-size:24px}.login-card>p{margin:0 0 24px;color:var(--muted);font-size:11px;line-height:1.6}.login-card label,.modal-card label{display:block;margin:12px 0;color:#667188;font-size:10px}.login-card input,.modal-card input,.modal-card textarea{width:100%;margin-top:6px;padding:12px;border:1px solid #dfe4ed;border-radius:10px;outline:0}.login-card input:focus,.modal-card input:focus,.modal-card textarea:focus{border-color:#717bec;box-shadow:0 0 0 3px #5b66e812}.primary{border:0;border-radius:10px;padding:11px 16px;background:var(--navy);color:#fff;font-size:11px;font-weight:700}.login-card>.primary{width:100%;margin-top:8px}.login-card>small{display:block;margin-top:14px;color:#a0a8b7;text-align:center;font-size:8px}.app{display:flex;min-height:100vh}.app>aside{position:fixed;z-index:20;inset:0 auto 0 0;width:235px;padding:27px 19px 19px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.app>aside .logo{padding:0 8px 30px}.app nav{display:flex;flex-direction:column;gap:5px}.app nav button{padding:12px;border:0;border-radius:11px;background:none;color:#717b8f;text-align:left;font-size:17px}.app nav button span{margin-left:9px;font-size:12px;font-weight:650}.app nav button em{float:right;min-width:19px;height:19px;padding:2px 5px;border-radius:7px;background:#f0f2f6;font-size:9px;font-style:normal;text-align:center}.app nav button.active{background:#eef0ff;color:#505bd5}.ceo{margin-top:auto;padding:17px 5px 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:9px}.ceo>i,.org-ceo>i{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#e9edfa;color:#394875;font-size:11px;font-style:normal;font-weight:800}.ceo b,.ceo span{display:block}.ceo b{font-size:10px}.ceo span{margin-top:3px;color:#979faf;font-size:8px}.app>main{width:calc(100% - 235px);margin-left:235px}.app header{height:64px;padding:0 32px;display:flex;align-items:center;justify-content:flex-end;gap:14px;background:#fffffff2;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:15;backdrop-filter:blur(12px)}.app header>span{color:#7d8799;font-size:9px}.app header>button{padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#7a8496;font-size:9px}.mobile-logo{display:none}.content{max-width:1300px;margin:auto;padding:32px}.page{display:none}.page.active{display:block}.welcome,.section-title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:22px}.welcome h1,.section-title h1{margin:6px 0;font-size:25px;letter-spacing:-.04em}.welcome p,.section-title p{margin:0;color:var(--muted);font-size:11px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px}.stats article{padding:16px;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px}.stats article>i{width:41px;height:41px;display:grid;place-items:center;border-radius:12px;font-style:normal}.purple{color:#5964de;background:#eef0ff}.amber{color:#df9820;background:#fff4df}.mint{color:#0da991;background:#e8faf6}.coral{color:#e96b67;background:#fff0ef}.stats span,.stats strong{display:block}.stats span{color:#8b94a5;font-size:9px}.stats strong{margin-top:3px;font-size:21px}.grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:16px}.grid>.panel:nth-child(2){grid-column:1}.panel{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:16px}.panel-head{padding:16px 18px;border-bottom:1px solid #f0f2f5}.panel-head h2{margin:0;font-size:14px}.panel-head p{margin:4px 0 0;color:#98a1b0;font-size:9px}.approval-row,.project-row{min-height:76px;padding:12px 16px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #f0f2f5}.approval-row:last-child,.project-row:last-child{border:0}.doc{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:#fff0f1;color:#df5b64;font-style:normal}.approval-main,.project-main{flex:1;min-width:0}.approval-main span,.status{display:inline-block;padding:2px 5px;border-radius:4px;background:#f0f2f6;color:#758094;font-size:7px}.approval-main h3,.project-main h3{overflow:hidden;margin:5px 0 4px;font-size:10px;white-space:nowrap;text-overflow:ellipsis}.approval-main p,.project-main p{margin:0;color:#98a1b0;font-size:8px}.approval-actions{display:flex;gap:5px}.approval-actions button,.card-actions button{padding:7px 9px;border:1px solid #dfe3eb;border-radius:7px;background:#fff;color:#6e788b;font-size:8px}.approval-actions button:last-child,.card-actions button:first-child{border-color:var(--navy);background:var(--navy);color:#fff}.progress{height:4px;margin-top:9px;overflow:hidden;border-radius:3px;background:#edf0f4}.progress i{display:block;height:100%;background:var(--mint)}.project-row>strong{font-size:9px}.meeting-card{grid-row:1/3;grid-column:2;padding:21px;border-radius:17px;background:linear-gradient(145deg,#172544,#293e71);color:#fff}.meeting-card>span{color:#aab5ff;font-size:8px;font-weight:800}.meeting-card h2{margin:8px 0;font-size:18px}.meeting-card>p{color:#bac2d3;font-size:9px;line-height:1.6}.meeting-card>button{width:100%;margin-top:15px;padding:10px;border:0;border-radius:9px;background:#fff;color:var(--navy);font-size:9px}.top-idea{margin-top:17px;padding:13px;border:1px solid #ffffff15;border-radius:11px;background:#ffffff0d}.top-idea>*{display:block}.top-idea b{color:#84e1d0;font-size:8px}.top-idea strong{margin-top:7px;font-size:10px}.card-list{display:flex;flex-direction:column;gap:10px}.project-card,.approval-card{padding:17px;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:15px}.project-card .project-main,.approval-card .approval-main{padding-right:10px}.project-card>strong{font-size:12px}.card-actions{display:flex;gap:6px}.status.READY{color:#159a81;background:#e8f8f4}.status.CEO_APPROVAL,.status.PENDING{color:#e15d64;background:#fff0f1}.status.COMPLETED,.status.APPROVED{color:#159a81;background:#e8f8f4}.status.STAFF_APPROVAL{color:#d88b19;background:#fff4df}.empty{padding:35px;color:#929bad;text-align:center;font-size:10px;line-height:1.7}.org-ceo{max-width:430px;margin:0 auto 18px;padding:17px;display:flex;align-items:center;gap:12px;border:1px solid #ccd2f6;border-radius:15px;background:#f8f8ff}.org-ceo span,.employee-list span{color:var(--purple);font-size:7px;font-weight:800}.org-ceo h3,.employee-list h3{margin:4px 0;font-size:11px}.org-ceo p,.employee-list p{margin:0;color:#8993a5;font-size:8px}.employee-list{max-width:650px;margin:auto;display:flex;flex-direction:column;gap:8px}.employee-list article{padding:13px 16px;display:flex;align-items:center;gap:11px;background:#fff;border:1px solid var(--line);border-radius:14px}.employee-avatar{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;font-size:8px;font-style:normal;font-weight:800}.c0{color:#41517e;background:#e9edf7}.c1{color:#5d61c5;background:#eeeeff}.c2{color:#158b7b;background:#e7f8f4}.c3{color:#c96361;background:#fceceb}.c4{color:#b47b20;background:#fff3dc}.c5{color:#517088;background:#e9f2f7}.employee-list article>div{flex:1}.employee-list em{color:#6e798c;font-size:8px;font-style:normal}.employee-list em b{display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:#15b592}.meeting-summary{padding:23px;border-radius:17px;background:linear-gradient(145deg,#172544,#293e71);color:#fff}.meeting-summary>span{color:#aab5ff;font-size:8px}.meeting-summary h2{margin:7px 0}.meeting-summary p{color:#bdc5d5;font-size:10px;line-height:1.7}.idea-list{margin-top:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.idea-list article{padding:17px;display:flex;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px}.idea-list article>b{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#eef0ff;color:#535ed5}.idea-list span{color:#149d85;font-size:8px}.idea-list h3{font-size:11px}.idea-list p{color:#8c96a7;font-size:8px}.bottom-nav{display:none}.modal{position:fixed;z-index:50;inset:0;padding:20px;display:none;place-items:center;background:#10182d8f;backdrop-filter:blur(5px)}.modal.show{display:grid}.modal-card{position:relative;width:min(500px,100%);padding:27px;border-radius:21px;background:#fff}.close{position:absolute;right:14px;top:9px;border:0;background:none;color:#8d96a6;font-size:25px}.modal-icon{width:48px;height:48px;margin-bottom:15px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#293b72,#6874ed);color:#fff;font-style:normal}.modal-card h2{margin:6px 0;font-size:20px}.modal-card>p{margin:0 0 15px;color:#7f899b;font-size:10px}.modal-card textarea{height:110px;resize:none}.modal-card .priority{display:flex;align-items:center;gap:7px}.modal-card .priority input{width:auto;margin:0}.modal-card>.primary{width:100%}.toast{position:fixed;z-index:70;left:50%;bottom:26px;max-width:calc(100% - 32px);padding:12px 18px;opacity:0;transform:translate(-50%,10px);pointer-events:none;border-radius:12px;background:var(--navy);color:#fff;font-size:10px;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:850px){.app>aside{display:none}.app>main{width:100%;margin:0}.app header{height:61px;padding:0 16px;justify-content:space-between}.mobile-logo{display:flex}.mobile-logo.logo>b{width:32px;height:32px}.mobile-logo.logo>strong{font-size:15px}.content{padding:22px 15px 90px}.stats{grid-template-columns:1fr 1fr;gap:8px}.grid{display:flex;flex-direction:column}.meeting-card{order:2}.grid>.panel:nth-child(2){order:3}.bottom-nav{position:fixed;z-index:30;left:0;right:0;bottom:0;height:70px;padding:7px 5px max(7px,env(safe-area-inset-bottom));display:flex;background:#fffffff5;border-top:1px solid var(--line);backdrop-filter:blur(14px)}.bottom-nav button{width:20%;border:0;background:none;color:#9aa3b4;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:17px}.bottom-nav button span{font-size:8px}.bottom-nav button.active{color:#515ddd}.idea-list{grid-template-columns:1fr}.project-card,.approval-card{align-items:flex-start;flex-wrap:wrap}.card-actions{width:100%;justify-content:flex-end}.welcome h1,.section-title h1{font-size:21px}.welcome .primary{width:44px;height:44px;padding:0;font-size:0}.welcome .primary:first-letter{font-size:18px}.section-title{align-items:center}.section-title>.primary{padding:10px;font-size:9px}}
