@import url("https://fonts.googleapis.com/css2?family=Patrick+Hand&family=ZCOOL+KuaiLe&display=swap");

:root{
  --paper:#fdf6e6;
  --card:#fffcf2;
  --ink:#33302b;
  --body:#6f695e;
  --muted:#8a8272;
  --blue:#3a6ea5;
  --yellow:#e6b23c;
  --red:#c2503a;
  --rule:#d6cbaf;
  --wonky:250px 18px 235px 20px/20px 240px 18px 250px;
}

*{box-sizing:border-box}
html,body{min-height:100%;margin:0}
body{
  min-width:320px;
  background:var(--paper);
  color:var(--ink);
  font:15px/1.4 "Patrick Hand","ZCOOL KuaiLe","PingFang SC",sans-serif;
  -webkit-font-smoothing:antialiased;
}
body::before{
  position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.45;content:"";
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.24'/%3E%3C/svg%3E");
}
button,input,textarea,select,a{font:inherit}
button,a{color:inherit}
button{cursor:pointer}
.hidden{display:none!important}

/* Reusable chiioo wordmark. Keep the two crayon "i" letters blue and yellow. */
.logo{
  display:inline-flex;
  align-items:flex-end;
  color:#33302b;
  font-family:"Patrick Hand","ZCOOL KuaiLe","PingFang SC",sans-serif;
  font-size:34px;
  font-weight:400;
  letter-spacing:normal;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
.logo-ii{
  display:flex;
  height:25px;
  margin:0 4px 4px;
  align-items:flex-end;
  gap:3px;
}
.logo-ii i{display:block;flex:0 0 auto}
.logo-i-1{
  width:6px;
  height:18px;
  border-radius:3px;
  background:#3a6ea5;
  transform:rotate(3deg);
}
.logo-i-2{
  width:6px;
  height:25px;
  border-radius:3px;
  background:#e6b23c;
  transform:rotate(-3deg);
}
.logo.logo-topbar{font-size:22px}
.logo-topbar .logo-ii{height:16px;margin:0 3px 3px;gap:2px}
.logo-topbar .logo-i-1{width:4px;height:12px;border-radius:2px}
.logo-topbar .logo-i-2{width:4px;height:16px;border-radius:2px}

.crayon-page{width:min(1180px,calc(100% - 32px));min-height:650px;margin:24px auto;border:3px solid var(--ink);border-radius:var(--wonky);background:var(--card);box-shadow:7px 8px 0 rgba(51,48,43,.82);overflow:hidden}
.crayon-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;min-height:650px}
.decision-main{display:flex;min-width:0;flex-direction:column;gap:20px;padding:28px;border-right:2px dashed var(--rule)}
.hand-hint{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:17px}
.hand-hint::before{display:block;width:26px;height:4px;border-radius:3px;background:var(--blue);content:""}
.hand-hint.yellow::before{background:var(--yellow)}
.hand-hint.red::before{background:var(--red)}
.big-question{margin:0;color:var(--ink);font-size:clamp(34px,4.2vw,48px);font-weight:400;line-height:1.05}
.preview-stage{display:grid;min-height:320px;place-items:center;border:3px solid var(--ink);border-radius:var(--wonky);background:var(--card);box-shadow:5px 6px 0 rgba(51,48,43,.85);overflow:hidden}
.preview-stage img,.preview-stage video,.preview-stage iframe{display:block;max-width:100%;max-height:100%;object-fit:contain}

.facts-rail{display:flex;min-height:0;flex-direction:column;background:rgba(253,246,230,.56)}
.facts-list{display:grid;align-content:start;flex:1;padding:22px}
.facts-list>div,.facts-list dl>div,.fact-row{display:grid;gap:3px;padding:12px 0;border-top:2px dashed var(--rule)}
.facts-list dt,.facts-list small,.fact-row span{color:var(--muted);font-size:14px}
.facts-list dd,.facts-list b,.fact-row strong{margin:0;color:var(--ink);font-size:19px;font-weight:400;line-height:1.25}
.facts-foot{padding:16px 22px;border-top:2px dashed var(--rule);color:var(--muted);font-size:15px}

