/* Case rehearsal: same Studio shell, dedicated content and playback. */
body.cycle-mode{display:block;height:100vh;overflow:hidden;background:#fff;color:#283d35;font-family:'Pretendard Variable',sans-serif;font-size:15px}
.cycle-mode #topbar{height:48px;display:flex;padding:0 24px;gap:24px;align-items:center;background:#f5f7f1;border-bottom:1px solid #dce3d5}
.cycle-mode .app{display:grid;grid-template-columns:214px minmax(0,1fr) 370px;height:calc(100vh - 90px);width:100%;min-width:0}
.cycle-mode #sidebar{display:flex;flex-direction:column;background:#e9eee1;padding:20px 12px;overflow:auto;border-right:1px solid #d4dfc9;min-width:0}
.cycle-mode #main{padding:28px 32px;overflow:auto;background:#fff;min-width:0}
.cycle-mode #inspector{display:flex;flex-direction:column;background:#f4f5f2;border-left:1px solid #dce3d5;padding:20px 16px;overflow:hidden;min-width:0}
.cycle-mode #review{height:42px;position:static;display:flex;align-items:center;gap:12px;background:#e9eee1;padding:0 20px;font-size:13px}
.cycle-mode button{cursor:pointer;font:inherit}.cycle-mode button:disabled{opacity:.45;cursor:default}.cycle-mode button:focus-visible{outline:2px solid #4d7159;outline-offset:3px}
.cycle-mode .primary,.cycle-mode .soft{min-height:35px;border-radius:6px;padding:8px 13px;font-size:14px}.cycle-mode .primary{background:#4d7159;color:#fff;border:1px solid #4d7159}.cycle-mode .soft{background:#fff;border:1px solid #d5ded1;color:#38543f}
.cycle-mode .nav-item{width:100%;display:flex;gap:10px;padding:12px 10px;align-items:center;text-align:left;font-size:14px;border:0;background:transparent;border-radius:5px}.cycle-mode .nav-item.active{background:#d3e2c5;border-left:3px solid #719254}.cycle-mode i img{width:18px;height:18px}.cycle-mode .side-label{font-size:12px;letter-spacing:.04em;color:#657b60;margin:20px 8px 8px}.cycle-mode .side-note{font-size:13px;color:#63755f;line-height:1.7;padding:8px}
.cy-top-path{flex:1;font-size:14px}.cy-connected{display:flex;gap:7px;align-items:center;font-size:13px}.cy-connected b{width:7px;height:7px;border-radius:50%;background:#4d7159}.cy-brand{font-size:21px;letter-spacing:-1px;font-weight:650}
.cy-context{display:flex;justify-content:space-between;align-items:start;gap:14px;border-bottom:1px solid #e1e6dd;padding-bottom:22px;margin-bottom:24px}.cy-context h1{font-size:23px;line-height:1.35;margin:6px 0 12px}.cy-eyebrow{font-size:12px;color:#647959;letter-spacing:.07em}.cy-meta{display:flex;gap:10px;align-items:center;font-size:13px;color:#637761}.cy-tag{font-size:12px;border-radius:4px;background:#eef2e9;padding:4px 8px;color:#526c47;white-space:nowrap}.cy-tag.actual{background:#dcebd9}.cy-tag.next{background:#f6eedb;color:#806837}
.cy-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0}.cy-heading h2{font-size:19px;margin:0}.cy-intro{line-height:1.8;color:#5c6e61;margin-bottom:23px}.cy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cy-card{border:1px solid #dbe3d5;border-radius:8px;padding:22px;background:#fff;margin-bottom:16px}.cy-card h3{font-size:17px;margin:8px 0 12px;line-height:1.5}.cy-card p{line-height:1.85;margin:9px 0;color:#405849}.cy-card .cy-foot{border-top:1px solid #e5e9e1;padding-top:14px;margin-top:16px;display:flex;gap:9px;flex-wrap:wrap}.cy-card.selected{border-color:#86a270;box-shadow:0 0 0 1px #c7d9bc}.cy-kpi{font-size:26px;font-weight:600;margin:12px 0}.cy-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.cy-action-row{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.cy-muted{font-size:13px;color:#70816e;line-height:1.7}
.cy-tabs{display:flex;gap:5px;border-bottom:1px solid #dce3d5;margin-bottom:22px}.cy-tabs button{background:none;border:0;padding:12px 14px;color:#5b7254;border-bottom:2px solid transparent}.cy-tabs button.active{border-color:#4d7159;color:#233f2a;font-weight:600}
.cy-doc{max-width:850px;margin:auto}.cy-doc p{line-height:2;font-size:16px;margin:18px 0}.cy-doc h3{margin-top:28px}.cy-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.7}.cy-table th,.cy-table td{padding:13px 12px;vertical-align:top;text-align:left;border-bottom:1px solid #e0e6dc}.cy-table th{background:#f1f5ed;color:#56704a}.cy-table tr:last-child td{border:0}
.cy-thread{background:#f6f8f3;border:1px solid #dbe5d3;padding:18px;border-radius:6px;margin-top:18px}.cy-message{padding:12px 0;line-height:1.8;border-bottom:1px solid #e4e9df}.cy-message strong{font-size:13px;display:block;color:#647c57}.cy-message.user{padding-left:12px;border-left:2px solid #90a87c}.cy-diff{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cy-diff>div{background:#fff;padding:14px;border:1px solid #dce4d6;border-radius:5px}.cy-diff p{font-size:14px}.cycle-mode textarea{width:100%;box-sizing:border-box;border:1px solid #cad7c1;border-radius:6px;padding:12px;font:inherit;line-height:1.8;background:white;resize:vertical;min-height:85px}.cy-edit{min-height:340px!important}.cy-chat-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.cy-chat-scope{background:#e9eee2;border-radius:6px;padding:14px;font-size:13px;line-height:1.8}.cy-chat-list{flex:1;overflow:auto;padding:8px 0;margin:10px 0}.cy-chat-compose{flex-shrink:0}.cy-question{display:block;border:1px solid #dbe4d3;background:white;text-align:left;padding:10px;margin:8px 0;border-radius:5px;width:100%;font-size:13px!important;color:#45603c}
.cy-map-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cy-map-root{grid-column:1/-1;text-align:center;background:#eaf2e2;border:1px solid #b5cba4;padding:22px;border-radius:8px}.cy-map-node{border-left:3px solid #90ac7e}.cy-timeline{border-left:2px solid #c3d4b5;margin:12px 14px;padding-left:24px}.cy-timeline .cy-card{position:relative}.cy-timeline .cy-card:before{content:'';position:absolute;left:-33px;top:28px;width:14px;height:14px;border-radius:50%;background:#6b8b58;border:3px solid #fff}
.cy-player-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cy-progress{width:110px;height:3px;background:#d1ddc7}.cy-progress span{display:block;height:100%;background:#507143}.cy-pointer{position:fixed;width:22px;height:22px;border:2px solid #4d7159;background:#e4efdfaa;border-radius:50%;pointer-events:none;z-index:10000;transform:translate(-50%,-50%);transition:left .23s ease,top .23s ease;box-shadow:0 0 0 4px #ffffff99}.cy-pointer.press{background:#4d7159;box-shadow:0 0 0 9px #88b57655}.cy-pointed{outline:2px solid #6c9354!important;outline-offset:3px}
.cy-modal-backdrop{position:fixed;inset:0;z-index:500;background:#21342666;display:flex;align-items:center;justify-content:center;padding:30px}.cy-modal{max-width:900px;max-height:85vh;overflow:auto;background:white;padding:28px;border-radius:9px;width:100%;box-shadow:0 16px 70px #21342633}.cy-modal h2{font-size:21px}.cy-modal .cy-close{float:right}.cy-idea-row{width:100%;text-align:left;background:white;color:inherit;cursor:pointer}.cy-idea-row:hover{border-color:#8ca57c}
@media(max-width:1450px){.cycle-mode .app{grid-template-columns:200px minmax(0,1fr) 310px}.cycle-mode #main{padding:22px}.cy-context h1{font-size:21px}.cy-grid{gap:12px}.cy-card{padding:17px}}
@media(max-width:1000px){.cycle-mode .app{grid-template-columns:170px minmax(0,1fr)}.cycle-mode #inspector{display:none}.cy-top-path{font-size:12px}.cy-grid{grid-template-columns:1fr}.cy-connected{font-size:12px}.cy-diff{grid-template-columns:1fr}.cy-context{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.cy-pointer{transition:none}}
/* Navigation, content and AI have distinct surfaces; green is reserved for action. */
.cycle-mode #topbar{background:#faf9f6;border-color:#e0e3df}
.cycle-mode #sidebar{background:#edf0ec;border-color:#dce1d9}
.cycle-mode #inspector{background:#f1f4f7;border-color:#dde3e8}
.cycle-mode #review{background:#f6f6f3;border-top:1px solid #dce1d9}
.cycle-mode .nav-item.active{background:#dce7d6;color:#304b32}
.cy-chat-scope{background:#e5ecf2;color:#4a6176}
.cy-chat-list .cy-message strong,.cy-thread .cy-message strong{color:#526c87}
.cy-chat-list .cy-message{background:white;border:1px solid #e0e6eb;border-radius:7px;margin-bottom:10px;padding:14px;font-size:14px}
.cy-chat-list .cy-message.user{background:#eaf0f5;border-color:#d4dfe8}
.cy-thread{background:#f3f6f9;border-color:#dce4eb}
.cy-context .cy-eyebrow{color:#72816d}.cy-tag.next{background:#f6eedb;color:#806837}
.cycle-mode{font-family:Pretendard,Arial,sans-serif!important}
.cycle-mode .react-flow__node{font-family:Pretendard,Arial,sans-serif}
.cycle-mode #main{scrollbar-color:#a6b49c #f4f5f1}

.intro-mode #sidebar,.intro-mode #inspector,.intro-mode .cy-context,.intro-mode .cy-top-path,.intro-mode .cy-connected{display:none!important}.intro-mode .app{grid-template-columns:minmax(0,1fr)!important}.intro-mode #main{padding:24px 40px;background:#f6f7f5}.intro-shell{max-width:1200px;margin:0 auto}.intro-steps{display:flex;align-items:center;justify-content:center;gap:15px;margin:10px 0 30px;color:#859189}.intro-steps span{padding:10px;border-radius:8px}.intro-steps .current{background:#e1eadc;color:#36513d}.intro-steps .done{color:#3b654c}.intro-scene{animation:intro-in .38s ease both}.intro-scene>h2{font-size:30px;margin:12px 0 18px;color:#294534}.intro-scene>p{font-size:17px;line-height:1.8}.intro-providers{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:35px 0}.intro-providers button{padding:28px;font-size:22px;border:1px solid #ccd8cd;border-radius:12px;background:white}.intro-providers .active{background:#e4edde;border-color:#6c8e66}.intro-status{color:#43634c}.intro-flow{display:flex;align-items:center;gap:30px;margin:25px 0}.intro-flow>article{flex:1;margin:0}.intro-phone{max-width:330px;border:4px solid #52655c;border-radius:25px;background:#fff;padding:25px}.intro-arrow{font-size:34px;color:#708a73}.intro-scene blockquote{margin:18px 0;padding:15px;background:#edf2f5;border-left:3px solid #8da2b2;line-height:1.9}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.intro-grid .cy-card{margin:0}.intro-document{max-width:820px}.intro-next{display:flex;align-items:center;gap:20px;margin:25px 0;font-size:19px}.intro-workspace{display:grid;grid-template-columns:180px 1fr;border:1px solid #d1dad1;border-radius:10px;overflow:hidden;margin:25px 0}.intro-workspace aside{background:#e9eeea;padding:24px;line-height:2.5}.intro-workspace section{padding:24px;background:white}.intro-tags{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.intro-tags span{background:#eef1ed;border:1px solid #d0dbcd;padding:14px;border-radius:8px}.intro-tags .intro-added{background:#e6eef7;border-color:#9fb5cd;color:#385c82}.intro-dialog{padding:20px;background:#f0f4f8;border-radius:10px;line-height:1.8}.intro-scene>.primary{margin:15px 0;padding:12px 20px}@keyframes intro-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.intro-scene{animation:none}}

.cycle-mode.intro-mode .intro-providers button{font-size:22px}

/* The explanation is visibly separate from the product demonstration. */
.intro-disclaimer{display:none;align-items:center;gap:14px;font-size:14px;color:#526174;line-height:1.5}
.intro-disclaimer strong{background:#e8edf5;color:#365475;padding:5px 10px;border-radius:5px;white-space:nowrap}
.intro-mode .intro-disclaimer{display:flex;flex:1}
.intro-mode #topbar{height:auto;min-height:54px;box-sizing:border-box}
.intro-mode .app{height:calc(100vh - 96px)}
.intro-loading{max-width:760px;margin:65px auto;text-align:center}
.intro-loading h2{font-size:30px;margin:18px 0}.intro-loading>p{line-height:1.8;color:#607269}
.intro-load-track{height:9px;background:#dfe7e4;border-radius:20px;margin-top:44px;overflow:hidden}
.intro-load-track>span{display:block;width:0;height:100%;background:linear-gradient(90deg,#789ca8,#47765c);border-radius:20px}
.intro-load-meta{display:flex;justify-content:space-between;margin:15px 0;color:#3b5b4c;font-size:14px;font-variant-numeric:tabular-nums}
.intro-load-steps{display:flex;justify-content:space-between;margin:32px 0;color:#8a9690;font-size:14px}
.intro-load-steps span:before{content:'○';margin-right:8px}.intro-load-steps .done{color:#3b6a50}.intro-load-steps .done:before{content:'✓'}
.studio-unfold{animation:studio-unfold 850ms cubic-bezier(.2,.7,.2,1) both;transform-origin:50% 45%}
@keyframes studio-unfold{from{opacity:0;transform:scale(.965);clip-path:inset(8% 14% 8% 14% round 18px)}to{opacity:1;transform:scale(1);clip-path:inset(0 round 0)}}
@media(prefers-reduced-motion:reduce){.studio-unfold{animation:none}}
/* Central explanation and idea-driven Studio construction. */
.intro-explanation{padding:20px 26px;background:#e8eef5;border:1px solid #b9cbdc;border-left:5px solid #597c9c;border-radius:10px;margin:0 0 20px;color:#294a68}
.intro-explanation strong{display:block;font-size:24px;line-height:1.4;font-weight:650}
.intro-explanation p{font-size:17px;line-height:1.6;margin:9px 0 0;color:#48627a}
.intro-mode .intro-steps{margin:8px 0 22px}
.intro-mode .intro-loading{margin:36px auto}
.intro-mode .intro-scene>h2{font-size:28px}
.intro-layout-build aside{animation:intro-in .5s ease both}
.intro-layout-build .intro-tags{animation:intro-in .6s .15s ease both}
.intro-layout-build .intro-grid{animation:intro-in .6s .35s ease both}
.intro-layout-build .intro-dialog{animation:intro-in .6s .55s ease both;margin-top:16px}
.intro-layout-build section{padding:18px}.intro-layout-build .intro-tags{margin:8px 0 15px}
@media(prefers-reduced-motion:reduce){.intro-layout-build aside,.intro-layout-build .intro-tags,.intro-layout-build .intro-grid,.intro-layout-build .intro-dialog{animation:none}}
.ideas-mode #inspector{display:none!important}.cycle-mode.ideas-mode .app{grid-template-columns:214px minmax(0,1fr)}.ideas-mode #main{padding-top:32px}.ideas-mode .cy-heading{margin-top:0}@media(max-width:1000px){.cycle-mode.ideas-mode .app{grid-template-columns:170px minmax(0,1fr)}}

.arc-login-preview{float:left;height:610px;width:auto;margin:0 48px 20px 0;border-radius:22px}.intro-scene:after{content:"";display:block;clear:both}
