/* Scoped styles: the shortcode also works inside a Divi 5 text module. */
body.kis-app-page{margin:0;background:#f7f8fa}
#kis-app{--ink:#232335;--muted:#686779;--purple:#5846a6;--line:#e3e2eb;--paper:#fff;--soft:#f3f0fa;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);text-align:left;overflow-wrap:anywhere}
#kis-app *,#kis-app *:before,#kis-app *:after{box-sizing:border-box}
#kis-app [hidden]{display:none!important}
#kis-app h1,#kis-app h2,#kis-app h3,#kis-app h4{color:var(--ink);font-family:inherit;font-weight:720;letter-spacing:-.035em;line-height:1.2;padding:0}
#kis-app h1{font-size:clamp(30px,3vw,44px);margin:0 0 20px}#kis-app h2{font-size:23px;margin:0 0 16px}#kis-app h3{font-size:20px;margin:18px 0 12px}#kis-app h4{font-size:16px;letter-spacing:0;margin:20px 0 8px}
#kis-app p{margin:0 0 16px;padding:0;line-height:1.65}#kis-app p:last-child{margin-bottom:0}#kis-app a{color:var(--purple);text-decoration:underline;text-underline-offset:3px}#kis-app small{font-size:12px}
#kis-app button,#kis-app input,#kis-app select,#kis-app textarea{font:inherit}#kis-app button{cursor:pointer}#kis-app button:disabled{cursor:wait;opacity:.55}#kis-app :focus-visible{outline:3px solid #177f98;outline-offset:4px}#kis-app h1:focus,#kis-app main:focus{outline:none}
#kis-app .kis-shell{display:grid;grid-template-columns:236px minmax(0,1fr);max-width:1680px;min-height:100vh;margin:0 auto;background:#f8f9fb}
#kis-app .kis-sidebar{display:flex;flex-direction:column;background:white;border-right:1px solid var(--line);padding:32px 20px;position:sticky;top:0;align-self:start;height:100vh;min-height:620px}
#kis-app .kis-brand{display:flex;gap:10px;align-items:center;color:var(--ink);text-decoration:none;font-size:15px;font-weight:750;line-height:1.15;letter-spacing:-.02em}
#kis-app .kis-brand small{display:block;font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--muted);margin-top:5px}
#kis-app .kis-mark{background:var(--purple);color:white;display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:13px;font-size:23px;font-weight:850;letter-spacing:-.09em}
#kis-app .kis-sidebar nav{display:flex;flex-direction:column;gap:7px;margin-top:48px}
#kis-app .kis-sidebar nav button{border:0;background:none;text-align:left;padding:13px 14px;border-radius:10px;display:flex;gap:12px;align-items:center;font-size:14px;color:#5c5a70;font-weight:600;white-space:nowrap}
#kis-app .kis-sidebar nav button span{font-size:19px;width:22px;text-align:center}#kis-app .kis-sidebar nav button:hover{background:#f8f6fc}#kis-app .kis-sidebar nav button[aria-current]{background:var(--soft);color:var(--purple)}
#kis-app .kis-sidebar-note{margin-top:auto;padding:26px 14px 20px;font-size:12px;color:var(--muted)}#kis-app .kis-sidebar-note strong{display:block;font-size:16px;line-height:1.45;color:var(--ink);margin-bottom:12px}#kis-app .kis-dot{display:block;background:#55acc0;width:9px;height:9px;border-radius:50%;margin-bottom:14px}#kis-app .kis-back-site{font-size:12px;margin:15px}
#kis-app .kis-workspace{min-width:0}#kis-app .kis-topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:88px;padding:16px 42px;background:white;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.08em;font-weight:650}
#kis-app .kis-topbar>div{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:0}#kis-app .kis-topbar small{display:block;color:var(--muted);font-size:11px;font-weight:400}#kis-app .kis-topbar a{font-size:11px;margin-left:14px;font-weight:400}#kis-app .kis-avatar{background:#e7f2f4;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:#236879;font-weight:750}#kis-app .kis-beta{font-size:9px;background:#f1edf9;color:var(--purple);padding:4px 6px;margin-left:8px;border-radius:4px}
#kis-app main{padding:36px 42px;max-width:1280px;margin:0 auto;min-height:70vh}#kis-app .kis-eyebrow{font-size:10px;font-weight:750;letter-spacing:.12em;line-height:1.55;color:var(--purple);margin:0 0 14px}
#kis-app .kis-hero{background:#efecf8;position:relative;border:1px solid #e6e0f1;border-radius:24px;padding:40px;display:grid;grid-template-columns:1.25fr 1fr;gap:10px;overflow:hidden}#kis-app .kis-hero h1{font-size:clamp(32px,3vw,48px);line-height:1.12;margin-bottom:22px;letter-spacing:-.045em}#kis-app .kis-hero em{font-style:normal;color:var(--purple)}#kis-app .kis-hero p:not(.kis-eyebrow){max-width:460px;font-size:14px;color:#616075}#kis-app .kis-hero .kis-btn{margin-top:7px}
#kis-app .kis-orbit{position:relative;min-height:290px;align-self:center}#kis-app .kis-orbit-ring{border:1px solid #d6cce8;border-radius:50%;position:absolute;inset:15px 20px;transform:rotate(-15deg)}#kis-app .kis-orbit-ring:after{content:"";position:absolute;inset:24px -18px;border:1px solid #d6cce8;border-radius:50%;transform:rotate(55deg)}#kis-app .kis-orbit-core{position:absolute;inset:72px 80px;display:grid;place-items:center;font-size:72px;font-weight:850;letter-spacing:-.12em;color:var(--purple);transform:rotate(-9deg)}#kis-app .kis-orbit-tag{position:absolute;padding:9px 16px;border-radius:9px;background:white;border:1px solid #e6dff0;box-shadow:0 6px 20px #4c3e7110;font-size:12px;font-weight:650;white-space:nowrap}#kis-app .t1{top:36px;left:4px;transform:rotate(-6deg)}#kis-app .t2{right:-8px;top:132px;transform:rotate(8deg)}#kis-app .t3{left:15px;bottom:28px;transform:rotate(-3deg)}#kis-app .kis-spark{font-size:45px;color:#50a6b9;position:absolute;right:55px;top:14px}
#kis-app .kis-btn{display:inline-flex;gap:12px;align-items:center;justify-content:center;background:#fff;border:1px solid #d8d5e3;border-radius:9px;color:var(--purple);padding:10px 17px;font-size:13px;font-weight:650;line-height:1.45;text-decoration:none;min-height:42px;transition:background .15s,box-shadow .15s}#kis-app .kis-btn:hover{background:#f4f0fa;box-shadow:0 2px 5px #3e2b6a0c}#kis-app .kis-primary{color:#fff;background:var(--purple);border-color:var(--purple)}#kis-app .kis-primary:hover{background:#49388f}#kis-app .kis-link-btn{padding-left:0;background:none;border:0;margin-bottom:20px}#kis-app .kis-small{font-size:11px;padding:7px 10px;margin:3px}
#kis-app .kis-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0 38px}#kis-app .kis-stats>div{padding:20px 22px;background:#fff;border:1px solid var(--line);border-radius:12px}#kis-app .kis-stats strong{display:block;font-size:29px;font-weight:650;line-height:1.3;letter-spacing:-.04em}#kis-app .kis-stats span{display:block;font-size:11px;color:var(--muted);margin-top:5px}
#kis-app .kis-section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}#kis-app .kis-section-title .kis-eyebrow{margin-bottom:7px}#kis-app .kis-section-title h2{font-size:27px;margin:0}
#kis-app .kis-area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}#kis-app .kis-area{display:flex;flex-direction:column;text-align:left;border:1px solid var(--line);border-radius:16px;background:white;padding:22px;color:var(--ink);min-height:230px;transition:transform .15s,box-shadow .15s}#kis-app .kis-area:hover{transform:translateY(-3px);box-shadow:0 8px 28px #35265210}#kis-app .kis-area-number{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--tint);color:var(--tone);font-size:13px;font-weight:750;margin-bottom:18px}#kis-app .kis-area-title{font-size:18px;font-weight:700;letter-spacing:-.025em;line-height:1.3;margin-bottom:10px}#kis-app .kis-area>span:nth-child(3){font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:24px}#kis-app .kis-area-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-top:auto;color:var(--tone)}#kis-app .kis-area-bottom span{font-size:21px}
#kis-app .kis-purple{--tone:#5846a6;--tint:#eee8fb}#kis-app .kis-blue{--tone:#216579;--tint:#e1f0f5}#kis-app .kis-green{--tone:#306249;--tint:#e4f1e9}#kis-app .kis-orange{--tone:#8e581f;--tint:#faf0de}#kis-app .kis-pink{--tone:#944569;--tint:#f8e7ef}
#kis-app .kis-note{background:#eff4f6;border:1px solid #dbe7eb;border-radius:12px;padding:22px 24px;font-size:14px;margin:26px 0}#kis-app .kis-note p{font-size:13px;color:#4e6370;margin-top:7px}#kis-app .kis-resume{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:24px;background:white;border:1px solid var(--line);border-radius:14px;margin-bottom:32px}#kis-app .kis-resume h2{font-size:21px;margin-bottom:10px}#kis-app .kis-resume .kis-eyebrow{margin-bottom:7px}
#kis-app .kis-page-heading{margin-bottom:28px;max-width:850px}#kis-app .kis-page-heading p:not(.kis-eyebrow){color:var(--muted);max-width:720px}#kis-app .kis-page-heading h1{margin-bottom:14px}
#kis-app .kis-filters{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:16px;margin:18px 0}#kis-app label{display:block;font-size:13px;font-weight:650;color:var(--ink);margin-bottom:16px}#kis-app label>input,#kis-app label>textarea,#kis-app label>select{margin-top:7px}#kis-app input:not([type=checkbox]):not([type=radio]):not([type=submit]),#kis-app textarea,#kis-app select{display:block;width:100%;border:1px solid #cbc9d8;border-radius:8px;background:white;padding:12px 13px;min-height:46px;font-size:15px;line-height:1.5;color:var(--ink);font-weight:400;box-shadow:none}#kis-app textarea{resize:vertical}#kis-app textarea[readonly]{background:#f5f6f9;color:#474658}#kis-app input::placeholder,#kis-app textarea::placeholder{color:#757386}
#kis-app .kis-chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 24px}#kis-app .kis-chips button{border:1px solid #d9d7e4;background:#fff;padding:9px 14px;border-radius:24px;font-size:12px;color:#504b65;min-height:42px}#kis-app .kis-chips button[aria-pressed=true]{background:var(--purple);color:white;border-color:var(--purple)}
#kis-app .kis-results{font-size:12px;color:var(--muted)}#kis-app .kis-unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}#kis-app .kis-unit-card{background:white;border:1px solid var(--line);border-radius:15px;padding:26px;display:flex;flex-direction:column}#kis-app .kis-unit-card h2{font-size:23px;line-height:1.3}#kis-app .kis-unit-card>p{font-size:14px;color:var(--muted)}#kis-app .kis-unit-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);margin-bottom:20px}#kis-app .kis-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:14px}
#kis-app .kis-badge{display:inline-block;font-size:11px;font-weight:650;letter-spacing:0;line-height:1.4;color:#5c5571;background:#f0edf6;border-radius:6px;padding:5px 8px}#kis-app .kis-state-complete{background:#e4f3eb;color:#286046}#kis-app .kis-state-submitted{background:#e3f0f6;color:#275f7b}#kis-app .kis-state-revise{background:#fff0d9;color:#805015}#kis-app .kis-sample{font-size:10px;color:#7d5b23;background:#fff4dc;padding:4px 7px;border-radius:5px}
#kis-app .kis-list{display:flex;flex-direction:column;gap:16px;margin-top:22px}#kis-app .kis-list-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;background:white;border:1px solid var(--line);border-radius:13px}#kis-app .kis-list-card h2{font-size:21px}#kis-app .kis-list-card .kis-eyebrow{margin-bottom:10px}#kis-app .kis-list-card p{font-size:14px}#kis-app .kis-list-card .kis-btn{flex-shrink:0}#kis-app .kis-empty{padding:40px;border:1px dashed #c9c5d9;border-radius:16px;background:white;text-align:center;margin:24px 0;color:var(--muted)}
#kis-app .kis-panel{background:white;border:1px solid var(--line);border-radius:14px;padding:26px;margin:20px 0}#kis-app .kis-two-column{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}#kis-app .kis-two-column>.kis-panel{margin-top:0}#kis-app .kis-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}#kis-app .kis-form-grid>div{grid-column:1/-1}#kis-app .kis-muted{color:var(--muted);font-size:12px}#kis-app .kis-class-line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid #efedf4;font-size:14px}#kis-app .kis-class-line:last-child{border-bottom:0}#kis-app .kis-class-line small{display:block;color:var(--muted);margin-top:3px}#kis-app .kis-class-line>div:last-child{text-align:right}
#kis-app .kis-assignment-detail{padding:14px 0;border-bottom:1px solid var(--line)}#kis-app .kis-assignment-detail summary{display:flex;flex-direction:column;gap:5px}#kis-app summary{cursor:pointer;font-weight:650;color:var(--purple);line-height:1.5}#kis-app details[open]>summary{margin-bottom:18px}#kis-app summary small{font-weight:400;color:var(--muted)}#kis-app details.kis-panel>div{margin-top:20px}
#kis-app .kis-task-outline{list-style:decimal;padding-left:24px;margin:0}#kis-app .kis-task-outline li{padding-left:4px;margin-bottom:18px}#kis-app .kis-task-outline p{font-size:13px;color:var(--muted);margin-top:6px}#kis-app .kis-rich{line-height:1.75;white-space:normal}#kis-app .kis-rich ol,#kis-app .kis-rich ul{padding-left:24px;margin-bottom:20px}#kis-app .kis-rich a{overflow-wrap:anywhere}#kis-app .kis-rich img{max-width:100%;height:auto}
#kis-app .kis-work-status{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:12px;color:var(--muted);margin-bottom:24px}#kis-app .kis-task{border:1px solid var(--line);border-radius:14px;background:#fff;margin:30px 0;padding:25px}#kis-app .kis-task legend{font-size:12px;font-weight:700;padding:0 10px;color:var(--purple)}#kis-app .kis-task legend span{background:var(--purple);color:white;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;margin-right:8px;font-size:11px}#kis-app .kis-prompt{font-weight:600;font-size:17px}#kis-app .kis-hint{background:#f6f3fc;padding:13px 16px;border-radius:9px;margin:18px 0;font-size:13px}#kis-app .kis-hint p{color:#5e576e}
#kis-app .kis-options{display:flex;flex-direction:column;gap:9px;margin:20px 0}#kis-app .kis-options label{display:flex;align-items:flex-start;gap:12px;padding:13px;border:1px solid var(--line);border-radius:9px;font-weight:400;margin:0;cursor:pointer}#kis-app .kis-options label:has(input:checked){background:#f4effb;border-color:#8d7bc4}#kis-app .kis-options input{margin:4px 0 0;width:17px;height:17px;accent-color:var(--purple);flex-shrink:0}
#kis-app .kis-save-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;background:white;border:1px solid var(--line);border-radius:12px;padding:18px;margin:22px 0}#kis-app .kis-save-bar>span{font-size:12px;color:var(--muted)}#kis-app .kis-save-bar>div,#kis-app .kis-actions{display:flex;gap:10px;flex-wrap:wrap}#kis-app .kis-feedback{padding:24px;border-radius:12px;background:#eaf4ef;border:1px solid #cee5d8;margin:20px 0;font-size:14px}#kis-app .kis-feedback .kis-eyebrow{color:#306249}#kis-app .kis-review{border-top:4px solid var(--purple)}#kis-app .kis-history{border-bottom:1px solid var(--line);padding:15px 0 24px;font-size:14px}
#kis-app .kis-notice{padding:16px 20px;border-radius:10px;background:#e7f3ed;color:#285c43;border:1px solid #bedcca;margin-bottom:22px;line-height:1.6;font-size:14px}#kis-app .kis-error{background:#fff0ee;border-color:#eab9b5;color:#822c27}#kis-app .kis-error-text{color:#8d352e}#kis-app .kis-credentials{background:#fff6df;border:1px solid #e5ca8c;border-radius:9px;padding:20px;margin-top:18px;font-size:13px}#kis-app .kis-credentials code{font-size:17px;font-weight:700;user-select:all;overflow-wrap:anywhere}
#kis-app .kis-app-footer{display:flex;justify-content:space-between;gap:16px;padding:25px 42px;font-size:10px;color:var(--muted);border-top:1px solid var(--line)}#kis-app .kis-app-footer button{font-size:10px;color:var(--purple);border:0;background:none;padding:0;text-decoration:underline;text-underline-offset:3px}
#kis-app .kis-skip{position:absolute;left:-9999px;top:12px;z-index:10000;background:white;padding:15px}#kis-app .kis-skip:focus{left:12px}#kis-app .kis-loading{padding:50px;text-align:center}
#kis-app.kis-login{min-height:100vh;display:grid;place-items:center;padding:40px 20px;background:#f2eff9}#kis-app .kis-login-card{max-width:550px;width:100%;padding:42px;border:1px solid var(--line);border-radius:22px;background:white}#kis-app .kis-login-card .kis-brand{margin-bottom:40px}#kis-app .kis-login-card h1{font-size:36px}#kis-app #loginform{margin-top:28px}#kis-app #loginform input[type=submit]{background:var(--purple);color:white;border:0;border-radius:9px;padding:13px 22px;font-weight:650;cursor:pointer}#kis-app .login-remember label{font-weight:400}
@media(max-width:1180px){#kis-app .kis-shell{grid-template-columns:205px minmax(0,1fr)}#kis-app main{padding:28px}#kis-app .kis-topbar{padding:16px 28px}#kis-app .kis-hero{padding:30px}#kis-app .kis-orbit{min-height:270px}#kis-app .kis-orbit-core{inset:85px 55px;font-size:62px}#kis-app .kis-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#kis-app .kis-stats{gap:10px}#kis-app .kis-stats>div{padding:17px}#kis-app .kis-two-column{grid-template-columns:1fr}#kis-app .kis-save-bar{align-items:start;flex-direction:column}}
@media(max-width:820px){#kis-app .kis-shell{grid-template-columns:1fr}#kis-app .kis-sidebar{position:static;height:auto;min-height:0;padding:18px;border-right:0;border-bottom:1px solid var(--line)}#kis-app .kis-sidebar .kis-brand{margin-bottom:16px}#kis-app .kis-sidebar nav{flex-direction:row;overflow-x:auto;margin:0;gap:5px;padding:4px 3px}#kis-app .kis-sidebar nav button{font-size:12px;padding:10px 12px}#kis-app .kis-sidebar nav button span{font-size:16px;width:18px}#kis-app .kis-sidebar-note,#kis-app .kis-back-site{display:none}#kis-app .kis-topbar{min-height:65px;padding:12px 22px}#kis-app .kis-topbar>span{font-size:9px}#kis-app .kis-hero h1{font-size:38px}#kis-app .kis-app-footer{padding:22px;flex-wrap:wrap}}
@media(max-width:580px){#kis-app main{padding:22px 16px}#kis-app .kis-hero{grid-template-columns:1fr;padding:26px 24px;border-radius:18px}#kis-app .kis-hero h1{font-size:35px}#kis-app .kis-orbit{display:none}#kis-app .kis-topbar{padding:10px 16px;gap:8px}#kis-app .kis-topbar>span{font-size:8px;letter-spacing:.02em}#kis-app .kis-topbar>div{font-size:12px;gap:7px}#kis-app .kis-topbar a{margin-left:5px;font-size:10px}#kis-app .kis-avatar{width:28px;height:28px}#kis-app .kis-stats{grid-template-columns:1fr 1fr;margin:18px 0 30px}#kis-app .kis-stats strong{font-size:26px}#kis-app .kis-area-grid,#kis-app .kis-unit-grid{grid-template-columns:1fr}#kis-app .kis-area{min-height:190px}#kis-app .kis-area>span:nth-child(3){margin-bottom:16px}#kis-app .kis-unit-card{padding:22px}#kis-app .kis-filters{grid-template-columns:1fr;gap:0}#kis-app .kis-panel,#kis-app .kis-task{padding:20px}#kis-app .kis-list-card,#kis-app .kis-resume{align-items:start;flex-direction:column}#kis-app .kis-form-grid{grid-template-columns:1fr;gap:0}#kis-app .kis-class-line{align-items:start;flex-direction:column;gap:8px}#kis-app .kis-class-line>div:last-child{text-align:left}#kis-app .kis-work-status{align-items:start;flex-direction:column;gap:8px}#kis-app .kis-save-bar>div{width:100%}#kis-app .kis-save-bar button{width:100%}#kis-app .kis-login-card{padding:28px}#kis-app .kis-login-card h1{font-size:30px}#kis-app input:not([type=checkbox]):not([type=radio]):not([type=submit]),#kis-app textarea,#kis-app select{font-size:16px}}
@media(prefers-reduced-motion:reduce){#kis-app *{transition:none!important;scroll-behavior:auto!important}}
@media print{#kis-app .kis-sidebar,#kis-app .kis-topbar,#kis-app .kis-app-footer,#kis-app .kis-save-bar,#kis-app .kis-btn{display:none!important}#kis-app .kis-shell{display:block}#kis-app main{padding:0}#kis-app .kis-panel,#kis-app .kis-task{break-inside:avoid}}

#kis-app .kis-module-status{font-size:10px;font-weight:700;padding:4px 8px;background:var(--tint);color:var(--tone);border-radius:5px;align-self:flex-start;margin-bottom:16px}
#kis-app .kis-instructions{border:1px solid var(--line);border-radius:10px;padding:18px;margin:18px 0 24px;background:#fafafd}
#kis-app .kis-instructions article{margin:0}#kis-app .kis-instructions figure{margin:18px 0}#kis-app .kis-instructions figcaption{font-size:12px;color:var(--muted)}#kis-app .kis-rich table{border-collapse:collapse;width:100%;font-size:13px}#kis-app .kis-rich th,#kis-app .kis-rich td{border:1px solid var(--line);padding:10px;text-align:left;vertical-align:top}#kis-app .table-scroll{overflow:auto}#kis-app .kis-rich .downloads{display:flex;flex-wrap:wrap;gap:12px}#kis-app .kis-rich .downloads a{border:1px solid var(--line);border-radius:7px;padding:8px 12px;font-size:12px}

#kis-app .kis-materials .db-file-meta{display:block;margin-top:6px;line-height:1.6;color:var(--muted)}#kis-app .kis-materials section{margin:28px 0}#kis-app .kis-materials h1{font-size:28px}
