:root {
  --iis-ink:#172033;--iis-muted:#6b7280;--iis-line:#e5e7eb;--iis-bg:#f5f7fb;
  --iis-blue:#2563eb;--iis-blue2:#1d4ed8;--iis-green:#0f9f6e;--iis-red:#dc2626;
  --iis-radius:18px;--iis-shadow:0 16px 45px rgba(23,32,51,.09)
}
.iis-shell,.iis-portal,.iis-page-banner{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--iis-ink);box-sizing:border-box}
.iis-shell *,.iis-portal *,.iis-page-banner *{box-sizing:border-box}
.iis-page-banner{width:100%;margin:0 0 18px;overflow:hidden;border-radius:16px;background:#fff}
.iis-page-banner-image{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
.iis-shell{min-height:72vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at top left,#dbeafe 0,transparent 34%),var(--iis-bg)}
.iis-card{background:#fff;border:1px solid rgba(229,231,235,.9);border-radius:var(--iis-radius);box-shadow:var(--iis-shadow);padding:24px}
.iis-login-card,.iis-access-card{width:min(100%,480px);padding:38px;position:relative}
.iis-login-card h1,.iis-access-card h1{margin:18px 0 8px;font-size:31px;line-height:1.15}
.iis-login-card p{color:var(--iis-muted)}
.iis-mark{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,var(--iis-blue),#7c3aed);color:#fff;display:grid;place-items:center;font-weight:800;letter-spacing:-2px;font-size:23px;box-shadow:0 10px 24px rgba(37,99,235,.28)}
.iis-language-switch{position:absolute;right:24px;top:24px;display:flex;background:var(--iis-bg);border-radius:999px;padding:3px;gap:2px}
.iis-language-switch a{font-size:12px;color:var(--iis-muted);text-decoration:none;padding:6px 9px;border-radius:999px}
.iis-language-switch a.active{background:#fff;color:var(--iis-ink);box-shadow:0 2px 8px rgba(0,0,0,.08)}
.iis-form{display:grid;gap:18px}
.iis-form label{display:grid;gap:7px;font-size:13px;font-weight:650;color:#374151}
.iis-form input,.iis-form select,.iis-form textarea{width:100%;border:1px solid #d1d5db;border-radius:11px;background:#fff;padding:11px 12px;min-height:44px;color:var(--iis-ink);outline:none}
.iis-form input[type=file]{padding:8px}
.iis-form input:focus,.iis-form select:focus,.iis-form textarea:focus{border-color:var(--iis-blue);box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.iis-form input[readonly]{background:#f3f4f6;color:#6b7280}
.iis-form small{font-size:11px;font-weight:500;color:var(--iis-muted)}
.iis-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.iis-form-grid>.iis-planned-uses{grid-column:1/-1}
.iis-form .iis-language-display output{display:flex;align-items:center;min-height:44px;padding:11px 12px;border:1px solid #d1d5db;border-radius:11px;background:#f3f4f6;color:#374151;font-weight:800}
.iis-form .iis-checkbox{display:flex;align-items:center;align-self:end;min-height:44px;grid-template-columns:none;gap:9px;font-weight:600}
.iis-form .iis-checkbox input{width:17px;min-height:17px;margin:0;padding:0}
.iis-button{appearance:none;border:1px solid #d1d5db;background:#fff;color:var(--iis-ink);border-radius:10px;padding:8px 12px;min-height:38px;font-size:12px;line-height:1.25;font-weight:700;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}
.iis-button:hover{border-color:#9ca3af;color:var(--iis-ink)}
.iis-button.primary{background:var(--iis-blue);border-color:var(--iis-blue);color:#fff}
.iis-button.primary:hover{background:var(--iis-blue2);color:#fff}
.iis-button.danger{color:var(--iis-red);border-color:#fecaca;background:#fff7f7}
.iis-notice{border-radius:12px;padding:13px 15px;margin:14px 0;border:1px solid}
.iis-notice.success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}
.iis-notice.error{background:#fef2f2;border-color:#fecaca;color:#991b1b}
.iis-notice.warning{background:#fffbeb;border-color:#fde68a;color:#92400e}

.iis-portal{width:100%;max-width:none;min-height:78vh;background:var(--iis-bg);display:grid!important;grid-template-columns:clamp(210px,22vw,260px) minmax(0,1fr)!important;grid-template-rows:auto!important;align-items:stretch;position:relative;overflow:hidden;border-radius:20px;border:1px solid var(--iis-line);float:none!important;clear:both;container-type:inline-size;transition:grid-template-columns .2s ease}
.iis-portal.is-collapsed{grid-template-columns:76px minmax(0,1fr)!important}
.iis-portal>.iis-sidebar{grid-column:1!important;grid-row:1!important;width:auto!important;max-width:none!important;height:auto!important;margin:0!important;float:none!important;position:relative!important;inset:auto!important;transform:none!important;visibility:visible!important;background:#111827;color:#fff;padding:22px 16px;display:flex!important;flex-direction:column;min-height:78vh;overflow:hidden}
.iis-brand{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;padding:4px 12px 20px;white-space:nowrap}
.iis-brand strong{font-size:16px}
.iis-sidebar nav{display:grid;gap:5px}
.iis-sidebar nav a,.iis-sidebar-resize,.iis-logout{width:100%;min-height:42px;display:flex;align-items:center;gap:12px;color:#cbd5e1;text-decoration:none;padding:10px 12px;border:0;border-radius:10px;background:transparent;font:inherit;font-size:14px;line-height:1.2;text-align:left;cursor:pointer;white-space:nowrap}
.iis-brand .iis-sidebar-resize{width:auto!important;min-width:34px;min-height:34px;padding:6px 7px;justify-content:center;flex:0 0 auto;font-size:12px}
.iis-brand .iis-sidebar-resize .iis-nav-icon{width:auto;min-width:0;font-size:12px;font-weight:800;letter-spacing:-1px}
.iis-sidebar nav a:hover,.iis-sidebar nav a.active,.iis-sidebar-resize:hover{background:#263249;color:#fff}
.iis-nav-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;min-width:20px;font-size:17px;line-height:1}
.iis-nav-label{overflow:hidden;text-overflow:ellipsis}
.iis-logout{margin-top:auto}
.iis-menu-toggle,.iis-sidebar-backdrop{display:none!important}
.iis-portal.is-collapsed .iis-brand{justify-content:center;padding-left:0;padding-right:0}
.iis-portal.is-collapsed .iis-brand strong,.iis-portal.is-collapsed .iis-nav-label{display:none}
.iis-portal.is-collapsed .iis-sidebar nav a,.iis-portal.is-collapsed .iis-sidebar-resize,.iis-portal.is-collapsed .iis-logout{justify-content:center;padding-left:10px;padding-right:10px}
.iis-portal>.iis-main{grid-column:2!important;grid-row:1!important;width:auto!important;max-width:none!important;margin:0!important;float:none!important;position:relative;z-index:1;padding:0 32px 36px;min-width:0;background:var(--iis-bg)}
.iis-main-header{height:78px;border-bottom:1px solid var(--iis-line);display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-bottom:28px}
.iis-main-header>div:first-child{display:grid;text-align:right;font-size:14px}
.iis-main-header small{color:var(--iis-muted)}
.iis-credit-pill{padding:8px 12px;border-radius:999px;background:#e8efff;color:#1d4ed8;font-size:12px;font-weight:800}
.iis-section-title{margin:0 0 22px}
.iis-section-title h1{font-size:28px;margin:0 0 5px}
.iis-section-title p{margin:0;color:var(--iis-muted)}
.iis-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.iis-metric{background:#fff;border:1px solid var(--iis-line);border-radius:16px;padding:22px;display:grid;gap:11px}
.iis-metric span{color:var(--iis-muted);font-size:13px}
.iis-metric strong{font-size:34px;line-height:1}
.iis-profile-form{max-width:900px}
.iis-profile-form>.iis-button{justify-self:start;margin-top:6px}
.iis-offers{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}
.iis-offer{display:grid;text-align:center;gap:7px}
.iis-offer>strong{font-size:38px}
.iis-offer>span{color:var(--iis-muted)}
.iis-price{font-size:18px;font-weight:800;margin:12px 0}
.iis-offer form,.iis-offer button{width:100%}
.iis-meta-model-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.iis-meta-model-card{display:flex;flex-direction:column;gap:16px;box-shadow:none}
.iis-meta-model-card header>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.iis-meta-model-card h2{margin:0;font-size:20px}
.iis-model-language{padding:5px 8px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:11px;font-weight:800}
.iis-meta-model-description{color:#4b5563;line-height:1.55;min-height:50px}
.iis-meta-model-costs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.iis-meta-model-card .iis-token-create{margin:auto 0 0}
.iis-meta-model-card .iis-token-create>summary{list-style:none;width:max-content}
.iis-meta-model-card .iis-token-create>summary::-webkit-details-marker{display:none}
.iis-meta-model-card .iis-token-create[open]>summary{margin-bottom:18px}
.iis-token-create{margin-bottom:20px}
.iis-token-create summary,.iis-token-edit summary{cursor:pointer;font-weight:800}
.iis-token-create[open] summary,.iis-token-edit[open] summary{margin-bottom:20px}
.iis-token-create .iis-button,.iis-token-edit .iis-button{margin-top:8px}
.iis-token-list{display:grid;gap:16px}
.iis-token{box-shadow:none}
.iis-token-head{display:grid;gap:5px}
.iis-token-value-line{display:flex;align-items:center;gap:8px}
.iis-token-head code{font-size:15px;overflow-wrap:anywhere;background:#f3f4f6;padding:8px 10px;border-radius:8px;min-width:0}
.iis-token-url-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.iis-copy,.iis-quest-open{min-height:32px;border:0;background:#eef2ff;color:#3730a3;border-radius:8px;padding:7px 9px;font-size:12px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:5px;font-weight:700}
.iis-copy:hover,.iis-quest-open:hover{background:#e0e7ff;color:#312e81;text-decoration:none}
.iis-token-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;margin:14px 0}
.iis-token-description{grid-column:1/-1;display:grid;gap:5px;background:#f3f4f6;border-radius:10px;padding:10px}
.iis-token-description textarea{display:block;width:100%;min-height:86px;resize:vertical;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;padding:9px 10px;font:inherit;font-size:12px;line-height:1.45}
.iis-token-validity{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.iis-token-fact{display:grid;align-content:start;gap:4px;min-width:0;background:#f3f4f6;border-radius:10px;padding:8px 10px}
.iis-token-label{display:block;color:var(--iis-muted);font-size:10px;font-weight:750;line-height:1.2;text-transform:uppercase;letter-spacing:.045em}
.iis-token-fact strong{font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.iis-password-view,.iis-password-field{display:flex;align-items:center;gap:7px;min-width:0}
.iis-password-field input{min-width:0;flex:1}
.iis-password-toggle{flex:0 0 36px;width:36px;height:36px;min-width:36px;min-height:36px;padding:0;border:1px solid #d1d5db;border-radius:9px;background:#fff;color:#374151;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;cursor:pointer}
.iis-password-toggle:hover{border-color:#9ca3af;background:#f9fafb}
.iis-password-toggle:disabled{opacity:.45;cursor:not-allowed}
.iis-password-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.iis-token-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.iis-token-actions form{display:flex;gap:7px}
.iis-token-actions input[type=number]{width:76px;border:1px solid #d1d5db;border-radius:9px;padding:7px}
.iis-token-edit{margin:12px 0 14px;padding:12px 14px;border:1px solid var(--iis-line);border-radius:12px;background:#f9fafb}
.iis-token-thumbnail{display:block;width:100%;max-width:100%;height:auto;max-height:none;border-radius:10px;object-fit:contain}
.iis-token-image-preview{display:grid;width:100%;gap:6px;margin:8px 0 14px}
.iis-current-image{grid-column:1/-1;display:grid;width:100%;justify-items:stretch;gap:8px;padding:12px;border:1px solid var(--iis-line);border-radius:12px;background:#fff}
.iis-token-edit-image{display:block;width:100%;max-width:100%;height:auto;max-height:none;border-radius:10px;object-fit:contain}
.iis-remove-image{padding:10px 12px;border:1px solid #fecaca;border-radius:10px;background:#fff7f7;color:#991b1b!important}
.iis-table-wrap{overflow:auto;padding:0}
.iis-table{width:100%;border-collapse:collapse;min-width:660px}
.iis-table th,.iis-table td{text-align:left;padding:14px;border-bottom:1px solid var(--iis-line);font-size:13px}
.iis-table th{background:#f9fafb}
.iis-log{margin-bottom:18px}
.iis-log-head{display:flex;align-items:center;justify-content:space-between}
.iis-log-head h2{font-size:18px}
.iis-log pre{background:#111827;color:#d1fae5;border-radius:10px;padding:15px;max-height:360px;overflow:auto;font-size:11px;white-space:pre-wrap}
.iis-quest-image-wrap{width:100%;margin:0 0 16px;text-align:center}
.iis-quest-image{display:block;width:auto;max-width:100%;height:auto;max-height:320px;margin:0 auto;border-radius:12px;object-fit:contain}
.iis-quest-url{display:grid;gap:6px;padding:12px 16px;background:#f8fafc;border:1px solid var(--iis-line);border-radius:10px;margin:0 0 14px;overflow-wrap:anywhere}
.iis-quest-url strong{font-size:13px}
.iis-quest-url a{font-size:12px}
.iis-quest-frame{position:relative;width:100%;height:max(680px,82vh);background:#fff}
.iis-quest-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

@container (max-width:760px){.iis-portal>.iis-main{padding-left:22px;padding-right:22px}.iis-metrics,.iis-form-grid{grid-template-columns:1fr}.iis-main-header>div:first-child{display:none}}
@media (min-width:601px) and (max-width:760px){.iis-portal>.iis-main{padding-left:22px;padding-right:22px}.iis-metrics,.iis-form-grid{grid-template-columns:1fr}.iis-main-header>div:first-child{display:none}}
@media(max-width:600px){
  body.iis-menu-open{overflow:hidden}
  .iis-portal,.iis-portal.is-collapsed{display:block!important;min-height:70vh;overflow:hidden}
  .iis-menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;position:absolute!important;z-index:20;left:15px;top:15px;width:42px!important;height:42px!important;min-width:42px;min-height:42px;border:0!important;background:#111827!important;color:#fff!important;border-radius:9px!important;padding:0!important;margin:0!important;font-size:19px!important;line-height:1!important;cursor:pointer}
  .iis-portal>.iis-sidebar,.iis-portal.is-collapsed>.iis-sidebar{display:flex!important;grid-column:auto!important;grid-row:auto!important;position:fixed!important;z-index:100002!important;inset:0 auto 0 0!important;width:min(84vw,300px)!important;max-width:300px!important;height:100dvh!important;min-height:100vh!important;margin:0!important;padding:20px 16px!important;transform:translateX(-105%)!important;visibility:hidden!important;transition:transform .22s ease,visibility 0s linear .22s;box-shadow:20px 0 50px rgba(0,0,0,.28);overflow-y:auto;overscroll-behavior:contain}
  .iis-portal>.iis-sidebar.open{transform:translateX(0)!important;visibility:visible!important;transition:transform .22s ease,visibility 0s}
  .iis-brand,.iis-portal.is-collapsed .iis-brand{justify-content:space-between;min-height:48px;padding:0 12px 16px}
  .iis-portal.is-collapsed .iis-brand strong,.iis-portal.is-collapsed .iis-nav-label{display:inline}
  .iis-portal.is-collapsed .iis-sidebar nav a,.iis-portal.is-collapsed .iis-sidebar-resize,.iis-portal.is-collapsed .iis-logout{justify-content:flex-start;padding:10px 12px}
  .iis-sidebar-backdrop{display:block!important;position:fixed!important;z-index:100001!important;inset:0!important;width:100vw!important;height:100vh!important;margin:0!important;padding:0!important;border:0!important;background:rgba(15,23,42,.55)!important;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility 0s linear .22s}
  .iis-sidebar-backdrop.open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .22s ease,visibility 0s}
  .iis-portal>.iis-main{display:block!important;grid-column:auto!important;grid-row:auto!important;width:100%!important;min-height:70vh;padding:0 16px 28px!important}
  .iis-main-header{height:72px;margin-bottom:22px;padding-left:48px}
  .iis-main-header>div:first-child{display:none}
  .iis-form-grid,.iis-metrics{grid-template-columns:1fr}
  .iis-login-card{padding:30px 22px}
  .iis-token-value-line{align-items:flex-start}
  .iis-token-head code{min-width:0;flex:1}
  .iis-token-url-actions{align-items:stretch}
  .iis-quest-open span:last-child{display:none}
  .iis-token-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .iis-token-actions{align-items:stretch}
  .iis-token-actions form{width:100%;flex-wrap:wrap}
  .iis-token-actions .iis-button{flex:1}
  .iis-section-title h1{font-size:24px}
  .iis-card{padding:18px}
  .iis-table{min-width:600px}
  .iis-button{font-size:11.5px}
  .iis-quest-image{max-height:220px}
}
@media(prefers-reduced-motion:reduce){.iis-portal,.iis-sidebar,.iis-sidebar-backdrop{transition:none}}
