:root{--bg:#f6f8fc;--paper:#fff;--ink:#17213a;--muted:#79859c;--line:#e8ecf4;--primary:#1d5fb8;--primary-dark:#174b92;--shadow:0 6px 35px rgba(18,32,78,.035);--radius:16px}*{box-sizing:border-box}html{font-size:14px}body{margin:0;background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Hiragino Sans','Noto Sans JP','Segoe UI',sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}button,select,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}a{color:var(--primary)}.shell{display:flex;min-height:100vh}.sidebar{background:#151d37;width:246px;min-width:246px;min-height:100vh;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:30px 16px 18px;color:#f6f8ff;z-index:2}.brand{display:flex;align-items:center;gap:11px;padding:0 14px 35px}.brand-mark{width:41px;height:41px;border-radius:13px;background:#1d5fb8;display:grid;place-items:center;font-size:23px;font-weight:800;position:relative;box-shadow:0 8px 19px rgba(87,86,230,.27)}.brand-mark span{font-size:10px;position:absolute;right:5px;top:3px;color:#fff}.brand strong{font-size:22px;font-weight:800;letter-spacing:-1px}.brand small{display:block;font-size:8px;letter-spacing:2px;color:#7986a8;margin-top:2px}.workspace-caption{font-size:9px;letter-spacing:1.2px;color:#8691ac;margin:0 10px 10px;display:flex;justify-content:space-between}.workspace-caption span{color:#9fb6d9}.workspace-select{display:flex;align-items:center;gap:9px;border:1px solid #38425f;background:#202b48;padding:10px 9px;border-radius:11px;margin-bottom:35px}.workspace-symbol{background:#1d5fb8;border-radius:7px;width:31px;height:31px;display:grid;place-items:center;font-weight:800}.workspace-select div{flex:1;min-width:0}.workspace-select b{font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-select small{font-size:10px;color:#8190b5;display:block;margin-top:3px}.side-caret{font-size:18px;color:#8994b1}.nav-kicker{padding:0 14px;margin-bottom:13px;font-size:10px;color:#73809e;letter-spacing:1.6px;font-weight:600}.nav-link{background:none;color:#aab5d2;border:0;border-radius:10px;display:flex;align-items:center;gap:11px;text-align:left;width:100%;padding:12px 14px;font-size:12px;font-weight:600;margin-bottom:4px;min-height:43px;transition:background .15s,color .15s}.nav-link:hover{background:#222e50;color:#fff}.nav-link.active{background:#1d5fb8;color:#fff;box-shadow:0 7px 15px rgba(36,34,119,.25)}.nav-icon{width:18px;display:inline-block;text-align:center;font-size:18px;font-family:inherit;font-weight:400;line-height:1}.nav-dot{margin-left:auto;width:6px;height:6px;border-radius:50%;background:#c8ffec}.nav-soon{font-size:9px;font-style:normal;font-weight:500;color:#7483aa;margin-left:auto}.settings-kicker{margin-top:31px}.side-bottom{margin-top:auto;background:#202c48;border:1px solid #2f3b59;border-radius:12px;padding:14px;display:flex;align-items:flex-start;gap:10px}.side-light{width:8px;height:8px;background:#43d8aa;border-radius:50%;margin-top:3px;box-shadow:0 0 0 4px #43d8aa19}.side-bottom b{display:block;font-size:11px}.side-bottom small{display:block;color:#8795b6;font-size:10px;margin-top:4px}.main{min-width:0;flex:1}.topbar{height:75px;background:#fff;border-bottom:1px solid var(--line);padding:0 43px;display:flex;align-items:center;justify-content:space-between}.breadcrumbs{display:flex;gap:13px;align-items:center;color:#929cb1;font-size:12px}.breadcrumbs i{font-style:normal;color:#c6cfdf}.breadcrumbs b{color:#313b56;font-weight:700}.topbar-tools{display:flex;align-items:center;gap:22px}.pill-status{font-size:10px;color:#28856e;border:1px solid #cdeee4;background:#f2fcf7;border-radius:30px;padding:8px 11px;letter-spacing:.25px;font-weight:700}.pill-status>span:first-child{display:inline-block;border-radius:50%;width:6px;height:6px;background:#27b78a;margin-right:7px}.avatar{width:35px;height:35px;background:#edf0fe;color:#4e58a6;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:800}.content{max-width:1450px;margin:auto;padding:26px 44px 75px}.environment-warning{display:flex;align-items:center;gap:12px;background:#fff8e8;border:1px solid #f6e8bf;color:#825c1f;border-radius:11px;padding:12px 16px;font-size:11px;line-height:1.7;margin-bottom:29px}.warning-icon{display:grid;place-items:center;flex-shrink:0;width:23px;height:23px;border:1px solid #e8c776;border-radius:50%;font-weight:800;color:#bd8b28}.environment-warning strong{font-weight:800}.view{display:none}.view.active{display:block}.page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.6px;color:#1d5fb8;display:flex;align-items:center;gap:12px}.eyebrow-line{width:20px;height:1px;background:#a8a2f4}.page-head h1{font-size:30px;letter-spacing:-1.2px;margin:8px 0 8px;font-weight:790}.heading-spark{font-size:22px;color:#9691ee;margin-left:3px}.page-head p{color:#8a96ac;font-size:12px;margin:0}.primary-btn{border:0;border-radius:10px;background:#1d5fb8;color:white;font-size:12px;font-weight:750;padding:14px 19px;display:inline-flex;align-items:center;justify-content:center;gap:18px;box-shadow:0 6px 14px rgba(75,75,193,.13);transition:background .15s,transform .15s}.primary-btn:hover{background:#454bbc;transform:translateY(-1px)}.primary-btn.full{width:100%;height:45px;justify-content:space-between}.toolbar{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:23px}.selector-group{display:flex;align-items:center;gap:12px;background:#fafbff;border:1px solid #e9edf6;padding:8px 12px;border-radius:8px}.selector-group label{font-size:10px;color:#8a97b0;white-space:nowrap}.selector-group select{border:0;background:transparent;color:#2c3554;font-size:11px;font-weight:700;outline:none;min-width:130px;max-width:250px;cursor:pointer}.toolbar-aside{margin-left:auto;color:#acb4c2;font-size:10px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:37px}.stat-card{border:1px solid var(--line);border-radius:14px;background:#fff;padding:18px 21px;min-height:155px;position:relative;box-shadow:var(--shadow)}.stat-icon{width:33px;height:33px;display:grid;place-items:center;border-radius:10px;font-size:20px;margin-bottom:15px}.stat-icon-purple{background:#f1efff;color:#6663dd}.stat-icon-orange{background:#fff5e9;color:#f3a13e}.stat-icon-teal{background:#eafbf5;color:#33ac92}.stat-icon-sky{background:#edf7ff;color:#529bd9}.stat-name{font-size:11px;color:#8a96ab;position:absolute;left:65px;top:30px}.stat-value{font-size:31px;font-weight:800;line-height:1.2;letter-spacing:-1px}.stat-foot{display:block;color:#a8b3c6;font-size:10px;margin-top:8px}.stat-unit{font-size:12px;color:#a4adbe;font-weight:600;letter-spacing:0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin:0 0 16px;gap:15px}.section-overline{font-size:10px;color:#a5abbd;letter-spacing:1.5px;font-weight:800}.section-head h2{font-size:18px;letter-spacing:-.5px;margin:5px 0 0}.subtle-label,.text-btn{color:#8c97ad;font-size:11px}.subtle-label span{margin-left:5px}.text-btn{border:0;background:none;color:#6665c6;font-weight:700}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.feature-card{border:1px solid var(--line);background:#fff;border-radius:14px;text-align:left;min-height:191px;padding:18px 20px;position:relative;box-shadow:var(--shadow);transition:transform .2s,border-color .2s,box-shadow .2s}.feature-card:hover{transform:translateY(-2px);border-color:#dadcf9;box-shadow:0 12px 25px rgba(48,57,124,.075)}.feature-icon{height:38px;width:38px;display:grid;place-items:center;border-radius:11px;font-size:23px;margin-bottom:14px}.feature-icon.purple{background:#f0edff;color:#6660cd}.feature-icon.teal{background:#e5f8f3;color:#22a787}.feature-icon.orange{background:#fff3e8;color:#d88f43}.feature-icon.blue{background:#ebf4ff;color:#4a97d5}.feature-icon.pink{background:#fff0f4;color:#d884a2}.feature-icon.navy{background:#edf0fb;color:#5969ac}.feature-status{position:absolute;right:16px;top:23px;font-size:9px;padding:5px 7px;border-radius:5px;font-weight:700}.feature-status.working{color:#268572;background:#ecfaf4}.feature-status.demo{color:#6555ab;background:#f3f0ff}.feature-status.later{color:#a0a9bb;background:#f4f6fa}.feature-card strong{display:block;font-size:14px;margin-bottom:7px}.feature-card p{color:#9ba5b7;font-size:10px;line-height:1.8;margin:0;max-width:90%}.feature-arrow{position:absolute;right:18px;bottom:17px;color:#bdc5d3;font-size:18px}.recent-heading{margin-top:36px}.table-card{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:660px}thead{background:#fafbfe}th{font-size:10px;color:#9aa5bb;padding:17px 18px;font-weight:700}td{padding:16px 18px;border-top:1px solid #eef1f7;font-size:11px;color:#59647c}td:first-child{font-weight:700;color:#2e3851;max-width:240px}.row-link{border:0;background:#f4f4ff;color:#5658ca;padding:8px 11px;border-radius:7px;font-size:10px;font-weight:750}.row-link:hover{background:#e7e8ff}.state-chip{display:inline-block;padding:5px 8px;border-radius:6px;background:#fff5e4;color:#a7802c;font-size:10px;font-weight:750;white-space:nowrap}.state-chip.completed{background:#eaf9f3;color:#26876b}.state-chip.failed{background:#fff0f1;color:#bc505e}.state-chip.running{background:#eff4ff;color:#5e78c2}.empty-cell{text-align:center;padding:37px!important;color:#9da9bd!important;font-size:12px;font-weight:400!important}.mode-tag{padding:9px 12px;background:#fff;border:1px solid #eaedf5;color:#8d9ab2;border-radius:7px;font-size:10px;font-weight:700}.two-col{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(310px,.85fr);gap:19px;margin-bottom:31px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:25px;box-shadow:var(--shadow)}.panel-header{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}.panel-number{width:33px;height:33px;border-radius:9px;background:#eaf1fb;color:#1d5fb8;display:grid;place-items:center;flex:none;font-size:11px;font-weight:800}.panel-header h2{font-size:16px;margin:1px 0 6px}.panel-header p{font-size:10px;color:#94a0b3;line-height:1.7;margin:0}.form{display:flex;flex-direction:column;gap:18px}.form label{font-size:11px;font-weight:700;color:#424b64;display:flex;flex-direction:column;gap:8px}.required{font-size:9px;font-weight:600;color:#be6f5e;margin-left:7px}.form input,.form textarea{border:1px solid #e4e9f3;border-radius:9px;padding:13px;background:#fbfcff;color:#2e3852;outline:none;width:100%;resize:vertical;font-size:12px;line-height:1.65;transition:border-color .15s}.form input:focus,.form textarea:focus{border-color:#8585e4;background:#fff;box-shadow:0 0 0 3px #8181f012}.form-note{padding:11px 13px;background:#f4f7fe;border-radius:7px;font-size:10px;color:#7889aa;line-height:1.7}.panel-side{padding-bottom:32px}.timeline{margin-top:13px}.timeline-row{display:flex;align-items:flex-start;gap:12px;position:relative;padding-bottom:26px}.timeline-row:not(:last-child):before{content:'';position:absolute;left:12px;top:24px;bottom:0;width:1px;background:#e5eaf1}.time-dot{z-index:1;flex:none;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;font-size:12px}.time-dot.done{background:#e6f8ef;color:#239c76}.time-dot.future{background:#f3f5f9;color:#a8b0bd}.timeline-row>div{flex:1}.timeline-row b{display:block;font-size:11px;margin:3px 0 5px}.timeline-row small{display:block;color:#9fa9ba;font-size:10px;line-height:1.6}.mini-tag{font-size:9px;border-radius:5px;padding:5px 7px;background:#effaf4;color:#399574;white-space:nowrap}.future-tag{background:#f4f6fa;color:#a4adbc}.figure-panel{padding:0;overflow:hidden}.figure-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:23px 26px;border-bottom:1px solid var(--line)}.figure-top h2{font-size:16px;margin:7px 0 8px}.figure-top p{font-size:11px;color:#98a4b8;margin:0;line-height:1.7}.figure-top code,.view code{background:#f1f4fc;font-size:10px;padding:2px 4px;border-radius:4px}.segmented{background:#f2f4fa;padding:4px;border-radius:8px;display:flex;gap:4px;flex:none}.segmented button{background:transparent;border:0;font-size:10px;padding:9px 12px;color:#97a1b3;border-radius:6px;font-weight:750}.segmented button.selected{background:#fff;color:#4f59c3;box-shadow:0 2px 8px #121c3912}.figure-frame{background:#eaeef5;display:flex;align-items:center;justify-content:center;padding:20px;min-height:520px}.figure-frame iframe{height:515px;max-width:900px;width:100%;border:1px solid #e6ebf3;background:white;border-radius:7px}.figure-frame img{max-width:95%;max-height:570px;border:1px solid #e6ebf3;background:#fff;object-fit:contain}.figure-frame img[hidden],.figure-frame iframe[hidden]{display:none}.figure-foot{display:flex;justify-content:space-between;gap:20px;padding:15px 25px;color:#919bab;font-size:10px;line-height:1.7}.next-callout{border:1px solid #dfe3fa;border-radius:12px;background:#f3f4ff;padding:18px 21px;margin-top:22px;color:#4b527d}.next-callout b{font-size:12px}.next-callout p{font-size:11px;line-height:1.8;margin:7px 0 0}.todo-box{background:#f9fbfe;padding:22px;border-radius:11px}.todo-box h3{margin:0 0 15px;font-size:13px}.todo-line{font-size:12px;color:#78869f;line-height:1.8;padding:9px 0;border-bottom:1px solid #edf0f6}.todo-line:last-child{border-bottom:0}.placeholder-layout{display:grid;grid-template-columns:minmax(350px,1fr) minmax(350px,1fr);border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#fff;min-height:490px}.placeholder-visual{display:grid;place-items:center;min-height:450px;overflow:hidden}.banner-visual{background:linear-gradient(145deg,#dedbff,#c7d9fa 50%,#eadfea)}.fake-banner{background:linear-gradient(125deg,#202348,#575abe);width:280px;height:280px;color:#fff;position:relative;padding:31px;box-shadow:0 25px 45px #36407533;overflow:hidden;transform:rotate(-3deg)}.fake-banner span{letter-spacing:2px;font-size:10px}.fake-banner strong{display:block;font-size:28px;margin-top:45px;line-height:1.15;letter-spacing:-1px}.fake-banner-square{width:180px;height:180px;background:linear-gradient(120deg,#7979ed,#e4a5bb);border-radius:50%;position:absolute;right:-65px;bottom:-60px}.video-visual{background:linear-gradient(140deg,#ddeaf8,#c1d9f3)}.video-device{width:210px;height:365px;background:linear-gradient(135deg,#536e9a,#1e2855);border:7px solid #273455;border-radius:26px;box-shadow:0 22px 36px #43577644;color:#fff;text-align:center;padding:80px 16px 15px}.video-sky{font-size:62px;color:#f0d4bd}.video-device b{display:block;font-size:18px;line-height:1.25;margin:15px 0 75px}.video-device span{font-size:8px;color:#bfcfe9}.sns-visual{background:linear-gradient(130deg,#e0e5ff,#f6edfb)}.calendar-placeholder{width:310px;padding:24px;background:#fff;border-radius:17px;box-shadow:0 20px 50px #53518724}.cal-title{display:flex;justify-content:space-between;margin-bottom:24px;font-size:16px}.cal-title span{color:#a4aec2}.cal-head{white-space:pre;text-align:center;letter-spacing:8px;font-size:9px;color:#9fa9bc;margin-bottom:12px}.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cal-days span{text-align:center;font-size:10px;color:#8b96b0;padding:9px 0;border-radius:5px}.cal-days .p1{background:#deddff;color:#4d4bb5}.cal-days .p2{background:#e0f5ef;color:#26896a}.placeholder-copy{padding:75px 50px;display:flex;flex-direction:column;justify-content:center}.placeholder-copy h2{font-size:26px;line-height:1.5;letter-spacing:-1px;margin:13px 0}.placeholder-copy p{font-size:12px;color:#909caf;line-height:2;margin:0 0 22px}.placeholder-copy .todo-line{padding:6px 0}.next-label{color:#b18355;background:#fff9eb;padding:12px;margin-top:18px;font-size:10px;border-radius:6px}.rules-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.kv{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 0;border-bottom:1px solid #f0f1f5;font-size:11px}.kv:last-child{border-bottom:0}.kv span{color:#909caf}.kv b{text-align:right;color:#4b5672}.kv .danger-text{color:#b9745d}.connection{display:flex;align-items:center;gap:10px;border-bottom:1px solid #f0f1f5;padding:15px 0}.connection:last-child{border:0}.conn-icon{width:35px;height:35px;background:#f0f0fb;color:#6666c0;font-size:12px;font-weight:800;border-radius:10px;display:grid;place-items:center}.connection>div:nth-child(2){flex:1}.connection b{font-size:11px;display:block}.connection small{font-size:9px;color:#a1aabb;display:block;margin-top:5px}.connection>span{color:#b6a5a0;background:#fff5f1;border-radius:5px;font-size:9px;padding:5px 7px}.toast{position:fixed;bottom:28px;right:28px;background:#24365a;color:#fff;border-radius:10px;padding:14px 19px;box-shadow:0 16px 40px #0b163b55;font-size:12px;z-index:20;opacity:0;transform:translateY(15px);pointer-events:none;transition:.2s;max-width:400px}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:#9e4d58}.drawer-backdrop{display:none;position:fixed;inset:0;background:#111a35a8;z-index:10}.drawer-backdrop.open{display:block}.drawer{position:fixed;right:0;top:0;bottom:0;max-width:92vw;width:620px;background:#fff;z-index:11;transform:translateX(102%);transition:transform .25s;box-shadow:-10px 0 40px #12203c2b;display:flex;flex-direction:column}.drawer.open{transform:translateX(0)}.drawer-head{padding:25px 28px;border-bottom:1px solid var(--line);display:flex;align-items:start;justify-content:space-between;gap:20px}.drawer-head small{font-size:10px;color:#8b8cbd;letter-spacing:1.4px}.drawer-head h2{font-size:19px;line-height:1.5;margin:9px 0 0;word-break:break-word}.close-btn{border:0;border-radius:8px;background:#f3f5fa;color:#586179;font-size:24px;line-height:1;width:34px;height:34px;flex:none}.drawer-content{padding:24px 28px 45px;overflow-y:auto;flex:1}.detail-section{padding:0 0 22px;margin-bottom:20px;border-bottom:1px solid var(--line)}.detail-section h3{font-size:13px;margin:0 0 13px}.detail-muted{font-size:11px;color:#8c98ac;line-height:1.7}.detail-row{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:7px 0;font-size:11px}.detail-row>span{color:#9ba6b9}.detail-row>b{text-align:right;max-width:70%;word-break:break-word;font-weight:650}.detail-brief{background:#f7f9fe;border:1px solid #e9edf7;border-radius:8px;padding:13px;font-size:12px;line-height:1.8;white-space:pre-wrap;max-height:150px;overflow:auto}.artifact-view{height:260px;width:100%;background:#fff;border:1px solid var(--line);border-radius:7px}.artifact-json{max-height:220px;overflow:auto;background:#f8f9fc;border:1px solid #edf0f6;border-radius:8px;font-size:11px;line-height:1.7;padding:13px;white-space:pre-wrap;word-break:break-all}.review-controls{background:#f7f9fc;padding:15px;border-radius:10px}.review-controls textarea{width:100%;min-height:75px;resize:vertical;margin:10px 0;border:1px solid #e2e5f4;background:#fff;border-radius:7px;padding:12px;font-size:11px;line-height:1.7}.review-actions{display:flex;gap:9px}.secondary-btn{border:1px solid #c9d6ea;background:#fff;color:#1d5fb8;border-radius:7px;padding:10px 12px;font-weight:750;font-size:11px}.secondary-btn:hover{background:#f1f1ff}.review-warning{font-size:10px;color:#a08158;line-height:1.6;margin:0 0 10px}.events-list{font-size:10px;display:flex;flex-direction:column;gap:10px}.event{display:flex;gap:10px;color:#79849b}.event b{color:#49536d}.event-time{min-width:115px;color:#a2acbc}#figure-frame{display:block}.spinner{display:inline-block;width:12px;height:12px;border:2px solid #c9c8fc;border-top-color:#1d5fb8;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1100px){.content{padding:24px}.topbar{padding:0 24px}.sidebar{width:215px;min-width:215px}.stats-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.placeholder-copy{padding:45px 30px}.toolbar-aside{display:none}}@media(max-width:740px){.shell{display:block}.sidebar{height:auto;min-height:0;position:relative;width:100%;padding:14px 15px 10px;display:block}.brand{padding:0 0 14px}.workspace-caption,.workspace-select,.nav-kicker,.settings-kicker,.side-bottom{display:none}.sidebar nav{display:flex;gap:6px;overflow:auto;padding:0 0 8px}.nav-link{min-width:max-content;padding:9px 12px;font-size:11px;flex:0}.nav-soon,.nav-dot{display:none}.topbar{height:55px;padding:0 17px}.topbar-tools{gap:9px}.content{padding:16px 16px 45px}.environment-warning{font-size:10px;padding:10px}.page-head{align-items:flex-start}.page-head h1{font-size:24px}.page-head .primary-btn{padding:11px;font-size:10px}.toolbar{flex-wrap:wrap}.selector-group{width:100%;justify-content:space-between}.stats-grid{gap:9px}.stat-card{padding:13px;min-height:135px}.stat-name{left:53px;top:24px;font-size:10px}.stat-value{font-size:27px}.feature-grid{gap:9px}.feature-card{padding:14px;min-height:179px}.feature-card p{font-size:10px}.feature-status{right:9px;top:14px}.two-col,.rules-grid,.placeholder-layout{grid-template-columns:1fr}.panel{padding:18px}.figure-top{flex-direction:column;align-items:stretch}.figure-frame{padding:5px;min-height:370px}.figure-frame iframe{height:420px}.figure-foot{display:block}.placeholder-visual{min-height:325px}.placeholder-copy{padding:35px}.drawer{width:100%;max-width:100%}.drawer-content{padding:20px}}

/* システム更新 */
.update-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:24px}.update-grid .panel{min-width:0}.update-version{display:flex;align-items:center;gap:15px;margin:12px 0 10px}.update-version>span:first-child{font-size:32px;font-weight:850;letter-spacing:-1px;color:#1c2b4c}.update-ready{color:#238e71;background:#e7f8ee;padding:6px 10px;font-size:10px;border-radius:7px}.update-info{font-size:11px;color:#8490a5;line-height:1.9}.update-divider{border-bottom:1px solid #edf0f7;margin:26px 0}.update-grid h3{font-size:13px}.update-bundled{color:#8290a9;font-size:11px;line-height:1.7;margin:12px 0 18px}.update-candidate{background:#f8f9fe;border:1px solid #e8ebf7;border-radius:11px;display:flex;gap:12px;justify-content:space-between;align-items:center;padding:16px;margin:10px 0}.update-candidate b{color:#303e62}.update-candidate p{margin:5px 0 0;font-size:10px;line-height:1.5}.update-drop{min-height:170px;border:2px dashed #d1d6ee;background:#fafbff;border-radius:15px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;cursor:pointer;margin:15px 0 14px;text-align:center}.update-drop:hover{background:#f3f1ff;border-color:#8681dd}.update-drop-icon{font-size:36px;color:#6763d9;line-height:1}.update-drop b{font-size:13px;color:#34415e}.update-drop small{font-size:10px;color:#9aa5ba}.update-drop input{width:1px;height:1px;opacity:0;position:absolute;pointer-events:none}.update-preview{margin:17px 0;padding:16px;border:1px solid #eaedf8;background:white;border-radius:11px;min-height:90px;color:#687691;line-height:1.7;font-size:11px}.update-preview-title{display:flex;justify-content:space-between;align-items:center}.update-preview-title b{font-size:16px;color:#313c58}.update-preview-title small{font-size:10px;color:#17875d;background:#e8f7ef;padding:6px;border-radius:7px}.update-field{display:block;color:#8490a3;font-size:9px;font-weight:700;margin-bottom:8px}.update-files{background:#f6f7fc;border-radius:7px;padding:10px;font-size:11px;word-break:break-all}.update-files>div{padding:5px 0}.update-message{min-height:24px;color:#327e72;font-size:11px;padding-top:12px;line-height:1.7}.update-message.update-error{color:#b04f55}.update-history{margin-top:35px}.update-history h2{font-size:17px;margin:8px 0 15px}.update-history-item{display:flex;gap:15px;align-items:center;padding:12px 16px;border:1px solid #e8edf6;background:#fff;border-radius:7px;font-size:11px;margin:8px 0}.update-history-item span{color:#8792a9}.update-history-item small{color:#7c899e}.update-grid button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:890px){.update-grid{grid-template-columns:1fr}}

/* Local signed update test v0.2.1 */

/* Native article studio v0.3 */
.studio-panel{margin:26px 0 30px;padding:24px}
.studio-panel .panel-header{margin-bottom:16px}
.studio-chip{font-size:10px;border-radius:6px;background:#e7f8f1;color:#157954;padding:4px 7px}
.studio-disclaimer{font-size:12px;border:1px solid #f2dfbd;background:#fffaf0;padding:11px;border-radius:8px;margin-bottom:16px;color:#875b21}
.studio-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:22px}
.studio-grid h3{font-size:15px;margin:5px 0 10px}.studio-hint{font-size:12px;line-height:1.7;color:#718097}
.studio-label{display:block;font-size:12px;font-weight:650;margin:12px 0}
.studio-label textarea,.studio-grid #studio-content{display:block;box-sizing:border-box;width:100%;padding:12px;margin-top:9px;border-radius:8px;border:1px solid #dbe1ed;background:#fff;color:#283043;font-size:13px;line-height:1.7;resize:vertical}
.studio-grid #studio-content{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.studio-draft-list{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#657186}
.studio-draft{text-align:left;display:flex;flex-direction:column;gap:5px;padding:10px 12px;background:#f7f9fc;border:1px solid #e4e6f4;border-radius:8px;color:#303c53;cursor:pointer}
.studio-draft:hover{border-color:#7d6ff2}.studio-draft small{font-size:10px;color:#8991a5}
.studio-quality{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:12px}
.studio-check{display:flex;flex-direction:column;gap:3px;border:1px solid #e2e5ef;border-radius:7px;padding:8px;font-size:11px}
.studio-check small{font-size:10px;color:#7b8499}.studio-pass b{color:#218467}.studio-fail b{color:#b77724}
.studio-caution{grid-column:1/-1;color:#a56c27;font-size:11px;line-height:1.65}
.studio-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
@media(max-width:850px){.studio-grid{grid-template-columns:1fr}}
#studio-root [hidden]{display:none!important}

/* v0.3.1 scoped policy UI */
.studio-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0;}
.studio-policy-grid input,.studio-policy-grid textarea{width:100%;padding:12px;border:1px solid #dce1ef;border-radius:9px;background:#fff;font:inherit;font-size:13px;display:block;margin-top:7px;box-sizing:border-box;}
.studio-policy-grid label{font-size:13px;font-weight:600;}
@media(max-width:800px){.studio-policy-grid{grid-template-columns:1fr;}}

/* Former inline styles (CSP style-src 'self' blocks style attributes) */
.subhead-gap{margin-top:24px}
.check-row{display:flex;gap:8px;align-items:center;margin:10px 0}
.check-row input{width:auto}
.artifact-block{margin:10px 0 19px}
.artifact-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:9px}
.artifact-kind{font-size:11px}
.artifact-open{font-size:10px}
.detail-subhead{margin-top:22px}
.review-note-label{color:#95a0b4;font-size:10px;font-weight:400}
.figure-empty{padding:50px;text-align:center}

/* Company / product common settings */
.profile-grid{margin-top:18px;align-items:start}
.profile-grid .studio-label input,.profile-grid .studio-label textarea,.profile-grid select{display:block;box-sizing:border-box;width:100%;padding:10px 12px;margin-top:7px;border:1px solid #dce1ef;border-radius:9px;background:#fff;color:#283043;font:inherit;font-size:13px}
.url-history{margin-top:7px;font-weight:400;font-size:12px;color:var(--muted)}
.url-history-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--line)}
.url-history-row span{word-break:break-all;color:var(--ink)}
.crawler-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin-top:7px}
.crawler-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:500}
.profile-grid .crawler-row select{width:auto;margin-top:0;padding:6px 8px}
.past-url-form{margin:4px 0 12px;padding:12px 14px;border:1px dashed #dce1ef;border-radius:9px}
.past-url-form .studio-label{margin:8px 0}
.past-url-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}
.profile-grid .past-url-row .check-row input{width:auto;margin-top:0}
@media(max-width:850px){.profile-grid,.crawler-grid{grid-template-columns:1fr}}

/* No.85・86・92 checks */
.check-panel{margin-top:18px}
.check-options{display:flex;flex-wrap:wrap;gap:6px 20px;margin:12px 0}
.check-options .check-row{margin:0;font-size:13px;font-weight:600}
.check-chip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;background:#eef1f7;color:#4b5568}
.check-chip.check-ok{background:#e3f6ec;color:#17784a}
.check-chip.check-issues{background:#fdecea;color:#b3261e}
.check-chip.check-fetch_failed,.check-chip.check-undeterminable{background:#fff4e0;color:#8a5a00}
.check-chip.check-confirm{background:#e8eefc;color:#2747a8}
.check-detail{margin-top:8px}
.check-result{border:1px solid var(--line);border-radius:9px;padding:10px 14px;margin:10px 0}
.check-result-head{display:flex;align-items:center;gap:10px}
.check-result-head small{color:var(--muted)}
.check-list{margin:8px 0 0;padding-left:18px;font-size:12px;line-height:1.7}
.check-list small{display:block;color:var(--muted);word-break:break-all}
.check-evidence{font-size:12px;color:var(--muted);word-break:break-all}

/* 案件画面 */
.case-legend{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:11px;color:var(--muted)}
.bd{display:inline-block;padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;white-space:nowrap}
.bd-impl{background:#e3f6ec;color:#17784a}.bd-sample{background:#fff1d6;color:#8a5a00}.bd-off{background:#eef1f7;color:#5d6880}
.case-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}
.case-step-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 14px;color:var(--ink)}
.case-step-btn span{width:24px;height:24px;border-radius:50%;background:#eaf1fb;color:#1d5fb8;display:grid;place-items:center;font-size:11px;font-weight:800}
.case-step-btn b{font-size:12px}.case-step-btn small{font-size:10px;color:var(--muted)}
.case-step-btn.active{border-color:#1d5fb8;box-shadow:0 0 0 3px #1d5fb81f}.case-step-btn.active span{background:#1d5fb8;color:#fff}
.case-boundary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
.case-boundary>div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.case-boundary ul{margin:6px 0 0;padding-left:16px;font-size:11px;line-height:1.7;color:#4b5568}
.case-step[hidden],#case-editor[hidden],#case-review-area[hidden]{display:none!important}
.case-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}
.case-editor-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);margin-top:8px}
.case-two h3{font-size:14px;margin:6px 0 8px}
.case-step .studio-label input,.case-step .studio-label select,.case-step .studio-label textarea,.check-panel .studio-label input{display:block;box-sizing:border-box;width:100%;padding:10px 12px;margin-top:7px;border:1px solid #dce1ef;border-radius:9px;background:#fff;color:#283043;font:inherit;font-size:13px}
#case-content{display:block;box-sizing:border-box;width:100%;padding:12px;border:1px solid #dbe1ed;border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.7;resize:vertical}
.case-list{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#657186}
.case-list .studio-draft .check-chip{align-self:flex-start}
.case-selected{border-color:#1d5fb8!important;background:#eaf1fb!important}
.case-card{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#fbfcff}
.case-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}
.case-card small{color:var(--muted);font-size:11px;word-break:break-all}
.case-preview-lines{font-size:11px;color:#4b5568;line-height:1.7;margin:6px 0 0}
.case-next{margin-top:16px;text-align:right}
.case-preview{width:100%;height:420px;border:1px solid var(--line);border-radius:8px;background:#fff}
.case-fail b{color:#b3261e}
.case-unknown b{color:#8a5a00}
.case-refresh-row{font-size:12px;line-height:1.5;align-items:flex-start}
.case-refresh-row input{margin-top:2px;flex:none}
.case-version-detail{margin-top:10px}
.case-status-line{font-size:12px;line-height:1.9;color:#3a4560}
.case-history{display:flex;flex-direction:column;gap:6px;font-size:12px}
.case-history-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;padding:7px 0;border-bottom:1px solid var(--line)}
.case-history-row>span{color:var(--muted);font-size:11px}
.case-history-row small{color:var(--muted)}
.case-form-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:12px;align-items:end;margin-bottom:16px}
.case-sub{display:block;color:var(--muted);font-size:10px;margin-top:3px}
.case-cancelled td{opacity:.5}
.case-editing td{background:#f1f2ff}
.case-material-view{margin-top:8px}
.case-material-img{display:block;max-width:100%;max-height:360px;border:1px solid #e3e7f0;border-radius:8px;background:#fff}
.check-chip.check-reference_unset{background:#eef1f7;color:#4b5568;border:1px dashed #b9c2d6}
@media(max-width:1100px){.case-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.case-form-row{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.case-two,.case-editor-grid,.case-boundary{grid-template-columns:1fr}.case-steps{grid-template-columns:1fr 1fr}}
.case-reserve{margin-top:16px;padding:16px;border:1px solid #c9d6ea;border-radius:12px;background:#f7f9fc}
.case-reserve .case-material-img{max-width:240px;display:block;margin:8px 0}
.case-reserve [hidden]{display:none}
.case-video{max-width:200px;display:block;margin:8px 0;border-radius:8px;background:#000}
.case-brand{margin:12px 0;padding:12px 16px;border:1px solid #e3e7f0;border-radius:12px;background:#fbfcfe}
.case-brand summary{cursor:pointer;font-weight:700}
.case-brand-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.case-brand-logo{max-height:48px;max-width:200px;background:repeating-conic-gradient(#e9ecf3 0 25%,#fff 0 50%) 0 0/12px 12px;border-radius:6px}
.case-brand-logo[hidden]{display:none}
.case-textcheck{margin:6px 0;font-size:13px}
.case-textcheck .ok{color:#137a3a}.case-textcheck .ng{color:#b42318;font-weight:700}
@media(max-width:850px){.case-brand-row{grid-template-columns:1fr 1fr}}
.case-aside{margin-top:12px;color:#5b6475}
.case-aside summary{cursor:pointer}
.case-aside-img{display:block;max-width:160px;opacity:.6;border:1px solid #e3e7f0;border-radius:8px}
.case-image-card{margin:12px 0;padding:12px;border:1px solid #dfe3ec;border-radius:12px;background:#fff}
.case-hide-btn{color:#b42318;border-color:#f1c4bf}
.hub-list{margin-top:16px}
.hub-card{margin:0 0 14px;padding:14px 16px;border:1px solid #dfe3ec;border-radius:12px;background:#fff}
.hub-card-head{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:8px}
.hub-thumbs{display:flex;flex-wrap:wrap;gap:8px}
.hub-thumbs img{width:150px;height:150px;object-fit:cover;border:1px solid #e3e7f0;border-radius:8px}
.hub-videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.hub-table{width:100%;border-collapse:collapse;font-size:13px}
.hub-table th,.hub-table td{text-align:left;padding:6px 8px;border-top:1px solid #eef1f6;vertical-align:top}
a.secondary-btn{text-decoration:none;display:inline-flex;align-items:center}
.login-screen{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f1730}
.login-screen[hidden]{display:none}
.login-card{width:100%;max-width:380px;padding:28px;border-radius:16px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.login-card h1{margin:4px 0 6px;font-size:22px}.login-card p{color:#5b6475;font-size:13px}
.login-brand{font-weight:800;color:#5b4ff0}
.login-error{color:#b42318;min-height:1.2em}
.login-done{color:#067647;font-weight:700}.login-switch{margin:14px 0 0;text-align:center}.login-card[hidden],.login-card [hidden]{display:none}
.login-card label{display:grid;gap:6px;margin:14px 0 0;font-size:13px;font-weight:700}
.login-card input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #d0d5dd;border-radius:8px;font:inherit;font-weight:400}
.accounts-panel{margin-top:16px}
.acc-perms{display:flex;flex-wrap:wrap;gap:6px 16px;margin:12px 0 0;font-size:13px;align-items:center}
.accounts-panel .acc-perms label,.accounts-panel label.acc-perm{display:inline-flex;gap:4px;align-items:center;font-weight:400}
.accounts-panel .acc-perms input,.accounts-panel .acc-perm input{width:auto;padding:0}
label.acc-perm{margin-right:10px;white-space:nowrap}
.accounts-panel .case-brand-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;align-items:end}
.accounts-panel label{display:grid;gap:6px;font-size:13px;font-weight:700}
.accounts-panel input,.accounts-panel select{width:100%;box-sizing:border-box;padding:9px 11px;border:1px solid #d0d5dd;border-radius:8px;font:inherit;font-weight:400;background:#fff}
.pill-status{white-space:nowrap}
