:root{--bg: #f4f5f8;--bg-tint-1: rgba(91, 97, 227, .14);--bg-tint-2: rgba(215, 154, 59, .12);--surface: #ffffff;--surface-soft: #fbfbfd;--border: rgba(16, 24, 40, .09);--shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 8px 24px rgba(16, 24, 40, .05);--text: #171a1f;--muted: #68717f;--faint: #99a2ae;--accent: #5b61e3;--accent-soft: rgba(91, 97, 227, .12);--seminar: #8a5cd6;--seminar-soft: rgba(138, 92, 214, .13);--danger: #cf4a45;--danger-soft: rgba(207, 74, 69, .13);--radius: 18px}:root[data-scheme=dark],:root[data-theme=dark]{--bg: #13171d;--bg-tint-1: rgba(123, 130, 255, .16);--bg-tint-2: rgba(226, 169, 83, .1);--surface: #1b2026;--surface-soft: #1f252c;--border: rgba(255, 255, 255, .08);--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 30px rgba(0, 0, 0, .28);--text: #f1f3f7;--muted: #9ba5b4;--faint: #7c8695;--accent: #949aff;--accent-soft: rgba(148, 154, 255, .16);--seminar: #b79bf0;--seminar-soft: rgba(183, 155, 240, .16);--danger: #ef8683;--danger-soft: rgba(239, 134, 131, .16)}@media (prefers-color-scheme: dark){:root:not([data-scheme=light]):not([data-theme=light]){--bg: #13171d;--bg-tint-1: rgba(123, 130, 255, .16);--bg-tint-2: rgba(226, 169, 83, .1);--surface: #1b2026;--surface-soft: #1f252c;--border: rgba(255, 255, 255, .08);--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 30px rgba(0, 0, 0, .28);--text: #f1f3f7;--muted: #9ba5b4;--faint: #7c8695;--accent: #949aff;--accent-soft: rgba(148, 154, 255, .16);--seminar: #b79bf0;--seminar-soft: rgba(183, 155, 240, .16);--danger: #ef8683;--danger-soft: rgba(239, 134, 131, .16)}}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background-color:var(--bg);background-image:radial-gradient(60% 42% at 12% -6%,var(--bg-tint-1) 0%,transparent 70%),radial-gradient(52% 38% at 96% 4%,var(--bg-tint-2) 0%,transparent 72%);background-repeat:no-repeat;color:var(--text);font:16px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.page{max-width:34rem;margin:0 auto;padding:1.5rem 1rem calc(2.5rem + env(safe-area-inset-bottom))}.hero{position:relative;overflow:hidden;margin-bottom:1.4rem;padding:1.5rem 1.35rem 1.6rem;border:1px solid var(--border);border-radius:22px;background-color:var(--surface);background-image:linear-gradient(140deg,var(--accent-soft) 0%,transparent 58%),linear-gradient(320deg,var(--bg-tint-2) 0%,transparent 52%);box-shadow:var(--shadow)}.hero:after{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--accent),var(--seminar) 55%,transparent)}.hero__eyebrow{margin:0 0 .5rem;color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hero__title{margin:0;font-size:clamp(1.32rem,5.6vw,1.62rem);font-weight:700;letter-spacing:-.015em;line-height:1.22}.hero__subtitle{margin:.55rem 0 0;color:var(--muted);font-size:.95rem}.section-label{margin:0 0 .6rem .15rem;color:var(--faint);font-size:.74rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.list{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.card{position:relative;overflow:hidden;padding:1rem 1.1rem 1.05rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.card:before{content:"";position:absolute;top:0;bottom:0;left:0;width:4px;background:var(--accent)}.card--seminar:before{background:var(--seminar)}.card--conference:before{background:var(--conference)}.card--skeleton{height:6.2rem;background:var(--surface-soft);box-shadow:none;animation:pulse 1.5s ease-in-out infinite}.card--skeleton:before{opacity:.25}@keyframes pulse{50%{opacity:.55}}.card__head{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.55rem}.card__title{margin:0 0 .7rem;font-size:1.08rem;font-weight:650;letter-spacing:-.01em;line-height:1.3}.meta{display:grid;gap:.35rem}.meta__row{display:flex;gap:.5rem;align-items:center;margin:0;color:var(--muted);font-size:.92rem}.meta__row svg{flex:0 0 auto;color:var(--faint)}.meta__soft{color:var(--faint);font-style:italic}.badge{display:inline-block;padding:.16rem .55rem;border-radius:999px;font-size:.74rem;font-weight:650;letter-spacing:.015em}.badge--course{background:var(--accent-soft);color:var(--accent)}.badge--seminar{background:var(--seminar-soft);color:var(--seminar)}.badge--conference{background:var(--conference-soft);color:var(--conference)}.badge--full{background:var(--danger-soft);color:var(--danger)}.notice{padding:1.7rem 1.3rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);text-align:center}.notice--empty{background-image:linear-gradient(160deg,var(--accent-soft) 0%,transparent 60%)}.notice__art{display:block;margin:0 auto .9rem;color:var(--accent);opacity:.85}.notice__text{margin:0 0 .4rem;font-size:1rem;font-weight:650}.notice__detail{margin:0;color:var(--muted);font-size:.92rem}.button{margin-top:1rem;padding:.62rem 1.3rem;border:0;border-radius:12px;background:var(--accent);color:#fff;font:inherit;font-weight:650;cursor:pointer}.button:active{transform:translateY(1px)}:root{--ok: #2b8a5b;--ok-soft: rgba(43, 138, 91, .13);--conference: #a86a1f;--conference-soft: rgba(168, 106, 31, .14)}:root[data-scheme=dark],:root[data-theme=dark]{--ok: #6ccf98;--ok-soft: rgba(108, 207, 152, .16);--conference: #e2ab63;--conference-soft: rgba(226, 171, 99, .16)}@media (prefers-color-scheme: dark){:root:not([data-scheme=light]):not([data-theme=light]){--ok: #6ccf98;--ok-soft: rgba(108, 207, 152, .16);--conference: #e2ab63;--conference-soft: rgba(226, 171, 99, .16)}}.hero__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.hero__actions .button{margin-top:0}.card__link{display:block;color:inherit;text-decoration:none}.card__more{display:inline-flex;gap:.25rem;align-items:center;margin-top:.8rem;color:var(--accent);font-size:.86rem;font-weight:650}.card__aside{display:flex;gap:.25rem;align-items:center;justify-content:flex-end;margin-top:.75rem;padding-top:.7rem;border-top:1px solid var(--border);color:var(--muted);font-size:.86rem;font-weight:650;text-decoration:none}.card--plain:before{display:none}.card--plain,.card--row{padding:1.1rem 1.15rem}.card--row:before{opacity:.45}.card__text{margin:.8rem 0 0;color:var(--muted);font-size:.94rem;white-space:pre-line}.badge--ok{background:var(--ok-soft);color:var(--ok)}.badge--soft{background:var(--surface-soft);border:1px solid var(--border);color:var(--muted)}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-bottom:1.3rem}.tile{padding:.85rem .9rem;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.tile__value{display:block;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.tile__label{display:block;margin-top:.15rem;color:var(--muted);font-size:.8rem}.form{display:grid;gap:.9rem}.field{display:grid;gap:.4rem;margin:0 0 .9rem;padding:0;border:0}.card--plain .field:last-of-type,.form .field:last-of-type{margin-bottom:0}.field--nested{margin:.7rem 0 0;padding:.8rem .9rem;border-left:3px solid var(--accent-soft);border-radius:0 12px 12px 0;background:var(--surface-soft)}.field__label{display:block;padding:0;color:var(--text);font-size:.92rem;font-weight:650}.field__required{color:var(--danger)}.field__optional{color:var(--faint);font-weight:400}.field__hint{margin:0;color:var(--muted);font-size:.84rem}.field__hint--center{text-align:center}.field__error{margin:0;color:var(--danger);font-size:.84rem}.input{width:100%;padding:.65rem .8rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);font:inherit;font-size:1rem}.input:focus{border-color:var(--accent);outline:none}.input--area{resize:vertical}.input--inline{width:auto;padding:.35rem .5rem;font-size:.9rem}.options{display:grid;gap:.4rem}.option{display:flex;gap:.6rem;align-items:center;padding:.6rem .75rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);cursor:pointer}.option input{flex:0 0 auto;width:1.1rem;height:1.1rem;accent-color:var(--accent)}.option__text{font-size:.96rem}.option:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.switch{display:flex;gap:.55rem;align-items:center;margin-bottom:.9rem;color:var(--text);font-size:.92rem;cursor:pointer}.switch input{width:1.1rem;height:1.1rem;accent-color:var(--accent)}.switch--small{margin:.5rem 0 0;color:var(--muted);font-size:.86rem}.warning,.saved{display:flex;gap:.55rem;align-items:flex-start;margin:.2rem 0 0;padding:.75rem .9rem;border-radius:12px;font-size:.92rem}.warning{background:var(--danger-soft);color:var(--danger)}.saved{background:var(--ok-soft);color:var(--ok)}.warning svg,.saved svg{flex:0 0 auto;margin-top:.15rem}.notice--done{border-color:var(--ok-soft);background-image:linear-gradient(160deg,var(--ok-soft) 0%,transparent 62%);text-align:left}.notice--done .notice__text{display:flex;gap:.45rem;align-items:center;justify-content:center;color:var(--ok)}.button{display:inline-flex;gap:.4rem;align-items:center;justify-content:center;text-decoration:none}.button--wide{width:100%}.button--small{margin-top:0;padding:.45rem .85rem;font-size:.86rem}.button--ghost{border:1px solid var(--border);background:var(--surface);color:var(--accent)}.button--danger{background:var(--danger-soft);color:var(--danger)}.button:disabled{opacity:.5;cursor:not-allowed}.button:disabled:active{transform:none}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);color:var(--muted);cursor:pointer}.icon-button--danger{color:var(--danger)}.icon-button:disabled{opacity:.35;cursor:not-allowed}.actions{display:grid;gap:.5rem;margin-top:1.1rem}.actions .button{margin-top:0}.templates{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.9rem}.search{display:flex;gap:.5rem;margin-bottom:1rem}.search .button{margin-top:0;flex:0 0 auto}.editor{display:grid;gap:.75rem}.editor__card{padding:1rem 1.05rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.editor__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}.editor__number{color:var(--faint);font-size:.74rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.editor__tools{display:flex;gap:.3rem}.editor__options{display:grid;gap:.6rem;margin-top:.4rem;padding-top:.8rem;border-top:1px solid var(--border)}.editor__option{padding:.7rem .8rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.editor__option-row{display:flex;gap:.4rem;align-items:center}.editor__option .input--area{margin-top:.5rem}.editor__option>.input:not(.input--inline){margin-top:.5rem}.answers{display:grid;gap:.35rem;margin:.85rem 0 0;padding-top:.8rem;border-top:1px solid var(--border)}.answers__row{display:grid;grid-template-columns:minmax(7rem,42%) 1fr;gap:.5rem}.answers dt{color:var(--muted);font-size:.88rem}.answers dd{margin:0;font-size:.92rem;font-weight:650;overflow-wrap:anywhere}.back-link{margin:1.5rem 0 0;color:var(--muted);font-size:.9rem;text-align:center}.back-link a{color:var(--accent);text-decoration:none}.tabs{display:flex;gap:.35rem;margin-bottom:.9rem;padding:.25rem;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.tab{flex:1 1 0;padding:.5rem .6rem;border:0;border-radius:11px;background:transparent;color:var(--muted);font:inherit;font-size:.92rem;font-weight:650;cursor:pointer}.tab--active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow)}.tg-link{display:inline-flex;gap:.2rem;align-items:center;color:var(--accent);font-size:.92rem;font-weight:650;text-decoration:none}.chips{display:flex;flex-wrap:wrap;gap:.3rem;margin:.7rem 0 0}.chip{padding:.14rem .5rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.74rem;font-weight:650;text-decoration:none}.code-line{overflow-x:auto;margin:.6rem 0 0;padding:.5rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;white-space:nowrap}.card--row .button--small{margin-top:.8rem}
