*{box-sizing:border-box}body{margin:0;background:#f5f7f3;color:#233b32;font-family:system-ui,-apple-system,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,.button{border:0;border-radius:8px;padding:11px 18px;background:#24664c;color:white;font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:wait}.quiet{background:transparent;color:#486256;border:1px solid #dae2d8}header{height:74px;background:white;border-bottom:1px solid #e1e6df;display:flex;align-items:center;justify-content:space-between;padding:0 36px;gap:20px}.brand{font-weight:800;letter-spacing:2px;color:#24664c}.brand small{font-weight:400;letter-spacing:0;margin-left:10px;color:#718175}h1{font-size:42px;font-weight:600;letter-spacing:-1.4px}h2{font-size:23px;font-weight:600}p{line-height:1.7;color:#65776c}.eyebrow{color:#7a8c80;font-size:11px;font-weight:600;letter-spacing:2px}.home{max-width:1100px;margin:60px auto;padding:0 24px}.page-title{display:flex;align-items:center;justify-content:space-between;gap:16px}input,textarea,select{font:inherit;background:white;border:1px solid #d7e0d5;border-radius:7px;padding:12px;width:100%;color:#233b32}input:focus,textarea:focus{outline:2px solid #70a58b}label{display:block;font-size:13px;margin:14px 0}label input,label textarea{margin-top:7px}#search{max-width:460px;margin-bottom:28px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px}.card{padding:25px;background:white;border:1px solid #dfe5dc;border-radius:12px;transition:.2s}.card:hover{border-color:#78a28b;transform:translateY(-2px)}.card footer{border-top:1px solid #edf0e9;margin-top:30px;padding-top:18px;display:flex;justify-content:space-between;font-size:12px;color:#809084}.tags{display:flex;gap:5px}.tags span{font-size:11px;background:#eef4eb;border-radius:20px;padding:4px 9px}.welcome{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 80% 20%,#e2eedf,transparent 50%),#f5f7f3}.welcome-card{width:min(460px,90vw);padding:45px;background:white;border:1px solid #dfe5dc;border-radius:18px}.welcome h1{font-size:46px;line-height:1.12}.welcome button{width:100%;margin:18px 0 30px}.welcome small{color:#90a094;font-size:11px}dialog{width:min(590px,95vw);padding:28px;border:1px solid #d7e0d5;border-radius:15px}dialog::backdrop{background:#142b2266;backdrop-filter:blur(4px)}pre{overflow:auto;white-space:pre-wrap;padding:16px;border-radius:8px;background:#f4f6f2;font:12px ui-monospace,monospace}.error{color:#b34235}.workspace{display:grid;grid-template-columns:280px minmax(0,1fr);height:calc(100vh - 74px)}aside{background:#f8faf6;border-right:1px solid #e0e7dc;padding:22px 15px;overflow:auto}aside .eyebrow{display:block;margin:0 10px 14px}#tree,#tree ul{list-style:none;padding-left:12px}#tree{padding:0}#tree li{margin:3px 0}#tree button{font:13px system-ui;text-align:left;background:transparent;color:#486256;padding:7px 6px;border-radius:6px}#tree button.selected{background:#e1eddf;color:#1f6346}#tree button:hover{background:#e9efe5}#tree .toggle{width:23px;padding:7px 0;text-align:center}.content{overflow:auto;padding:30px 36px}.content-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.content h1{font-size:27px;margin:8px 0}.content select{width:auto;max-width:280px}.tabs{display:flex;border-bottom:1px solid #dfe5dc;gap:24px;margin-bottom:26px}.tabs button{background:none;color:#7d8d81;border-radius:0;padding:12px 2px}.tabs button.active{border-bottom:2px solid #24664c;color:#24664c}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.result-card{background:white;border:1px solid #dfe5dc;border-radius:10px;overflow:hidden;cursor:pointer}.result-card img{display:block;width:100%;height:210px;object-fit:contain;padding:12px;background:white}.result-card iframe{width:100%;height:210px;border:0;pointer-events:none}.result-card .caption{font:12px ui-monospace,monospace;padding:14px;border-top:1px solid #eef1ea;overflow-wrap:anywhere}.result-card small{color:#87988b}.result-group{margin-bottom:36px}.result-group h3{font-size:15px}iframe.viewer{width:100%;height:65vh;border:1px solid #dde5d8;border-radius:8px;background:white}.empty{padding:35px;border:1px dashed #cad7c7;border-radius:10px;background:#fafcf8}.meta{display:grid;grid-template-columns:140px 1fr;gap:12px;line-height:1.6}.meta dt{color:#809084}.meta dd{margin:0;overflow-wrap:anywhere}#image-dialog{width:min(1100px,95vw)}#image-dialog img{max-width:100%;max-height:80vh;object-fit:contain}#image-dialog iframe{width:100%;height:75vh;border:0}[hidden]{display:none!important}@media(max-width:700px){header{padding:0 16px}.workspace{grid-template-columns:180px minmax(0,1fr)}aside{padding:15px 5px}.content{padding:18px 14px}.content-head{flex-wrap:wrap}.gallery{grid-template-columns:1fr}.tabs{gap:13px}h1{font-size:32px}}
.gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}.result-card img{height:280px}.result-text-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px;margin-top:16px}.result-text iframe{height:110px}.result-text .caption{padding:10px 14px}iframe.viewer{display:block;margin-top:16px}#tree button.selected{font-weight:600}@media(max-width:850px){.result-card img{height:230px}.result-text-list{grid-template-columns:1fr}}
.result-group-toggle{width:100%;display:flex;align-items:center;gap:9px;padding:9px 3px;background:transparent;color:#233b32;text-align:left;border-bottom:1px solid #dfe5dc;border-radius:0}.result-group-toggle:hover{color:#1f6346}.result-group-toggle span{width:14px;color:#718175}.result-group-toggle strong{font-size:15px}.result-group-toggle small{color:#87988b;font:12px ui-monospace,monospace}.result-group-body{padding-top:16px}.relations{margin-top:24px}.relations h3{font-size:13px;color:#809084;text-transform:uppercase;letter-spacing:1px}.relation-link{margin:0 8px 8px 0;padding:7px 11px;background:#e7f0e4;color:#245f47;border:1px solid #cbdcc8}.relation-link:hover{background:#dcebd8}.relation-link:disabled{cursor:not-allowed;color:#89958c;background:#f1f3ef}.text-result-toggle{display:flex;width:100%;align-items:center;gap:8px;padding:12px 14px;border-radius:0;background:white;color:#315444;text-align:left;font:12px ui-monospace,monospace}.text-result-toggle:hover{background:#f8faf6}.text-result-toggle span:first-child{flex:0 0 12px}.text-result-preview{border-top:1px solid #eef1ea}.text-result-preview iframe.viewer{height:240px;margin:0;border:0;border-radius:0}

/* Celebi website brand theme */
:root{--brand:#4aa8e4;--brand-dark:#1f7ab8;--brand-soft:#e3f2fc;--ink:#16202a;--ink-soft:#4c5a68;--bg:#fff;--bg-alt:#f4f9fd;--card:#fff;--line:#dfe9f2;--shadow:0 2px 10px rgba(30,80,120,.08)}
body{background:var(--bg-alt);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",sans-serif}a{color:var(--brand-dark)}p{color:var(--ink-soft)}button,.button{background:var(--brand);color:#fff;box-shadow:0 4px 14px rgba(74,168,228,.22);transition:background .15s ease,transform .15s ease,border-color .15s ease}button:not(:disabled):hover,.button:hover{background:var(--brand-dark);transform:translateY(-1px)}.quiet{background:var(--card);color:var(--ink-soft);border-color:var(--line);box-shadow:none}.quiet:hover{background:var(--brand-soft)!important;color:var(--brand-dark);border-color:var(--brand)!important}.brand{display:inline-flex;align-items:center;gap:9px;color:var(--ink)}.brand:hover{text-decoration:none}.brand img{width:30px;height:30px;object-fit:contain}.brand span{color:var(--ink);letter-spacing:.8px}.brand small{color:var(--ink-soft)}header{background:rgba(255,255,255,.9);border-color:var(--line);backdrop-filter:saturate(140%) blur(10px)}.eyebrow{color:var(--brand-dark)}input,textarea,select{background:var(--card);border-color:var(--line);color:var(--ink)}input:focus,textarea:focus,select:focus{outline:2px solid var(--brand);outline-offset:1px}.card,.result-card{background:var(--card);border-color:var(--line);box-shadow:var(--shadow)}.card:hover{border-color:var(--brand);box-shadow:0 8px 24px rgba(30,80,120,.12)}.tags span{background:var(--brand-soft);color:var(--brand-dark)}.welcome{background:radial-gradient(60% 70% at 50% 0,var(--brand-soft),transparent 72%),var(--bg)}.welcome-card{border-color:var(--line);box-shadow:0 18px 50px rgba(30,80,120,.12)}.welcome-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px;color:var(--ink);font-size:18px;font-weight:800;letter-spacing:1px}.welcome-brand img{width:42px;height:42px}.workspace{background:var(--bg)}aside{background:var(--bg-alt);border-color:var(--line)}#tree button{color:var(--ink-soft);box-shadow:none}#tree button:hover{background:var(--brand-soft);color:var(--brand-dark);transform:none}#tree button.selected{background:var(--brand-soft);color:var(--brand-dark)}.content{background:var(--bg)}.tabs{border-color:var(--line)}.tabs button{color:var(--ink-soft);box-shadow:none}.tabs button:hover{background:transparent;color:var(--brand-dark);transform:none}.tabs button.active{border-color:var(--brand);color:var(--brand-dark)}.result-card .caption{border-color:var(--line);color:var(--ink)}.result-group-toggle{color:var(--ink);border-color:var(--line);box-shadow:none}.result-group-toggle:hover{background:var(--bg-alt);color:var(--brand-dark);transform:none}.result-group-toggle span,.result-group-toggle small,.meta dt,.relations h3{color:var(--ink-soft)}.text-result-toggle{background:var(--card);color:var(--ink);box-shadow:none}.text-result-toggle:hover{background:var(--brand-soft);color:var(--brand-dark);transform:none}.text-result-preview,.result-card .caption{border-color:var(--line)}.relation-link{background:var(--brand-soft);color:var(--brand-dark);border-color:#bcdff5;box-shadow:none}.relation-link:hover{background:#d5ecfa;color:var(--brand-dark)}.relation-link:disabled{background:#f1f5f8;color:#8b9aa7}.empty{background:var(--bg-alt);border-color:#bfd8e8;color:var(--ink-soft)}pre{background:var(--bg-alt)}iframe.viewer{border-color:var(--line)}dialog{background:var(--card);color:var(--ink);border-color:var(--line);box-shadow:0 20px 60px rgba(14,50,76,.2)}dialog::backdrop{background:rgba(14,23,32,.52)}