.hand-card{border:3px solid var(--ink);border-radius:var(--wonky);background:var(--card);box-shadow:5px 6px 0 rgba(51,48,43,.85)}
.primary-button,.paper-button,.judge-button,.secondary-button,.ghost-action,.refresh-button,.dialog-close,.candidate-select,.save-graph,.export-button{
  min-height:44px;padding:0 18px;border:2.5px solid var(--ink);border-radius:250px 16px 230px 14px/14px 240px 16px 250px;background:var(--paper);color:var(--ink);text-decoration:none;
}
.round-dismiss{
  display:grid;width:34px;height:34px;min-height:34px;padding:0;place-items:center;
  border:2.5px solid var(--ink);border-radius:50%;background:var(--red);color:#fff;
  box-shadow:2px 3px 0 rgba(51,48,43,.82);font-size:21px;font-weight:700;line-height:1;
  transform:rotate(3deg);transition:background .14s ease,box-shadow .14s ease,transform .14s ease;
}
.round-dismiss:hover{background:#d6654e;box-shadow:3px 4px 0 var(--ink);transform:rotate(-5deg) scale(1.06)}
.round-dismiss:active{box-shadow:1px 1px 0 var(--ink);transform:rotate(-2deg) translate(1px,2px) scale(.98)}
.round-dismiss:focus-visible{outline:4px solid rgba(230,178,60,.62);outline-offset:3px}
.primary-button,.export-button.primary,.candidate-card.selected .candidate-select{
  background:var(--yellow);box-shadow:3px 4px 0 var(--ink);font-size:20px;font-weight:400;
}
.paper-button,.secondary-button,.ghost-action,.refresh-button{background:var(--paper)}
.judge-button{background:var(--paper);font-size:20px}
.primary-button:hover,.export-button.primary:hover{background:#f2c452}
.paper-button:hover,.judge-button:hover,.secondary-button:hover,.ghost-action:hover{background:#f6e9c8}
button:disabled,.disabled{cursor:default;opacity:.46;box-shadow:none}

.decision-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:16px;border-top:2px dashed var(--rule)}
.decision-row .primary-button{flex:1}
.judgement-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.judgement-bar>strong{font-size:22px;font-weight:400}
.judgement-bar input,.judgement-bar textarea,.revision-panel textarea,.connection-panel textarea,select,input[type="text"],input[type="number"]{
  min-width:0;border:2.5px solid var(--ink);border-radius:250px 16px 230px 14px/14px 240px 16px 250px;background:var(--card);color:var(--ink);outline:none;
}
.judgement-bar input{flex:1;height:40px;padding:0 14px;font-size:17px}
textarea{padding:12px 14px;resize:vertical}
input:focus,textarea:focus,select:focus{box-shadow:0 0 0 3px rgba(230,178,60,.32)}

.toast{position:fixed;right:24px;bottom:24px;z-index:100;padding:10px 16px;border:2px solid var(--ink);border-radius:var(--wonky);background:var(--yellow);box-shadow:3px 4px 0 var(--ink);opacity:0;transform:translateY(12px);transition:.18s;pointer-events:none}.toast.visible{opacity:1;transform:none}
dialog{max-width:min(560px,calc(100% - 32px));border:3px solid var(--ink);border-radius:var(--wonky);background:var(--card);box-shadow:7px 8px 0 var(--ink);color:var(--ink)}dialog::backdrop{background:rgba(51,48,43,.45)}
.runtime-contract{display:none!important}

/* Shared dashboard pieces used by the project and local-material pages. */
.crayon-dashboard{display:grid;grid-template-columns:246px minmax(0,1fr);min-height:100vh}
.crayon-sidebar{position:sticky;top:0;display:flex;height:100vh;min-height:0;overflow-y:auto;flex-direction:column;padding:28px 20px 20px;border-right:2px dashed var(--rule);background:rgba(255,252,242,.72)}
.crayon-sidebar .brand{display:inline-flex;width:max-content;margin:0 10px 30px;text-decoration:none}
.crayon-sidebar-nav{display:grid;gap:5px}
.crayon-sidebar-nav a,.crayon-sidebar-nav button{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;min-height:42px;padding:7px 10px;border:0;border-radius:10px;background:transparent;text-align:left;text-decoration:none}
.crayon-sidebar-nav a:hover,.crayon-sidebar-nav button:hover{background:rgba(230,178,60,.12)}
.crayon-sidebar-nav b,.crayon-sidebar-nav em{font-weight:400;font-style:normal}.crayon-sidebar-nav em{color:var(--muted);font-size:13px}
.crayon-sidebar-rule{margin:20px 0;border-top:2px dashed var(--rule)}
.crayon-sidebar-spacer{flex:1;min-height:22px}
.crayon-usage-card{margin-top:18px;padding:14px;border:2px solid var(--ink);border-radius:var(--wonky);background:var(--card);box-shadow:3px 4px 0 rgba(51,48,43,.78)}
.crayon-usage-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.crayon-usage-card b{font-weight:400}.crayon-usage-card small{display:block;margin-top:8px;color:var(--muted)}
.crayon-usage-track{height:7px;margin-top:10px;overflow:hidden;border:1.5px solid var(--ink);border-radius:10px;background:var(--paper)}.crayon-usage-track i{display:block;height:100%;background:var(--blue)}
.crayon-account-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;margin-top:14px;padding:8px;border:0;background:transparent;text-align:left}.crayon-account-row>span:nth-child(2){display:grid;min-width:0}.crayon-account-row b,.crayon-account-row small{overflow:hidden;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.crayon-account-row small{color:var(--muted)}
.crayon-account-avatar{display:grid;width:36px;height:36px;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--blue);color:#fff}
.crayon-topbar{position:sticky;top:0;z-index:20;display:flex;height:76px;align-items:center;gap:18px;padding:0 36px;border-bottom:2px dashed var(--rule);background:rgba(253,246,230,.93);backdrop-filter:blur(8px)}
.crayon-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;width:min(610px,65vw);height:42px;margin-right:auto;padding:0 12px;border:2.5px solid var(--ink);border-radius:var(--wonky);background:var(--card);box-shadow:2px 3px 0 rgba(51,48,43,.35);transform:rotate(-.15deg)}
.crayon-search input{width:100%;min-width:0;padding:0 9px;border:0;background:transparent;color:var(--ink);outline:0}.crayon-search kbd{padding:2px 6px;border:1.5px solid var(--rule);border-radius:6px;background:var(--paper);color:var(--muted);font:12px "Patrick Hand",sans-serif}
.crayon-icon-button{display:grid;width:38px;height:38px;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--card);box-shadow:2px 3px 0 rgba(51,48,43,.72);text-decoration:none}.crayon-icon-button:active{box-shadow:1px 1px 0 var(--ink);transform:translate(1px,2px)}
.crayon-primary-action,.crayon-paper-action,.crayon-danger-action{min-height:43px;padding:0 17px;border:2.5px solid var(--ink);border-radius:var(--wonky);font-size:17px;text-decoration:none}.crayon-primary-action{background:var(--yellow);box-shadow:4px 5px 0 var(--ink)}.crayon-paper-action{background:var(--paper);box-shadow:3px 4px 0 var(--ink)}.crayon-danger-action{border-color:var(--red);background:var(--paper);color:var(--red);box-shadow:3px 4px 0 var(--red)}
.crayon-primary-action:active,.crayon-paper-action:active,.crayon-danger-action:active{box-shadow:1px 1px 0 currentColor;transform:translate(2px,3px)}
.crayon-dialog{width:min(560px,calc(100% - 32px));padding:0}.crayon-dialog form{padding:26px}.crayon-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.crayon-dialog h2{margin:4px 0 0;font-size:28px;font-weight:400}.crayon-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:16px;border-top:2px dashed var(--rule)}
.crayon-toast{position:fixed;right:24px;bottom:24px;z-index:100;display:flex;align-items:center;gap:16px;padding:11px 17px;border:2.5px solid var(--ink);border-radius:var(--wonky);background:var(--yellow);box-shadow:4px 5px 0 var(--ink);opacity:0;transform:translateY(12px);transition:.18s;pointer-events:none}.crayon-toast.visible{opacity:1;transform:none;pointer-events:auto}

@media(max-width:820px){.crayon-grid{grid-template-columns:1fr}.decision-main{border-right:0;border-bottom:2px dashed var(--rule)}.facts-rail{min-height:220px}.crayon-page{width:calc(100% - 20px);margin:10px auto}.decision-main{padding:20px}.preview-stage{min-height:260px}.crayon-dashboard{grid-template-columns:1fr}.crayon-sidebar{display:none}.crayon-topbar{padding:0 18px}.crayon-search{width:100%}}
