/* ---- product toasts -------------------------------------------------------- */
.px-toasts{position:absolute;right:16px;bottom:16px;display:flex;flex-direction:column;gap:8px;z-index:60;max-width:420px}
.px-toast{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:#fff;border-left:4px solid #0672cb;
  box-shadow:0 4px 16px rgba(0,0,0,.18);font-size:13px;color:#1d1d1d;transition:opacity .3s}
.px-toast.ok{border-color:#25a55f}.px-toast.err{border-color:#ce1126}
.px-toast .px-tic{font-weight:700;color:#0672cb}.px-toast.ok .px-tic{color:#25a55f}.px-toast.err .px-tic{color:#ce1126}
.px-toast.out{opacity:0}

/* ---- instructor console ------------------------------------------------------- */
.ic-scrim{position:absolute;inset:0;background:rgba(10,16,24,.55);display:flex;align-items:center;justify-content:center;z-index:90}
.ic-box{width:min(680px,94%);max-height:86%;display:flex;flex-direction:column;background:#141b24;color:#e6edf5;border-radius:8px;
  box-shadow:0 20px 60px rgba(0,0,0,.5);font-family:-apple-system,"Segoe UI",Roboto,sans-serif}
.ic-head{display:flex;align-items:baseline;gap:10px;padding:16px 18px;border-bottom:1px solid #263241}
.ic-head span{color:#8ea2b8;font-size:12.5px}
.ic-x{margin-left:auto;background:none;border:0;color:#8ea2b8;font-size:22px;cursor:pointer}
.ic-body{overflow:auto;padding:8px 18px}
.ic-row{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #222d3a}
.ic-row.on .ic-n{color:#ff9d7a}
.ic-n{font-weight:600;font-size:14px}.ic-area{font-weight:500;font-size:11px;color:#8ea2b8;border:1px solid #33465b;border-radius:10px;padding:1px 7px;margin-left:6px}
.ic-d{font-size:12.5px;color:#9fb0c4;margin-top:3px}
.ic-row>div{flex:1}
.ic-btn{background:#e0552e;color:#fff;border:0;border-radius:5px;padding:8px 14px;font-weight:600;font-size:12.5px;cursor:pointer;white-space:nowrap}
.ic-btn.ghost{background:transparent;border:1px solid #3a4c60;color:#cfe0f1}
.ic-foot{display:flex;justify-content:space-between;gap:10px;padding:14px 18px;border-top:1px solid #263241}
.ic-mut{color:#8ea2b8}

/* ============================================================================
   The lab machine — Windows desktop, taskbar, windows, Chrome
   ========================================================================== */
.wd{position:absolute;inset:0;display:flex;flex-direction:column;overflow:hidden;font-family:"Segoe UI",Tahoma,Arial,sans-serif;
  background:radial-gradient(ellipse 60% 80% at 72% 42%,#5fb4ff 0%,#1f7ae0 22%,#0a57c2 48%,#06378a 78%,#041f57 100%)}
.wd::before{content:"";position:absolute;right:6%;top:9%;width:34%;height:62%;background:linear-gradient(160deg,rgba(150,215,255,.35),rgba(120,200,255,.08));
  clip-path:polygon(0 8%,100% 0,100% 100%,0 86%);pointer-events:none}
.wd-area{flex:1;position:relative;min-height:0}
.wd-icons{position:absolute;left:6px;top:6px;bottom:6px;display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-start;gap:4px}
.wd-icon{width:84px;padding:6px 2px;display:flex;flex-direction:column;align-items:center;gap:4px;border:1px solid transparent;cursor:default;outline:none;user-select:none}
.wd-icon:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18)}
.wd-icon.sel{background:rgba(160,205,255,.32);border-color:rgba(200,230,255,.6)}
.wd-iic{position:relative;display:flex}
.wd-arrow{position:absolute;left:-2px;bottom:-2px;width:13px;height:13px;background:#fff;color:#1f5fbf;font-size:10px;line-height:13px;text-align:center;border:1px solid #9bb}
.wd-ilb{color:#fff;font-size:12px;line-height:1.25;text-align:center;text-shadow:0 1px 2px #000,0 0 3px rgba(0,0,0,.8);word-break:break-word}
.wd-wins{position:absolute;inset:0;pointer-events:none}
.wd-win{position:absolute;left:7%;top:5%;right:7%;bottom:6%;display:flex;flex-direction:column;background:#fff;pointer-events:auto;
  border:1px solid #2b6fc4;box-shadow:0 12px 40px rgba(0,0,0,.45)}
.wd-win.max{left:0;top:0;right:0;bottom:0;border:0;box-shadow:none}
.wd-win.front{z-index:2}
.wd-tb{display:flex;align-items:center;height:30px;flex:none;background:#fff;border-bottom:1px solid #e3e3e3;user-select:none}
.wd-tic{display:flex;padding:0 8px;transform:scale(.75)}
.wd-tt{font-size:12px;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wd-sp{flex:1}
.wd-tb button,.cr-top button[data-w]{width:46px;height:30px;border:0;background:transparent;font-size:12px;color:#222;cursor:default}
.wd-tb button:hover,.cr-top button[data-w]:hover{background:#e5e5e5}
.wd-tb button.x:hover,.cr-top button.x:hover{background:#e81123;color:#fff}
.wd-body{flex:1;position:relative;min-height:0}
.wd-shell{position:absolute;inset:0;overflow:hidden}
.wd-bar{height:40px;flex:none;display:flex;align-items:stretch;background:rgba(16,20,26,.96);color:#fff;z-index:5;position:relative}
.wd-start{width:48px;border:0;background:transparent;display:flex;align-items:center;justify-content:center;cursor:default}
.wd-start:hover{background:rgba(255,255,255,.1)}
.wd-search{display:flex;align-items:center;gap:10px;width:250px;padding:0 12px;background:#f3f3f3;color:#555;font-size:12.5px;margin:0}
.wd-search svg{stroke:#222}
.wd-pins{display:flex}
.wd-pin{width:48px;border:0;background:transparent;display:flex;align-items:center;justify-content:center;position:relative;cursor:default}
.wd-pin:hover{background:rgba(255,255,255,.1)}
.wd-pin.run::after{content:"";position:absolute;left:8px;right:8px;bottom:0;height:2px;background:#76b9ed}
.wd-pin.on{background:rgba(255,255,255,.16)}
.wd-pin.on::after{left:0;right:0}
.wd-tray{display:flex;align-items:center;gap:12px;padding:0 10px;font-size:12px}
.wd-tray>span{display:flex;align-items:center}
.wd-lang{font-size:11.5px}
.wd-clock{display:block!important;text-align:center;line-height:1.3;font-size:11.5px}
.wd-show{width:6px;border-left:1px solid #555;cursor:default}
.wd-show:hover{background:rgba(255,255,255,.2)}
.wd-menu{position:absolute;left:0;bottom:40px;width:320px;background:rgba(32,36,42,.98);color:#fff;z-index:20;padding:8px 0;box-shadow:0 0 30px rgba(0,0,0,.5)}
.wd-mh{padding:8px 16px 10px;font-size:12px;color:#aab;text-transform:uppercase;letter-spacing:.6px}
.wd-menu a{display:flex;align-items:center;gap:12px;padding:9px 16px;font-size:13.5px;cursor:default}
.wd-menu a span{display:flex;width:24px;justify-content:center}
.wd-menu a:hover{background:rgba(255,255,255,.1)}
.wd-msep{height:1px;background:#444;margin:6px 0}
.wd .px-toasts{bottom:52px}
/* Chrome */
.cr-top{display:flex;align-items:flex-end;height:36px;flex:none;background:#dee1e6;padding-left:8px;user-select:none}
.cr-top button[data-w]{height:36px;align-self:stretch}
.cr-tabs{display:flex;gap:1px;min-width:0;overflow:hidden}
.cr-tab{display:flex;align-items:center;gap:7px;height:30px;width:220px;min-width:90px;padding:0 8px 0 12px;border-radius:8px 8px 0 0;font-size:12px;color:#3c4043;cursor:default}
.cr-tab:hover{background:#e9ebee}
.cr-tab.on{background:#fff;color:#202124}
.cr-fav{display:flex;flex:none}
.cr-tt{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cr-tx{width:16px;height:16px;border-radius:50%;font-size:9px;display:flex;align-items:center;justify-content:center;color:#5f6368}
.cr-tx:hover{background:#d5d7db}
.cr-new{width:28px;height:28px;margin:0 0 2px 4px;border:0;border-radius:50%;background:transparent;font-size:18px;color:#5f6368}
.cr-new:hover{background:#cfd2d6}
.cr-bar{display:flex;align-items:center;gap:4px;height:36px;flex:none;padding:0 8px;background:#fff}
.cr-nav{width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:#5f6368;font-size:16px;cursor:default}
.cr-nav:hover:not(:disabled){background:#f1f3f4}
.cr-nav:disabled{color:#c4c7c9}
.cr-url{flex:1;display:flex;align-items:center;gap:7px;height:28px;padding:0 12px;border-radius:14px;background:#f1f3f4;font-size:12.5px;color:#5f6368;white-space:nowrap;overflow:hidden}
.cr-url b{color:#202124;font-weight:400}
.cr-lock{font-size:10px;filter:grayscale(1)}
.cr-marks{display:flex;gap:2px;height:28px;flex:none;align-items:center;padding:0 8px;background:#fff;border-bottom:1px solid #dadce0}
.cr-marks a{display:flex;align-items:center;gap:6px;padding:3px 9px;border-radius:12px;font-size:12px;color:#3c4043;cursor:default}
.cr-marks a:hover{background:#f1f3f4}
.cr-load{height:2px;flex:none;background:transparent}
.wd-win.loading .cr-load{background:linear-gradient(90deg,#1a73e8 0,#1a73e8 40%,transparent 40%);background-size:200% 100%;animation:crload .65s linear infinite}
.wd-win.loading .cr-nav[data-n="reload"]{color:#1a73e8}
@keyframes crload{from{background-position:100% 0}to{background-position:-100% 0}}
.cr-page{flex:1;position:relative;min-height:0;background:#fff}
@media (max-width:1180px){ .wd-search{width:40px;padding:0 12px}.wd-search span{display:none} .cr-tab{width:160px} }

/* ---- Chrome extras: typed address, "Not secure", its own error page ------- */
.cr-in{flex:1;border:0;outline:none;background:transparent;font:12.5px "Segoe UI",Arial,sans-serif;color:#202124}
.cr-url:has(.cr-in){background:#fff;box-shadow:0 0 0 2px #1a73e8 inset}
.cr-ns{font-size:12px;color:#5f6368;filter:none;padding-right:6px;border-right:1px solid #dadce0;margin-right:4px}
.cr-err{position:absolute;inset:0;background:#fff;font-family:"Segoe UI",Roboto,Arial,sans-serif;color:#202124;overflow:auto}
.cr-err-in{max-width:600px;margin:12vh auto 0;padding:0 24px}
.cr-err-ic{font-size:54px;color:#5f6368;line-height:1}
.cr-err h1{font-size:24px;font-weight:500;margin:18px 0 14px}
.cr-err p,.cr-err li{font-size:14px;color:#5f6368;margin:6px 0}
.cr-err-code{font-size:12px!important;letter-spacing:.3px;margin-top:22px!important}
.cr-err-btn{margin-top:26px;background:#1a73e8;color:#fff;border:0;border-radius:4px;padding:9px 22px;font-size:14px;cursor:pointer}
.jt{position:absolute;inset:0;padding:10px 16px;font-family:"Times New Roman",serif;background:#fff;color:#000}
.jt table{border-collapse:collapse}.jt th{text-align:left;padding-right:12px}
.jt a{color:#00e;text-decoration:underline}
.ws-list{position:absolute;inset:0;padding:14px 22px;font:14px "Times New Roman",serif;background:#fff;overflow:auto}
.ws-list h1{font-size:22px;margin:0 0 10px}.ws-list a{color:#00e;text-decoration:underline;cursor:pointer}
.ws-list code{font-family:Consolas,monospace;font-size:13px}
.ws-xml{position:absolute;inset:0;overflow:auto;background:#fff}
.ws-note{padding:8px 12px;margin:8px;border:1px solid #ccc;background:#f8f8f8;font:13px Arial,sans-serif;color:#333;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.ws-xml pre{margin:0;padding:6px 14px;font:12.5px/1.45 Consolas,"Courier New",monospace;color:#881280;white-space:pre}

/* ============================================================================
   Guidewire PolicyCenter
   ========================================================================== */
.pc{position:absolute;inset:0;display:flex;flex-direction:column;background:#fff;font:13px/1.35 "Source Sans 3","Source Sans Pro","Segoe UI",Roboto,Arial,sans-serif;color:#28333d}
.pc-top{display:flex;align-items:center;height:44px;flex:none;background:#28333d;color:#fff;padding:0 10px 0 14px;gap:6px}
.pc-brand{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;margin-right:16px;letter-spacing:.2px}
.pc-tabs{display:flex;height:100%}
.pc-tab{display:flex;align-items:center;gap:4px;padding:0 13px;color:#d5dee7;cursor:pointer;border-bottom:3px solid transparent;font-size:13.5px;white-space:nowrap}
.pc-tab:hover{background:#34414e;color:#fff}
.pc-tab.on{color:#fff;border-bottom-color:#00a9e0;background:#323f4c}
.pc-dd{font-size:10px;opacity:.8}
.pc-sp{flex:1}
.pc-goto{display:flex;align-items:center;background:#fff;border-radius:3px;overflow:hidden;height:26px}
.pc-goto input{border:0;outline:none;height:26px;padding:0 8px;width:170px;font:12.5px inherit;color:#28333d}
.pc-goto span{padding:0 9px;height:26px;line-height:26px;background:#e3e8ed;color:#28333d;font-size:12px;cursor:pointer}
.pc-ico{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#d5dee7;cursor:pointer;font-weight:700}
.pc-ico:hover{background:#3b4a59}
.pc-user{display:flex;align-items:center;gap:4px;height:28px;padding:0 9px;border-radius:14px;background:#3b4a59;font-size:12px;cursor:pointer;white-space:nowrap}
.pc-main{flex:1;display:flex;min-height:0}
.pc-side{width:208px;flex:none;background:#eef1f4;border-right:1px solid #d6dde3;overflow:auto;padding:10px 0}
.pc-actbtn{display:flex;justify-content:space-between;align-items:center;margin:0 10px 12px;width:calc(100% - 20px);height:30px;padding:0 10px;
  background:#fff;border:1px solid #b9c4ce;border-radius:3px;font:600 13px inherit;color:#28333d;cursor:pointer}
.pc-actbtn:hover{border-color:#00739d}
.pc-nav a,.pc-steps a{display:block;padding:7px 16px;color:#28333d;cursor:pointer;border-left:3px solid transparent}
.pc-nav a:hover,.pc-steps a:hover{background:#e1e7ec}
.pc-nav a.on,.pc-steps a.on{background:#fff;border-left-color:#00739d;font-weight:600}
.pc-steps a.dis{color:#9aa7b3;cursor:default;background:none}
.pc-content{flex:1;display:flex;flex-direction:column;min-width:0}
.pc-info{display:flex;flex-wrap:wrap;gap:4px 22px;padding:7px 18px;background:#f5f8fa;border-bottom:1px solid #dce3e9;font-size:12.5px;color:#46525e;flex:none}
.pc-info b{color:#28333d}
.pc-scroll{flex:1;overflow:auto;padding:14px 20px 40px}
.pc-title{font-size:20px;font-weight:600;margin:0 0 10px;color:#1c2731}
.pc-tool{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 12px}
.pc-btn{height:28px;padding:0 13px;border:1px solid #aab6c1;border-radius:3px;background:linear-gradient(#fff,#eef2f5);color:#1c2731;font:13px inherit;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}
.pc-btn:hover{border-color:#00739d}
.pc-btn.pri{background:#00739d;border-color:#00658a;color:#fff}
.pc-btn.pri:hover{background:#00658a}
.pc-btn:disabled{opacity:.5;cursor:default}
.pc-btn.sm{height:24px;padding:0 9px;font-size:12px}
.pc-msgs{border:1px solid #d9534f;background:#fdf1f0;border-left:4px solid #d9534f;padding:8px 12px;margin:0 0 12px;border-radius:2px}
.pc-msgs.warn{border-color:#e0a030;background:#fff8ea;border-left-color:#e0a030}
.pc-msgs div{padding:2px 0}
.pc-msgs div::before{content:"•";margin-right:7px;color:#b52b27}
.pc-msgs.warn div::before{color:#b07a10}
.pc-sec{margin:0 0 16px}
.pc-sh{font-weight:600;font-size:14px;padding:6px 0;border-bottom:2px solid #d6dde3;margin-bottom:8px;color:#1c2731}
.pc-sh2{font-weight:600;margin:10px 0 6px}
.pc-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px 32px}
.pc-form{display:flex;flex-direction:column;gap:6px}
.pc-form.two{display:grid;grid-template-columns:1fr 1fr;gap:6px 28px;max-width:860px}
.pc-fr{display:grid;grid-template-columns:170px 1fr;align-items:center;gap:10px;min-height:28px}
.pc-fr>label{text-align:right;color:#46525e;font-size:12.5px}
.pc-fr>label i{color:#c9302c;font-style:normal;margin-right:2px}
.pc-fv{display:flex;align-items:center;gap:8px;min-width:0}
.pc-fv.ro{color:#1c2731;padding:3px 0}
.pc-hint{font-size:11.5px;color:#7a8794}
.pc-in{height:28px;min-width:0;width:100%;max-width:280px;padding:0 7px;border:1px solid #b9c4ce;border-radius:2px;background:#fff;font:13px inherit;color:#1c2731}
textarea.pc-in{height:auto;padding:6px 7px;max-width:520px;resize:vertical}
.pc-in:focus{outline:none;border-color:#00a9e0;box-shadow:0 0 0 2px rgba(0,169,224,.18)}
.pc-in[readonly]{background:#f3f6f8}
.pc-pick{display:flex;gap:4px;width:100%;max-width:280px}
.pc-yn{display:flex;gap:16px}.pc-yn label,.pc-cb{display:inline-flex;align-items:center;gap:5px;cursor:pointer}
.pc-lv{width:100%;border-collapse:collapse;margin:4px 0 6px;font-size:12.5px}
.pc-lv th{text-align:left;font-weight:600;padding:6px 8px;background:#e9eef2;border-bottom:1px solid #c9d3dc;color:#2e3a46;white-space:nowrap}
.pc-lv td{padding:6px 8px;border-bottom:1px solid #e6ebef;vertical-align:middle}
.pc-lv tbody tr:hover td{background:#f4f8fb}
.pc-lv .pc-none td{color:#7a8794;font-style:italic}
.pc-lv .pc-in{height:24px}
.pc-link{color:#00739d;cursor:pointer;text-decoration:none}
.pc-link:hover{text-decoration:underline}
.pc-p{margin:0 0 10px;color:#46525e}
.pc-red{color:#c9302c;font-weight:600}.pc-green{color:#2e8540;font-weight:600}
.pc-mono{font-family:Consolas,Menlo,monospace;font-size:12px}
.pc-tag{background:#e6f4fa;color:#00658a;border-radius:8px;padding:0 6px;font-size:11px}
.pc-cards{display:flex;gap:12px;margin:0 0 16px}
.pc-card{flex:1;max-width:190px;border:1px solid #d6dde3;border-radius:4px;padding:12px 14px;background:#fafbfc}
.pc-card b{display:block;font-size:24px;color:#00739d}.pc-card span{color:#46525e;font-size:12.5px}
.pc-menu{position:absolute;z-index:50;min-width:190px;background:#fff;border:1px solid #b9c4ce;box-shadow:0 4px 14px rgba(0,0,0,.18);padding:4px 0;border-radius:2px}
.pc-menu a{display:flex;justify-content:space-between;padding:7px 14px;color:#1c2731;cursor:pointer;white-space:nowrap}
.pc-menu a:hover{background:#e6f4fa}
.pc-menu a.dis{color:#a2adb7;cursor:default;background:none}
.pc-ms{color:#7a8794}
.pc-msep{height:1px;background:#e1e7ec;margin:4px 0}
.pc-pop-scrim{position:absolute;inset:0;z-index:60;background:rgba(20,30,40,.35);display:flex;align-items:flex-start;justify-content:center;padding-top:10vh}
.pc-pop{width:min(620px,92%);background:#fff;border-radius:3px;box-shadow:0 12px 40px rgba(0,0,0,.35)}
.pc-pop-h{padding:10px 16px;background:#28333d;color:#fff;font-weight:600;border-radius:3px 3px 0 0}
.pc-pop-b{padding:14px 16px;max-height:55vh;overflow:auto}
.pc-pop-f{display:flex;gap:8px;padding:10px 16px;border-top:1px solid #e1e7ec}
.pc-qs{display:flex;flex-direction:column}
.pc-q{display:flex;justify-content:space-between;gap:20px;padding:9px 4px;border-bottom:1px solid #e6ebef}
.pc-cov{display:flex;flex-direction:column;gap:6px}
.pc-covr{display:flex;align-items:center;gap:20px;min-height:30px;flex-wrap:wrap}
.pc-covr .pc-fr{grid-template-columns:90px 200px}
.pc-covr>.pc-cb,.pc-covr>label{min-width:330px}
.pc-vcov{border:1px solid #e1e7ec;border-radius:3px;padding:6px 12px;margin-bottom:10px}
.pc-subtabs{display:flex;gap:2px;border-bottom:1px solid #c9d3dc;margin-bottom:8px}
.pc-subtabs a{padding:6px 14px;border:1px solid transparent;border-bottom:0;color:#46525e}
.pc-subtabs a.on{border-color:#c9d3dc;background:#fff;color:#1c2731;font-weight:600;margin-bottom:-1px}
.pc-subtabs a.dis{color:#a2adb7}
.pc-quote{display:flex;gap:12px;margin:0 0 16px;flex-wrap:wrap}
.pc-quote>div{border:1px solid #d6dde3;border-radius:4px;padding:10px 16px;min-width:150px;background:#fafbfc}
.pc-quote>div span{display:block;color:#46525e;font-size:12px}.pc-quote>div b{font-size:18px;color:#1c2731}
.pc-quote>div.tot{background:#e6f4fa;border-color:#9fd3ea}.pc-quote>div.tot b{color:#00658a}
.pc-bound{display:flex;gap:18px;align-items:flex-start;padding:16px;border:1px solid #bfe0c8;background:#f1faf3;border-radius:4px;max-width:640px}
.pc-bound-ic{width:40px;height:40px;border-radius:50%;background:#2e8540;color:#fff;font-size:22px;display:flex;align-items:center;justify-content:center;flex:none}
.pc-bound p{margin:4px 0 8px}
.pc-notes{display:flex;flex-direction:column;gap:10px;max-width:900px}
.pc-note{border:1px solid #dce3e9;border-radius:3px;padding:10px 12px;background:#fff}
.pc-nh{display:flex;justify-content:space-between;gap:10px}.pc-nh span{color:#7a8794;font-size:12px}
.pc-nm{font-size:12px;color:#7a8794;margin:3px 0 6px}
.pc-nb{white-space:pre-wrap}
.pc-login{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#28333d,#1b5f7c 70%,#00739d);font:14px "Source Sans 3","Source Sans Pro","Segoe UI",Roboto,Arial,sans-serif}
.pc-lg-card{width:360px;background:#fff;border-radius:4px;padding:28px 30px 20px;box-shadow:0 18px 50px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:12px}
.pc-lg-logo{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:600;color:#1c2731;margin-bottom:8px}
.pc-lg-logo svg{width:34px;height:34px}
.pc-lg-card label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:#46525e}
.pc-lg-card input{height:34px;border:1px solid #b9c4ce;border-radius:2px;padding:0 9px;font:14px inherit}
.pc-lg-card input:focus{outline:none;border-color:#00a9e0}
.pc-lg-card .pc-btn{height:36px;justify-content:center;font-size:14px;margin-top:4px}
.pc-lg-err{background:#fdf1f0;border:1px solid #e4a9a7;color:#a12622;padding:7px 10px;font-size:12.5px;border-radius:2px}
.pc-lg-foot{font-size:11px;color:#8b98a4;text-align:center;margin-top:6px}
@media (max-width:1300px){ .pc-side{width:178px} .pc-fr{grid-template-columns:140px 1fr} .pc-cols{grid-template-columns:1fr} .pc-tab{padding:0 9px} .pc-goto input{width:120px} }

/* ============================================================================
   Guidewire Studio (IntelliJ IDEA, light theme)
   ========================================================================== */
.ij{position:absolute;inset:0;display:flex;flex-direction:column;background:#f7f8fa;font:12.5px "Segoe UI",Inter,Arial,sans-serif;color:#1e1f22}
.ij-menu{display:flex;align-items:center;height:26px;flex:none;padding:0 6px;background:#f2f3f5;border-bottom:1px solid #dfe1e5}
.ij-menu a{padding:3px 8px;border-radius:3px;cursor:default}
.ij-menu a:hover{background:#dfe1e5}
.ij-pname{color:#6c707e;font-size:12px;padding-right:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ij-sp{flex:1}
.ij-tool{display:flex;align-items:center;gap:2px;height:32px;flex:none;padding:0 8px;background:#f7f8fa;border-bottom:1px solid #dfe1e5}
.ij-crumbs{color:#494b57;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
.ij-crumbs span{color:#a1a3ab;margin:0 2px}
.ij-tb{width:28px;height:26px;border:0;border-radius:4px;background:transparent;display:flex;align-items:center;justify-content:center;cursor:default}
.ij-tb:hover{background:#dfe1e5}
.ij-cfg{display:flex;align-items:center;gap:4px;height:24px;padding:0 8px;border:1px solid #c9ccd6;border-radius:4px;background:#fff;margin:0 4px;cursor:default}
.ij-dd{font-size:9px;color:#6c707e}
.ij-main{flex:1;display:flex;min-height:0}
.ij-strip{width:22px;flex:none;background:#f2f3f5;border-right:1px solid #dfe1e5;display:flex;flex-direction:column;gap:8px;padding-top:6px}
.ij-strip span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:11.5px;color:#494b57;padding:6px 0}
.ij-strip span.on{background:#dfe1e5}
.ij-left{width:290px;flex:none;display:flex;flex-direction:column;background:#f7f8fa;border-right:1px solid #dfe1e5;min-height:0}
.ij-ph{padding:6px 10px;font-weight:600;border-bottom:1px solid #ebecf0}
.ij-tree{flex:1;overflow:auto;padding:4px 0}
.ij-tr{display:flex;align-items:center;gap:5px;height:24px;padding-right:8px;white-space:nowrap;cursor:default}
.ij-tr:hover{background:#ebecf0}
.ij-tr.sel{background:#d5e1ff}
.ij-tw{width:12px;font-size:10px;color:#6c707e;text-align:center}
.ij-tr svg{flex:none}
.ij-dim{color:#8c8f9a}
.ij-gr{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center;font:700 10px Arial;color:#fff;background:#02303a;border-radius:3px}
.ij-center{flex:1;display:flex;flex-direction:column;min-width:0;background:#fff}
.ij-tabs{display:flex;height:32px;flex:none;background:#f7f8fa;border-bottom:1px solid #dfe1e5;overflow:hidden}
.ij-tab{display:flex;align-items:center;gap:6px;padding:0 10px;border-right:1px solid #ebecf0;cursor:default;white-space:nowrap;position:relative}
.ij-tab.on{background:#fff}
.ij-tab.on::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#3574f0}
.ij-tab b{font-weight:400;font-size:10px;color:#8c8f9a;padding:2px 3px;border-radius:3px}
.ij-tab b:hover{background:#dfe1e5}
.ij-edwrap{flex:1;display:flex;flex-direction:column;min-height:0;position:relative}
.ij-ed{flex:1;display:flex;min-height:0;font:13px/20px "JetBrains Mono",Consolas,"Cascadia Mono",Menlo,monospace}
.ij-gut{width:48px;flex:none;overflow:hidden;background:#fff;color:#a1a3ab;text-align:right;padding:6px 10px 0 0;border-right:1px solid #f0f1f2;user-select:none}
.ij-gut div{height:20px}
.ij-gut div.err{color:#fff;background:#e55765;border-radius:3px}
.ij-code{flex:1;position:relative;min-width:0}
.ij-code pre,.ij-code textarea{position:absolute;inset:0;margin:0;padding:6px 10px 0 12px;font:inherit;white-space:pre;overflow:auto;tab-size:4;border:0}
.ij-code pre{color:#080808;pointer-events:none;overflow:hidden}
.ij-code textarea{color:transparent;caret-color:#000;background:transparent;resize:none;outline:none}
.ij-code textarea::selection{background:rgba(53,116,240,.25)}
.ij-ed.ro .ij-code pre{background:#f9f9fb}
.g-k{color:#0033b3}.g-s{color:#067d17}.g-c{color:#8c8c8c;font-style:italic}.g-a{color:#9e880d}.g-n{color:#1750eb}.g-t{color:#871094;font-style:italic}.g-y{color:#000;}
.ij-robar,.ij-sbar{display:flex;align-items:center;gap:10px;padding:5px 12px;background:#fdf6dc;border-bottom:1px solid #eee1b4;font-size:12px;flex:none}
.ij-sbar{background:#f2f3f5;border-color:#dfe1e5}
.ij-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8c8f9a;gap:2px}
.ij-empty b{color:#3574f0;font-weight:400}
.ij-bottom{height:30%;min-height:150px;flex:none;display:flex;flex-direction:column;border-top:1px solid #dfe1e5;background:#fff}
.ij-btabs{display:flex;height:28px;flex:none;background:#f7f8fa;border-bottom:1px solid #ebecf0}
.ij-btabs a{display:flex;align-items:center;gap:5px;padding:0 12px;cursor:default;position:relative}
.ij-btabs a.on{background:#fff}.ij-btabs a.on::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#3574f0}
.ij-bbody{flex:1;overflow:auto;font:12px/1.55 "JetBrains Mono",Consolas,Menlo,monospace}
.ij-rhead{position:sticky;top:0;background:#f7f8fa;padding:4px 10px;border-bottom:1px solid #ebecf0;font-family:"Segoe UI",Arial,sans-serif}
.ij-ok{color:#2e8540}.ij-wait{color:#d89b0d}.ij-off{color:#a1a3ab}.ij-x{color:#e55765}
.ij-log{padding:4px 10px}
.ij-l{white-space:pre-wrap;word-break:break-word}
.ij-l.e{color:#d1242f}.ij-l.w{color:#9a6700}.ij-l.d{color:#8c8f9a}
.ij-pad{padding:8px 10px}
.ij-build{font-family:"Segoe UI",Arial,sans-serif;font-size:12.5px}
.ij-bl{padding:6px 10px;border-bottom:1px solid #ebecf0}
.ij-be{padding:5px 10px 5px 26px;border-bottom:1px solid #f2f3f5;cursor:pointer}
.ij-be:hover{background:#f2f5fd}
.ij-em{font-family:"JetBrains Mono",Consolas,monospace;font-size:12px;color:#1e1f22}
.ij-status{display:flex;align-items:center;gap:14px;height:24px;flex:none;padding:0 10px;background:#f7f8fa;border-top:1px solid #dfe1e5;color:#494b57;font-size:12px}
.ij-pop{position:absolute;z-index:40;min-width:220px;background:#fff;border:1px solid #c9ccd6;border-radius:6px;box-shadow:0 6px 20px rgba(0,0,0,.18);padding:4px}
.ij-pop a{display:flex;justify-content:space-between;gap:24px;padding:5px 10px;border-radius:4px;cursor:default;white-space:nowrap}
.ij-pop a:hover{background:#d5e1ff}
.ij-pop a.dis{color:#a1a3ab;background:none}
.ij-pop i{font-style:normal;color:#8c8f9a}
.ij-psep{height:1px;background:#ebecf0;margin:4px 0}
.ij-dscrim{position:absolute;inset:0;z-index:45;display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;background:rgba(0,0,0,.12)}
.ij-dlg{width:420px;background:#fff;border:1px solid #c9ccd6;border-radius:8px;box-shadow:0 12px 40px rgba(0,0,0,.25)}
.ij-dt{padding:10px 14px;font-weight:600;border-bottom:1px solid #ebecf0}
.ij-db{padding:14px}
.ij-db p{margin:0}
.ij-df{display:grid;grid-template-columns:60px 1fr;align-items:center;gap:8px;margin-bottom:10px}
.ij-in{height:28px;border:1px solid #c9ccd6;border-radius:4px;padding:0 8px;font:13px inherit}
.ij-in:focus{outline:2px solid #3574f0;outline-offset:-1px}
.ij-dhint{color:#6c707e;font-size:12px}
.ij-derr{color:#d1242f;font-size:12px;margin-top:6px}
.ij-dfoot{display:flex;justify-content:flex-end;gap:8px;padding:10px 14px;border-top:1px solid #ebecf0}
.ij-bt{height:28px;padding:0 14px;border:1px solid #c9ccd6;border-radius:4px;background:#fff;font:13px inherit;cursor:default;display:inline-flex;align-items:center;gap:5px}
.ij-bt.pri{background:#3574f0;border-color:#3574f0;color:#fff}
.ij-bt.run{height:24px;padding:0 10px}
.ij-balloon{position:absolute;right:16px;bottom:60px;width:340px;z-index:40;background:#fff;border:1px solid #c9ccd6;border-left:4px solid #3574f0;border-radius:6px;box-shadow:0 6px 20px rgba(0,0,0,.2);padding:10px 12px;font-size:12.5px}
.ij-balloon p{margin:4px 0 0;color:#494b57}

/* ============================================================================
   SoapUI 5.7 (Swing look)
   ========================================================================== */
.su{position:absolute;inset:0;display:flex;flex-direction:column;background:#eceff2;font:12px Tahoma,"Segoe UI",Arial,sans-serif;color:#1b1b1b}
.su-menu{display:flex;height:22px;flex:none;align-items:center;padding:0 4px;background:#f4f6f8;border-bottom:1px solid #c8ced5}
.su-menu a{padding:2px 9px;cursor:default}.su-menu a:hover{background:#cfe0f3}
.su-tool{display:flex;align-items:center;gap:2px;height:52px;flex:none;padding:0 6px;background:linear-gradient(#fafbfc,#e6eaee);border-bottom:1px solid #c0c7cf}
.su-tool button{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:58px;height:46px;border:1px solid transparent;border-radius:3px;background:transparent;font:11px Tahoma,sans-serif;color:#333;cursor:default}
.su-tool button:hover{border-color:#a9b8c8;background:#f4f8fc}
.su-sp{flex:1}
.su-search input{height:22px;width:170px;border:1px solid #b5bec8;border-radius:11px;padding:0 9px;font:11.5px Tahoma}
.su-main{flex:1;display:flex;min-height:0}
.su-nav{width:280px;flex:none;display:flex;flex-direction:column;background:#fff;border-right:1px solid #b5bec8}
.su-nh{padding:4px 8px;background:linear-gradient(#f3f5f7,#dfe5eb);border-bottom:1px solid #c0c7cf;font-weight:bold}
.su-tree{flex:1;overflow:auto;padding:4px 0}
.su-tr{display:flex;align-items:center;gap:5px;height:21px;white-space:nowrap;cursor:default}
.su-tr:hover{background:#eef4fb}.su-tr.sel{background:#3d75c1;color:#fff}
.su-ws{width:12px;color:#666}
.su-insp{height:160px;flex:none;border-top:1px solid #c0c7cf;overflow:auto;font-size:11.5px}
.su-ih{padding:3px 8px;background:linear-gradient(#f3f5f7,#dfe5eb);border-bottom:1px solid #c0c7cf;font-weight:bold}
.su-insp table{width:100%;border-collapse:collapse}.su-insp td{padding:2px 8px;border-bottom:1px solid #eef0f2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
.su-insp td:first-child{color:#555;width:80px}
.su-desk{flex:1;position:relative;background:#8a9aac;padding:6px;min-width:0}
.su-empty{color:#fff;padding:20px;font-size:13px}
.su-win{position:absolute;inset:6px;display:flex;flex-direction:column;background:#eceff2;border:1px solid #6b7c8e;box-shadow:0 2px 10px rgba(0,0,0,.3)}
.su-wt{display:flex;align-items:center;gap:6px;height:22px;flex:none;padding:0 6px;background:linear-gradient(#5b8fd6,#3b6fb9);color:#fff;font-weight:bold}
.su-wx{cursor:default;padding:0 4px}
.su-rbar{display:flex;align-items:center;gap:4px;height:30px;flex:none;padding:0 6px;border-bottom:1px solid #c0c7cf;background:#f4f6f8}
.su-go{width:28px;height:24px;border:1px solid transparent;background:transparent;display:flex;align-items:center;justify-content:center;cursor:default}
.su-go:hover{border-color:#a9b8c8;background:#fff}.su-go:disabled{opacity:.4}
.su-ib{color:#777;padding:0 6px;border:0;background:none;font-size:12px}
.su-ep{flex:1;height:22px;border:1px solid #b5bec8;font:12px Tahoma;max-width:520px}
.su-panes{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;min-height:0}
.su-pane{display:flex;flex-direction:column;min-height:0;background:#fff;border:1px solid #b5bec8}
.su-ptab{display:flex;gap:1px;flex:none;background:#eceff2;border-bottom:1px solid #c0c7cf}.su-ptab span{padding:2px 9px;font-size:11px;color:#555}.su-ptab span.on{background:#fff;color:#000;font-weight:bold}
.su-x{flex:1;margin:0;border:0;outline:none;resize:none;padding:6px 8px;font:12.5px/1.45 Consolas,"Courier New",monospace;white-space:pre;overflow:auto;color:#000;background:#fff}
pre.su-x{color:#000}
.x-c{color:#808080}.x-t{color:#000080}.x-a{color:#7f007f}.x-v{color:#2a00ff}.x-x{color:#000;font-weight:bold}
.su-btab{display:flex;gap:1px;flex:none;border-top:1px solid #c0c7cf;background:#eceff2}
.su-btab a{padding:3px 8px;font-size:11px;color:#333;border-right:1px solid #d3d9df;cursor:default}
.su-stat{display:flex;gap:10px;height:20px;align-items:center;flex:none;padding:0 8px;border-top:1px solid #c0c7cf;font-size:11px;color:#333}
.su-logs{display:flex;gap:1px;height:22px;flex:none;align-items:flex-end;padding:0 6px;background:#dfe4e9;border-top:1px solid #b5bec8}
.su-logs a{padding:2px 10px;font-size:11px;border:1px solid #b5bec8;border-bottom:0;background:#eef1f4;cursor:default}
.su-logs a.on{background:#fff}
.su-pop{position:absolute;z-index:40;min-width:180px;background:#fff;border:1px solid #8e9cab;box-shadow:2px 3px 8px rgba(0,0,0,.25);padding:2px 0}
.su-pop a{display:block;padding:4px 20px;cursor:default}.su-pop a:hover{background:#3d75c1;color:#fff}
.su-pop a.dis{color:#999;background:none}.su-psep{height:1px;background:#d0d7de;margin:3px 0}
.su-scrim{position:absolute;inset:0;z-index:45;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;background:rgba(0,0,0,.15)}
.su-dlg{width:560px;background:#eceff2;border:1px solid #6b7c8e;box-shadow:0 10px 30px rgba(0,0,0,.35);position:relative}
.su-dlg.sm{width:520px}
.su-dt{padding:5px 10px;background:linear-gradient(#5b8fd6,#3b6fb9);color:#fff;font-weight:bold}
.su-dsub{padding:10px 14px;background:#fff;border-bottom:1px solid #c0c7cf;line-height:1.5}
.su-db{padding:12px 14px}
.su-df{display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:8px;margin-bottom:8px}
.su-df input:not([type]){height:22px;border:1px solid #9aa7b4;padding:0 5px;font:12px Tahoma}
.su-cb{display:flex;align-items:center;gap:6px;grid-column:2/4}.su-cb span{color:#555}
.su-derr{color:#c00}
.su-dfoot{display:flex;justify-content:flex-end;gap:8px;padding:8px 14px 12px}
.su-bt{min-width:78px;height:24px;border:1px solid #8e9cab;border-radius:3px;background:linear-gradient(#fdfdfe,#dde4eb);font:12px Tahoma;cursor:default}
.su-bt.sm{min-width:0}
.su-errline{display:flex;gap:12px;align-items:flex-start;line-height:1.5;word-break:break-word}
.su-erric{width:30px;height:30px;flex:none;border-radius:50%;background:#d9534f;color:#fff;font:bold 18px Arial;display:flex;align-items:center;justify-content:center}
.su-prog{position:absolute;inset:0;background:#eceff2;padding:24px;line-height:1.6}
.su-prog span{color:#555}
.su-bar{height:14px;border:1px solid #8e9cab;margin-top:10px;background:#fff;overflow:hidden}
.su-bar i{display:block;height:100%;width:40%;background:#5b8fd6;animation:suprog 1s linear infinite}
@keyframes suprog{from{transform:translateX(-100%)}to{transform:translateX(260%)}}
@media (max-width:1300px){ .ij-left{width:230px} .su-nav{width:220px} .su-panes{grid-template-columns:1fr} }
