@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap');
/* Field Desk v1 — entirely new horizontal information architecture.
   Original app nodes remain mounted to preserve generation, auth, saving and exports. */
:root{--f-ink:#142633;--f-night:#101f2b;--f-mid:#1d3340;--f-muted:#687981;--f-cream:#f4f1ea;--f-paper:#fdfbf6;--f-rule:#d8dcd7;--f-peach:#ecad83;--f-moss:#cde3ad}
body{background:var(--f-cream)!important;color:var(--f-ink)!important;font-family:'DM Sans',system-ui,sans-serif!important}
.shell-sidebar,.shell-top{display:none!important}
.field-app-header{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#122431;color:#e5f1f0;border-bottom:1px solid #39505b;padding:0 clamp(20px,4vw,75px);position:sticky;top:0;z-index:200}
.field-app-brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#f6f9f6;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.1rem;letter-spacing:-.065em;white-space:nowrap}
.field-app-brand>span:nth-child(2)>span{color:var(--f-peach)}
.field-app-brandmark{width:33px;height:33px;display:grid;place-items:center;background:#eeb087;color:#172936;border-radius:5px;font-size:1.55rem}
.field-app-brand small{font-family:'DM Sans',sans-serif;font-size:.58rem;letter-spacing:.14em;color:#8aa8b5;font-weight:850;margin-left:5px}
.field-app-navigation{display:flex;align-items:center;gap:7px;height:100%}
.field-app-navigation a{display:flex;align-items:center;height:100%;padding:0 20px;text-decoration:none;color:#9fb6c0;font-size:.79rem;font-weight:850;border-bottom:3px solid transparent}
.field-app-navigation a[aria-current="page"]{border-bottom-color:#edaf87;color:#fff}
.field-app-navigation a:hover{color:#fff}
.field-app-actions{display:flex;align-items:center;gap:20px}
.field-app-access{display:flex;align-items:center;gap:9px;color:#aec3ca;font-size:.65rem;font-weight:850;letter-spacing:.09em;white-space:nowrap}
.field-app-access i{width:7px;height:7px;border-radius:50%;background:#d4b27d;box-shadow:0 0 0 4px #d4b27d20}
.field-app-access.is-active i{background:#c7f2ae;box-shadow:0 0 0 4px #c7f2ae20}
.field-app-samples{font-size:.75rem;color:#e4bd9d;font-weight:800;text-decoration:none;white-space:nowrap}
.field-app-avatar{display:grid;place-items:center;width:36px;height:36px;border:1px solid #56707c;border-radius:50%;color:#e5f1f0;text-decoration:none}
.shell-main{background:var(--f-cream)!important;margin:0!important;min-height:calc(100vh - 78px)!important;width:100%!important;max-width:none!important}
#dashboard{max-width:none!important;padding:0!important;background:var(--f-cream)!important}
#dashboard>:not(.field-desk){display:none!important}
.field-desk{display:block!important;max-width:1600px;margin:0 auto;padding:0 clamp(20px,5vw,80px) 100px;background:var(--f-cream);color:var(--f-ink);font-family:'DM Sans',system-ui,sans-serif}
.field-desk *{box-sizing:border-box}
.field-desk-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(45px,7vw,130px);align-items:stretch;padding:clamp(65px,7vw,110px) 0 70px;border-bottom:1px solid #b8c6c5}
.field-desk-overline{display:flex;align-items:center;gap:11px;flex-wrap:wrap;color:#8b6854;font-size:.64rem;letter-spacing:.17em;font-weight:900}
.field-desk-pulse{width:7px;height:7px;background:#d78861;border-radius:50%;box-shadow:0 0 0 4px #e4a07c29}
.field-desk-divider{height:12px;width:1px;background:#b4bcb7}
.field-desk-copy h1{font-family:'Space Grotesk',system-ui,sans-serif;font-size:clamp(3.8rem,6.9vw,7.3rem);line-height:.96;letter-spacing:-.092em;font-weight:600;margin:25px 0;color:#182d3a}
.field-desk-copy h1 em{font-style:normal;color:#b76e4c}
.field-desk-copy>p{font-size:1.06rem;line-height:1.8;color:#5f737d;max-width:630px;margin:0 0 38px}
.field-desk-context{display:flex;align-items:flex-end;gap:24px;flex-wrap:wrap}
.field-desk-context label,.field-desk-role>span{display:block;font-size:.65rem;letter-spacing:.13em;font-weight:850;color:#687b82}
.field-desk-context select{display:block;margin-top:9px;min-width:142px;height:48px;padding:10px 35px 10px 14px;border:1px solid #bbc8c7;border-radius:5px;background:#fffefa;color:#213844;font-weight:800;font-size:.91rem}
.field-desk-role>div{display:flex;gap:0;margin-top:9px;border:1px solid #c3ceca;border-radius:5px;overflow:hidden}
.field-desk-role button{border:0;border-right:1px solid #c3ceca;background:#faf9f4;color:#536873;padding:14px 13px;font-size:.77rem;font-weight:800;white-space:nowrap}
.field-desk-role button:last-child{border:0}
.field-desk-role button.is-selected{background:#1c3340;color:#fff}
.field-desk-role button:hover:not(.is-selected){background:#e4eae4}
.field-desk-status{background:#192f3d;color:#e6f1f1;display:flex;flex-direction:column;padding:clamp(26px,3vw,42px);border-radius:2px;box-shadow:14px 14px 0 #e1e6db}
.field-status-overline{display:flex;justify-content:space-between;gap:10px;color:#b8d1d4;font-size:.6rem;font-weight:850;letter-spacing:.13em}
.field-status-overline span{color:#c9e9b6;white-space:nowrap}
.field-status-index{color:#eab58e;font-size:.7rem;font-weight:900;letter-spacing:.12em;margin-top:55px}
.field-desk-status h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.8rem,2.7vw,2.9rem);font-weight:600;letter-spacing:-.07em;line-height:1.1;margin:13px 0 30px;color:#fff}
.field-status-line{display:flex;align-items:center;gap:18px;padding:15px 0;border-top:1px solid #3a5260}
.field-status-line>span{color:#e3b18c;font-size:.65rem;font-weight:900}
.field-status-line strong{font-size:.82rem;font-weight:700;color:#d0e0e3}
.field-status-bottom{border-top:1px solid #3a5260;margin-top:auto;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}
.field-status-bottom span{font-size:.7rem;color:#a4bac4}
.field-status-bottom a{font-size:.7rem;color:#f1b992;text-decoration:none;font-weight:800}
.field-desk-tools{padding:47px 0 65px}
.field-desk-sectionhead{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:.66rem;font-weight:900;letter-spacing:.15em;color:#8d6a57;padding-bottom:20px}
.field-desk-sectionhead span:last-child{color:#819196}
.field-desk-tool{display:grid;grid-template-columns:60px minmax(0,1fr) 155px 120px;gap:20px;align-items:center;width:100%;padding:30px 15px 30px 0;border:0;border-top:1px solid #c7d1cd;text-align:left;background:transparent;color:#192e3b;transition:padding .15s,background .15s}
.field-desk-tool:last-child{border-bottom:1px solid #c7d1cd}
.field-desk-tool:hover{background:#e6ebe5;padding-left:18px}
.field-tool-id{font-family:'Space Grotesk',sans-serif;color:#b07758;font-size:1.1rem}
.field-tool-name strong{display:block;font-family:'Space Grotesk',sans-serif;font-size:clamp(1.6rem,3vw,3rem);font-weight:600;letter-spacing:-.07em;line-height:1.1}
.field-tool-name small{display:block;color:#647882;font-size:.85rem;line-height:1.5;margin-top:8px}
.field-tool-go{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#a15c3f;font-size:.78rem;font-weight:900;white-space:nowrap}
.field-tool-go b{font-size:1.5rem;font-weight:400}
.field-tool-art{display:flex;gap:7px;align-items:flex-end;justify-content:center;height:60px}
.field-tool-art i{display:block;width:16px;background:#a7bfbb;border-radius:2px}
.field-tool-art i:nth-child(1){height:24px}.field-tool-art i:nth-child(2){height:44px;background:#d4a88b}.field-tool-art i:nth-child(3){height:34px}.field-tool-art i:nth-child(4){height:52px;background:#a7bfbb}
.field-tool-art-station i:nth-child(1){height:47px}.field-tool-art-station i:nth-child(2){height:47px}.field-tool-art-station i:nth-child(3){height:23px}.field-tool-art-station i:nth-child(4){height:23px}
.field-tool-art-rotation i:nth-child(1){height:36px}.field-tool-art-rotation i:nth-child(2){height:36px}.field-tool-art-rotation i:nth-child(3){height:36px}.field-tool-art-rotation i:nth-child(4){height:36px}
.field-desk-lower{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.65fr);gap:40px;padding-top:25px}
.field-desk-library h2,.field-desk-reference h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(2rem,3.2vw,3.3rem);font-weight:600;letter-spacing:-.075em;line-height:1.12;margin:13px 0 10px}
.field-desk-library>p,.field-desk-reference>p{font-size:.88rem;color:#627780;line-height:1.7;max-width:580px}
#field-library #teaching-library{display:block!important;margin-top:24px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}
#field-library .library-heading{display:none!important}
#field-library .library-grid{display:block!important}
#field-library .library-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:5px 25px;align-items:center;background:transparent!important;box-shadow:none!important;border:0!important;border-top:1px solid #c9d2cc!important;border-radius:0!important;padding:20px 0!important;margin:0!important;min-height:0!important}
#field-library .library-card:last-child{border-bottom:1px solid #c9d2cc!important}
#field-library .library-meta{grid-column:1;font-size:.65rem!important;color:#a16b52!important;font-weight:850!important;letter-spacing:.08em}
#field-library .library-card h3{grid-column:1;font-family:'Space Grotesk',sans-serif;font-size:1.25rem!important;color:#213844!important;letter-spacing:-.04em!important;margin:0!important}
#field-library .library-card p{display:none!important}
#field-library .library-actions{grid-column:2;grid-row:1/3;display:flex;gap:10px;align-items:center}
#field-library .library-actions .btn{background:#203745!important;color:#fff!important;border:0!important;border-radius:4px!important;padding:11px 14px!important;font-size:.74rem!important}
#field-library .library-actions .library-link{font-size:.74rem!important;color:#9d674b!important;font-weight:800!important}
#field-library .retention-empty{background:#e6eae3!important;border:1px dashed #b4c4bf!important;border-radius:4px!important;padding:26px!important;display:flex;flex-direction:column;gap:12px;color:#24404a}
#field-library .retention-empty strong{font-size:.96rem;color:#1d3540}
#field-library .retention-empty span{font-size:.82rem;color:#5b727b}
#field-library .retention-empty button{align-self:flex-start;border-radius:4px!important;background:#1e3946!important;color:#fff!important}
.field-desk-reference{background:#dfe8dd;padding:35px 33px;position:relative;overflow:hidden}
.field-desk-reference .field-desk-sectionhead{color:#84654f}
.field-reference-numeral{font-family:'Space Grotesk',sans-serif;font-size:clamp(5rem,8vw,9rem);line-height:1;color:#a1b6a6;letter-spacing:-.12em;font-weight:600;margin-top:30px}
.field-desk-reference h2{font-size:clamp(2rem,2.8vw,2.9rem)}
.field-desk-reference>a{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#203b46;color:#fff;padding:15px 18px;text-decoration:none;font-size:.8rem;font-weight:850;margin-top:30px}
.field-desk-reference>a:hover{background:#385765}
.field-reference-rule{height:1px;background:#b9c9bd;margin:45px 0 15px}
.field-reference-foot{color:#7a9283;font-size:.59rem;letter-spacing:.09em;font-weight:850}
.field-desk-semester{margin-top:55px}
.field-desk-semester .semester-shell{display:block!important;background:#e9eee7!important;border:1px solid #cad7d1!important;border-radius:4px!important;color:#1b3340!important}
.field-desk-semester .semester-summary{padding:22px!important}
.field-desk-semester .semester-summary h2{color:#1c3540!important;font-family:'Space Grotesk',sans-serif;font-size:1.4rem!important}
.field-desk-semester .semester-summary p{color:#6c7e83!important}
.field-desk-semester .semester-body{padding:24px}
.field-desk-semester input{color:#1b3440!important;background:#fffefa!important}
#tools{background:#f4f1ea!important;color:#1d3540!important;padding:32px clamp(20px,5vw,80px) 80px!important;min-height:calc(100vh - 78px)}
#tools>.workspace-wrap{max-width:1500px!important;margin:0 auto!important;padding:0!important}
#tools .workspace-intro{background:transparent!important;color:#18303d!important;box-shadow:none!important;border:0!important;border-bottom:1px solid #cbd4cf!important;border-radius:0!important;padding:24px 0 28px!important;margin:0 0 25px!important;display:block!important}
#tools .workspace-intro-copy{max-width:980px!important}
#tools .workspace-kicker{color:#9f6e53!important;font-size:.65rem!important;letter-spacing:.17em!important}
#tools .workspace-intro h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(2.1rem,4vw,4.2rem)!important;line-height:1.06!important;letter-spacing:-.075em!important;color:#192e3b!important;margin:12px 0!important}
#tools .workspace-intro p{color:#657983!important;max-width:780px!important;font-size:.93rem!important}
#tools .workspace-intro-actions,#tools .workspace-guidance,#tools .workspace-steps{display:none!important}
#tools .context-bar{background:#e5ebe4!important;color:#1c3440!important;border:1px solid #c8d4cc!important;box-shadow:none!important;border-radius:5px!important;padding:18px!important;display:grid!important;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:20px;margin:0 0 18px!important}
#tools .role-switch{display:flex!important;flex-wrap:wrap;align-items:center;background:transparent!important;border:0!important;padding:0!important;gap:5px!important}
#tools .role-switch button{border:1px solid #b7c7c4!important;background:#f8f9f5!important;color:#526a75!important;border-radius:4px!important;padding:10px!important;font-size:.75rem!important}
#tools .role-switch button.active{background:#1e3643!important;color:#fff!important;box-shadow:none!important}
#tools .selection-grid{display:grid!important;grid-template-columns:minmax(110px,.55fr) minmax(130px,.7fr) minmax(190px,1.25fr)!important;gap:10px!important;align-items:end}
#tools .field-block span,#tools .topic-combobox>label{font-size:.7rem!important;color:#60737c!important}
#tools .selection-grid input,#tools .selection-grid select{background:#fffefa!important;border:1px solid #c0ccc9!important;color:#213c47!important;border-radius:4px!important}
#tools .role-workspace{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important}
#tools .role-tabs{display:flex!important;flex-wrap:wrap;gap:4px!important;position:static!important;top:auto!important;background:transparent!important;border:0!important;border-bottom:1px solid #c9d4d0!important;border-radius:0!important;padding:0 0 13px!important;margin:0 0 20px!important}
#tools .tool-rail-title{display:none!important}
#tools .role-tabs button{border:1px solid #c8d2ce!important;background:#f7f8f3!important;color:#536e79!important;border-radius:4px!important;padding:12px 18px!important;box-shadow:none!important;min-width:0!important}
#tools .role-tabs button.active,#tools .role-tabs button[aria-selected="true"]{background:#1d3643!important;color:#fff!important;border-color:#1d3643!important}
#tools .role-tabs button small{display:none!important}
#tools .station-workbench,#tools .scenario-workbench,#tools .program-workbench{display:grid!important;grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr)!important;align-items:start!important;gap:16px!important}
#tools .workspace-controls{background:#fffefa!important;color:#1d3643!important;border:1px solid #cbd6d0!important;border-radius:5px!important;padding:clamp(18px,2.5vw,32px)!important;box-shadow:none!important;min-width:0!important}
#tools .workspace-output{background:#fffefa!important;color:#1d3643!important;border:1px solid #cbd6d0!important;border-radius:5px!important;box-shadow:none!important;min-width:0!important;min-height:390px!important;padding:clamp(18px,2.5vw,32px)!important}
#tools .builder-heading h2,#tools .workspace-controls h2,#tools .workspace-output h2{color:#213946!important;font-family:'Space Grotesk',sans-serif;letter-spacing:-.045em}
#tools .builder-heading p,#tools .workspace-controls p,#tools .workspace-output p{color:#5d7380}
#tools .workspace-controls input,#tools .workspace-controls select,#tools .workspace-controls textarea{background:#fff!important;color:#1b3440!important;border:1px solid #bfcbc7!important;border-radius:4px!important}
#tools .workspace-controls label,#tools .workspace-controls legend{color:#3b5562!important}
#tools .workspace-controls .btn,#tools .workspace-controls .station-generate{background:#213b48!important;color:#fff!important;border-radius:4px!important}
#tools .role-panel .full-output{max-width:100%!important}
#account,#feedback,#access-preview{background:#f4f1ea!important;color:#203947!important;min-height:calc(100vh - 78px)!important;padding:70px clamp(20px,5vw,80px)!important}
#account .account-copy h2,#feedback h2,#access-preview h2{color:#203947!important;font-family:'Space Grotesk',sans-serif;letter-spacing:-.06em}
#account .account-copy p,#feedback p,#access-preview p{color:#637a82!important}
#account .account-mount,#feedback .feedback-form,#access-preview .plan-preview{background:#fffefa!important;border:1px solid #cbd6d0!important;color:#1b3642!important;border-radius:5px!important;box-shadow:none!important}
#account .account-mount h3,#account .account-mount label{color:#1e3946!important}
#account .account-mount p{color:#607781!important}
#account input,#feedback input,#feedback select,#feedback textarea{color:#1c3743!important;background:#fff!important;border:1px solid #c6d1cb!important;border-radius:4px!important}
#account .btn,#feedback .btn{background:#203946!important;color:#fff!important;border-radius:4px!important}
body>.shell-main>footer,body>footer{background:#152733!important;color:#a6bec5!important;border:0!important}
.field-desk button:focus-visible,.field-app-header a:focus-visible,.field-desk a:focus-visible{outline:3px solid #d4865c!important;outline-offset:3px}
@media(max-width:1200px){.field-app-actions{gap:12px}.field-app-navigation a{padding:0 12px}.field-desk-hero{gap:30px}.field-desk-copy h1{font-size:clamp(3.7rem,6vw,5.5rem)}.field-desk-lower{gap:20px}}
@media(max-width:950px){.field-app-header{height:auto;min-height:68px;flex-wrap:wrap;padding:14px 22px;gap:10px}.field-app-navigation{order:3;width:100%;height:43px;overflow-x:auto;border-top:1px solid #36505e}.field-app-navigation a{height:43px;padding:0 17px}.field-app-access{display:none}.field-desk-hero{grid-template-columns:1fr}.field-desk-status{max-width:100%;min-height:0}.field-status-index{margin-top:22px}.field-desk-lower{grid-template-columns:1fr}.field-desk-reference{max-width:none}.field-desk-tool{grid-template-columns:45px minmax(0,1fr) 90px}.field-tool-art{display:none}#tools .context-bar{grid-template-columns:1fr!important}#tools .station-workbench,#tools .scenario-workbench,#tools .program-workbench{grid-template-columns:1fr!important}}
@media(max-width:600px){.field-app-header{padding:11px 14px}.field-app-brand{font-size:.97rem}.field-app-brand small{font-size:.5rem}.field-app-samples{display:none}.field-app-navigation{gap:0}.field-app-navigation a{font-size:.76rem;padding:0 13px}.field-desk{padding:0 17px 70px}.field-desk-hero{padding:52px 0 38px;gap:30px}.field-desk-copy h1{font-size:clamp(3.15rem,13vw,4.8rem)}.field-desk-copy>p{font-size:.91rem}.field-desk-overline{font-size:.56rem}.field-desk-context{display:block}.field-desk-role{margin-top:18px}.field-desk-role button{font-size:.72rem;padding:13px 9px}.field-desk-status{padding:25px;box-shadow:7px 7px 0 #e1e6db}.field-desk-status h2{font-size:2.2rem}.field-desk-tools{padding:35px 0 50px}.field-desk-sectionhead{font-size:.57rem}.field-desk-tool{grid-template-columns:28px minmax(0,1fr) 22px;gap:10px;padding:22px 0}.field-tool-name strong{font-size:1.6rem}.field-tool-name small{font-size:.73rem}.field-tool-go{font-size:0;gap:0}.field-tool-go b{font-size:1.4rem}.field-desk-library h2,.field-desk-reference h2{font-size:2.2rem}.field-desk-reference{padding:26px 23px}#field-library .library-card{grid-template-columns:1fr!important}#field-library .library-actions{grid-column:1!important;grid-row:auto!important;margin-top:8px;flex-wrap:wrap}#tools{padding:22px 14px 60px!important}#tools .workspace-intro h2{font-size:2.2rem!important}#tools .selection-grid{grid-template-columns:1fr!important}#tools .role-tabs button{padding:10px!important;font-size:.74rem!important}#account,#feedback,#access-preview{padding:40px 14px!important}}
@media(prefers-reduced-motion:reduce){.field-desk-tool{transition:none}}
